<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_library(self, username, status=None):
 """Fetches a users library. :param str username: The user to get the library from. :param str status: only return the items with the supplied status. Can be one of `currently-watching`, `plan-to-watch`, `completed`, `on-hold` or `dropped`. :returns: List of Library objects. """


        r = self._query_('/users/%s/library' % username, 'GET',
                         params={'status': status})

        results = [LibraryEntry(item) for item in r.json()]
        return results