old_contents: class Bug(object):
      """This represents a bug"""
      def __init__(self, _summary=''):
          self._summary = _summary
  
      def summary():
          doc = "The summary property."
          def fget(self):
              return self._summary
          def fset(self, value):
              self._summary = value
          def fdel(self):
              del self._summary
          return locals()
      summary = property(**summary())
  
new_contents: class Bug(object):
      """This represents a bug"""
  
      _bug = {}
  
      def __init__(self, **kwargs):
          self._bug['summary'] = kwargs.get('summary', '')
  
      def summary():
          doc = "The summary property."
          def fget(self):
              return self._bug['summary']
          def fset(self, value):
              self._bug['summary'] = value
          def fdel(self):
              del self._bug['summary']
          return locals()
      summary = property(**summary())
  
subject: Use a dict instead of separate variables so we can create bugs easier