parameters: (self,attr_name,attr_value)
docstring: overloaded to prohibit adding non-starting with _properties to the class instance
              and add all other properties to property manager except this property already
             have a descriptor
docstring_summary: overloaded to prohibit adding non-starting with _properties to the class instance
              and add all other properties to property manager except this property already
             have a descriptor
docstring_tokens: overloaded to prohibit adding non - starting with _properties to the class instance and add all other properties to property manager except this property already have a descriptor
function: def __setattr__(self,attr_name,attr_value):
          """ overloaded to prohibit adding non-starting with _properties to the class instance
              and add all other properties to property manager except this property already
             have a descriptor
         """
          if attr_name[0] == '_':
              object.__setattr__(self,attr_name,attr_value)
          else:
              if attr_name in self._descriptors:
                  object.__setattr__(self,attr_name,attr_value)
              else:
                  setattr(self._propMan,attr_name,attr_value)
function_tokens: def __setattr__ ( self , attr_name , attr_value ) : if attr_name [ 0 ] == '_' : object . __setattr__ ( self , attr_name , attr_value ) else : if attr_name in self . _descriptors : object . __setattr__ ( self , attr_name , attr_value ) else : setattr ( self . _propMan , attr_name , attr_value )