'Construct a new OAuth 2 authorization object.
:param client_id: Client id obtained during registration
:param client: :class:`oauthlib.oauth2.Client` to be used. Default is
WebApplicationClient which is useful for any
hosted application but not mobile or desktop.
:param token: Token dictionary, must include access_token
and token_type.'

def __init__(self, client_id=None, client=None, token=None):

    self._client = (client or WebApplicationClient(client_id, token=token))
    if token:
        for (k, v) in token.items():
            setattr(self._client, k, v)
