diff --git a/apps/cfm/src/test/resources/examples/CreateMdDomainA.json b/apps/cfm/src/test/resources/examples/CreateMdDomainA.json
index 2dbb761..3bb8a2f 100644
--- a/apps/cfm/src/test/resources/examples/CreateMdDomainA.json
+++ b/apps/cfm/src/test/resources/examples/CreateMdDomainA.json
@@ -2,6 +2,6 @@
   "mdName": "DomainA",
   "mdNameType": "CHARACTERSTRING",
   "mdLevel": "LEVEL3",
-  "mdNumeridId": 1
+  "mdNumericId": 1
 }
 }
\ No newline at end of file
diff --git a/drivers/microsemi/README.md b/drivers/microsemi/README.md
index 1737b08..36f5416 100644
--- a/drivers/microsemi/README.md
+++ b/drivers/microsemi/README.md
@@ -1,4 +1,4 @@
-#Microsemi Edge Assure 1000 SFP-NID
+# Microsemi Edge Assure 1000 SFP-NID
 This driver allows connection to the Microsemi Edge Assure 1000 SFP-NID
 [EdgeAssure 1000 Product Page](https://www.microsemi.com/existing-parts/parts/137346)
 
@@ -6,7 +6,7 @@
 
 Currently only a subset of it's functionality is supported through ONOS, but this will expand to full functionality in future releases.
 
-#Compile and Installation
+# Compile and Installation
 Currently this driver is built using BUCK and uses version 2.1 of onos-yang-tools<br/>
 
 All that is required to activate the driver is to run the following at the ONOS CLI<br/>
@@ -14,43 +14,49 @@
 This will load any dependent apps also. To verify the driver has been loaded run the command<br/>
 **onos:apps -a -s**
 
-#Change NETCONF default connection timeout
+# Change NETCONF default connection timeout
 Connection timeouts need to be increased from default values when using EA1000. At ONOS command line run
 
-`onos:cfg set org.onosproject.netconf.ctl.impl.NetconfControllerImpl netconfConnectTimeout 50`<br/>
-`onos:cfg set org.onosproject.netconf.ctl.impl.NetconfControllerImpl netconfReplyTimeout 50`<br/>
+```
+onos:cfg set org.onosproject.netconf.ctl.impl.NetconfControllerImpl netconfConnectTimeout 50
+onos:cfg set org.onosproject.netconf.ctl.impl.NetconfControllerImpl netconfReplyTimeout 50
+```
 
-#Creating Devices
+# Creating Devices
 EA1000 Devices will not be automatically discovered at present in ONOS. They have to be created through the network/configuration REST interface in ONOS.
 
 * The name must follow the format **netconf:ipaddr:port**
 * The **ip** and **port** must correspond to the ip and port in the name (above).
 
-`{`<br/>
-&nbsp;`"devices": {`<br/>
-&nbsp;&nbsp;`"netconf:192.168.56.10:830": {`<br/>
-&nbsp;&nbsp;&nbsp;`"netconf": {`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`"username": "admin",`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`"password": "admin",`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`"ip": "192.168.56.10",`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`"port": "830"`<br/>
-&nbsp;&nbsp;&nbsp;`},`<br/>
-&nbsp;&nbsp;&nbsp;`"basic": {`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;`"driver": "microsemi-netconf",`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;`"type": "SWITCH",`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;`"manufacturer": "Microsemi",`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;`"hwVersion": "EA1000"`<br/>
-&nbsp;&nbsp;&nbsp;`}`<br/>
-&nbsp;&nbsp;`}`<br/>
-&nbsp;`}`<br/>
-`}`<br/>
+```json
+{
+  "devices": {
+    "netconf:192.168.56.10:830": {
+      "netconf": {
+        "username": "admin",
+        "password": "admin",
+        "ip": "192.168.56.10",
+        "port": "830"
+      },
+      "basic": {
+        "driver": "microsemi-netconf",
+        "type": "SWITCH",
+        "manufacturer": "Microsemi",
+        "hwVersion": "EA1000"
+      }
+    }
+  }
+}
+```
 
 
-#Connected Device
+# Connected Device
 When the EA1000 is configured and connected is should be visible in ONOS through the **devices** command.
 
-`onos> devices`<br/>
-`id=netconf:192.168.56.10:830, available=true, local-status=connected 33s ago, role=MASTER, type=SWITCH, mfr=Microsemi, hw=EA1000, sw=4.4.0-53-generic, serial=Eagle Simulator., driver=microsemi-netconf, ipaddress=192.168.56.10, latitude=51.8865467, locType=geo, longitude=-8.4040440, name=netconf:192.168.56.10:830, port=830, protocol=NETCONF`
+```
+onos> devices
+id=netconf:192.168.56.10:830, available=true, local-status=connected 33s ago, role=MASTER, type=SWITCH, mfr=Microsemi, hw=EA1000, sw=4.4.0-53-generic, serial=Eagle Simulator., driver=microsemi-netconf, ipaddress=192.168.56.10, latitude=51.8865467, locType=geo, longitude=-8.4040440, name=netconf:192.168.56.10:830, port=830, protocol=NETCONF 
+```
 
 Note how the
 * software version (sw=**4.4.0-53-generic**)
@@ -65,37 +71,43 @@
 * Port 0 - The **Optics** port - this is a single mode 1000LX 1310nm optical connection
 * Port 1 - The **Host** port - this is a 1GB Ethernet Copper connection in to an SFP Port
 
-`onos> ports`<br/>
-`id=netconf:192.168.56.10:830, available=true, local-status=connected 15s ago, role=MASTER, type=SWITCH, mfr=Microsemi, hw=EA1000, sw=4.4.0-53-generic, serial=Eagle Simulator., driver=microsemi-netconf, ipaddress=192.168.56.10, latitude=51.8865467, locType=geo, longitude=-8.4040440, name=netconf:192.168.56.10:830, port=830, protocol=NETCONF`<br/>
-`&nbsp;port=0, state=enabled, type=fiber, speed=1000, portName=Optics`<br/>
-`&nbsp;port=1, state=enabled, type=copper, speed=1000, portName=Host`<br/>
+```
+onos> ports
+id=netconf:192.168.56.10:830, available=true, local-status=connected 15s ago, role=MASTER, type=SWITCH, mfr=Microsemi, hw=EA1000, sw=4.4.0-53-generic, serial=Eagle Simulator., driver=microsemi-netconf, ipaddress=192.168.56.10, latitude=51.8865467, locType=geo, longitude=-8.4040440, name=netconf:192.168.56.10:830, port=830, protocol=NETCONF
+    port=0, state=enabled, type=fiber, speed=1000, portName=Optics
+    port=1, state=enabled, type=copper, speed=1000, portName=Host
+```
 
-
-#OpenFlow Emulation
+# OpenFlow Emulation
 Currently the EA1000 supports only a limited set of OpenFlow rules through the Flows REST API and the Flow Objective API.
 
-##IP Source Address filtering
+## IP Source Address filtering
 A feature of the EA1000 that may be configured through Flow Rules is IP Source Address Filtering. This can only be activated on Port 0 (the optics Port). An example of this kind of flow is
 
 `POST /onos/v1/flows/ HTTP/1.1`<br/>
-`{`<br/>
-&nbsp;`"flows": [`<br/>
-&nbsp;&nbsp;`{`<br/>
-&nbsp;&nbsp;&nbsp;`"priority": 50000,`<br/>
-&nbsp;&nbsp;&nbsp;`"timeout": 0,`<br/>
-&nbsp;&nbsp;&nbsp;`"isPermanent": true,`<br/>
-&nbsp;&nbsp;&nbsp;`"deviceId": "netconf:192.168.56.10:830",`<br/>
-&nbsp;&nbsp;&nbsp;`"tableId": 8,`<br/>
-&nbsp;&nbsp;&nbsp;`"treatment": {`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;`"instructions": [  {"type": "NOACTION"} ],`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;`"deferred": []`<br/>
-&nbsp;&nbsp;&nbsp;`},`<br/>
-&nbsp;&nbsp;&nbsp;`"selector": {`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;`"criteria": [  {`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`"type": "IPV4_SRC", "ip": "192.168.8.0/24"`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;`},{`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`"type": "IN_PORT", "port": "0"`<br/>
-`} ] } } ] }`<br/>
+```json
+{
+  "flows": [
+    {
+      "priority": 50000,
+      "timeout": 0,
+      "isPermanent": true,
+      "deviceId": "netconf:192.168.56.10:830",
+      "tableId": 8,
+      "treatment": {
+        "instructions": [ {"type": "NOACTION"} ],
+        "deferred": []
+       },
+      "selector": {
+        "criteria": [
+          {"type": "IPV4_SRC", "ip": "192.168.8.0/24"},
+          {"type": "IN_PORT", "port": "0"}
+        ]
+      }
+    }
+  ]
+}
+```
 
 ## Vlan Tag Manipulation
 **Note: Before Vlan Tag manipulation can be done the mode of the interface on the EA1000 has to be changed to be compatible with the type of tags that are being received. If this is not done, once an EVC is created the packets that have the Vlan tagged on will be treated as untagged by EA1000, and dropped if there is no EVC present corresponding to the interface PVID. See the section below on the "Setting EA1000 Interface Tagging Mode"**
@@ -103,97 +115,104 @@
 Flows that Push, Pop or Overwrite VLAN tags are implemented in EA1000 and are treated as MEF Carrier Ethernet EVCs. Both CTags and STags can be pushed on to matching Ethernet packets at network Layer 2.
 
 `POST /onos/v1/flows/ HTTP/1.1`<br/>
-`{`<br/>
-`  "flows": [`<br/>
-`    {`<br/>
-`      "priority": 50000,`<br/>
-`      "timeout": 0,`<br/>
-`      "isPermanent": true,`<br/>
-`      "tableId": 6,` --This sets the EVC id  - this first flow is configuring the customer side - UNI-C<br/>
-`      "deviceId": "netconf:192.168.56.10:830",`<br/>
-`      "treatment": {`<br/>
-`        "instructions": [`<br/>
-`          {`<br/>
-`            "type": "L2MODIFICATION",`<br/>
-`            "subtype": "VLAN_PUSH",` --This pushes a VLAN on<br/>
-`            "ethernetType": "0x88a8"`  --The pushed VLAN type is QinQ<br/>
-`          },{`<br/>
-`            "type": "L2MODIFICATION",`<br/>
-`            "subtype": "VLAN_ID",`<br/>
-`            "vlanId": "200"`  --The pushed VLAN id is 200<br/>
-`          }`<br/>
-`        ],`<br/>
-`        "deferred": []`<br/>
-`      },`<br/>
-`      "selector": {`<br/>
-`        "criteria": [`<br/>
-`         {`<br/>
-`          "type": "VLAN_VID",`<br/>
-`          "vlanId": "100"` -- Applies only to packets already tagged with VLAN 100..<br/>
-`         },{`<br/>
-`          "type": "IN_PORT",`<br/>
-`          "port": "1"`  -- ..that are coming in on the Host port<br/>
-`         }`<br/>
-`        ]`<br/>
-`      }`<br/>
-`    },{`<br/>
-`      "priority": 50000,`<br/>
-`      "timeout": 0,`<br/>
-`      "isPermanent": true,`<br/>
-`      "tableId": 6,`  -- The same EVC, but now we are configuring another VLAN<br/>
-`      "deviceId": "netconf:192.168.56.10:830",`<br/>
-`      "treatment": {`<br/>
-`       "instructions": [`<br/>
-`         {`<br/>
-`          "type": "L2MODIFICATION",`<br/>
-`          "subtype": "VLAN_PUSH",`  -- Push again<br/>
-`          "ethernetType": "0x88a8"`  -- QinQ again<br/>
-`         },{`
-`          "type": "L2MODIFICATION",`<br/>
-`          "subtype": "VLAN_ID",`<br/>
-`          "vlanId": "200"`  -- VLAN 200 again<br/>
-`         }`<br/>
-`        ],`<br/>
-`        "deferred": []`<br/>
-`      },`<br/>
-`      "selector": {`<br/>
-`        "criteria": [`<br/>
-`         {`<br/>
-`          "type": "VLAN_VID",`<br/>
-`          "vlanId": "101"`  -- Applies only to packets already tagged with VLAN 101..<br/>
-`         },{`<br/>
-`          "type": "IN_PORT",`<br/>
-`          "port": "1"`  -- ..that are coming in on the Host port<br/>
-`         }`<br/>
-`        ]`<br/>
-`      }`<br/>
-`    },{`<br/>
-`      "priority": 50000,`<br/>
-`      "timeout": 0,`<br/>
-`      "isPermanent": true,`<br/>
-`      "tableId": 6,`  -- The same EVC, but now we are configuring the opposite side<br/>
-`      "deviceId": "netconf:192.168.56.10:830",`<br/>
-`      "treatment": {`<br/>
-`       "instructions": [`<br/>
-`         {`<br/>
-`          "type": "L2MODIFICATION",`<br/>
-`          "subtype": "VLAN_POP"`  -- Here we are popping the top level tag<br/>
-`         }`<br/>
-`       ],`<br/>
-`       "deferred": []`<br/>
-`      },`<br/>
-`      "selector": {`<br/>
-`       "criteria": [`<br/>
-`        {`<br/>
-`         "type": "VLAN_VID",`  -- Applies only to packets tagged with VLAN 200<br/>
-`         "vlanId": "200"`<br/>
-`        },{`<br/>
-`         "type": "IN_PORT",`<br/>
-`         "port": "0"`  -- That are coming in on the Optics Port<br/>
-`        }`<br/>
-`      ] } } ] }`<br/>
+```json
+{
+  "flows": [
+    {
+      "priority": 50000,
+      "timeout": 0,
+      "isPermanent": true,
+      "tableId": 6, // This sets the EVC id - this first flow is configuring the customer side - UNI-C
+      "deviceId": "netconf:192.168.56.10:830",
+      "treatment": {
+        "instructions": [
+          {
+            "type": "L2MODIFICATION",
+            "subtype": "VLAN_PUSH", // This pushes a VLAN on
+            "ethernetType": "0x88a8" // The pushed VLAN type is QinQ
+          },
+          {
+            "type": "L2MODIFICATION",
+            "subtype": "VLAN_ID",
+            "vlanId": "200" // The pushed VLAN id is 200
+          }],
+        "deferred": []
+      },
+      "selector": {
+        "criteria": [
+        {
+          "type": "VLAN_VID",
+          "vlanId": "100" // Applies only to packets already tagged with VLAN 100..
+        },
+        {
+          "type": "IN_PORT",
+          "port": "1" // ...that are coming in on the Host port
+        }]
+        }
+    },
+    {
+      "priority": 50000,
+      "timeout": 0,
+      "isPermanent": true,
+      "tableId": 6, // The same EVC, but now we are configuring another VLAN
+      "deviceId": "netconf:192.168.56.10:830",
+      "treatment": {
+        "instructions": [
+          {
+            "type": "L2MODIFICATION",
+            "subtype": "VLAN_PUSH", // Push again
+            "ethernetType": "0x88a8" // QinQ again
+          },
+          {
+            "type": "L2MODIFICATION",
+            "subtype": "VLAN_ID",
+            "vlanId": "200" // VLAN 200 again
+          }],
+        "deferred": []
+      },
+      "selector": {
+        "criteria": [
+          {
+            "type": "VLAN_VID",
+            "vlanId": "101" // Applies only to packets already tagged with VLAN 101..
+          },
+          {
+            "type": "IN_PORT",
+            "port": "1" // ... that are coming in on the Host port
+          }]
+      }
+    },
+    {
+      "priority": 50000,
+      "timeout": 0,
+      "isPermanent": true,
+      "tableId": 6, // The same EVC, but now we are configuring the opposite side
+      "deviceId": "netconf:192.168.56.10:830",
+      "treatment": {
+        "instructions": [
+        {
+          "type": "L2MODIFICATION",
+          "subtype": "VLAN_POP" // Here we are popping the top level tag
+        }],
+        "deferred": []
+      },
+      "selector": {
+        "criteria": [
+          {
+            "type": "VLAN_VID", // Applies only to packets tagged with VLAN 200
+            "vlanId": "200"
+          },
+          {
+            "type": "IN_PORT",
+            "port": "0" // That are coming in on the Optics Port
+          }]
+      }
+    }
+  ]
+}
+```
 
-##Setting EA1000 Interface Tagging Mode
+## Setting EA1000 Interface Tagging Mode
 The Interface of the EA1000 has an attribute **frame_format** that must be set to either:
 * none (default)
 * ctag
@@ -210,124 +229,150 @@
 
 See the EA1000 User Guide for details on how to use *yangcli-pro* to access the EA1000.
 
-On an EA1000 accessed through *yangcli-pro* the following commands can be used to make these changes:<br/>
-`admin@192.168.2.234> discard-changes`<br/>
-`admin@192.168.2.234> copy-config source=startup target=candidate`<br/>
-`admin@192.168.2.234> merge /interfaces/interface[name='eth0']/frame-format --value='stag'`<br/>
-`admin@192.168.2.234> merge /interfaces/interface[name='eth1']/frame-format --value='ctag'`<br/>
-`admin@192.168.2.234> commit`<br/>
-`admin@192.168.2.234> copy-config source=running target=startup`<br/>
+On an EA1000 accessed through *yangcli-pro* the following commands can be used to make these changes:
 
+```
+admin@192.168.2.234> discard-changes
+admin@192.168.2.234> copy-config source=startup target=candidate
+admin@192.168.2.234> merge /interfaces/interface[name='eth0']/frame-format --value='stag'
+admin@192.168.2.234> merge /interfaces/interface[name='eth1']/frame-format --value='ctag'
+admin@192.168.2.234> commit
+admin@192.168.2.234> copy-config source=running target=startup
+```
 
-#ONOS Carrier Ethernet Application
+# ONOS Carrier Ethernet Application
 The ONOS [Carrier Ethernet](https://wiki.onosproject.org/display/ONOS/Carrier+Ethernet+Application) application allows EVCs to be created between UNIs that are linked together in ONOS. This is translated down to OpenFlow switches by converting the **ce-evc-create** commands in to Flow Rules similar to those shown above.
 
 While EA1000 is not an OpenFlow switch, it's driver can convert these flows in to NETCONF which can be used to configure EVCs on the EA1000. Because EA1000 is just a 2 port device it represents only 1 UNI (conventionally on switches each port represnts a UNI).
 
 When an EA1000 device is configured in ONOS the Carrier Ethernet Application considers both of its ports to be UNIs, as can be seen in the listing below:
 
-`onos> ce-uni-list`<br/>
-`CarrierEthernetUni{id=netconf:192.168.56.10:830/0, cfgId=netconf:192.168.56.10:830/0, role=null, refCount=0, ceVlanIds=[], capacity=1000000000, usedCapacity=0.0, bandwidthProfiles=[]}`<br/>
-`CarrierEthernetUni{id=netconf:192.168.56.10:830/1, cfgId=netconf:192.168.56.10:830/1, role=null, refCount=0, ceVlanIds=[], capacity=1000000000, usedCapacity=0.0, bandwidthProfiles=[]}`<br/>
+```
+onos> ce-uni-list
+CarrierEthernetUni{id=netconf:192.168.56.10:830/0, cfgId=netconf:192.168.56.10:830/0, role=null, refCount=0, ceVlanIds=[], capacity=1000000000, usedCapacity=0.0, bandwidthProfiles=[]}
+CarrierEthernetUni{id=netconf:192.168.56.10:830/1, cfgId=netconf:192.168.56.10:830/1, role=null, refCount=0, ceVlanIds=[], capacity=1000000000, usedCapacity=0.0, bandwidthProfiles=[]}
+```
 
 This mismatch is handled in the driver - both side appear to be separate here but they will apply to the same single UNI on the EA1000 in opposite directions.
 
 For an EVC to be created there has to an ONOS 'link' between 2 UNIs for a POINT-TO-POINT connection - an Ethernet Virtual Private Line (**EVPL**). There has to be more than 2 UNIs to create a MULTIPOINT-TO-MULTIPOINT link - an E-Lan.
 
-##Links
+## Links
 In a simple scenario that has 2 EA1000s (netconf:192.168.56.10:830 and netconf:192.168.56.20:830) configured in ONOS, the two might be linked together through their optics ports (port 0). The following result is expected for a bi-directional link:
 
-`onos> links`<br/>
-`src=netconf:192.168.56.10:830/0, dst=netconf:192.168.56.20:830/0, type=DIRECT, state=ACTIVE, expected=false`<br/>
-`src=netconf:192.168.56.20:830/0, dst=netconf:192.168.56.10:830/0, type=DIRECT, state=ACTIVE, expected=false`<br/>
-
+```
+onos> links
+src=netconf:192.168.56.10:830/0, dst=netconf:192.168.56.20:830/0, type=DIRECT, state=ACTIVE, expected=false
+src=netconf:192.168.56.20:830/0, dst=netconf:192.168.56.10:830/0, type=DIRECT, state=ACTIVE, expected=false
+```
 This will not exist by default since Link Discovery is not yet a feature of the EA1000 driver. These have to be created manually - through the network/configuration REST API.
 
 `POST /onos/v1/network/configuration/ HTTP/1.1`<br/>
-`{`<br/>
-`  "links": {`<br/>
-`  "netconf:192.168.56.10:830/0-netconf:192.168.56.20:830/0" : {`  -- 10 to 20<br/>
-`    "basic" : {`<br/>
-`      "type" : "DIRECT"`<br/>
-`    }`<br/>
-`  },`<br/>
-`  "netconf:192.168.56.20:830/0-netconf:192.168.56.10:830/0" : {`  -- and reverse<br/>
-`    "basic" : {`<br/>
-`      "type" : "DIRECT"`<br/>
-`    } } } }`<br/>
+```json
+{
+  "links": {
+    "netconf:192.168.56.10:830/0-netconf:192.168.56.20:830/0": { // 10 to 20
+      "basic" : {
+        "type" : "DIRECT"
+      }
+    },
+    "netconf:192.168.56.20:830/0-netconf:192.168.56.10:830/0" : { // and reverse
+      "basic" : {
+        "type" : "DIRECT"
+      }
+    }
+  }
+}
+```
 
-##EVPL Creation
+## EVPL Creation
 To create a simple EVPL the following command can be used at the ONOS CLI:<br/>
 
-`onos>ce-evc-create --cevlan 101 evpl1 POINT_TO_POINT netconf:192.168.57.10:830/0 netconf:192.168.57.20:830/0`<br/>
+```
+onos>ce-evc-create --cevlan 101 evpl1 POINT_TO_POINT netconf:192.168.57.10:830/0 netconf:192.168.57.20:830/0
+```
 
 This returns without any message. Tailing through the ONOS logs will reveal any error that might have occurred.<br/>
 
-This EVC can be viewed only through the command line:<br/>
-`onos> ce-evc-list`<br/>
-`  CarrierEthernetVirtualConnection{id=EP-Line-1, cfgId=evpl1, type=POINT_TO_POINT, state=ACTIVE,`<br/>
-`UNIs=[`<br/>
-`CarrierEthernetUni{id=netconf:192.168.56.10:830/0, cfgId=netconf:192.168.56.10:830/0, role=Root, refCount=0, ceVlanIds=[101], capacity=1000000000, usedCapacity=0.0, bandwidthProfiles=[CarrierEthernetBandwidthProfile{id=FC-1, type=EVC, cir=0.0, cbs=0, eir=0.0, ebs=0}]}, `<br/>
-`CarrierEthernetUni{id=netconf:192.168.56.20:830/0, cfgId=netconf:192.168.56.20:830/0, role=Root, refCount=0, ceVlanIds=[101], capacity=1000000000, usedCapacity=0.0, bandwidthProfiles=[CarrierEthernetBandwidthProfile{id=FC-1, type=EVC, cir=0.0, cbs=0, eir=0.0, ebs=0}]}], `<br/>
-`FCs=[CarrierEthernetForwardingConstruct{id=FC-1, cfgId=null, type=POINT_TO_POINT, vlanId=1, metroConnectId=null, refCount=1, `<br/>
-`LTPs=[`<br/>
-`CarrierEthernetLogicalTerminationPoint{id=netconf:192.168.56.10:830/0, cfgId=netconf:192.168.56.10:830/0, role=Root, ni=CarrierEthernetUni{id=netconf:192.168.56.10:830/0, cfgId=netconf:192.168.56.10:830/0, role=Root, refCount=0, ceVlanIds=[101], capacity=1000000000, usedCapacity=0.0, bandwidthProfiles=[CarrierEthernetBandwidthProfile{id=FC-1, type=EVC, cir=0.0, cbs=0, eir=0.0, ebs=0}]}},`   `CarrierEthernetLogicalTerminationPoint{id=netconf:192.168.56.20:830/0, cfgId=netconf:192.168.56.20:830/0, role=Root, ni=CarrierEthernetUni{id=netconf:192.168.56.20:830/0, cfgId=netconf:192.168.56.20:830/0, role=Root, refCount=0, ceVlanIds=[101], capacity=1000000000, usedCapacity=0.0, bandwidthProfiles=[CarrierEthernetBandwidthProfile{id=FC-1, type=EVC, cir=0.0, cbs=0, eir=0.0, ebs=0}]}}]}]}`<br/>
+This EVC can be viewed only through the command line:
+```
+onos> ce-evc-list
+CarrierEthernetVirtualConnection{id=EP-Line-1, cfgId=evpl1, type=POINT_TO_POINT, state=ACTIVE,
+UNIs=[
+CarrierEthernetUni{id=netconf:192.168.56.10:830/0, cfgId=netconf:192.168.56.10:830/0, role=Root, refCount=0, ceVlanIds=[101], capacity=1000000000, usedCapacity=0.0, bandwidthProfiles=[CarrierEthernetBandwidthProfile{id=FC-1, type=EVC, cir=0.0, cbs=0, eir=0.0, ebs=0}]},
+CarrierEthernetUni{id=netconf:192.168.56.20:830/0, cfgId=netconf:192.168.56.20:830/0, role=Root, refCount=0, ceVlanIds=[101], capacity=1000000000, usedCapacity=0.0, bandwidthProfiles=[CarrierEthernetBandwidthProfile{id=FC-1, type=EVC, cir=0.0, cbs=0, eir=0.0, ebs=0}]}],
+FCs=[CarrierEthernetForwardingConstruct{id=FC-1, cfgId=null, type=POINT_TO_POINT, vlanId=1, metroConnectId=null, refCount=1,
+LTPs=[
+CarrierEthernetLogicalTerminationPoint{id=netconf:192.168.56.10:830/0, cfgId=netconf:192.168.56.10:830/0, role=Root, ni=CarrierEthernetUni{id=netconf:192.168.56.10:830/0, cfgId=netconf:192.168.56.10:830/0, role=Root, refCount=0, ceVlanIds=[101], capacity=1000000000, usedCapacity=0.0, bandwidthProfiles=[CarrierEthernetBandwidthProfile{id=FC-1, type=EVC, cir=0.0, cbs=0, eir=0.0, ebs=0}]}}, CarrierEthernetLogicalTerminationPoint{id=netconf:192.168.56.20:830/0, cfgId=netconf:192.168.56.20:830/0, role=Root, ni=CarrierEthernetUni{id=netconf:192.168.56.20:830/0, cfgId=netconf:192.168.56.20:830/0, role=Root, refCount=0, ceVlanIds=[101], capacity=1000000000, usedCapacity=0.0, bandwidthProfiles=[CarrierEthernetBandwidthProfile{id=FC-1, type=EVC, cir=0.0, cbs=0, eir=0.0, ebs=0}]}}]}]}
+```
 
-##EVPL flows
+## EVPL flows
 This creates a set of flows in ONOS that are pushed down to the two EA1000s through NETCONF to configure the EVCs
 
-`onos> flows`<br/>
-`deviceId=netconf:192.168.56.10:830, flowRuleCount=2`<br/>
-`    id=71000050d21dd5, state=ADDED, bytes=0, packets=0, duration=0, liveType=UNKNOWN, priority=50000, tableId=1, appId=org.onosproject.ecord.carrierethernet, payLoad=null, selector=[IN_PORT:0, VLAN_VID:1], treatment=DefaultTrafficTreatment{immediate=[VLAN_POP], deferred=[], transition=None, meter=None, cleared=false, metadata=null}`  -- This represents ingress on the Optics port 0 on device A and POPs off the S-Tag<br/>
-`    id=710000b5c1f057, state=ADDED, bytes=0, packets=0, duration=0, liveType=UNKNOWN, priority=50000, tableId=1, appId=org.onosproject.ecord.carrierethernet, payLoad=null, selector=[IN_PORT:1, VLAN_VID:101], treatment=DefaultTrafficTreatment{immediate=[VLAN_PUSH:qinq, VLAN_ID:1], deferred=[], transition=TABLE:0, meter=None, cleared=false, metadata=null}`  -- This represents ingress on the Host port 1 on device A and pushes on the S-Tag 1<br/>
+```
+onos> flows
+deviceId=netconf:192.168.56.10:830, flowRuleCount=2
+id=71000050d21dd5, state=ADDED, bytes=0, packets=0, duration=0, liveType=UNKNOWN, priority=50000, tableId=1, appId=org.onosproject.ecord.carrierethernet, payLoad=null, selector=[IN_PORT:0, VLAN_VID:1], treatment=DefaultTrafficTreatment{immediate=[VLAN_POP], deferred=[], transition=None, meter=None, cleared=false, metadata=null} # This represents ingress on the Optics port 0 on device A and POPs off the S-Tag
+id=710000b5c1f057, state=ADDED, bytes=0, packets=0, duration=0, liveType=UNKNOWN, priority=50000, tableId=1, appId=org.onosproject.ecord.carrierethernet, payLoad=null, selector=[IN_PORT:1, VLAN_VID:101], treatment=DefaultTrafficTreatment{immediate=[VLAN_PUSH:qinq, VLAN_ID:1], deferred=[], transition=TABLE:0, meter=None, cleared=false, metadata=null} # This represents ingress on the Host port 1 on device A and pushes on the S-Tag 1
 
-`deviceId=netconf:192.168.56.20:830, flowRuleCount=2`<br/>
-`    id=710000613c8252, state=ADDED, bytes=0, packets=0, duration=0, liveType=UNKNOWN, priority=50000, tableId=1, appId=org.onosproject.ecord.carrierethernet, payLoad=null, selector=[IN_PORT:0, VLAN_VID:1], treatment=DefaultTrafficTreatment{immediate=[VLAN_POP], deferred=[], transition=None, meter=None, cleared=false, metadata=null}`  -- This represents ingress on the Optics port 0 on device B and POPs off the S-Tag 1<br/>
-`    id=7100006ca2573f, state=ADDED, bytes=0, packets=0, duration=0, liveType=UNKNOWN, priority=50000, tableId=1, appId=org.onosproject.ecord.carrierethernet, payLoad=null, selector=[IN_PORT:1, VLAN_VID:101], treatment=DefaultTrafficTreatment{immediate=[VLAN_PUSH:qinq, VLAN_ID:1], deferred=[], transition=TABLE:0, meter=None, cleared=false, metadata=null}`  -- This represents ingress on the Host port 1 on device B and pushes on the S-Tag 1<br/>
+deviceId=netconf:192.168.56.20:830, flowRuleCount=2
+id=710000613c8252, state=ADDED, bytes=0, packets=0, duration=0, liveType=UNKNOWN, priority=50000, tableId=1, appId=org.onosproject.ecord.carrierethernet, payLoad=null, selector=[IN_PORT:0, VLAN_VID:1], treatment=DefaultTrafficTreatment{immediate=[VLAN_POP], deferred=[], transition=None, meter=None, cleared=false, metadata=null} # This represents ingress on the Optics port 0 on device B and POPs off the S-Tag 1
+id=7100006ca2573f, state=ADDED, bytes=0, packets=0, duration=0, liveType=UNKNOWN, priority=50000, tableId=1, appId=org.onosproject.ecord.carrierethernet, payLoad=null, selector=[IN_PORT:1, VLAN_VID:101], treatment=DefaultTrafficTreatment{immediate=[VLAN_PUSH:qinq, VLAN_ID:1], deferred=[], transition=TABLE:0, meter=None, cleared=false, metadata=null} # This represents ingress on the Host port 1 on device B and pushes on the S-Tag 1
+```
 
 Through these flows it's clear that the CE-VLAN on the UNI-C side is 101 and that the S-Tag that is being pushed on is VLAN 1. Packets coming back in on the UNI-N on port 0 have their S-Tag popped off. In this scenario this will create evc-1 on both of the EA1000s.<br/>
 
 On the actual EA1000 itself using a NETCONF CLI Client like yangcli-pro, the result is:
+```
+admin@192.168.56.10> sget-config /mef-services/uni source=running
+rpc-reply {
+  data {
+    mef-services {
+      uni { # There is only one UNI on the EA1000
+        name Uni-on-192.168.56.10:830 # Automatically assigned
+        evc 1 { # From the VLAN 1 from CE app
+          evc-index 1
+          name EVC-1 # Automatically assigned
+          evc-per-uni {
+            evc-per-uni-c { # The UNI-C side
+            ce-vlan-map 101 # Could be a range of values
+            flow-mapping {
+              ce-vlan-id 101
+              flow-id 31243725464268887 # For tracking with ONOS
+            }
+            ingress-bwp-group-index 0 # No meters
+            tag-push { # Push on an a VLAN
+              push-tag-type pushStag # Push type is S-TAG
+              outer-tag-vlan 1 # Push value is 1
+              }
+            }
+            evc-per-uni-n { # For the UNI-N side
+              ce-vlan-map 1 # The VLAN to match for egress on this side
+              flow-mapping {
+                ce-vlan-id 1
+                flow-id 31243723770830293
+              }
+              ingress-bwp-group-index 0
+              tag-pop { # Pop off the S-TAG
+              }
+            }
+          }
+        }
+      }
+    }
+  }
+}
+admin@192.168.56.10>
+```
 
-`admin@192.168.56.10> sget-config /mef-services/uni source=running`<br/>
-`rpc-reply {`<br/>
-&nbsp;data `{`<br/>
-&nbsp;&nbsp;`mef-services {`<br/>
-&nbsp;&nbsp;&nbsp;`uni {`  -- There is only one UNI on the EA1000<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;`name Uni-on-192.168.56.10:830`  -- Automatically assigned<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;`evc  1 {`  -- From the VLAN 1 from CE app<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`evc-index 1`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`name EVC-1`  -- Automatically assigned<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`evc-per-uni {`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`evc-per-uni-c {`  -- The UNI-C side<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`ce-vlan-map 101`  -- Could be a range of values<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`flow-mapping {`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`ce-vlan-id 101`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`flow-id 31243725464268887`  -- For tracking with ONOS<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`}`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`ingress-bwp-group-index 0`  -- No meters<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`tag-push {`  -- Push on an a VLAN<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`push-tag-type pushStag`  -- Push type is S-TAG<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`outer-tag-vlan 1`  -- Push value is 1<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`}`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`}`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`evc-per-uni-n {`  -- For the UNI-N side<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`ce-vlan-map 1`  -- The VLAN to match for egress on this side<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`flow-mapping {`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`ce-vlan-id 1`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`flow-id 31243723770830293`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`}`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`ingress-bwp-group-index 0`<br/>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`tag-pop {`  -- Pop off the S-TAG<br/>
-`} } } } } } } }`<br/>
-`admin@192.168.56.10>`<br/>
-
-##CIR and EIR as OpenFlow Meters
+## CIR and EIR as OpenFlow Meters
 ** Note: The meters created by Carrier Ethernet are not compatible with Open vSwitch at present.They will disrupt the configuration of the EA1000 if there are Open VSwitch based OpenFlow switches between the UNIs **<br/>
 
 To create limits on how the EVPL can transport data the CIR, EIR and CBS and EBS values can be specified:
 
-`onos> ce-evc-create --cevlan 102 -c 400 -e 200 -cbs 3000 -ebs 2000 evpl2 POINT_TO_POINT netconf:192.168.56.10:830/0 netconf:192.168.56.20:830/0`<br/>
+```
+onos> ce-evc-create --cevlan 102 -c 400 -e 200 -cbs 3000 -ebs 2000 evpl2 POINT_TO_POINT netconf:192.168.56.10:830/0 netconf:192.168.56.20:830/0
+```
 
 * -c 400 means Commit Information Rate is 400 MB/s
 * -e 200 means Excess information Rate is 200 MB/s
@@ -336,13 +381,11 @@
 
 These will be created as meters in Open Flow.
 
-`onos> meters`<br/>
-` DefaultMeter{device=netconf:192.168.56.20:830, id=1, appId=org.onosproject.ecord.carrierethernet, unit=KB_PER_SEC, isBurst=true, state=PENDING_ADD, bands=[DefaultBand{rate=50000, burst-size=3000, type=REMARK, drop-precedence=0}, DefaultBand{rate=75000, burst-size=5000, type=DROP, drop-precedence=null}]}`<br/>
-` DefaultMeter{device=netconf:192.168.56.10:830, id=1, appId=org.onosproject.ecord.carrierethernet, unit=KB_PER_SEC, isBurst=true, state=PENDING_ADD, bands=[DefaultBand{rate=75000, burst-size=5000, type=DROP, drop-precedence=null}, DefaultBand{rate=50000, burst-size=3000, type=REMARK, drop-precedence=0}]}`<br/>
+```
+onos> meters
+DefaultMeter{device=netconf:192.168.56.20:830, id=1, appId=org.onosproject.ecord.carrierethernet, unit=KB_PER_SEC, isBurst=true, state=PENDING_ADD, bands=[DefaultBand{rate=50000, burst-size=3000, type=REMARK, drop-precedence=0}, DefaultBand{rate=75000, burst-size=5000, type=DROP, drop-precedence=null}]}
+DefaultMeter{device=netconf:192.168.56.10:830, id=1, appId=org.onosproject.ecord.carrierethernet, unit=KB_PER_SEC, isBurst=true, state=PENDING_ADD, bands=[DefaultBand{rate=75000, burst-size=5000, type=DROP, drop-precedence=null}, DefaultBand{rate=50000, burst-size=3000, type=REMARK, drop-precedence=0}]}
+```
 
-Here the rates is shown as Bands. For each device the Bands are
-*  REMARK for CIR and CBS - the REMARK applies to any packets that exceed the CIR in kB/s (400Mb/s = 50000kB/s) and the burst size 3000 Bytes
-*  DROP for EIR and EBS - the DROP applies to any packets that exceed the sum of CIR and EIR in kB/s (400Mb/s + 200Mb/s = 75000kB/s) and a burst in excess of CBS and EBS (3000 + 2000 = 5000 Bytes)
-
-##EVC Deletion
+## EVC Deletion
 EVCs can be deleted individually with **ce-evc-remove <evc-id>** or all together with **ce-evc-remove-all**.
\ No newline at end of file
diff --git a/drivers/microsemi/src/main/java/org/onosproject/drivers/microsemi/EA1000CfmMepProgrammable.java b/drivers/microsemi/src/main/java/org/onosproject/drivers/microsemi/EA1000CfmMepProgrammable.java
index df6844e..5e38f7c 100755
--- a/drivers/microsemi/src/main/java/org/onosproject/drivers/microsemi/EA1000CfmMepProgrammable.java
+++ b/drivers/microsemi/src/main/java/org/onosproject/drivers/microsemi/EA1000CfmMepProgrammable.java
@@ -430,10 +430,10 @@
             case INTERVAL_3MS:
                 yamgMa.ccmInterval(CcmIntervalEnum.YANGAUTOPREFIX3_3MS);
                 break;
-            case INVERVAL_10MS:
+            case INTERVAL_10MS:
                 yamgMa.ccmInterval(CcmIntervalEnum.YANGAUTOPREFIX10MS);
                 break;
-            case INVERVAL_100MS:
+            case INTERVAL_100MS:
                 yamgMa.ccmInterval(CcmIntervalEnum.YANGAUTOPREFIX100MS);
                 break;
             case INTERVAL_1S:
diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/l2monitoring/cfm/MaintenanceAssociation.java b/incubator/api/src/main/java/org/onosproject/incubator/net/l2monitoring/cfm/MaintenanceAssociation.java
index b3c24de..5b28c9a 100644
--- a/incubator/api/src/main/java/org/onosproject/incubator/net/l2monitoring/cfm/MaintenanceAssociation.java
+++ b/incubator/api/src/main/java/org/onosproject/incubator/net/l2monitoring/cfm/MaintenanceAssociation.java
@@ -82,8 +82,8 @@
     public enum CcmInterval {
         INVALID(0),
         INTERVAL_3MS(3),
-        INVERVAL_10MS(10),
-        INVERVAL_100MS(100),
+        INTERVAL_10MS(10),
+        INTERVAL_100MS(100),
         INTERVAL_1S(1000),
         INTERVAL_10S(10000),
         INTERVAL_1MIN(60000),
