<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def list(self, limit=None, marker=None, return_next=False):
 """ This is necessary to handle pagination correctly, as the Monitoring service defines 'marker' differently than most other services. For monitoring, 'marker' represents the first item in the next page, whereas other services define it as the ID of the last item in the current page. """

        kwargs = {}
        if return_next:
            kwargs["other_keys"] = "metadata"
        ret = super(_PaginationManager, self).list(limit=limit,
                marker=marker, **kwargs)
        if return_next:
            ents, meta = ret
            return (ents, meta[0].get("next_marker"))
        else:
            return ret