<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(self, **kwargs):
 """Returns the first object encountered that matches the specified lookup parameters. {'url': 'http://site1.tld/', 'published': False, 'id': 1} {'url': 'http://site1.tld/', 'published': True, 'id': 2} {'url': 'http://site1.tld/', 'published': True, 'id': 2} If the QueryList contains multiple elements that match the criteria, only the first match will be returned. Use ``filter()`` to retrieve the entire set. If no match is found in the QueryList, the method will raise a ``NotFound`` exception. Traceback (most recent call last):
 File "<stdin>", line 1, in <module> File "querylist/list.py", line 113, in get "Element not found with attributes: %s" % kv_str) querylist.list.NotFound: Element not found with attributes: id=None """

        for x in self:
            if self._check_element(kwargs, x):
                return x

        kv_str = self._stringify_kwargs(kwargs)
        raise QueryList.NotFound(
            "Element not found with attributes: %s" % kv_str)