Build topology
diff --git a/views/ngXosViews/mcordTopology/gulp/build.js b/views/ngXosViews/mcordTopology/gulp/build.js
index f892310..80ba4be 100644
--- a/views/ngXosViews/mcordTopology/gulp/build.js
+++ b/views/ngXosViews/mcordTopology/gulp/build.js
@@ -137,11 +137,11 @@
   gulp.task('build', function() {
     runSequence(
       'templates',
+      'copyCss',
       'babel',
       'scripts',
       'wiredep',
-      'copyHtml',
-      'copyCss'
+      'copyHtml'
     );
   });
 };
\ No newline at end of file
diff --git a/xos/core/xoslib/static/css/xosMcordTopology.css b/xos/core/xoslib/static/css/xosMcordTopology.css
index ed6954b..5d7ad0e 100644
--- a/xos/core/xoslib/static/css/xosMcordTopology.css
+++ b/xos/core/xoslib/static/css/xosMcordTopology.css
@@ -1 +1 @@
-#xosMcordTopology{height:700px}[ui-view],m-cord-topology{width:100%;height:100%;display:block}line{stroke:blue;stroke-width:1}line.big{stroke-width:2}circle,rect{fill:#fff;stroke-width:1}.fabric{stroke:none;fill:#123456;fill-rule:evenodd}.fabric-container{fill:transparent;stroke:#000;stroke-width:1}.bbu{stroke:black;fill:#ff7f0e}.rru{stroke:#000;fill:#ffbb78}.rru-shadow{fill:#ffbb78;opacity:.4}.MME,.SGW,.PGW{fill:purple;stroke:#000}.bbu text,.MME text,.SGW text,.PGW text{font-size:10px;stroke-width:0;fill:#000}
\ No newline at end of file
+#xosMcordTopology{height:700px}[ui-view],m-cord-topology{width:100%;height:100%;display:block}line{stroke:blue;stroke-width:1}line.big{stroke-width:2}circle,rect{fill:#fff;stroke-width:1}.fabric{stroke:none;fill:#123456;fill-rule:evenodd}.fabric-container{fill:transparent;stroke:#000;stroke-width:1}.bbu{stroke:black;fill:#ff7f0e}.rru{stroke:#000;fill:#ffbb78}.rru.antenna{stroke:#000;fill:brown}.rru-shadow{fill:#ffbb78;opacity:.4}.MME,.SGW,.PGW{fill:purple;stroke:#000}.bbu text,.MME text,.SGW text,.PGW text{font-size:10px;stroke-width:0;fill:#fff}
\ No newline at end of file
diff --git a/xos/core/xoslib/static/js/xosMcordTopology.js b/xos/core/xoslib/static/js/xosMcordTopology.js
index 2104d4b..daac31a 100644
--- a/xos/core/xoslib/static/js/xosMcordTopology.js
+++ b/xos/core/xoslib/static/js/xosMcordTopology.js
@@ -315,7 +315,9 @@
     target: 'fabric2'
   }],
   icons: {
-    'switch': 'M10,20a10,10,0,0,1,10-10h70a10,10,0,0,1,10,10v70a10,10,\n            0,0,1-10,10h-70a10,10,0,0,1-10-10zM60,26l12,0,0-8,18,13-18,13,0\n            -8-12,0zM60,60l12,0,0-8,18,13-18,13,0-8-12,0zM50,40l-12,0,0-8\n            -18,13,18,13,0-8,12,0zM50,74l-12,0,0-8-18,13,18,13,0-8,12,0z'
+    bbu: 'M15,100a5,5,0,0,1-5-5v-65a5,5,0,0,1,5-5h80a5,5,0,0,1,5,5v65a5,5,0,0,1-5,5zM14,22.5l11-11a10,3,0,0,1,10-2h40a10,3,0,0,1,10,2l11,11zM16,35a5,5,0,0,1,10,0a5,5,0,0,1-10,0z',
+    'switch': 'M10,20a10,10,0,0,1,10-10h70a10,10,0,0,1,10,10v70a10,10,\n            0,0,1-10,10h-70a10,10,0,0,1-10-10zM60,26l12,0,0-8,18,13-18,13,0\n            -8-12,0zM60,60l12,0,0-8,18,13-18,13,0-8-12,0zM50,40l-12,0,0-8\n            -18,13,18,13,0-8,12,0zM50,74l-12,0,0-8-18,13,18,13,0-8,12,0z',
+    rru: 'M85,71.2c-8.9,10.5-29.6,8.7-45.3-3.5C23.9,55.4,19.8,37,28.6,26.5C29.9,38.6,71.5,69.9,85,71.2z M92.7,76.2M16.2,15 M69.5,100.7v-4c0-1.4-1.2-2.2-2.6-2.2H19.3c-1.4,0-2.8,0.7-2.8,2.2v3.9c0,0.7,0.8,1,1.5,1h50.3C69,101.5,69.5,101.3,69.5,100.7z M77.3,7.5l0,3.7c9,0.1,16.3,7.1,16.2,15.7l3.9,0C97.5,16.3,88.5,7.6,77.3,7.5z M77.6,14.7l0,2.5c5.3,0,9.7,4.2,9.6,9.3l2.6,0C89.9,20,84.4,14.7,77.6,14.7z M82.3,22.2c-1.3-1.2-2.9-1.9-4.7-1.9l0,1.2c1.4,0,2.8,0.6,3.8,1.5c1,1,1.6,2.3,1.6,3.7l1.3,0C84.3,25.1,83.6,23.4,82.3,22.2z M38.9,69.5l-5.1,23h16.5l-2.5-17.2C44.1,73.3,38.9,69.5,38.9,69.5zM58.1,54.1c13.7,10.1,26.5,16.8,29.2,13.7c2.7-3.1-5.6-13-19.3-24.4 M62.9,34.2 M62,37.9C47.7,27.3,33.7,20,31,23.1c-2.7,3.2,7,14.2,20.6,26 M73.9,25.7c-2.9,0.1-5.2,2.3-5.1,4.8c0,0.7,0.2,1.4,0.6,2l0,0L53.8,49.7l3.3,2.5L72.7,35l-0.4-0.3c0.6,0.2,1.3,0.3,1.9,0.3c2.9-0.1,5.2-2.3,5.1-4.9C79.3,27.6,76.8,25.6,73.9,25.7z'
   }
 });
 'use strict';
@@ -353,23 +355,36 @@
 
   this.drawBbus = function (nodes) {
 
-    nodes.append('circle').attr({
+    // nodes.append('circle')
+    //   .attr({
+    //     class: d => d.type,
+    //     r: 0,
+    //     opacity: 0
+    //   })
+    //   .transition()
+    //   .duration(duration)
+    //   // .delay((d, i) => i * (duration / 2))
+    //   .attr({
+    //     r: 15,
+    //     opacity: 1
+    //   });
+    nodes.append('path').attr({
       'class': function _class(d) {
-        return d.type;
+        return d.type + ' antenna';
       },
-      r: 0,
-      opacity: 0
-    }).transition().duration(duration)
-    // .delay((d, i) => i * (duration / 2))
-    .attr({
-      r: 15,
+      opacity: 0,
+      d: function d() {
+        return TopologyElements.icons.bbu;
+      },
+      transform: 'translate(-22, -22), scale(0.4)'
+    }).transition().duration(duration).attr({
       opacity: 1
     });
 
     nodes.append('text').attr({
       'text-anchor': 'start',
-      y: 17,
-      x: 17,
+      y: 13,
+      x: -14,
       opacity: 0
     }).text(function (d) {
       return 'BBU ' + d.name.substr(d.name.length - 1, 1);
@@ -389,22 +404,36 @@
     }).transition().duration(duration * 2)
     // .delay((d, i) => i * (duration / 2))
     .attr({
-      r: 30,
+      r: 40,
       opacity: 1
     });
 
-    nodes.append('circle').attr({
+    nodes.append('path').attr({
       'class': function _class(d) {
-        return d.type;
+        return d.type + ' antenna';
       },
-      r: 0,
-      opacity: 0
-    }).transition().duration(duration)
-    // .delay((d, i) => i * (duration / 2))
-    .attr({
-      r: 10,
+      opacity: 0,
+      d: function d() {
+        return TopologyElements.icons.rru;
+      },
+      transform: 'translate(-22, -22), scale(0.4)'
+    }).transition().duration(duration).attr({
       opacity: 1
     });
+
+    // nodes.append('circle')
+    //   .attr({
+    //     class: d => d.type,
+    //     r: 0,
+    //     opacity: 0
+    //   })
+    //   .transition()
+    //   .duration(duration)
+    //   // .delay((d, i) => i * (duration / 2))
+    //   .attr({
+    //     r: 10,
+    //     opacity: 1
+    //   });
   };
 
   this.drawFabric = function (nodes) {
@@ -432,23 +461,36 @@
   };
 
   this.drawOthers = function (nodes) {
-    nodes.append('circle').attr({
+    // nodes.append('circle')
+    //   .attr({
+    //     class: d => d.type,
+    //     r: 0,
+    //     opacity: 0
+    //   })
+    //   .transition()
+    //   .duration(duration)
+    //   // .delay((d, i) => i * (duration / 2))
+    //   .attr({
+    //     r: 15,
+    //     opacity: 1
+    //   });
+    nodes.append('path').attr({
       'class': function _class(d) {
-        return d.type;
+        return d.type + ' antenna';
       },
-      r: 0,
-      opacity: 0
-    }).transition().duration(duration)
-    // .delay((d, i) => i * (duration / 2))
-    .attr({
-      r: 15,
+      opacity: 0,
+      d: function d() {
+        return TopologyElements.icons.bbu;
+      },
+      transform: 'translate(-22, -22), scale(0.4)'
+    }).transition().duration(duration).attr({
       opacity: 1
     });
 
     nodes.append('text').attr({
       'text-anchor': 'start',
-      y: 17,
-      x: 17,
+      y: 13,
+      x: -12,
       opacity: 0
     }).text(function (d) {
       return d.type;