{
  "ports" : { },
  "devices" : { },
  "hosts" : { },
  "apps" : {
    "org.onosproject.provider.lldp" : {
      "suppression" : {
        "deviceTypes" : [ "ROADM", "OTN", "FIBER_SWITCH", "OPTICAL_AMPLIFIER" ],
        "annotation" : "{\"no-lldp\":null}"
      }
    },
    "org.opencord.kafka" : { },
    "org.onosproject.core" : {
      "multicast" : {
        "ingressVlan" : 550,
        "egressVlan" : 550,
        "egressInnerVlan" : 55
      }
    },
    "org.opencord.sadis" : {
      "bandwidthprofile" : {
        "integration" : {
          "cache" : {
            "enabled" : true,
            "maxsize" : 40,
            "ttl" : "PT1m"
          }
        },
        "entries" : [ {
          "id" : "High-Speed-Internet",
          "cir" : 100000,
          "cbs" : 10000,
          "eir" : 100000,
          "ebs" : 10000,
          "air" : 100000
        }, {
          "id" : "VOIP",
          "cir" : 400000,
          "cbs" : 10000,
          "eir" : 400000,
          "ebs" : 10000,
          "air" : 100000
        }, {
          "id" : "User1-Specific",
          "cir" : 60000,
          "cbs" : 10000,
          "eir" : 40000,
          "ebs" : 10000
        }, {
          "id" : "User1-Specific2",
          "cir" : 500000,
          "cbs" : 10000,
          "eir" : 300000,
          "ebs" : 10000
        }, {
          "id" : "Fixed9Gbps",
          "cir" : 0,
          "cbs" : 0,
          "eir" : 0,
          "ebs" : 0,
          "air" : 9000000
        }, {
          "id" : "TCONT_TYPE1_200Mbps_Fixed_ForVOIP",
          "pir" : 0,
          "pbs" : 0,
          "cir" : 0,
          "cbs" : 0,
          "gir" : 200000
        }, {
          "id" : "TCONT_TYPE2_500Mbps_Assured_ForVoD",
          "pir" : 500000,
          "pbs" : 10000,
          "cir" : 500000,
          "cbs" : 10000,
          "gir" : 0
        }, {
          "id" : "TCONT_TYPE3_700Mbps_Peak_500Mbps_Assured_ForVoD",
          "pir" : 700000,
          "pbs" : 10000,
          "cir" : 500000,
          "cbs" : 10000,
          "gir" : 0
        }, {
          "id" : "TCONT_TYPE4_1Gbps_Peak_User1_HSI_Upstream",
          "pir" : 1000000,
          "pbs" : 10000,
          "cir" : 0,
          "cbs" : 0,
          "gir" : 0
        }, {
          "id" : "TCONT_TYPE5_1Gbps_Peak_500Mbps_Assured_200Mbps_Fixed_User1_HSI_Upstream",
          "pir" : 1000000,
          "pbs" : 10000,
          "cir" : 500000,
          "cbs" : 10000,
          "gir" : 200000
        } ]
      },
      "sadis" : {
        "integration" : {
          "cache" : {
            "enabled" : true,
            "maxsize" : 50,
            "ttl" : "PT1m"
          }
        },
        "entries" : [ {
          "id" : "ALPHe3d1cfa7-1",
          "nasPortId" : "ALPHe3d1cfa7-1",
          "circuitId" : "ALPHe3d1cfa7-1",
          "remoteId" : "ALPHe3d1cfa7-1",
          "uniTagList" : [ {
            "ponCTag" : 999,
            "ponSTag" : 999,
            "technologyProfileId" : 64,
            "downstreamBandwidthProfile" : "Fixed9Gbps",
            "upstreamBandwidthProfile" : "Fixed9Gbps",
            "isDhcpRequired" : "true"
          } ]
        }, {
          "id" : "ALPHe3d1cea3-1",
          "nasPortId" : "ALPHe3d1cea3-1",
          "uniTagList" : [ {
            "uniTagMatch" : 35,
            "ponCTag" : 801,
            "ponSTag" : 111,
            "usPonCTagPriority" : 0,
            "usPonSTagPriority" : 0,
            "dsPonCTagPriority" : 0,
            "dsPonSTagPriority" : 0,
            "technologyProfileId" : 64,
            "downstreamBandwidthProfile" : "High-Speed-Internet",
            "upstreamBandwidthProfile" : "TCONT_TYPE4_1Gbps_Peak_User1_HSI_Upstream",
            "isDhcpRequired" : "true",
            "serviceName" : "HSIA"
          }, {
            "uniTagMatch" : 65,
            "ponCTag" : 444,
            "ponSTag" : 333,
            "usPonCTagPriority" : 7,
            "usPonSTagPriority" : 7,
            "dsPonCTagPriority" : 7,
            "dsPonSTagPriority" : 7,
            "technologyProfileId" : 65,
            "downstreamBandwidthProfile" : "VOIP",
            "upstreamBandwidthProfile" : "TCONT_TYPE1_200Mbps_Fixed_ForVOIP",
            "isDhcpRequired" : "true",
            "configuredMacAddress" : "2c:60:0c:ee:d6:27",
            "serviceName" : "VOIP"
          }, {
            "uniTagMatch" : 55,
            "ponCTag" : 55,
            "ponSTag" : 555,
            "usPonCTagPriority" : 5,
            "usPonSTagPriority" : 5,
            "dsPonCTagPriority" : 5,
            "dsPonSTagPriority" : 5,
            "technologyProfileId" : 66,
            "downstreamBandwidthProfile" : "High-Speed-Internet",
            "upstreamBandwidthProfile" : "TCONT_TYPE2_500Mbps_Assured_ForVoD",
            "configuredMacAddress" : "2c:60:0c:ee:d6:27",
            "serviceName" : "VOD",
            "isDhcpRequired" : "true",
            "isIgmpRequired" : "true"
          }, {
            "ponCTag" : 55,
            "ponSTag" : 550,
            "dsPonCTagPriority" : 5,
            "dsPonSTagPriority" : 5,
            "technologyProfileId" : 66,
            "serviceName" : "MC"
          } ]
        }, {
          "id" : "ALPHe3d1ceb7-1",
          "nasPortId" : "ALPHe3d1ceb7-1",
          "uniTagList" : [ {
            "uniTagMatch" : 35,
            "ponCTag" : 101,
            "ponSTag" : 222,
            "usPonCTagPriority" : 0,
            "usPonSTagPriority" : 0,
            "dsPonCTagPriority" : 0,
            "dsPonSTagPriority" : 0,
            "technologyProfileId" : 64,
            "downstreamBandwidthProfile" : "High-Speed-Internet",
            "upstreamBandwidthProfile" : "TCONT_TYPE5_1Gbps_Peak_500Mbps_Assured_200Mbps_Fixed_User1_HSI_Upstream",
            "isDhcpRequired" : "true",
            "serviceName" : "HSIA"
          }, {
            "uniTagMatch" : 65,
            "ponCTag" : 444,
            "ponSTag" : 333,
            "usPonCTagPriority" : 7,
            "usPonSTagPriority" : 7,
            "dsPonCTagPriority" : 7,
            "dsPonSTagPriority" : 7,
            "technologyProfileId" : 65,
            "downstreamBandwidthProfile" : "VOIP",
            "upstreamBandwidthProfile" : "TCONT_TYPE1_200Mbps_Fixed_ForVOIP",
            "isDhcpRequired" : "true",
            "configuredMacAddress" : "2c:60:0c:ee:d7:68",
            "serviceName" : "VOIP"
          }, {
            "uniTagMatch" : 55,
            "ponCTag" : 55,
            "ponSTag" : 555,
            "usPonCTagPriority" : 5,
            "usPonSTagPriority" : 5,
            "dsPonCTagPriority" : 5,
            "dsPonSTagPriority" : 5,
            "technologyProfileId" : 67,
            "downstreamBandwidthProfile" : "High-Speed-Internet",
            "upstreamBandwidthProfile" : "TCONT_TYPE3_700Mbps_Peak_500Mbps_Assured_ForVoD",
            "configuredMacAddress" : "2c:60:0c:ee:d7:68",
            "serviceName" : "VOD",
            "isDhcpRequired" : "true",
            "isIgmpRequired" : "true"
          }, {
            "ponCTag" : 55,
            "ponSTag" : 550,
            "dsPonCTagPriority" : 5,
            "dsPonSTagPriority" : 5,
            "technologyProfileId" : 67,
            "serviceName" : "MC"
          } ]
        }, {
          "id" : "EC1838000853",
          "hardwareIdentifier" : "00:00:00:00:00:01",
          "ipAddress" : "10.192.20.206",
          "uplinkPort" : "1048576"
        } ]
      }
    },
    "org.opencord.igmpproxy" : {
        "igmpproxy":{
           "FastLeave":"true",
           "LastQueryInterval":1,
           "MaxResp":1,
           "enableIgmpProvisioning":"false",
           "globalConnectPointMode":"true",
           "globalConnectPoint" : "of:0000000000000001/3",
           "sourceDeviceAndPort":"of:0000000000000001/3",
           "outgoingIgmpVlanId":550,
           "outgoingIgmpInnerVlanId":55,
           "outgoingIgmpWithV3":"true",
           "IgmpCos":5,
           "IgmpUniCos":5,
           "PeriodicQuery":"true",
           "KeepAliveInterval":60,
           "KeepAliveCount":5,
           "requestDsIgmpPackets":false
        }
    }
  },
  "regions" : { },
  "links" : { },
  "layouts" : { }
}

