code: def metaprop(name: str, doc: str, readonly=False):
          
          def get(self):
              return self.meta[name]
          get.__doc__ = "Get %s%s." % (doc, " (readonly)" if readonly else "")
  
          if not readonly:
              def set(self, value):
                  self.meta[name] = value
              set.__doc__ = "Set %s." % doc
  
              return property(get, set)
          return property(get)
docs: Temporary property builder.