
from operator import attrgetter
import pyangbind.lib.xpathhelper as xpathhelper
from pyangbind.lib.yangtypes import RestrictedPrecisionDecimalType, RestrictedClassType, TypedListType
from pyangbind.lib.yangtypes import YANGBool, YANGListType, YANGDynClass, ReferenceType
from pyangbind.lib.base import PybindBase
from decimal import Decimal
from bitarray import bitarray
import __builtin__
import prefix_nexthops
import prefix_downstream
import prefix_upstream
class ldp_fec_prefix_prefix(PybindBase):
  """
  This class was auto-generated by the PythonClass plugin for PYANG
  from YANG module brocade-mpls-operational - based on the path /mpls-state/ldp/fec/ldp-fec-prefix-prefix. Each member element of
  the container is represented as a class variable - with a specific
  YANG type.
  """
  __slots__ = ('_pybind_generated_by', '_path_helper', '_yang_name', '_rest_name', '_extmethods', '__prefix','__prefix_feccb','__prefix_idx','__prefix_type','__prefix_pend_notif','__prefix_state','__prefix_ingress','__prefix_egress','__prefix_um_dist_done','__prefix_lwd','__prefix_lwd_started','__prefix_is_ldp_o_rsvp','__prefix_excess_dms','__prefix_nexthops','__prefix_downstream','__prefix_upstream',)

  _yang_name = 'ldp-fec-prefix-prefix'
  _rest_name = 'ldp-fec-prefix-prefix'

  _pybind_generated_by = 'container'

  def __init__(self, *args, **kwargs):

    path_helper_ = kwargs.pop("path_helper", None)
    if path_helper_ is False:
      self._path_helper = False
    elif path_helper_ is not None and isinstance(path_helper_, xpathhelper.YANGPathHelper):
      self._path_helper = path_helper_
    elif hasattr(self, "_parent"):
      path_helper_ = getattr(self._parent, "_path_helper", False)
      self._path_helper = path_helper_
    else:
      self._path_helper = False

    extmethods = kwargs.pop("extmethods", None)
    if extmethods is False:
      self._extmethods = False
    elif extmethods is not None and isinstance(extmethods, dict):
      self._extmethods = extmethods
    elif hasattr(self, "_parent"):
      extmethods = getattr(self._parent, "_extmethods", None)
      self._extmethods = extmethods
    else:
      self._extmethods = False
    self.__prefix_type = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-type", rest_name="prefix-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)
    self.__prefix_upstream = YANGDynClass(base=YANGListType("local_ldp_id",prefix_upstream.prefix_upstream, yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}), is_container='list', yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)
    self.__prefix_state = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-state", rest_name="prefix-state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_um_dist_done = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-um-dist-done", rest_name="prefix-um-dist-done", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_lwd = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd", rest_name="prefix-lwd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_ingress = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-ingress", rest_name="prefix-ingress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_is_ldp_o_rsvp = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-is-ldp-o-rsvp", rest_name="prefix-is-ldp-o-rsvp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)
    self.__prefix_nexthops = YANGDynClass(base=YANGListType("nexthop",prefix_nexthops.prefix_nexthops, yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='nexthop', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}), is_container='list', yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)
    self.__prefix_downstream = YANGDynClass(base=YANGListType("local_ldp_id",prefix_downstream.prefix_downstream, yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}), is_container='list', yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)
    self.__prefix = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix", rest_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_egress = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-egress", rest_name="prefix-egress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_lwd_started = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd-started", rest_name="prefix-lwd-started", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_idx = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-idx", rest_name="prefix-idx", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)
    self.__prefix_feccb = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-feccb", rest_name="prefix-feccb", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)
    self.__prefix_excess_dms = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-excess-dms", rest_name="prefix-excess-dms", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)
    self.__prefix_pend_notif = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-pend-notif", rest_name="prefix-pend-notif", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)

    load = kwargs.pop("load", None)
    if args:
      if len(args) > 1:
        raise TypeError("cannot create a YANG container with >1 argument")
      all_attr = True
      for e in self._pyangbind_elements:
        if not hasattr(args[0], e):
          all_attr = False
          break
      if not all_attr:
        raise ValueError("Supplied object did not have the correct attributes")
      for e in self._pyangbind_elements:
        nobj = getattr(args[0], e)
        if nobj._changed() is False:
          continue
        setmethod = getattr(self, "_set_%s" % e)
        if load is None:
          setmethod(getattr(args[0], e))
        else:
          setmethod(getattr(args[0], e), load=load)

  def _path(self):
    if hasattr(self, "_parent"):
      return self._parent._path()+[self._yang_name]
    else:
      return [u'mpls-state', u'ldp', u'fec', u'ldp-fec-prefix-prefix']

  def _rest_path(self):
    if hasattr(self, "_parent"):
      if self._rest_name:
        return self._parent._rest_path()+[self._rest_name]
      else:
        return self._parent._rest_path()
    else:
      return [u'mpls-state', u'ldp', u'fec', u'ldp-fec-prefix-prefix']

  def _get_prefix(self):
    """
    Getter method for prefix, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix (string)

    YANG Description: prefix_prefix
    """
    return self.__prefix
      
  def _set_prefix(self, v, load=False):
    """
    Setter method for prefix, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix() directly.

    YANG Description: prefix_prefix
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix", rest_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix", rest_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix(self):
    self.__prefix = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix", rest_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_feccb(self):
    """
    Getter method for prefix_feccb, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_feccb (uint32)

    YANG Description: prefix_feccb
    """
    return self.__prefix_feccb
      
  def _set_prefix_feccb(self, v, load=False):
    """
    Setter method for prefix_feccb, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_feccb (uint32)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_feccb is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_feccb() directly.

    YANG Description: prefix_feccb
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-feccb", rest_name="prefix-feccb", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_feccb must be of a type compatible with uint32""",
          'defined-type': "uint32",
          'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-feccb", rest_name="prefix-feccb", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)""",
        })

    self.__prefix_feccb = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_feccb(self):
    self.__prefix_feccb = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-feccb", rest_name="prefix-feccb", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)


  def _get_prefix_idx(self):
    """
    Getter method for prefix_idx, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_idx (uint32)

    YANG Description: prefix_idx
    """
    return self.__prefix_idx
      
  def _set_prefix_idx(self, v, load=False):
    """
    Setter method for prefix_idx, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_idx (uint32)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_idx is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_idx() directly.

    YANG Description: prefix_idx
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-idx", rest_name="prefix-idx", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_idx must be of a type compatible with uint32""",
          'defined-type': "uint32",
          'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-idx", rest_name="prefix-idx", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)""",
        })

    self.__prefix_idx = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_idx(self):
    self.__prefix_idx = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-idx", rest_name="prefix-idx", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)


  def _get_prefix_type(self):
    """
    Getter method for prefix_type, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_type (uint32)

    YANG Description: prefix_type
    """
    return self.__prefix_type
      
  def _set_prefix_type(self, v, load=False):
    """
    Setter method for prefix_type, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_type (uint32)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_type is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_type() directly.

    YANG Description: prefix_type
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-type", rest_name="prefix-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_type must be of a type compatible with uint32""",
          'defined-type': "uint32",
          'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-type", rest_name="prefix-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)""",
        })

    self.__prefix_type = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_type(self):
    self.__prefix_type = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-type", rest_name="prefix-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)


  def _get_prefix_pend_notif(self):
    """
    Getter method for prefix_pend_notif, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_pend_notif (string)

    YANG Description: sprefix_pend_notification
    """
    return self.__prefix_pend_notif
      
  def _set_prefix_pend_notif(self, v, load=False):
    """
    Setter method for prefix_pend_notif, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_pend_notif (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_pend_notif is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_pend_notif() directly.

    YANG Description: sprefix_pend_notification
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-pend-notif", rest_name="prefix-pend-notif", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_pend_notif must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-pend-notif", rest_name="prefix-pend-notif", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_pend_notif = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_pend_notif(self):
    self.__prefix_pend_notif = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-pend-notif", rest_name="prefix-pend-notif", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_state(self):
    """
    Getter method for prefix_state, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_state (string)

    YANG Description: state
    """
    return self.__prefix_state
      
  def _set_prefix_state(self, v, load=False):
    """
    Setter method for prefix_state, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_state (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_state is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_state() directly.

    YANG Description: state
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-state", rest_name="prefix-state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_state must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-state", rest_name="prefix-state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_state = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_state(self):
    self.__prefix_state = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-state", rest_name="prefix-state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_ingress(self):
    """
    Getter method for prefix_ingress, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_ingress (string)

    YANG Description: prefix_Ingress
    """
    return self.__prefix_ingress
      
  def _set_prefix_ingress(self, v, load=False):
    """
    Setter method for prefix_ingress, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_ingress (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_ingress is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_ingress() directly.

    YANG Description: prefix_Ingress
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-ingress", rest_name="prefix-ingress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_ingress must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-ingress", rest_name="prefix-ingress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_ingress = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_ingress(self):
    self.__prefix_ingress = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-ingress", rest_name="prefix-ingress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_egress(self):
    """
    Getter method for prefix_egress, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_egress (string)

    YANG Description: prefix_Egress
    """
    return self.__prefix_egress
      
  def _set_prefix_egress(self, v, load=False):
    """
    Setter method for prefix_egress, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_egress (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_egress is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_egress() directly.

    YANG Description: prefix_Egress
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-egress", rest_name="prefix-egress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_egress must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-egress", rest_name="prefix-egress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_egress = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_egress(self):
    self.__prefix_egress = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-egress", rest_name="prefix-egress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_um_dist_done(self):
    """
    Getter method for prefix_um_dist_done, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_um_dist_done (string)

    YANG Description: prefix_um_dist_done
    """
    return self.__prefix_um_dist_done
      
  def _set_prefix_um_dist_done(self, v, load=False):
    """
    Setter method for prefix_um_dist_done, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_um_dist_done (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_um_dist_done is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_um_dist_done() directly.

    YANG Description: prefix_um_dist_done
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-um-dist-done", rest_name="prefix-um-dist-done", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_um_dist_done must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-um-dist-done", rest_name="prefix-um-dist-done", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_um_dist_done = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_um_dist_done(self):
    self.__prefix_um_dist_done = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-um-dist-done", rest_name="prefix-um-dist-done", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_lwd(self):
    """
    Getter method for prefix_lwd, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_lwd (string)

    YANG Description: prefix_lwd
    """
    return self.__prefix_lwd
      
  def _set_prefix_lwd(self, v, load=False):
    """
    Setter method for prefix_lwd, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_lwd (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_lwd is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_lwd() directly.

    YANG Description: prefix_lwd
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-lwd", rest_name="prefix-lwd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_lwd must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd", rest_name="prefix-lwd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_lwd = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_lwd(self):
    self.__prefix_lwd = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd", rest_name="prefix-lwd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_lwd_started(self):
    """
    Getter method for prefix_lwd_started, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_lwd_started (string)

    YANG Description: prefix_lwd_started
    """
    return self.__prefix_lwd_started
      
  def _set_prefix_lwd_started(self, v, load=False):
    """
    Setter method for prefix_lwd_started, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_lwd_started (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_lwd_started is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_lwd_started() directly.

    YANG Description: prefix_lwd_started
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-lwd-started", rest_name="prefix-lwd-started", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_lwd_started must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd-started", rest_name="prefix-lwd-started", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_lwd_started = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_lwd_started(self):
    self.__prefix_lwd_started = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd-started", rest_name="prefix-lwd-started", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_is_ldp_o_rsvp(self):
    """
    Getter method for prefix_is_ldp_o_rsvp, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_is_ldp_o_rsvp (boolean)

    YANG Description: prefix_is_ldp_o_rsvp
    """
    return self.__prefix_is_ldp_o_rsvp
      
  def _set_prefix_is_ldp_o_rsvp(self, v, load=False):
    """
    Setter method for prefix_is_ldp_o_rsvp, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_is_ldp_o_rsvp (boolean)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_is_ldp_o_rsvp is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_is_ldp_o_rsvp() directly.

    YANG Description: prefix_is_ldp_o_rsvp
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="prefix-is-ldp-o-rsvp", rest_name="prefix-is-ldp-o-rsvp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_is_ldp_o_rsvp must be of a type compatible with boolean""",
          'defined-type': "boolean",
          'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-is-ldp-o-rsvp", rest_name="prefix-is-ldp-o-rsvp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)""",
        })

    self.__prefix_is_ldp_o_rsvp = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_is_ldp_o_rsvp(self):
    self.__prefix_is_ldp_o_rsvp = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-is-ldp-o-rsvp", rest_name="prefix-is-ldp-o-rsvp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)


  def _get_prefix_excess_dms(self):
    """
    Getter method for prefix_excess_dms, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_excess_dms (boolean)

    YANG Description: prefix_excess_dms
    """
    return self.__prefix_excess_dms
      
  def _set_prefix_excess_dms(self, v, load=False):
    """
    Setter method for prefix_excess_dms, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_excess_dms (boolean)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_excess_dms is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_excess_dms() directly.

    YANG Description: prefix_excess_dms
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="prefix-excess-dms", rest_name="prefix-excess-dms", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_excess_dms must be of a type compatible with boolean""",
          'defined-type': "boolean",
          'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-excess-dms", rest_name="prefix-excess-dms", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)""",
        })

    self.__prefix_excess_dms = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_excess_dms(self):
    self.__prefix_excess_dms = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-excess-dms", rest_name="prefix-excess-dms", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)


  def _get_prefix_nexthops(self):
    """
    Getter method for prefix_nexthops, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_nexthops (list)
    """
    return self.__prefix_nexthops
      
  def _set_prefix_nexthops(self, v, load=False):
    """
    Setter method for prefix_nexthops, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_nexthops (list)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_nexthops is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_nexthops() directly.
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGListType("nexthop",prefix_nexthops.prefix_nexthops, yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='nexthop', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}), is_container='list', yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_nexthops must be of a type compatible with list""",
          'defined-type': "list",
          'generated-type': """YANGDynClass(base=YANGListType("nexthop",prefix_nexthops.prefix_nexthops, yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='nexthop', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}), is_container='list', yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)""",
        })

    self.__prefix_nexthops = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_nexthops(self):
    self.__prefix_nexthops = YANGDynClass(base=YANGListType("nexthop",prefix_nexthops.prefix_nexthops, yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='nexthop', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}), is_container='list', yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)


  def _get_prefix_downstream(self):
    """
    Getter method for prefix_downstream, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_downstream (list)
    """
    return self.__prefix_downstream
      
  def _set_prefix_downstream(self, v, load=False):
    """
    Setter method for prefix_downstream, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_downstream (list)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_downstream is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_downstream() directly.
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGListType("local_ldp_id",prefix_downstream.prefix_downstream, yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}), is_container='list', yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_downstream must be of a type compatible with list""",
          'defined-type': "list",
          'generated-type': """YANGDynClass(base=YANGListType("local_ldp_id",prefix_downstream.prefix_downstream, yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}), is_container='list', yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)""",
        })

    self.__prefix_downstream = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_downstream(self):
    self.__prefix_downstream = YANGDynClass(base=YANGListType("local_ldp_id",prefix_downstream.prefix_downstream, yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}), is_container='list', yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)


  def _get_prefix_upstream(self):
    """
    Getter method for prefix_upstream, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_upstream (list)
    """
    return self.__prefix_upstream
      
  def _set_prefix_upstream(self, v, load=False):
    """
    Setter method for prefix_upstream, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_upstream (list)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_upstream is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_upstream() directly.
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGListType("local_ldp_id",prefix_upstream.prefix_upstream, yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}), is_container='list', yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_upstream must be of a type compatible with list""",
          'defined-type': "list",
          'generated-type': """YANGDynClass(base=YANGListType("local_ldp_id",prefix_upstream.prefix_upstream, yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}), is_container='list', yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)""",
        })

    self.__prefix_upstream = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_upstream(self):
    self.__prefix_upstream = YANGDynClass(base=YANGListType("local_ldp_id",prefix_upstream.prefix_upstream, yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}), is_container='list', yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)

  prefix = __builtin__.property(_get_prefix)
  prefix_feccb = __builtin__.property(_get_prefix_feccb)
  prefix_idx = __builtin__.property(_get_prefix_idx)
  prefix_type = __builtin__.property(_get_prefix_type)
  prefix_pend_notif = __builtin__.property(_get_prefix_pend_notif)
  prefix_state = __builtin__.property(_get_prefix_state)
  prefix_ingress = __builtin__.property(_get_prefix_ingress)
  prefix_egress = __builtin__.property(_get_prefix_egress)
  prefix_um_dist_done = __builtin__.property(_get_prefix_um_dist_done)
  prefix_lwd = __builtin__.property(_get_prefix_lwd)
  prefix_lwd_started = __builtin__.property(_get_prefix_lwd_started)
  prefix_is_ldp_o_rsvp = __builtin__.property(_get_prefix_is_ldp_o_rsvp)
  prefix_excess_dms = __builtin__.property(_get_prefix_excess_dms)
  prefix_nexthops = __builtin__.property(_get_prefix_nexthops)
  prefix_downstream = __builtin__.property(_get_prefix_downstream)
  prefix_upstream = __builtin__.property(_get_prefix_upstream)


  _pyangbind_elements = {'prefix': prefix, 'prefix_feccb': prefix_feccb, 'prefix_idx': prefix_idx, 'prefix_type': prefix_type, 'prefix_pend_notif': prefix_pend_notif, 'prefix_state': prefix_state, 'prefix_ingress': prefix_ingress, 'prefix_egress': prefix_egress, 'prefix_um_dist_done': prefix_um_dist_done, 'prefix_lwd': prefix_lwd, 'prefix_lwd_started': prefix_lwd_started, 'prefix_is_ldp_o_rsvp': prefix_is_ldp_o_rsvp, 'prefix_excess_dms': prefix_excess_dms, 'prefix_nexthops': prefix_nexthops, 'prefix_downstream': prefix_downstream, 'prefix_upstream': prefix_upstream, }




from operator import attrgetter
import pyangbind.lib.xpathhelper as xpathhelper
from pyangbind.lib.yangtypes import RestrictedPrecisionDecimalType, RestrictedClassType, TypedListType
from pyangbind.lib.yangtypes import YANGBool, YANGListType, YANGDynClass, ReferenceType
from pyangbind.lib.base import PybindBase
from decimal import Decimal
from bitarray import bitarray
import __builtin__
import prefix_nexthops
import prefix_downstream
import prefix_upstream
class ldp_fec_prefix_prefix(PybindBase):
  """
  This class was auto-generated by the PythonClass plugin for PYANG
  from YANG module brocade-mpls-operational - based on the path /mpls-state/ldp/fec/ldp-fec-prefix-prefix. Each member element of
  the container is represented as a class variable - with a specific
  YANG type.
  """
  __slots__ = ('_pybind_generated_by', '_path_helper', '_yang_name', '_rest_name', '_extmethods', '__prefix','__prefix_feccb','__prefix_idx','__prefix_type','__prefix_pend_notif','__prefix_state','__prefix_ingress','__prefix_egress','__prefix_um_dist_done','__prefix_lwd','__prefix_lwd_started','__prefix_is_ldp_o_rsvp','__prefix_excess_dms','__prefix_nexthops','__prefix_downstream','__prefix_upstream',)

  _yang_name = 'ldp-fec-prefix-prefix'
  _rest_name = 'ldp-fec-prefix-prefix'

  _pybind_generated_by = 'container'

  def __init__(self, *args, **kwargs):

    path_helper_ = kwargs.pop("path_helper", None)
    if path_helper_ is False:
      self._path_helper = False
    elif path_helper_ is not None and isinstance(path_helper_, xpathhelper.YANGPathHelper):
      self._path_helper = path_helper_
    elif hasattr(self, "_parent"):
      path_helper_ = getattr(self._parent, "_path_helper", False)
      self._path_helper = path_helper_
    else:
      self._path_helper = False

    extmethods = kwargs.pop("extmethods", None)
    if extmethods is False:
      self._extmethods = False
    elif extmethods is not None and isinstance(extmethods, dict):
      self._extmethods = extmethods
    elif hasattr(self, "_parent"):
      extmethods = getattr(self._parent, "_extmethods", None)
      self._extmethods = extmethods
    else:
      self._extmethods = False
    self.__prefix_type = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-type", rest_name="prefix-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)
    self.__prefix_upstream = YANGDynClass(base=YANGListType("local_ldp_id",prefix_upstream.prefix_upstream, yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}), is_container='list', yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)
    self.__prefix_state = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-state", rest_name="prefix-state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_um_dist_done = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-um-dist-done", rest_name="prefix-um-dist-done", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_lwd = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd", rest_name="prefix-lwd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_ingress = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-ingress", rest_name="prefix-ingress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_is_ldp_o_rsvp = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-is-ldp-o-rsvp", rest_name="prefix-is-ldp-o-rsvp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)
    self.__prefix_nexthops = YANGDynClass(base=YANGListType("nexthop",prefix_nexthops.prefix_nexthops, yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='nexthop', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}), is_container='list', yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)
    self.__prefix_downstream = YANGDynClass(base=YANGListType("local_ldp_id",prefix_downstream.prefix_downstream, yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}), is_container='list', yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)
    self.__prefix = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix", rest_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_egress = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-egress", rest_name="prefix-egress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_lwd_started = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd-started", rest_name="prefix-lwd-started", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    self.__prefix_idx = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-idx", rest_name="prefix-idx", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)
    self.__prefix_feccb = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-feccb", rest_name="prefix-feccb", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)
    self.__prefix_excess_dms = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-excess-dms", rest_name="prefix-excess-dms", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)
    self.__prefix_pend_notif = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-pend-notif", rest_name="prefix-pend-notif", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)

    load = kwargs.pop("load", None)
    if args:
      if len(args) > 1:
        raise TypeError("cannot create a YANG container with >1 argument")
      all_attr = True
      for e in self._pyangbind_elements:
        if not hasattr(args[0], e):
          all_attr = False
          break
      if not all_attr:
        raise ValueError("Supplied object did not have the correct attributes")
      for e in self._pyangbind_elements:
        nobj = getattr(args[0], e)
        if nobj._changed() is False:
          continue
        setmethod = getattr(self, "_set_%s" % e)
        if load is None:
          setmethod(getattr(args[0], e))
        else:
          setmethod(getattr(args[0], e), load=load)

  def _path(self):
    if hasattr(self, "_parent"):
      return self._parent._path()+[self._yang_name]
    else:
      return [u'mpls-state', u'ldp', u'fec', u'ldp-fec-prefix-prefix']

  def _rest_path(self):
    if hasattr(self, "_parent"):
      if self._rest_name:
        return self._parent._rest_path()+[self._rest_name]
      else:
        return self._parent._rest_path()
    else:
      return [u'mpls-state', u'ldp', u'fec', u'ldp-fec-prefix-prefix']

  def _get_prefix(self):
    """
    Getter method for prefix, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix (string)

    YANG Description: prefix_prefix
    """
    return self.__prefix
      
  def _set_prefix(self, v, load=False):
    """
    Setter method for prefix, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix() directly.

    YANG Description: prefix_prefix
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix", rest_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix", rest_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix(self):
    self.__prefix = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix", rest_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_feccb(self):
    """
    Getter method for prefix_feccb, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_feccb (uint32)

    YANG Description: prefix_feccb
    """
    return self.__prefix_feccb
      
  def _set_prefix_feccb(self, v, load=False):
    """
    Setter method for prefix_feccb, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_feccb (uint32)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_feccb is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_feccb() directly.

    YANG Description: prefix_feccb
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-feccb", rest_name="prefix-feccb", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_feccb must be of a type compatible with uint32""",
          'defined-type': "uint32",
          'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-feccb", rest_name="prefix-feccb", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)""",
        })

    self.__prefix_feccb = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_feccb(self):
    self.__prefix_feccb = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-feccb", rest_name="prefix-feccb", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)


  def _get_prefix_idx(self):
    """
    Getter method for prefix_idx, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_idx (uint32)

    YANG Description: prefix_idx
    """
    return self.__prefix_idx
      
  def _set_prefix_idx(self, v, load=False):
    """
    Setter method for prefix_idx, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_idx (uint32)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_idx is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_idx() directly.

    YANG Description: prefix_idx
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-idx", rest_name="prefix-idx", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_idx must be of a type compatible with uint32""",
          'defined-type': "uint32",
          'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-idx", rest_name="prefix-idx", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)""",
        })

    self.__prefix_idx = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_idx(self):
    self.__prefix_idx = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-idx", rest_name="prefix-idx", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)


  def _get_prefix_type(self):
    """
    Getter method for prefix_type, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_type (uint32)

    YANG Description: prefix_type
    """
    return self.__prefix_type
      
  def _set_prefix_type(self, v, load=False):
    """
    Setter method for prefix_type, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_type (uint32)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_type is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_type() directly.

    YANG Description: prefix_type
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-type", rest_name="prefix-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_type must be of a type compatible with uint32""",
          'defined-type': "uint32",
          'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-type", rest_name="prefix-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)""",
        })

    self.__prefix_type = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_type(self):
    self.__prefix_type = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-type", rest_name="prefix-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False)


  def _get_prefix_pend_notif(self):
    """
    Getter method for prefix_pend_notif, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_pend_notif (string)

    YANG Description: sprefix_pend_notification
    """
    return self.__prefix_pend_notif
      
  def _set_prefix_pend_notif(self, v, load=False):
    """
    Setter method for prefix_pend_notif, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_pend_notif (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_pend_notif is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_pend_notif() directly.

    YANG Description: sprefix_pend_notification
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-pend-notif", rest_name="prefix-pend-notif", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_pend_notif must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-pend-notif", rest_name="prefix-pend-notif", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_pend_notif = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_pend_notif(self):
    self.__prefix_pend_notif = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-pend-notif", rest_name="prefix-pend-notif", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_state(self):
    """
    Getter method for prefix_state, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_state (string)

    YANG Description: state
    """
    return self.__prefix_state
      
  def _set_prefix_state(self, v, load=False):
    """
    Setter method for prefix_state, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_state (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_state is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_state() directly.

    YANG Description: state
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-state", rest_name="prefix-state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_state must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-state", rest_name="prefix-state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_state = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_state(self):
    self.__prefix_state = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-state", rest_name="prefix-state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_ingress(self):
    """
    Getter method for prefix_ingress, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_ingress (string)

    YANG Description: prefix_Ingress
    """
    return self.__prefix_ingress
      
  def _set_prefix_ingress(self, v, load=False):
    """
    Setter method for prefix_ingress, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_ingress (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_ingress is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_ingress() directly.

    YANG Description: prefix_Ingress
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-ingress", rest_name="prefix-ingress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_ingress must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-ingress", rest_name="prefix-ingress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_ingress = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_ingress(self):
    self.__prefix_ingress = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-ingress", rest_name="prefix-ingress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_egress(self):
    """
    Getter method for prefix_egress, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_egress (string)

    YANG Description: prefix_Egress
    """
    return self.__prefix_egress
      
  def _set_prefix_egress(self, v, load=False):
    """
    Setter method for prefix_egress, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_egress (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_egress is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_egress() directly.

    YANG Description: prefix_Egress
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-egress", rest_name="prefix-egress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_egress must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-egress", rest_name="prefix-egress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_egress = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_egress(self):
    self.__prefix_egress = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-egress", rest_name="prefix-egress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_um_dist_done(self):
    """
    Getter method for prefix_um_dist_done, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_um_dist_done (string)

    YANG Description: prefix_um_dist_done
    """
    return self.__prefix_um_dist_done
      
  def _set_prefix_um_dist_done(self, v, load=False):
    """
    Setter method for prefix_um_dist_done, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_um_dist_done (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_um_dist_done is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_um_dist_done() directly.

    YANG Description: prefix_um_dist_done
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-um-dist-done", rest_name="prefix-um-dist-done", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_um_dist_done must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-um-dist-done", rest_name="prefix-um-dist-done", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_um_dist_done = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_um_dist_done(self):
    self.__prefix_um_dist_done = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-um-dist-done", rest_name="prefix-um-dist-done", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_lwd(self):
    """
    Getter method for prefix_lwd, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_lwd (string)

    YANG Description: prefix_lwd
    """
    return self.__prefix_lwd
      
  def _set_prefix_lwd(self, v, load=False):
    """
    Setter method for prefix_lwd, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_lwd (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_lwd is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_lwd() directly.

    YANG Description: prefix_lwd
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-lwd", rest_name="prefix-lwd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_lwd must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd", rest_name="prefix-lwd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_lwd = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_lwd(self):
    self.__prefix_lwd = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd", rest_name="prefix-lwd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_lwd_started(self):
    """
    Getter method for prefix_lwd_started, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_lwd_started (string)

    YANG Description: prefix_lwd_started
    """
    return self.__prefix_lwd_started
      
  def _set_prefix_lwd_started(self, v, load=False):
    """
    Setter method for prefix_lwd_started, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_lwd_started (string)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_lwd_started is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_lwd_started() directly.

    YANG Description: prefix_lwd_started
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=unicode, is_leaf=True, yang_name="prefix-lwd-started", rest_name="prefix-lwd-started", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_lwd_started must be of a type compatible with string""",
          'defined-type': "string",
          'generated-type': """YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd-started", rest_name="prefix-lwd-started", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)""",
        })

    self.__prefix_lwd_started = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_lwd_started(self):
    self.__prefix_lwd_started = YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd-started", rest_name="prefix-lwd-started", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False)


  def _get_prefix_is_ldp_o_rsvp(self):
    """
    Getter method for prefix_is_ldp_o_rsvp, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_is_ldp_o_rsvp (boolean)

    YANG Description: prefix_is_ldp_o_rsvp
    """
    return self.__prefix_is_ldp_o_rsvp
      
  def _set_prefix_is_ldp_o_rsvp(self, v, load=False):
    """
    Setter method for prefix_is_ldp_o_rsvp, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_is_ldp_o_rsvp (boolean)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_is_ldp_o_rsvp is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_is_ldp_o_rsvp() directly.

    YANG Description: prefix_is_ldp_o_rsvp
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="prefix-is-ldp-o-rsvp", rest_name="prefix-is-ldp-o-rsvp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_is_ldp_o_rsvp must be of a type compatible with boolean""",
          'defined-type': "boolean",
          'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-is-ldp-o-rsvp", rest_name="prefix-is-ldp-o-rsvp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)""",
        })

    self.__prefix_is_ldp_o_rsvp = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_is_ldp_o_rsvp(self):
    self.__prefix_is_ldp_o_rsvp = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-is-ldp-o-rsvp", rest_name="prefix-is-ldp-o-rsvp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)


  def _get_prefix_excess_dms(self):
    """
    Getter method for prefix_excess_dms, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_excess_dms (boolean)

    YANG Description: prefix_excess_dms
    """
    return self.__prefix_excess_dms
      
  def _set_prefix_excess_dms(self, v, load=False):
    """
    Setter method for prefix_excess_dms, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_excess_dms (boolean)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_excess_dms is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_excess_dms() directly.

    YANG Description: prefix_excess_dms
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="prefix-excess-dms", rest_name="prefix-excess-dms", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_excess_dms must be of a type compatible with boolean""",
          'defined-type': "boolean",
          'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-excess-dms", rest_name="prefix-excess-dms", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)""",
        })

    self.__prefix_excess_dms = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_excess_dms(self):
    self.__prefix_excess_dms = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-excess-dms", rest_name="prefix-excess-dms", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False)


  def _get_prefix_nexthops(self):
    """
    Getter method for prefix_nexthops, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_nexthops (list)
    """
    return self.__prefix_nexthops
      
  def _set_prefix_nexthops(self, v, load=False):
    """
    Setter method for prefix_nexthops, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_nexthops (list)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_nexthops is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_nexthops() directly.
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGListType("nexthop",prefix_nexthops.prefix_nexthops, yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='nexthop', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}), is_container='list', yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_nexthops must be of a type compatible with list""",
          'defined-type': "list",
          'generated-type': """YANGDynClass(base=YANGListType("nexthop",prefix_nexthops.prefix_nexthops, yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='nexthop', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}), is_container='list', yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)""",
        })

    self.__prefix_nexthops = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_nexthops(self):
    self.__prefix_nexthops = YANGDynClass(base=YANGListType("nexthop",prefix_nexthops.prefix_nexthops, yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='nexthop', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}), is_container='list', yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)


  def _get_prefix_downstream(self):
    """
    Getter method for prefix_downstream, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_downstream (list)
    """
    return self.__prefix_downstream
      
  def _set_prefix_downstream(self, v, load=False):
    """
    Setter method for prefix_downstream, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_downstream (list)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_downstream is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_downstream() directly.
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGListType("local_ldp_id",prefix_downstream.prefix_downstream, yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}), is_container='list', yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_downstream must be of a type compatible with list""",
          'defined-type': "list",
          'generated-type': """YANGDynClass(base=YANGListType("local_ldp_id",prefix_downstream.prefix_downstream, yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}), is_container='list', yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)""",
        })

    self.__prefix_downstream = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_downstream(self):
    self.__prefix_downstream = YANGDynClass(base=YANGListType("local_ldp_id",prefix_downstream.prefix_downstream, yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}), is_container='list', yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)


  def _get_prefix_upstream(self):
    """
    Getter method for prefix_upstream, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_upstream (list)
    """
    return self.__prefix_upstream
      
  def _set_prefix_upstream(self, v, load=False):
    """
    Setter method for prefix_upstream, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_upstream (list)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_prefix_upstream is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_prefix_upstream() directly.
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGListType("local_ldp_id",prefix_upstream.prefix_upstream, yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}), is_container='list', yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """prefix_upstream must be of a type compatible with list""",
          'defined-type': "list",
          'generated-type': """YANGDynClass(base=YANGListType("local_ldp_id",prefix_upstream.prefix_upstream, yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}), is_container='list', yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)""",
        })

    self.__prefix_upstream = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_prefix_upstream(self):
    self.__prefix_upstream = YANGDynClass(base=YANGListType("local_ldp_id",prefix_upstream.prefix_upstream, yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}), is_container='list', yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)

  prefix = __builtin__.property(_get_prefix)
  prefix_feccb = __builtin__.property(_get_prefix_feccb)
  prefix_idx = __builtin__.property(_get_prefix_idx)
  prefix_type = __builtin__.property(_get_prefix_type)
  prefix_pend_notif = __builtin__.property(_get_prefix_pend_notif)
  prefix_state = __builtin__.property(_get_prefix_state)
  prefix_ingress = __builtin__.property(_get_prefix_ingress)
  prefix_egress = __builtin__.property(_get_prefix_egress)
  prefix_um_dist_done = __builtin__.property(_get_prefix_um_dist_done)
  prefix_lwd = __builtin__.property(_get_prefix_lwd)
  prefix_lwd_started = __builtin__.property(_get_prefix_lwd_started)
  prefix_is_ldp_o_rsvp = __builtin__.property(_get_prefix_is_ldp_o_rsvp)
  prefix_excess_dms = __builtin__.property(_get_prefix_excess_dms)
  prefix_nexthops = __builtin__.property(_get_prefix_nexthops)
  prefix_downstream = __builtin__.property(_get_prefix_downstream)
  prefix_upstream = __builtin__.property(_get_prefix_upstream)


  _pyangbind_elements = {'prefix': prefix, 'prefix_feccb': prefix_feccb, 'prefix_idx': prefix_idx, 'prefix_type': prefix_type, 'prefix_pend_notif': prefix_pend_notif, 'prefix_state': prefix_state, 'prefix_ingress': prefix_ingress, 'prefix_egress': prefix_egress, 'prefix_um_dist_done': prefix_um_dist_done, 'prefix_lwd': prefix_lwd, 'prefix_lwd_started': prefix_lwd_started, 'prefix_is_ldp_o_rsvp': prefix_is_ldp_o_rsvp, 'prefix_excess_dms': prefix_excess_dms, 'prefix_nexthops': prefix_nexthops, 'prefix_downstream': prefix_downstream, 'prefix_upstream': prefix_upstream, }



This class was auto-generated by the PythonClass plugin for PYANG   from YANG module brocade-mpls-operational - based on the path /mpls-state/ldp/fec/ldp-fec-prefix-prefix. Each member element of   the container is represented as a class variable - with a specific   YANG type. Getter method for prefix, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix (string)      YANG Description: prefix_prefix Setter method for prefix, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix (string)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix() directly.      YANG Description: prefix_prefix prefix must be of a type compatible with string YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix", rest_name="prefix", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False) Getter method for prefix_feccb, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_feccb (uint32)      YANG Description: prefix_feccb Setter method for prefix_feccb, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_feccb (uint32)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_feccb is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_feccb() directly.      YANG Description: prefix_feccb prefix_feccb must be of a type compatible with uint32 YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-feccb", rest_name="prefix-feccb", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False) Getter method for prefix_idx, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_idx (uint32)      YANG Description: prefix_idx Setter method for prefix_idx, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_idx (uint32)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_idx is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_idx() directly.      YANG Description: prefix_idx prefix_idx must be of a type compatible with uint32 YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-idx", rest_name="prefix-idx", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False) Getter method for prefix_type, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_type (uint32)      YANG Description: prefix_type Setter method for prefix_type, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_type (uint32)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_type is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_type() directly.      YANG Description: prefix_type prefix_type must be of a type compatible with uint32 YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="prefix-type", rest_name="prefix-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='uint32', is_config=False) Getter method for prefix_pend_notif, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_pend_notif (string)      YANG Description: sprefix_pend_notification Setter method for prefix_pend_notif, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_pend_notif (string)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_pend_notif is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_pend_notif() directly.      YANG Description: sprefix_pend_notification prefix_pend_notif must be of a type compatible with string YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-pend-notif", rest_name="prefix-pend-notif", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False) Getter method for prefix_state, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_state (string)      YANG Description: state Setter method for prefix_state, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_state (string)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_state is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_state() directly.      YANG Description: state prefix_state must be of a type compatible with string YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-state", rest_name="prefix-state", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False) Getter method for prefix_ingress, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_ingress (string)      YANG Description: prefix_Ingress Setter method for prefix_ingress, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_ingress (string)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_ingress is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_ingress() directly.      YANG Description: prefix_Ingress prefix_ingress must be of a type compatible with string YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-ingress", rest_name="prefix-ingress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False) Getter method for prefix_egress, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_egress (string)      YANG Description: prefix_Egress Setter method for prefix_egress, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_egress (string)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_egress is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_egress() directly.      YANG Description: prefix_Egress prefix_egress must be of a type compatible with string YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-egress", rest_name="prefix-egress", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False) Getter method for prefix_um_dist_done, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_um_dist_done (string)      YANG Description: prefix_um_dist_done Setter method for prefix_um_dist_done, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_um_dist_done (string)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_um_dist_done is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_um_dist_done() directly.      YANG Description: prefix_um_dist_done prefix_um_dist_done must be of a type compatible with string YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-um-dist-done", rest_name="prefix-um-dist-done", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False) Getter method for prefix_lwd, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_lwd (string)      YANG Description: prefix_lwd Setter method for prefix_lwd, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_lwd (string)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_lwd is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_lwd() directly.      YANG Description: prefix_lwd prefix_lwd must be of a type compatible with string YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd", rest_name="prefix-lwd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False) Getter method for prefix_lwd_started, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_lwd_started (string)      YANG Description: prefix_lwd_started Setter method for prefix_lwd_started, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_lwd_started (string)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_lwd_started is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_lwd_started() directly.      YANG Description: prefix_lwd_started prefix_lwd_started must be of a type compatible with string YANGDynClass(base=unicode, is_leaf=True, yang_name="prefix-lwd-started", rest_name="prefix-lwd-started", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='string', is_config=False) Getter method for prefix_is_ldp_o_rsvp, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_is_ldp_o_rsvp (boolean)      YANG Description: prefix_is_ldp_o_rsvp Setter method for prefix_is_ldp_o_rsvp, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_is_ldp_o_rsvp (boolean)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_is_ldp_o_rsvp is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_is_ldp_o_rsvp() directly.      YANG Description: prefix_is_ldp_o_rsvp prefix_is_ldp_o_rsvp must be of a type compatible with boolean YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-is-ldp-o-rsvp", rest_name="prefix-is-ldp-o-rsvp", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False) Getter method for prefix_excess_dms, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_excess_dms (boolean)      YANG Description: prefix_excess_dms Setter method for prefix_excess_dms, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_excess_dms (boolean)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_excess_dms is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_excess_dms() directly.      YANG Description: prefix_excess_dms prefix_excess_dms must be of a type compatible with boolean YANGDynClass(base=YANGBool, is_leaf=True, yang_name="prefix-excess-dms", rest_name="prefix-excess-dms", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='boolean', is_config=False) Getter method for prefix_nexthops, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_nexthops (list) Setter method for prefix_nexthops, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_nexthops (list)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_nexthops is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_nexthops() directly. prefix_nexthops must be of a type compatible with list YANGDynClass(base=YANGListType("nexthop",prefix_nexthops.prefix_nexthops, yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='nexthop', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}), is_container='list', yang_name="prefix-nexthops", rest_name="prefix-nexthops", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-prefix-interface-prefix-nexthops-2'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False) Getter method for prefix_downstream, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_downstream (list) Setter method for prefix_downstream, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_downstream (list)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_downstream is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_downstream() directly. prefix_downstream must be of a type compatible with list YANGDynClass(base=YANGListType("local_ldp_id",prefix_downstream.prefix_downstream, yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}), is_container='list', yang_name="prefix-downstream", rest_name="prefix-downstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-downstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False) Getter method for prefix_upstream, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_upstream (list) Setter method for prefix_upstream, mapped from YANG variable /mpls_state/ldp/fec/ldp_fec_prefix_prefix/prefix_upstream (list)     If this variable is read-only (config: false) in the     source YANG file, then _set_prefix_upstream is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_prefix_upstream() directly. prefix_upstream must be of a type compatible with list YANGDynClass(base=YANGListType("local_ldp_id",prefix_upstream.prefix_upstream, yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='local-ldp-id', extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}), is_container='list', yang_name="prefix-upstream", rest_name="prefix-upstream", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions={u'tailf-common': {u'callpoint': u'mpls-ldp-fec-stream-prefix-upstream-1'}}, namespace='urn:brocade.com:mgmt:brocade-mpls-operational', defining_module='brocade-mpls-operational', yang_type='list', is_config=False)