<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def retrieve(self, identifier, *criterion):
 """ Retrieve a model by primary key and zero or more other criteria. :raises `NotFound` if there is no existing model """

        return self._retrieve(
            self.model_class.id == identifier,
            *criterion
        )