code: def attributes(self):
          
          dictionary = {}
          # Only look for attributes registered in attribute_names.
          for python_attr_name, cookie_attr_name in self.attribute_names.items():
              value = getattr(self, python_attr_name)
              renderer = self.attribute_renderers.get(python_attr_name, None)
              if renderer:
                  value = renderer(value)
              # If renderer returns None, or it's just natively none, then the
              # value is suppressed entirely - does not appear in any rendering.
              if not value:
                  continue
              dictionary[cookie_attr_name] = value
          return dictionary
docs: Export this cookie's attributes as a dict of encoded values.
  
          This is an important part of the code for rendering attributes, e.g.
          render_response().