code: def add(self, key, value=None):
          
          if value is None:
              value = 2 ** (len(self))
  
          self[key] = value
          setattr(self, key, self[key])
          return value
docs: Adds the new key to this enumerated type.
          
          :param      key | <str>