code: def unstructure_attrs_asdict(self, obj):
          # type: (Any) -> Dict[str, Any]
          
          attrs = obj.__class__.__attrs_attrs__
          dispatch = self._unstructure_func.dispatch
          rv = self._dict_factory()
          for a in attrs:
              name = a.name
              v = getattr(obj, name)
              rv[name] = dispatch(v.__class__)(v)
          return rv
docs: Our version of `attrs.asdict`, so we can call back to us.