diff --git a/tools/test/cells/bramble b/tools/test/cells/bramble
index 73cbb9d..7f17d2f 100644
--- a/tools/test/cells/bramble
+++ b/tools/test/cells/bramble
@@ -3,6 +3,6 @@
 export OC2="192.168.1.12"
 export OC3="192.168.1.13"
 export OC4="192.168.1.14"
-export OC5="192.168.1.15"
+# export OC5="192.168.1.15"
 export OCN="192.168.1.15"
 export OCI="${OC1}"
diff --git a/tools/test/topos/attmpls-fast.py b/tools/test/topos/attmpls-fast.py
new file mode 100644
index 0000000..c78f47a
--- /dev/null
+++ b/tools/test/topos/attmpls-fast.py
@@ -0,0 +1,164 @@
+#!/usr/bin/env python
+
+"""
+"""
+from mininet.topo import Topo
+from mininet.net import Mininet
+from mininet.node import RemoteController
+from mininet.node import Node
+from mininet.node import CPULimitedHost
+from mininet.link import TCLink
+from mininet.cli import CLI
+from mininet.log import setLogLevel
+from mininet.util import dumpNodeConnections
+
+class AttMplsTopo( Topo ):
+    "Internet Topology Zoo Specimen."
+
+    def __init__( self ):
+        "Create a topology."
+
+        # Initialize Topology
+        Topo.__init__( self )
+
+        # add nodes, switches first...
+        NY54 = self.addSwitch( 's25' ) # 40.728270, -73.994483
+        CMBR = self.addSwitch( 's1' )  # 42.373730, -71.109734
+        CHCG = self.addSwitch( 's2' )  # 41.877461, -87.642892
+        CLEV = self.addSwitch( 's3' )  # 41.498928, -81.695217
+        RLGH = self.addSwitch( 's4' )  # 35.780150, -78.644026
+        ATLN = self.addSwitch( 's5' )  # 33.749017, -84.394168
+        PHLA = self.addSwitch( 's6' )  # 39.952906, -75.172278
+        WASH = self.addSwitch( 's7' )  # 38.906696, -77.035509
+        NSVL = self.addSwitch( 's8' )  # 36.166410, -86.787305
+        STLS = self.addSwitch( 's9' )  # 38.626418, -90.198143
+        NWOR = self.addSwitch( 's10' ) # 29.951475, -90.078434
+        HSTN = self.addSwitch( 's11' ) # 29.763249, -95.368332
+        SNAN = self.addSwitch( 's12' ) # 29.424331, -98.491745
+        DLLS = self.addSwitch( 's13' ) # 32.777665, -96.802064
+        ORLD = self.addSwitch( 's14' ) # 28.538641, -81.381110
+        DNVR = self.addSwitch( 's15' ) # 39.736623, -104.984887
+        KSCY = self.addSwitch( 's16' ) # 39.100725, -94.581228
+        SNFN = self.addSwitch( 's17' ) # 37.779751, -122.409791
+        SCRM = self.addSwitch( 's18' ) # 38.581001, -121.497844
+        PTLD = self.addSwitch( 's19' ) # 45.523317, -122.677768
+        STTL = self.addSwitch( 's20' ) # 47.607326, -122.331786
+        SLKC = self.addSwitch( 's21' ) # 40.759577, -111.895079
+        LA03 = self.addSwitch( 's22' ) # 34.056346, -118.235951
+        SNDG = self.addSwitch( 's23' ) # 32.714564, -117.153528
+        PHNX = self.addSwitch( 's24' ) # 33.448289, -112.076299
+
+        # ... and now hosts
+        NY54_host = self.addHost( 'h25' )
+        CMBR_host = self.addHost( 'h1' )
+        CHCG_host = self.addHost( 'h2' )
+        CLEV_host = self.addHost( 'h3' )
+        RLGH_host = self.addHost( 'h4' )
+        ATLN_host = self.addHost( 'h5' )
+        PHLA_host = self.addHost( 'h6' )
+        WASH_host = self.addHost( 'h7' )
+        NSVL_host = self.addHost( 'h8' )
+        STLS_host = self.addHost( 'h9' )
+        NWOR_host = self.addHost( 'h10' )
+        HSTN_host = self.addHost( 'h11' )
+        SNAN_host = self.addHost( 'h12' )
+        DLLS_host = self.addHost( 'h13' )
+        ORLD_host = self.addHost( 'h14' )
+        DNVR_host = self.addHost( 'h15' )
+        KSCY_host = self.addHost( 'h16' )
+        SNFN_host = self.addHost( 'h17' )
+        SCRM_host = self.addHost( 'h18' )
+        PTLD_host = self.addHost( 'h19' )
+        STTL_host = self.addHost( 'h20' )
+        SLKC_host = self.addHost( 'h21' )
+        LA03_host = self.addHost( 'h22' )
+        SNDG_host = self.addHost( 'h23' )
+        PHNX_host = self.addHost( 'h24' )
+
+        # add edges between switch and corresponding host
+        self.addLink( NY54 , NY54_host )
+        self.addLink( CMBR , CMBR_host )
+        self.addLink( CHCG , CHCG_host )
+        self.addLink( CLEV , CLEV_host )
+        self.addLink( RLGH , RLGH_host )
+        self.addLink( ATLN , ATLN_host )
+        self.addLink( PHLA , PHLA_host )
+        self.addLink( WASH , WASH_host )
+        self.addLink( NSVL , NSVL_host )
+        self.addLink( STLS , STLS_host )
+        self.addLink( NWOR , NWOR_host )
+        self.addLink( HSTN , HSTN_host )
+        self.addLink( SNAN , SNAN_host )
+        self.addLink( DLLS , DLLS_host )
+        self.addLink( ORLD , ORLD_host )
+        self.addLink( DNVR , DNVR_host )
+        self.addLink( KSCY , KSCY_host )
+        self.addLink( SNFN , SNFN_host )
+        self.addLink( SCRM , SCRM_host )
+        self.addLink( PTLD , PTLD_host )
+        self.addLink( STTL , STTL_host )
+        self.addLink( SLKC , SLKC_host )
+        self.addLink( LA03 , LA03_host )
+        self.addLink( SNDG , SNDG_host )
+        self.addLink( PHNX , PHNX_host )
+
+        # add edges between switches
+        self.addLink( NY54 , CMBR )
+        self.addLink( NY54 , CHCG )
+        self.addLink( NY54 , PHLA )
+        self.addLink( NY54 , WASH )
+        self.addLink( CMBR , PHLA )
+        self.addLink( CHCG , CLEV )
+        self.addLink( CHCG , PHLA )
+        self.addLink( CHCG , STLS )
+        self.addLink( CHCG , DNVR )
+        self.addLink( CHCG , KSCY )
+        self.addLink( CHCG , SNFN )
+        self.addLink( CHCG , STTL )
+        self.addLink( CHCG , SLKC )
+        self.addLink( CLEV , NSVL )
+        self.addLink( CLEV , STLS )
+        self.addLink( CLEV , PHLA )
+        self.addLink( RLGH , ATLN )
+        self.addLink( RLGH , WASH )
+        self.addLink( ATLN , WASH )
+        self.addLink( ATLN , NSVL )
+        self.addLink( ATLN , STLS )
+        self.addLink( ATLN , DLLS )
+        self.addLink( ATLN , ORLD )
+        self.addLink( PHLA , WASH )
+        self.addLink( NSVL , STLS )
+        self.addLink( NSVL , DLLS )
+        self.addLink( STLS , DLLS )
+        self.addLink( STLS , KSCY )
+        self.addLink( STLS , LA03 )
+        self.addLink( NWOR , HSTN )
+        self.addLink( NWOR , DLLS )
+        self.addLink( NWOR , ORLD )
+        self.addLink( HSTN , SNAN )
+        self.addLink( HSTN , DLLS )
+        self.addLink( HSTN , ORLD )
+        self.addLink( SNAN , PHNX )
+        self.addLink( SNAN , DLLS )
+        self.addLink( DLLS , DNVR )
+        self.addLink( DLLS , KSCY )
+        self.addLink( DLLS , SNFN )
+        self.addLink( DLLS , LA03 )
+        self.addLink( DNVR , KSCY )
+        self.addLink( DNVR , SNFN )
+        self.addLink( DNVR , SLKC )
+        self.addLink( KSCY , SNFN )
+        self.addLink( SNFN , SCRM )
+        self.addLink( SNFN , PTLD )
+        self.addLink( SNFN , STTL )
+        self.addLink( SNFN , SLKC )
+        self.addLink( SNFN , LA03 )
+        self.addLink( SCRM , SLKC )
+        self.addLink( PTLD , STTL )
+        self.addLink( SLKC , LA03 )
+        self.addLink( LA03 , SNDG )
+        self.addLink( LA03 , PHNX )
+        # self.addLink( LA03 , PHNX )
+        self.addLink( SNDG , PHNX )
+
+topos = { 'att': ( lambda: AttMplsTopo() ) }
