docs: def model(self):
          """
          Retrieve the model of this `Part` as `Part`.
  
          For instance, you can get the part model of a part instance. But trying to get the model of a part that
          has no model, like a part model, will raise a :exc:`NotFoundError`.
  
          .. versionadded:: 1.8
  
          :return: the model of this part instance as :class:`Part` with category `MODEL`
          :raises NotFoundError: if no model found
  
          Example
          -------
          >>> front_fork = project.part('Front Fork')
          >>> front_fork_model = front_fork.model()
  
          """
          if self.category == Category.INSTANCE:
              model_id = self._json_data['model'].get('id')
              return self._client.model(pk=model_id)
          else:
              raise NotFoundError("Part {} has no model".format(self.name))