docs: def _get_obj_ct(self, obj):
          """ Look up and return object's content type and cache for reuse """
          if not hasattr(obj, '_wfct'):
              # Use polymorpic content type if available
              if hasattr(obj, 'polymorphic_ctype'):
                  obj._wfct = obj.polymorphic_ctype
              else:
                  obj._wfct = ContentType.objects.get_for_model(obj)
          return obj._wfct