All classes:
- oauthlib.common.CaseInsensitiveDict
- oauthlib.common.Request
- oauthlib.oauth1.rfc5849.Client
- oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint
- oauthlib.oauth1.rfc5849.endpoints.access_token.AccessTokenEndpoint
- oauthlib.oauth1.rfc5849.endpoints.authorization.AuthorizationEndpoint
- oauthlib.oauth1.rfc5849.endpoints.request_token.RequestTokenEndpoint
- oauthlib.oauth1.rfc5849.endpoints.resource.ResourceEndpoint
- oauthlib.oauth1.rfc5849.endpoints.signature_only.SignatureOnlyEndpoint
- oauthlib.oauth1.rfc5849.endpoints.pre_configured.WebApplicationServer
- oauthlib.oauth1.rfc5849.errors.OAuth1Error
- oauthlib.oauth1.rfc5849.errors.InsecureTransportError
- oauthlib.oauth1.rfc5849.errors.InvalidSignatureMethodError
- oauthlib.oauth1.rfc5849.errors.InvalidRequestError
- oauthlib.oauth1.rfc5849.errors.InvalidClientError
- oauthlib.oauth1.rfc5849.request_validator.RequestValidator
- '...fuzz_oauth1_sig.FuzzMockRequest'
- oauthlib.signals.Namespace
- oauthlib.signals._FakeSignal
- oauthlib.oauth2.rfc6749.errors.OAuth2Error
- oauthlib.oauth2.rfc6749.errors.TokenExpiredError
- oauthlib.oauth2.rfc6749.errors.InsecureTransportError
- oauthlib.oauth2.rfc6749.errors.MismatchingStateError
- oauthlib.oauth2.rfc6749.errors.MissingCodeError
- oauthlib.oauth2.rfc6749.errors.MissingTokenError
- oauthlib.oauth2.rfc6749.errors.MissingTokenTypeError
- oauthlib.oauth2.rfc6749.errors.FatalClientError
- oauthlib.oauth2.rfc6749.errors.InvalidRequestFatalError
- oauthlib.oauth2.rfc6749.errors.InvalidRedirectURIError
- oauthlib.oauth2.rfc6749.errors.MissingRedirectURIError
- oauthlib.oauth2.rfc6749.errors.MismatchingRedirectURIError
- oauthlib.oauth2.rfc6749.errors.InvalidClientIdError
- oauthlib.oauth2.rfc6749.errors.MissingClientIdError
- oauthlib.oauth2.rfc6749.errors.InvalidRequestError
- oauthlib.oauth2.rfc6749.errors.MissingResponseTypeError
- oauthlib.oauth2.rfc6749.errors.MissingCodeChallengeError
- oauthlib.oauth2.rfc6749.errors.MissingCodeVerifierError
- oauthlib.oauth2.rfc6749.errors.AccessDeniedError
- oauthlib.oauth2.rfc6749.errors.UnsupportedResponseTypeError
- oauthlib.oauth2.rfc6749.errors.UnsupportedCodeChallengeMethodError
- oauthlib.oauth2.rfc6749.errors.InvalidScopeError
- oauthlib.oauth2.rfc6749.errors.ServerError
- oauthlib.oauth2.rfc6749.errors.TemporarilyUnavailableError
- oauthlib.oauth2.rfc6749.errors.InvalidClientError
- oauthlib.oauth2.rfc6749.errors.InvalidGrantError
- oauthlib.oauth2.rfc6749.errors.UnauthorizedClientError
- oauthlib.oauth2.rfc6749.errors.UnsupportedGrantTypeError
- oauthlib.oauth2.rfc6749.errors.UnsupportedTokenTypeError
- oauthlib.oauth2.rfc6749.errors.InvalidTokenError
- oauthlib.oauth2.rfc6749.errors.InsufficientScopeError
- oauthlib.oauth2.rfc6749.errors.ConsentRequired
- oauthlib.oauth2.rfc6749.errors.LoginRequired
- oauthlib.oauth2.rfc6749.errors.CustomOAuth2Error
- oauthlib.oauth2.rfc6749.tokens.OAuth2Token
- oauthlib.oauth2.rfc6749.tokens.TokenBase
- oauthlib.oauth2.rfc6749.tokens.BearerToken
- oauthlib.oauth2.rfc6749.clients.base.Client
- oauthlib.oauth2.rfc6749.clients.backend_application.BackendApplicationClient
- oauthlib.oauth2.rfc6749.clients.legacy_application.LegacyApplicationClient
- oauthlib.oauth2.rfc6749.clients.mobile_application.MobileApplicationClient
- oauthlib.oauth2.rfc6749.clients.service_application.ServiceApplicationClient
- oauthlib.oauth2.rfc6749.clients.web_application.WebApplicationClient
- oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint
- oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint
- oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint
- oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint
- oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint
- oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint
- oauthlib.oauth2.rfc6749.request_validator.RequestValidator
- oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer
- oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase
- oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant
- oauthlib.oauth2.rfc6749.grant_types.client_credentials.ClientCredentialsGrant
- oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant
- oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant
- oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials.ResourceOwnerPasswordCredentialsGrant
- oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint
- oauthlib.oauth2.rfc8628.grant_types.device_code.DeviceCodeGrant
- oauthlib.oauth2.rfc8628.errors.AuthorizationPendingError
- oauthlib.oauth2.rfc8628.errors.SlowDownError
- oauthlib.oauth2.rfc8628.errors.ExpiredTokenError
- oauthlib.oauth2.rfc8628.errors.AccessDenied
- oauthlib.oauth2.rfc6749.endpoints.pre_configured.Server
- oauthlib.oauth2.rfc6749.endpoints.pre_configured.WebApplicationServer
- oauthlib.oauth2.rfc6749.endpoints.pre_configured.MobileApplicationServer
- oauthlib.oauth2.rfc6749.endpoints.pre_configured.LegacyApplicationServer
- oauthlib.oauth2.rfc6749.endpoints.pre_configured.BackendApplicationServer
- oauthlib.oauth2.rfc8628.clients.device.DeviceClient
- oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint
- oauthlib.openid.connect.core.request_validator.RequestValidator
- oauthlib.openid.connect.core.grant_types.base.GrantTypeBase
- oauthlib.openid.connect.core.grant_types.authorization_code.AuthorizationCodeGrant
- oauthlib.openid.connect.core.grant_types.dispatchers.Dispatcher
- oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher
- oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher
- oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationTokenGrantDispatcher
- oauthlib.openid.connect.core.grant_types.hybrid.HybridGrant
- oauthlib.openid.connect.core.grant_types.implicit.ImplicitGrant
- oauthlib.openid.connect.core.grant_types.refresh_token.RefreshTokenGrant
- oauthlib.openid.connect.core.tokens.JWTToken
- oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint
- oauthlib.openid.connect.core.endpoints.pre_configured.Server
- oauthlib.oauth2.rfc8628.endpoints.pre_configured.DeviceApplicationServer
- oauthlib.oauth2.rfc8628.request_validator.RequestValidator
- oauthlib.openid.connect.core.exceptions.FatalOpenIDClientError
- oauthlib.openid.connect.core.exceptions.OpenIDClientError
- oauthlib.openid.connect.core.exceptions.InteractionRequired
- oauthlib.openid.connect.core.exceptions.LoginRequired
- oauthlib.openid.connect.core.exceptions.AccountSelectionRequired
- oauthlib.openid.connect.core.exceptions.ConsentRequired
- oauthlib.openid.connect.core.exceptions.InvalidRequestURI
- oauthlib.openid.connect.core.exceptions.InvalidRequestObject
- oauthlib.openid.connect.core.exceptions.RequestNotSupported
- oauthlib.openid.connect.core.exceptions.RequestURINotSupported
- oauthlib.openid.connect.core.exceptions.RegistrationNotSupported
- oauthlib.openid.connect.core.exceptions.InvalidTokenError
- oauthlib.openid.connect.core.exceptions.InsufficientScopeError
All functions:
  Elements:
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: '...fuzz_oauth1_sig'
    functionSourceFile: '...fuzz_oauth1_sig'
    functionUses: 0
    functionsReached:
    - '...fuzz_oauth1_sig.main'
    - atheris.instrument_all
    - atheris.Setup
    - atheris.Fuzz
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - method
    - uri_str
    - params
    - signature
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 26
    functionName: '...fuzz_oauth1_sig.FuzzMockRequest.__init__'
    functionSourceFile: '...fuzz_oauth1_sig'
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 39
    functionName: '...fuzz_oauth1_sig.TestOneInput'
    functionSourceFile: '...fuzz_oauth1_sig'
    functionUses: 0
    functionsReached:
    - oauthlib.common.quote
    - '...fuzz_oauth1_sig.FuzzMockRequest.__init__'
    - v.replace
    - <builtin>.len
    - key_values.sort
    - <builtin>.zip
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    - alg.prepare_key
    - http_method.upper
    - oauthlib.oauth1.rfc5849.signature._verify_rsa
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha512
    - urllib.parse.quote.encode
    - scheme.lower
    - <builtin>.ord
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - request.signature.encode
    - hostname.lower
    - log.debug
    - oauthlib.common.safe_string_equals
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - contextlib.suppress
    - alg.verify
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - hmac.new
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - host.lower
    - urllib.parse.urlparse
    - keystr.decode
    - <builtin>.isinstance
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - oauthlib.oauth1.rfc5849.signature._verify_hmac
    - urllib.parse.quote
    - atheris.FuzzedDataProvider
    - fdp.ConsumeUnicodeNoSurrogates
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - jwt.algorithms.RSAAlgorithm
    - signature.digest
    - binascii.b2a_base64
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha1
    - ipaddress.ip_address
    - binascii.a2b_base64
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.FuzzedDataProvider
    functionSourceFile: atheris
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fdp.ConsumeUnicodeNoSurrogates
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e9cc10>
    - <ast.Constant object at 0x7f4199e9c820>
    argNames:
    - request
    - client_secret
    - resource_owner_secret
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 469
    functionName: oauthlib.oauth1.rfc5849.signature.verify_hmac_sha1
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 8
    functionsReached:
    - oauthlib.common.quote
    - v.replace
    - <builtin>.len
    - key_values.sort
    - <builtin>.zip
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    - http_method.upper
    - urllib.parse.quote.encode
    - scheme.lower
    - <builtin>.ord
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - hostname.lower
    - log.debug
    - oauthlib.common.safe_string_equals
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - contextlib.suppress
    - hmac.new
    - host.lower
    - urllib.parse.urlparse
    - <builtin>.isinstance
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - oauthlib.oauth1.rfc5849.signature._verify_hmac
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - signature.digest
    - binascii.b2a_base64
    - ipaddress.ip_address
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - request
    - rsa_public_key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 794
    functionName: oauthlib.oauth1.rfc5849.signature.verify_rsa_sha512
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 8
    functionsReached:
    - oauthlib.common.quote
    - v.replace
    - key_values.sort
    - alg.prepare_key
    - http_method.upper
    - oauthlib.oauth1.rfc5849.signature._verify_rsa
    - urllib.parse.quote.encode
    - scheme.lower
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - request.signature.encode
    - hostname.lower
    - log.debug
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - contextlib.suppress
    - alg.verify
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - host.lower
    - urllib.parse.urlparse
    - keystr.decode
    - <builtin>.isinstance
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - jwt.algorithms.RSAAlgorithm
    - ipaddress.ip_address
    - binascii.a2b_base64
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 65
    functionName: '...fuzz_oauth1_sig.main'
    functionSourceFile: '...fuzz_oauth1_sig'
    functionUses: 1
    functionsReached:
    - atheris.instrument_all
    - atheris.Setup
    - atheris.Fuzz
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.instrument_all
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Setup
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Fuzz
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849
    functionSourceFile: oauthlib.oauth1.rfc5849
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: logging.getLogger
    functionSourceFile: logging
    functionUses: 33
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - method_name
    - method_callback
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 88
    functionName: oauthlib.oauth1.rfc5849.Client.register_signature_method
    functionSourceFile: oauthlib.oauth1.rfc5849
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 15
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e1e9a0>
    - <ast.Constant object at 0x7f4199e1e7f0>
    - <ast.Constant object at 0x7f4199e1e910>
    - <ast.Constant object at 0x7f4199e1ee80>
    - <ast.Name object at 0x7f4199e1eb20>
    - <ast.Name object at 0x7f4199e1eb80>
    - <ast.Constant object at 0x7f4199e1ec10>
    - <ast.Constant object at 0x7f4199e1e730>
    - <ast.Constant object at 0x7f4199e1e1c0>
    - <ast.Constant object at 0x7f4199e1eee0>
    - <ast.Constant object at 0x7f4199e1ef70>
    - <ast.Constant object at 0x7f4199e1e760>
    - <ast.Constant object at 0x7f4199e1e2b0>
    argNames:
    - self
    - client_key
    - client_secret
    - resource_owner_key
    - resource_owner_secret
    - callback_uri
    - signature_method
    - signature_type
    - rsa_key
    - verifier
    - realm
    - encoding
    - decoding
    - nonce
    - timestamp
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 91
    functionName: oauthlib.oauth1.rfc5849.Client.__init__
    functionSourceFile: oauthlib.oauth1.rfc5849
    functionUses: 0
    functionsReached:
    - oauthlib.oauth1.rfc5849.Client.__init__.encode
    - <builtin>.isinstance
    - oauthlib.common.to_unicode
    - <builtin>.hasattr
    - data.items
    - <builtin>.dict
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 124
    functionName: oauthlib.oauth1.rfc5849.Client.__init__.encode
    functionSourceFile: oauthlib.oauth1.rfc5849
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - oauthlib.common.to_unicode
    - <builtin>.hasattr
    - data.items
    - <builtin>.dict
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e37310>
    argNames:
    - data
    - encoding
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 270
    functionName: oauthlib.common.to_unicode
    functionSourceFile: oauthlib.common
    functionUses: 24
    functionsReached:
    - <builtin>.isinstance
    - oauthlib.common.to_unicode
    - <builtin>.hasattr
    - data.items
    - <builtin>.dict
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 142
    functionName: oauthlib.oauth1.rfc5849.Client.__repr__
    functionSourceFile: oauthlib.oauth1.rfc5849
    functionUses: 0
    functionsReached:
    - <builtin>.vars
    - attrs.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.vars
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: attrs.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 151
    functionName: oauthlib.oauth1.rfc5849.Client.get_oauth_signature
    functionSourceFile: oauthlib.oauth1.rfc5849
    functionUses: 1
    functionsReached:
    - oauthlib.common.quote
    - oauthlib.oauth1.rfc5849.Client._render
    - oauthlib.common.urldecode
    - oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    - urllib.parse.unquote.decode
    - oauthlib.oauth1.rfc5849.parameters.prepare_form_encoded_body
    - v.replace
    - oauthlib.oauth1.rfc5849.utils.parse_authorization_header
    - oauthlib.common.extract_params
    - <builtin>.len
    - <builtin>.dict
    - key_values.sort
    - INVALID_HEX_PATTERN.search
    - urllib.request.parse_keqv_list
    - decoded.append
    - http_method.upper
    - urllib.parse.quote.encode
    - encoded.append
    - headers_lower.get
    - scheme.lower
    - <builtin>.filter
    - k.decode
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - hostname.lower
    - log.debug
    - k.startswith
    - authorization_header_parameters_parts.append
    - oauthlib.oauth1.rfc5849.signature.sign_plaintext
    - <builtin>.set
    - contextlib.suppress
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - urllib.parse.urlencode.items
    - k.encode
    - oauthlib.oauth1.rfc5849.parameters._append_params
    - oauthlib.common.unquote
    - host.lower
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - merged.extend
    - headers.get
    - <builtin>.isinstance
    - merged.sort
    - <builtin>.hasattr
    - urllib.parse.unquote
    - oauthlib.common.urlencode
    - oauthlib.oauth1.rfc5849.signature.collect_parameters
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - urllib.parse.urlunparse
    - v.decode
    - urllib.parse.quote
    - params.extend
    - headers.items
    - full_headers.update
    - k.lower
    - unescaped_params.append
    - oauthlib.common.decode_params_utf8
    - urllib.request.parse_http_list
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - v.encode
    - <builtin>.list
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - ipaddress.ip_address
    - oauthlib.oauth1.rfc5849.utils.parse_http_list
    - oauthlib.oauth1.rfc5849.utils.unescape
    - oauthlib.oauth1.rfc5849.parameters.prepare_headers
    - oauthlib.oauth1.rfc5849.parameters.prepare_request_uri_query
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - client_secret
    - resource_owner_secret
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 806
    functionName: oauthlib.oauth1.rfc5849.signature.sign_plaintext
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 11
    functionsReached:
    - oauthlib.common.quote
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.utils.escape
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f419a55f2b0>
    - <ast.Constant object at 0x7f419a55fa00>
    argNames:
    - self
    - request
    - formencode
    - realm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 227
    functionName: oauthlib.oauth1.rfc5849.Client._render
    functionSourceFile: oauthlib.oauth1.rfc5849
    functionUses: 2
    functionsReached:
    - oauthlib.common.quote
    - oauthlib.common.urldecode
    - oauthlib.oauth1.rfc5849.parameters.prepare_form_encoded_body
    - oauthlib.common.extract_params
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - urllib.parse.quote.encode
    - k.decode
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - authorization_header_parameters_parts.append
    - <builtin>.set
    - k.encode
    - urllib.parse.urlencode.items
    - oauthlib.oauth1.rfc5849.parameters._append_params
    - urllib.parse.urlencode
    - urllib.parse.urlparse
    - <builtin>.isinstance
    - merged.extend
    - encoded.append
    - <builtin>.hasattr
    - merged.sort
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - urllib.parse.quote
    - full_headers.update
    - v.decode
    - oauthlib.common.decode_params_utf8
    - v.encode
    - <builtin>.list
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - oauthlib.oauth1.rfc5849.parameters.prepare_headers
    - oauthlib.oauth1.rfc5849.parameters.prepare_request_uri_query
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.urlparse
    functionSourceFile: urllib
    functionUses: 47
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 5
    IfCount: 6
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f419a586880>
    - <ast.Constant object at 0x7f419a586850>
    - <ast.Constant object at 0x7f419a5864c0>
    - <ast.Constant object at 0x7f419a586520>
    - <ast.Constant object at 0x7f419a586bb0>
    argNames:
    - uri_query
    - body
    - headers
    - exclude_oauth_signature
    - with_realm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 237
    functionName: oauthlib.oauth1.rfc5849.signature.collect_parameters
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 10
    functionsReached:
    - oauthlib.common.urldecode
    - oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    - urllib.parse.unquote.decode
    - oauthlib.oauth1.rfc5849.utils.parse_authorization_header
    - oauthlib.common.extract_params
    - <builtin>.len
    - <builtin>.dict
    - decoded.append
    - urllib.request.parse_keqv_list
    - INVALID_HEX_PATTERN.search
    - headers_lower.get
    - <builtin>.filter
    - k.decode
    - k.startswith
    - <builtin>.set
    - urllib.parse.urlencode.items
    - oauthlib.common.unquote
    - <builtin>.isinstance
    - <builtin>.hasattr
    - urllib.parse.unquote
    - v.decode
    - params.extend
    - headers.items
    - k.lower
    - unescaped_params.append
    - oauthlib.common.decode_params_utf8
    - urllib.request.parse_http_list
    - <builtin>.list
    - urllib.parse.parse_qsl
    - oauthlib.oauth1.rfc5849.utils.unescape
    - oauthlib.oauth1.rfc5849.utils.parse_http_list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: log.debug
    functionSourceFile: <builtin>
    functionUses: 63
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - params
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 324
    functionName: oauthlib.oauth1.rfc5849.signature.normalize_parameters
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 18
    functionsReached:
    - oauthlib.common.quote
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.utils.escape
    - key_values.sort
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: headers.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 1
    IfCount: 11
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f419a580550>
    argNames:
    - uri
    - host
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 106
    functionName: oauthlib.oauth1.rfc5849.signature.base_string_uri
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 18
    functionsReached:
    - host.lower
    - urllib.parse.urlparse
    - scheme.lower
    - <builtin>.isinstance
    - v.replace
    - urllib.parse.urlunparse
    - hostname.lower
    - ipaddress.ip_address
    - contextlib.suppress
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - http_method
    - base_str_uri
    - normalized_encoded_request_parameters
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 55
    functionName: oauthlib.oauth1.rfc5849.signature.signature_base_string
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 18
    functionsReached:
    - oauthlib.common.quote
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.utils.escape
    - http_method.upper
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 192
    functionName: oauthlib.oauth1.rfc5849.Client.get_oauth_params
    functionSourceFile: oauthlib.oauth1.rfc5849
    functionUses: 1
    functionsReached:
    - request.body.encode
    - oauthlib.common.generate_nonce
    - secrets.randbits
    - random.getrandbits
    - base64.b64encode
    - time.time
    - <builtin>.int
    - content_type.find
    - oauthlib.common.generate_timestamp
    - oauthlib.common.CaseInsensitiveDict.get
    - <builtin>.str
    - hashlib.sha1
    - params.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 161
    functionName: oauthlib.common.generate_nonce
    functionSourceFile: oauthlib.common
    functionUses: 4
    functionsReached:
    - secrets.randbits
    - random.getrandbits
    - <builtin>.int
    - time.time
    - oauthlib.common.generate_timestamp
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 176
    functionName: oauthlib.common.generate_timestamp
    functionSourceFile: oauthlib.common
    functionUses: 5
    functionsReached:
    - <builtin>.str
    - <builtin>.int
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: params.append
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199ac33a0>
    argNames:
    - self
    - k
    - default
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 318
    functionName: oauthlib.common.CaseInsensitiveDict.get
    functionSourceFile: ''
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: content_type.find
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: request.body.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: hashlib.sha1
    functionSourceFile: hashlib
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base64.b64encode
    functionSourceFile: base64
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f419a580550>
    - <ast.Constant object at 0x7f419a5803d0>
    argNames:
    - oauth_params
    - headers
    - realm
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 19
    functionName: oauthlib.oauth1.rfc5849.parameters.prepare_headers
    functionSourceFile: oauthlib.oauth1.rfc5849.parameters
    functionUses: 4
    functionsReached:
    - oauthlib.common.quote
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.utils.escape
    - full_headers.update
    - authorization_header_parameters_parts.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - oauth_params
    - body
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 109
    functionName: oauthlib.oauth1.rfc5849.parameters.prepare_form_encoded_body
    functionSourceFile: oauthlib.oauth1.rfc5849.parameters
    functionUses: 3
    functionsReached:
    - oauthlib.oauth1.rfc5849.parameters._append_params
    - <builtin>.list
    - merged.extend
    - merged.sort
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - params
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 63
    functionName: oauthlib.common.urlencode
    functionSourceFile: oauthlib.common
    functionUses: 35
    functionsReached:
    - urllib.parse.urlencode
    - encoded.append
    - <builtin>.isinstance
    - v.encode
    - k.encode
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - oauth_params
    - uri
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 121
    functionName: oauthlib.oauth1.rfc5849.parameters.prepare_request_uri_query
    functionSourceFile: oauthlib.oauth1.rfc5849.parameters
    functionUses: 3
    functionsReached:
    - oauthlib.common.urldecode
    - oauthlib.common.extract_params
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - k.decode
    - <builtin>.set
    - k.encode
    - urllib.parse.urlencode.items
    - oauthlib.oauth1.rfc5849.parameters._append_params
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - merged.extend
    - <builtin>.isinstance
    - encoded.append
    - <builtin>.hasattr
    - merged.sort
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - v.decode
    - oauthlib.common.decode_params_utf8
    - v.encode
    - <builtin>.list
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 3
    IfCount: 6
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f4199abf6d0>
    - <ast.Constant object at 0x7f4199abf460>
    - <ast.Constant object at 0x7f4199abfb50>
    - <ast.Constant object at 0x7f4199abf9a0>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    - realm
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 264
    functionName: oauthlib.oauth1.rfc5849.Client.sign
    functionSourceFile: oauthlib.oauth1.rfc5849
    functionUses: 0
    functionsReached:
    - oauthlib.common.urldecode
    - <builtin>.int
    - urllib.parse.unquote.decode
    - key_values.sort
    - urllib.parse.quote.encode
    - oauthlib.oauth1.rfc5849.utils.escape
    - oauthlib.common.generate_timestamp
    - oauthlib.common.CaseInsensitiveDict.get
    - k.startswith
    - oauthlib.oauth1.rfc5849.signature.sign_plaintext
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - k.encode
    - urllib.parse.urlparse
    - <builtin>.hasattr
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - v.decode
    - params.extend
    - oauthlib.oauth1.rfc5849.Client.get_oauth_signature
    - oauthlib.common.to_unicode
    - oauthlib.oauth1.rfc5849.Client.get_oauth_params
    - content_type.startswith
    - time.time
    - oauthlib.oauth1.rfc5849.parameters.prepare_request_uri_query
    - oauthlib.oauth1.rfc5849.Client._render
    - INVALID_HEX_PATTERN.search
    - headers_lower.get
    - scheme.lower
    - uri.encode
    - hostname.lower
    - <builtin>.set
    - oauthlib.common.unquote
    - headers.get
    - params.append
    - k.lower
    - oauthlib.common.Request.__init__
    - <builtin>.list
    - content_type.find
    - urllib.parse.unquote
    - base64.b64encode
    - oauthlib.oauth1.rfc5849.utils.parse_authorization_header
    - <builtin>.dict
    - decoded.append
    - http_method.upper
    - request.body.encode
    - oauthlib.common.CaseInsensitiveDict.__init__
    - oauthlib.common.generate_nonce
    - k.decode
    - oauthlib.oauth1.rfc5849.parameters._append_params
    - secrets.randbits
    - random.getrandbits
    - host.lower
    - merged.extend
    - oauthlib.common.Request.__init__.encode
    - <builtin>.isinstance
    - encoded.append
    - full_headers.update
    - headers.items
    - unescaped_params.append
    - oauthlib.common.decode_params_utf8
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - v.encode
    - urllib.parse.urlencode.decode
    - oauthlib.oauth1.rfc5849.utils.parse_http_list
    - oauthlib.common.encode_params_utf8
    - oauthlib.common.quote
    - oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    - oauthlib.oauth1.rfc5849.parameters.prepare_form_encoded_body
    - v.replace
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.len
    - urllib.request.parse_keqv_list
    - body.encode
    - <builtin>.filter
    - urllib.parse.quote.decode
    - log.debug
    - authorization_header_parameters_parts.append
    - contextlib.suppress
    - urllib.parse.urlencode.items
    - urllib.parse.urlencode
    - request.oauth_params.append
    - merged.sort
    - oauthlib.oauth1.rfc5849.signature.collect_parameters
    - urllib.parse.quote
    - hashlib.sha1
    - <builtin>.str
    - urllib.request.parse_http_list
    - urllib.parse.parse_qsl
    - ipaddress.ip_address
    - oauthlib.oauth1.rfc5849.utils.unescape
    - oauthlib.oauth1.rfc5849.parameters.prepare_headers
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d73df0>
    - <ast.Constant object at 0x7f4199d738b0>
    - <ast.Constant object at 0x7f4199d73970>
    - <ast.Constant object at 0x7f4199d73c10>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    - encoding
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 346
    functionName: oauthlib.common.Request.__init__
    functionSourceFile: oauthlib.common
    functionUses: 17
    functionsReached:
    - oauthlib.common.urldecode
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - oauthlib.common.CaseInsensitiveDict.__init__
    - k.decode
    - <builtin>.set
    - urllib.parse.urlencode.items
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - <builtin>.hasattr
    - v.decode
    - <builtin>.str
    - oauthlib.common.to_unicode
    - k.lower
    - oauthlib.common.decode_params_utf8
    - <builtin>.list
    - urllib.parse.parse_qsl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: content_type.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: http_method.upper
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: request.oauth_params.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: uri.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: body.encode
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: headers.items
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: k.encode
    functionSourceFile: <builtin>
    functionUses: 37
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: v.encode
    functionSourceFile: <builtin>
    functionUses: 37
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.parameters
    functionSourceFile: oauthlib.oauth1.rfc5849.parameters
    functionUses: 0
    functionsReached:
    - oauthlib.oauth1.rfc5849.utils.filter_params
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - target
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 17
    functionName: oauthlib.oauth1.rfc5849.utils.filter_params
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - u
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 41
    functionName: oauthlib.oauth1.rfc5849.utils.escape
    functionSourceFile: oauthlib.oauth1.rfc5849.utils
    functionUses: 32
    functionsReached:
    - oauthlib.common.quote
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - urllib.parse.quote.decode
    - urllib.parse.quote
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: authorization_header_parameters_parts.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: full_headers.update
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - oauth_params
    - params
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 88
    functionName: oauthlib.oauth1.rfc5849.parameters._append_params
    functionSourceFile: oauthlib.oauth1.rfc5849.parameters
    functionUses: 5
    functionsReached:
    - <builtin>.list
    - merged.extend
    - merged.sort
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.list
    functionSourceFile: <builtin>
    functionUses: 36
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: merged.extend
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.parameters._append_params.<lambda1>
    functionSourceFile: oauthlib.oauth1.rfc5849.parameters
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: merged.sort
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - raw
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 132
    functionName: oauthlib.common.extract_params
    functionSourceFile: oauthlib.common
    functionUses: 23
    functionsReached:
    - urllib.parse.urlencode.items
    - oauthlib.common.urldecode
    - oauthlib.common.decode_params_utf8
    - <builtin>.isinstance
    - k.decode
    - <builtin>.list
    - urllib.parse.parse_qsl
    - <builtin>.hasattr
    - v.decode
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.urlunparse
    functionSourceFile: urllib
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.common
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached:
    - re.compile
    - <builtin>.set
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.compile
    functionSourceFile: re
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4199c61e80>
    argNames:
    - s
    - safe
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 43
    functionName: oauthlib.common.quote
    functionSourceFile: oauthlib.common
    functionUses: 33
    functionsReached:
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.isinstance
    functionSourceFile: <builtin>
    functionUses: 141
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.quote.encode
    functionSourceFile: urllib
    functionUses: 34
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.quote
    functionSourceFile: urllib
    functionUses: 35
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.quote.decode
    functionSourceFile: urllib
    functionUses: 34
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 53
    functionName: oauthlib.common.unquote
    functionSourceFile: oauthlib.common
    functionUses: 12
    functionsReached:
    - urllib.parse.unquote
    - <builtin>.isinstance
    - urllib.parse.unquote.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.unquote
    functionSourceFile: urllib
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.unquote.decode
    functionSourceFile: urllib
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - params
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 72
    functionName: oauthlib.common.encode_params_utf8
    functionSourceFile: oauthlib.common
    functionUses: 36
    functionsReached:
    - k.encode
    - encoded.append
    - v.encode
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.urlencode
    functionSourceFile: urllib
    functionUses: 36
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.urlencode.decode
    functionSourceFile: urllib
    functionUses: 36
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: encoded.append
    functionSourceFile: <builtin>
    functionUses: 37
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - params
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 84
    functionName: oauthlib.common.decode_params_utf8
    functionSourceFile: oauthlib.common
    functionUses: 26
    functionsReached:
    - v.decode
    - <builtin>.isinstance
    - k.decode
    - decoded.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: k.decode
    functionSourceFile: <builtin>
    functionUses: 27
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: v.decode
    functionSourceFile: <builtin>
    functionUses: 27
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: decoded.append
    functionSourceFile: <builtin>
    functionUses: 27
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.set
    functionSourceFile: <builtin>
    functionUses: 48
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - query
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 99
    functionName: oauthlib.common.urldecode
    functionSourceFile: oauthlib.common
    functionUses: 25
    functionsReached:
    - oauthlib.common.decode_params_utf8
    - <builtin>.isinstance
    - k.decode
    - urllib.parse.parse_qsl
    - v.decode
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - <builtin>.set
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: INVALID_HEX_PATTERN.search
    functionSourceFile: <builtin>
    functionUses: 26
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.parse_qsl
    functionSourceFile: urllib
    functionUses: 57
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hasattr
    functionSourceFile: <builtin>
    functionUses: 59
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.dict
    functionSourceFile: <builtin>
    functionUses: 42
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.parse.urlencode.items
    functionSourceFile: urllib
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: secrets.randbits
    functionSourceFile: secrets
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: random.getrandbits
    functionSourceFile: random
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.str
    functionSourceFile: <builtin>
    functionUses: 72
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.time
    functionSourceFile: time
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.int
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4199f0ac70>
    - <ast.Name object at 0x7f4199f0a850>
    argNames:
    - length
    - chars
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 188
    functionName: oauthlib.common.generate_token
    functionSourceFile: oauthlib.common
    functionUses: 9
    functionsReached:
    - <builtin>.range
    - secrets.SystemRandom.choice
    - secrets.SystemRandom
    - random.SystemRandom
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: secrets.SystemRandom
    functionSourceFile: secrets
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: random.SystemRandom
    functionSourceFile: random
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: secrets.SystemRandom.choice
    functionSourceFile: secrets
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.range
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - private_pem
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 200
    functionName: oauthlib.common.generate_signed_token
    functionSourceFile: oauthlib.common
    functionUses: 1
    functionsReached:
    - claims.update
    - jwt.encode
    - datetime.datetime.utcnow
    - datetime.timedelta
    - <builtin>.isinstance
    - <builtin>.hasattr
    - data.items
    - <builtin>.dict
    - <builtin>.str
    - oauthlib.common.to_unicode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.datetime.utcnow
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: claims.update
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jwt.encode
    functionSourceFile: jwt
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - public_pem
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 218
    functionName: oauthlib.common.verify_signed_token
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached:
    - jwt.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jwt.decode
    functionSourceFile: jwt
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d8c190>
    - <ast.Name object at 0x7f4199d8c670>
    argNames:
    - length
    - chars
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 224
    functionName: oauthlib.common.generate_client_id
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - oauthlib.common.generate_token
    - secrets.SystemRandom.choice
    - random.SystemRandom
    - secrets.SystemRandom
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - query
    - params
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 233
    functionName: oauthlib.common.add_params_to_qs
    functionSourceFile: oauthlib.common
    functionUses: 24
    functionsReached:
    - queryparams.extend
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - v.encode
    - k.encode
    - urllib.parse.parse_qsl
    - oauthlib.common.urlencode
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: queryparams.extend
    functionSourceFile: <builtin>
    functionUses: 25
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199aaa250>
    argNames:
    - uri
    - params
    - fragment
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 242
    functionName: oauthlib.common.add_params_to_uri
    functionSourceFile: oauthlib.common
    functionUses: 16
    functionsReached:
    - queryparams.extend
    - oauthlib.common.add_params_to_qs
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - v.encode
    - k.encode
    - urllib.parse.parse_qsl
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - a
    - b
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 252
    functionName: oauthlib.common.safe_string_equals
    functionSourceFile: oauthlib.common
    functionUses: 13
    functionsReached:
    - <builtin>.len
    - <builtin>.zip
    - <builtin>.ord
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.len
    functionSourceFile: <builtin>
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.zip
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.ord
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.items
    functionSourceFile: <builtin>
    functionUses: 25
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 301
    functionName: oauthlib.common.CaseInsensitiveDict.__init__
    functionSourceFile: oauthlib.common
    functionUses: 18
    functionsReached:
    - k.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: k.lower
    functionSourceFile: <builtin>
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - k
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 306
    functionName: oauthlib.common.CaseInsensitiveDict.__contains__
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached:
    - k.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - k
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 309
    functionName: oauthlib.common.CaseInsensitiveDict.__delitem__
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - k.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.super
    functionSourceFile: <builtin>
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - k
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 314
    functionName: oauthlib.common.CaseInsensitiveDict.__getitem__
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - k.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - k
    - v
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 321
    functionName: oauthlib.common.CaseInsensitiveDict.__setitem__
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - k.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 325
    functionName: oauthlib.common.CaseInsensitiveDict.update
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - <builtin>.dict
    - k.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 349
    functionName: oauthlib.common.Request.__init__.encode
    functionSourceFile: oauthlib.common
    functionUses: 18
    functionsReached:
    - <builtin>.isinstance
    - oauthlib.common.to_unicode
    - <builtin>.hasattr
    - data.items
    - <builtin>.dict
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 397
    functionName: oauthlib.common.Request.__getattr__
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 403
    functionName: oauthlib.common.Request.__repr__
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached:
    - SANITIZE_PATTERN.sub
    - get_debug
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: get_debug
    functionSourceFile: get_debug
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: SANITIZE_PATTERN.sub
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 416
    functionName: oauthlib.common.Request.uri_query
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached:
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 420
    functionName: oauthlib.common.Request.uri_query_params
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached:
    - urllib.parse.parse_qsl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 427
    functionName: oauthlib.common.Request.duplicate_params
    functionSourceFile: oauthlib.common
    functionUses: 0
    functionsReached:
    - collections.defaultdict
    - seen_keys.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.defaultdict
    functionSourceFile: collections
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: seen_keys.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.signature
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: scheme.lower
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: hostname.lower
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: host.lower
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: contextlib.suppress
    functionSourceFile: contextlib
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ipaddress.ip_address
    functionSourceFile: ipaddress
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: v.replace
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: params.extend
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: headers_lower.get
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - authorization_header
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 75
    functionName: oauthlib.oauth1.rfc5849.utils.parse_authorization_header
    functionSourceFile: oauthlib.oauth1.rfc5849.utils
    functionUses: 11
    functionsReached:
    - oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    - urllib.request.parse_http_list
    - <builtin>.list
    - <builtin>.len
    - urllib.request.parse_keqv_list
    - oauthlib.oauth1.rfc5849.utils.parse_http_list
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: k.startswith
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - u
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 57
    functionName: oauthlib.oauth1.rfc5849.utils.unescape
    functionSourceFile: oauthlib.oauth1.rfc5849.utils
    functionUses: 11
    functionsReached:
    - urllib.parse.unquote
    - oauthlib.common.unquote
    - urllib.parse.unquote.decode
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: unescaped_params.append
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.signature.collect_parameters.<lambda1>
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.filter
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key_values.sort
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - hash_algorithm_name
    - sig_base_str
    - client_secret
    - resource_owner_secret
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 366
    functionName: oauthlib.oauth1.rfc5849.signature._sign_hmac
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 17
    functionsReached:
    - oauthlib.common.quote
    - hmac.new
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - signature.digest
    - binascii.b2a_base64
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.utils.escape
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: hmac.new
    functionSourceFile: hmac
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: signature.digest
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: binascii.b2a_base64
    functionSourceFile: binascii
    functionUses: 25
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e2dd30>
    - <ast.Constant object at 0x7f4199e2dcd0>
    argNames:
    - hash_algorithm_name
    - request
    - client_secret
    - resource_owner_secret
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 431
    functionName: oauthlib.oauth1.rfc5849.signature._verify_hmac
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 11
    functionsReached:
    - oauthlib.common.quote
    - v.replace
    - <builtin>.len
    - key_values.sort
    - <builtin>.zip
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    - http_method.upper
    - urllib.parse.quote.encode
    - scheme.lower
    - <builtin>.ord
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - hostname.lower
    - log.debug
    - oauthlib.common.safe_string_equals
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - contextlib.suppress
    - hmac.new
    - host.lower
    - urllib.parse.urlparse
    - <builtin>.isinstance
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - signature.digest
    - binascii.b2a_base64
    - ipaddress.ip_address
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - sig_base_str
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 464
    functionName: oauthlib.oauth1.rfc5849.signature.sign_hmac_sha1_with_client
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 0
    functionsReached:
    - oauthlib.common.quote
    - hmac.new
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - signature.digest
    - binascii.b2a_base64
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.utils.escape
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - base_string
    - client_secret
    - resource_owner_secret
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 473
    functionName: oauthlib.oauth1.rfc5849.signature.sign_hmac_sha1
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 0
    functionsReached:
    - oauthlib.common.quote
    - hmac.new
    - urllib.parse.quote.encode
    - base_string.decode
    - <builtin>.isinstance
    - signature.digest
    - warnings.warn
    - binascii.b2a_base64
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.utils.escape
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: warnings.warn
    functionSourceFile: warnings
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base_string.decode
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - sig_base_str
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 500
    functionName: oauthlib.oauth1.rfc5849.signature.sign_hmac_sha256_with_client
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 0
    functionsReached:
    - oauthlib.common.quote
    - hmac.new
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - signature.digest
    - binascii.b2a_base64
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.utils.escape
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f419a5960a0>
    - <ast.Constant object at 0x7f419a596d90>
    argNames:
    - request
    - client_secret
    - resource_owner_secret
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 505
    functionName: oauthlib.oauth1.rfc5849.signature.verify_hmac_sha256
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 7
    functionsReached:
    - oauthlib.common.quote
    - v.replace
    - <builtin>.len
    - key_values.sort
    - <builtin>.zip
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    - http_method.upper
    - urllib.parse.quote.encode
    - scheme.lower
    - <builtin>.ord
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - hostname.lower
    - log.debug
    - oauthlib.common.safe_string_equals
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - contextlib.suppress
    - hmac.new
    - host.lower
    - urllib.parse.urlparse
    - <builtin>.isinstance
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - oauthlib.oauth1.rfc5849.signature._verify_hmac
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - signature.digest
    - binascii.b2a_base64
    - ipaddress.ip_address
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - base_string
    - client_secret
    - resource_owner_secret
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 510
    functionName: oauthlib.oauth1.rfc5849.signature.sign_hmac_sha256
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 0
    functionsReached:
    - oauthlib.common.quote
    - hmac.new
    - urllib.parse.quote.encode
    - base_string.decode
    - <builtin>.isinstance
    - signature.digest
    - warnings.warn
    - binascii.b2a_base64
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.utils.escape
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - sig_base_str
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 538
    functionName: oauthlib.oauth1.rfc5849.signature.sign_hmac_sha512_with_client
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 0
    functionsReached:
    - oauthlib.common.quote
    - hmac.new
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - signature.digest
    - binascii.b2a_base64
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.utils.escape
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f419a317be0>
    - <ast.Constant object at 0x7f419a3172b0>
    argNames:
    - request
    - client_secret
    - resource_owner_secret
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 544
    functionName: oauthlib.oauth1.rfc5849.signature.verify_hmac_sha512
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 7
    functionsReached:
    - oauthlib.common.quote
    - v.replace
    - <builtin>.len
    - key_values.sort
    - <builtin>.zip
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    - http_method.upper
    - urllib.parse.quote.encode
    - scheme.lower
    - <builtin>.ord
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - hostname.lower
    - log.debug
    - oauthlib.common.safe_string_equals
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - contextlib.suppress
    - hmac.new
    - host.lower
    - urllib.parse.urlparse
    - <builtin>.isinstance
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - oauthlib.oauth1.rfc5849.signature._verify_hmac
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - signature.digest
    - binascii.b2a_base64
    - ipaddress.ip_address
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - hash_algorithm_name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 556
    functionName: oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 17
    functionsReached:
    - jwt.algorithms.RSAAlgorithm
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: jwt.algorithms.RSAAlgorithm
    functionSourceFile: jwt
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - alg
    - keystr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 584
    functionName: oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 17
    functionsReached:
    - keystr.decode
    - <builtin>.isinstance
    - alg.prepare_key
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: keystr.decode
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: alg.prepare_key
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - hash_algorithm_name
    - sig_base_str
    - rsa_private_key
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 598
    functionName: oauthlib.oauth1.rfc5849.signature._sign_rsa
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 4
    functionsReached:
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - keystr.decode
    - jwt.algorithms.RSAAlgorithm
    - <builtin>.isinstance
    - sig_base_str.encode
    - binascii.b2a_base64
    - alg.sign
    - alg.prepare_key
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sig_base_str.encode
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: alg.sign
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - hash_algorithm_name
    - request
    - rsa_public_key
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 660
    functionName: oauthlib.oauth1.rfc5849.signature._verify_rsa
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 11
    functionsReached:
    - oauthlib.common.quote
    - v.replace
    - key_values.sort
    - alg.prepare_key
    - http_method.upper
    - urllib.parse.quote.encode
    - scheme.lower
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - request.signature.encode
    - hostname.lower
    - log.debug
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - contextlib.suppress
    - alg.verify
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - host.lower
    - urllib.parse.urlparse
    - keystr.decode
    - <builtin>.isinstance
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - jwt.algorithms.RSAAlgorithm
    - ipaddress.ip_address
    - binascii.a2b_base64
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: request.signature.encode
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: binascii.a2b_base64
    functionSourceFile: binascii
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: alg.verify
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - sig_base_str
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 741
    functionName: oauthlib.oauth1.rfc5849.signature.sign_rsa_sha1_with_client
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 0
    functionsReached:
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - keystr.decode
    - jwt.algorithms.RSAAlgorithm
    - <builtin>.isinstance
    - sig_base_str.encode
    - oauthlib.oauth1.rfc5849.signature._sign_rsa
    - binascii.b2a_base64
    - alg.sign
    - sig_base_str.decode
    - alg.prepare_key
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sig_base_str.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - request
    - rsa_public_key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 754
    functionName: oauthlib.oauth1.rfc5849.signature.verify_rsa_sha1
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 7
    functionsReached:
    - oauthlib.common.quote
    - v.replace
    - key_values.sort
    - alg.prepare_key
    - http_method.upper
    - oauthlib.oauth1.rfc5849.signature._verify_rsa
    - urllib.parse.quote.encode
    - scheme.lower
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - request.signature.encode
    - hostname.lower
    - log.debug
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - contextlib.suppress
    - alg.verify
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - host.lower
    - urllib.parse.urlparse
    - keystr.decode
    - <builtin>.isinstance
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - jwt.algorithms.RSAAlgorithm
    - ipaddress.ip_address
    - binascii.a2b_base64
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - base_string
    - rsa_private_key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 758
    functionName: oauthlib.oauth1.rfc5849.signature.sign_rsa_sha1
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 0
    functionsReached:
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - base_string.decode
    - keystr.decode
    - jwt.algorithms.RSAAlgorithm
    - <builtin>.isinstance
    - sig_base_str.encode
    - warnings.warn
    - oauthlib.oauth1.rfc5849.signature._sign_rsa
    - binascii.b2a_base64
    - alg.sign
    - alg.prepare_key
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - sig_base_str
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 780
    functionName: oauthlib.oauth1.rfc5849.signature.sign_rsa_sha256_with_client
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 0
    functionsReached:
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - keystr.decode
    - jwt.algorithms.RSAAlgorithm
    - <builtin>.isinstance
    - sig_base_str.encode
    - oauthlib.oauth1.rfc5849.signature._sign_rsa
    - binascii.b2a_base64
    - alg.sign
    - alg.prepare_key
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - request
    - rsa_public_key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 784
    functionName: oauthlib.oauth1.rfc5849.signature.verify_rsa_sha256
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 7
    functionsReached:
    - oauthlib.common.quote
    - v.replace
    - key_values.sort
    - alg.prepare_key
    - http_method.upper
    - oauthlib.oauth1.rfc5849.signature._verify_rsa
    - urllib.parse.quote.encode
    - scheme.lower
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - request.signature.encode
    - hostname.lower
    - log.debug
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - contextlib.suppress
    - alg.verify
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - host.lower
    - urllib.parse.urlparse
    - keystr.decode
    - <builtin>.isinstance
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - jwt.algorithms.RSAAlgorithm
    - ipaddress.ip_address
    - binascii.a2b_base64
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - sig_base_str
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 790
    functionName: oauthlib.oauth1.rfc5849.signature.sign_rsa_sha512_with_client
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 0
    functionsReached:
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - keystr.decode
    - jwt.algorithms.RSAAlgorithm
    - <builtin>.isinstance
    - sig_base_str.encode
    - oauthlib.oauth1.rfc5849.signature._sign_rsa
    - binascii.b2a_base64
    - alg.sign
    - alg.prepare_key
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - _signature_base_string
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 800
    functionName: oauthlib.oauth1.rfc5849.signature.sign_plaintext_with_client
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 0
    functionsReached:
    - oauthlib.common.quote
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.utils.escape
    - oauthlib.oauth1.rfc5849.signature.sign_plaintext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e7c5b0>
    - <ast.Constant object at 0x7f4199e7c1f0>
    argNames:
    - request
    - client_secret
    - resource_owner_secret
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 841
    functionName: oauthlib.oauth1.rfc5849.signature.verify_plaintext
    functionSourceFile: oauthlib.oauth1.rfc5849.signature
    functionUses: 7
    functionsReached:
    - oauthlib.common.quote
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - <builtin>.ord
    - urllib.parse.quote.decode
    - <builtin>.len
    - oauthlib.oauth1.rfc5849.utils.escape
    - urllib.parse.quote
    - <builtin>.zip
    - log.debug
    - oauthlib.oauth1.rfc5849.signature.sign_plaintext
    - oauthlib.common.safe_string_equals
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.utils
    functionSourceFile: oauthlib.oauth1.rfc5849.utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - params
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 23
    functionName: oauthlib.oauth1.rfc5849.utils.filter_params.wrapper
    functionSourceFile: oauthlib.oauth1.rfc5849.utils
    functionUses: 0
    functionsReached:
    - oauthlib.common.quote
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - <builtin>.filter
    - <builtin>.list
    - urllib.parse.quote.decode
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.utils.escape
    - full_headers.update
    - oauthlib.oauth1.rfc5849.utils.filter_oauth_params
    - params.items
    - authorization_header_parameters_parts.append
    - oauthlib.oauth1.rfc5849.parameters.prepare_headers
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - params
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 31
    functionName: oauthlib.oauth1.rfc5849.utils.filter_oauth_params
    functionSourceFile: oauthlib.oauth1.rfc5849.utils
    functionUses: 1
    functionsReached:
    - params.items
    - <builtin>.isinstance
    - <builtin>.filter
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - kv
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 33
    functionName: oauthlib.oauth1.rfc5849.utils.filter_oauth_params.is_oauth
    functionSourceFile: oauthlib.oauth1.rfc5849.utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: params.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - l
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 63
    functionName: oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    functionSourceFile: oauthlib.oauth1.rfc5849.utils
    functionUses: 12
    functionsReached:
    - urllib.request.parse_keqv_list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.request.parse_keqv_list
    functionSourceFile: urllib
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - u
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 69
    functionName: oauthlib.oauth1.rfc5849.utils.parse_http_list
    functionSourceFile: oauthlib.oauth1.rfc5849.utils
    functionUses: 12
    functionsReached:
    - urllib.request.parse_http_list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: urllib.request.parse_http_list
    functionSourceFile: urllib
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth1
    functionSourceFile: oauthlib.oauth1
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.errors
    functionSourceFile: oauthlib.oauth1.rfc5849.errors
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f4199aae190>
    - <ast.Constant object at 0x7f4199aaed90>
    - <ast.Constant object at 0x7f4199aae940>
    - <ast.Constant object at 0x7f4199aae430>
    argNames:
    - self
    - description
    - uri
    - status_code
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 15
    functionName: oauthlib.oauth1.rfc5849.errors.OAuth1Error.__init__
    functionSourceFile: oauthlib.oauth1.rfc5849.errors
    functionUses: 0
    functionsReached:
    - <builtin>.repr
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.repr
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - uri
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 45
    functionName: oauthlib.oauth1.rfc5849.errors.OAuth1Error.in_uri
    functionSourceFile: oauthlib.oauth1.rfc5849.errors
    functionUses: 0
    functionsReached:
    - queryparams.extend
    - oauthlib.common.add_params_to_qs
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - oauthlib.common.add_params_to_uri
    - <builtin>.isinstance
    - encoded.append
    - v.encode
    - k.encode
    - urllib.parse.parse_qsl
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 49
    functionName: oauthlib.oauth1.rfc5849.errors.OAuth1Error.twotuples
    functionSourceFile: oauthlib.oauth1.rfc5849.errors
    functionUses: 0
    functionsReached:
    - error.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: error.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 58
    functionName: oauthlib.oauth1.rfc5849.errors.OAuth1Error.urlencoded
    functionSourceFile: oauthlib.oauth1.rfc5849.errors
    functionUses: 0
    functionsReached:
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - v.encode
    - k.encode
    - oauthlib.common.urlencode
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.request_validator
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 110
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.__init__
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 114
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.allowed_signature_methods
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 118
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.safe_characters
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached:
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 122
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.client_key_length
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 126
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.request_token_length
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 130
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.access_token_length
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 134
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.timestamp_lifetime
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 138
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.nonce_length
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 142
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.verifier_length
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 146
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.realms
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 150
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.enforce_ssl
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - client_key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 153
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.check_client_key
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request_token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 161
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.check_request_token
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request_token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 169
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.check_access_token
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - nonce
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 177
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.check_nonce
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - verifier
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 185
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.check_verifier
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - realms
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 193
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.check_realms
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached:
    - <builtin>.all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.all
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 197
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator._subclass_must_implement
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached:
    - <builtin>.NotImplementedError
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.type
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.NotImplementedError
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 206
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.dummy_client
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 230
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.dummy_request_token
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 246
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.dummy_access_token
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client_key
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 261
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_client_secret
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client_key
    - token
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 297
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_request_token_secret
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client_key
    - token
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 330
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_access_token_secret
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client_key
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 363
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_default_realms
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - token
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 380
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_realms
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - token
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 395
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_redirect_uri
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client_key
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 413
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_rsa_key
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client_key
    - request_token
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 437
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.invalidate_request_token
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client_key
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 464
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_client_key
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client_key
    - token
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 501
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_request_token
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client_key
    - token
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 536
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_access_token
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d8c550>
    - <ast.Constant object at 0x7f4199d8c490>
    argNames:
    - self
    - client_key
    - timestamp
    - nonce
    - request
    - request_token
    - access_token
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 571
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_timestamp_and_nonce
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client_key
    - redirect_uri
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 622
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_redirect_uri
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client_key
    - realms
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 656
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_requested_realms
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f4199aaad60>
    - <ast.Constant object at 0x7f4199aaa3d0>
    argNames:
    - self
    - client_key
    - token
    - request
    - uri
    - realms
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 675
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_realms
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - client_key
    - token
    - verifier
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 710
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_verifier
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - token
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 742
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.verify_request_token
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - token
    - realms
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 761
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.verify_realms
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - token
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 785
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.save_access_token
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - token
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 809
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.save_request_token
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - token
    - verifier
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 830
    functionName: oauthlib.oauth1.rfc5849.request_validator.RequestValidator.save_verifier
    functionSourceFile: oauthlib.oauth1.rfc5849.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.endpoints
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.endpoints.resource
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.resource
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 8
    IfCount: 6
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f4199aaa4c0>
    - <ast.Constant object at 0x7f4199aaa460>
    - <ast.Constant object at 0x7f4199aaaa60>
    - <ast.Constant object at 0x7f4199aaa340>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    - realms
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 53
    functionName: oauthlib.oauth1.rfc5849.endpoints.resource.ResourceEndpoint.validate_protected_resource_request
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.resource
    functionUses: 0
    functionsReached:
    - oauthlib.common.urldecode
    - urllib.parse.unquote.decode
    - <builtin>.int
    - <builtin>.zip
    - key_values.sort
    - alg.prepare_key
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha512
    - urllib.parse.quote.encode
    - oauthlib.oauth1.rfc5849.utils.escape
    - oauthlib.common.CaseInsensitiveDict.get
    - k.startswith
    - oauthlib.oauth1.rfc5849.signature.sign_plaintext
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - urllib.parse.urlparse
    - <builtin>.hasattr
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - v.decode
    - params.extend
    - log.info
    - <builtin>.all
    - oauthlib.common.to_unicode
    - oauth_params.get
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_mandatory_parameters
    - time.time
    - binascii.a2b_base64
    - INVALID_HEX_PATTERN.search
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    - headers_lower.get
    - scheme.lower
    - <builtin>.ord
    - hostname.lower
    - <builtin>.set
    - alg.verify
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha512
    - oauthlib.common.unquote
    - hmac.new
    - request.uri.lower
    - k.lower
    - oauthlib.common.Request.__init__
    - jwt.algorithms.RSAAlgorithm
    - signature.digest
    - <builtin>.list
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_transport_security
    - urllib.parse.unquote
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._create_request
    - oauthlib.oauth1.rfc5849.utils.parse_authorization_header
    - <builtin>.dict
    - decoded.append
    - http_method.upper
    - oauthlib.oauth1.rfc5849.signature._verify_rsa
    - oauthlib.common.CaseInsensitiveDict.__init__
    - k.decode
    - oauthlib.common.safe_string_equals
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - host.lower
    - oauthlib.oauth1.rfc5849.signature.verify_plaintext
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - <builtin>.abs
    - headers.items
    - unescaped_params.append
    - oauthlib.common.decode_params_utf8
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - binascii.b2a_base64
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha1
    - oauthlib.oauth1.rfc5849.utils.parse_http_list
    - oauthlib.common.quote
    - oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    - v.replace
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.len
    - urllib.request.parse_keqv_list
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha256
    - <builtin>.filter
    - urllib.parse.quote.decode
    - request.signature.encode
    - log.debug
    - contextlib.suppress
    - urllib.parse.urlencode.items
    - keystr.decode
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._get_signature_type_and_params
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha256
    - utils.filter_oauth_params
    - oauthlib.oauth1.rfc5849.signature.collect_parameters
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature._verify_hmac
    - <builtin>.str
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_signature
    - urllib.request.parse_http_list
    - urllib.parse.parse_qsl
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha1
    - ipaddress.ip_address
    - oauthlib.oauth1.rfc5849.utils.unescape
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 69
    functionName: oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._create_request
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.base
    functionUses: 6
    functionsReached:
    - oauthlib.common.urldecode
    - oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    - urllib.parse.unquote.decode
    - data.items
    - oauthlib.oauth1.rfc5849.utils.parse_authorization_header
    - <builtin>.len
    - <builtin>.dict
    - oauthlib.common.extract_params
    - INVALID_HEX_PATTERN.search
    - decoded.append
    - urllib.request.parse_keqv_list
    - oauthlib.common.CaseInsensitiveDict.__init__
    - headers_lower.get
    - <builtin>.filter
    - k.decode
    - oauthlib.common.CaseInsensitiveDict.get
    - k.startswith
    - <builtin>.set
    - urllib.parse.urlencode.items
    - oauthlib.common.unquote
    - <builtin>.isinstance
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._get_signature_type_and_params
    - oauthlib.common.Request.__init__.encode
    - <builtin>.hasattr
    - urllib.parse.unquote
    - utils.filter_oauth_params
    - oauthlib.oauth1.rfc5849.signature.collect_parameters
    - v.decode
    - params.extend
    - headers.items
    - oauthlib.common.to_unicode
    - <builtin>.str
    - k.lower
    - unescaped_params.append
    - oauthlib.common.Request.__init__
    - oauthlib.common.decode_params_utf8
    - oauth_params.get
    - urllib.request.parse_http_list
    - <builtin>.list
    - urllib.parse.parse_qsl
    - oauthlib.oauth1.rfc5849.utils.unescape
    - oauthlib.oauth1.rfc5849.utils.parse_http_list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 107
    functionName: oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_transport_security
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.base
    functionUses: 6
    functionsReached:
    - request.uri.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 0
    IfCount: 7
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 113
    functionName: oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_mandatory_parameters
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.base
    functionUses: 6
    functionsReached:
    - <builtin>.int
    - time.time
    - <builtin>.abs
    - <builtin>.len
    - <builtin>.all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 0
    IfCount: 10
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199acb6d0>
    argNames:
    - self
    - request
    - is_token_request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 178
    functionName: oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_signature
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.base
    functionUses: 6
    functionsReached:
    - oauthlib.common.quote
    - v.replace
    - <builtin>.len
    - key_values.sort
    - <builtin>.zip
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    - alg.prepare_key
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha256
    - http_method.upper
    - oauthlib.oauth1.rfc5849.signature._verify_rsa
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha512
    - urllib.parse.quote.encode
    - scheme.lower
    - <builtin>.ord
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - request.signature.encode
    - hostname.lower
    - log.debug
    - oauthlib.oauth1.rfc5849.signature.sign_plaintext
    - oauthlib.common.safe_string_equals
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - contextlib.suppress
    - alg.verify
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha512
    - hmac.new
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - host.lower
    - urllib.parse.urlparse
    - keystr.decode
    - oauthlib.oauth1.rfc5849.signature.verify_plaintext
    - <builtin>.isinstance
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha256
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - oauthlib.oauth1.rfc5849.signature._verify_hmac
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - jwt.algorithms.RSAAlgorithm
    - signature.digest
    - binascii.b2a_base64
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha1
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha1
    - ipaddress.ip_address
    - binascii.a2b_base64
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: log.info
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.endpoints.access_token
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.access_token
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - credentials
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 32
    functionName: oauthlib.oauth1.rfc5849.endpoints.access_token.AccessTokenEndpoint.create_access_token
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.access_token
    functionUses: 1
    functionsReached:
    - token.items
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - v.encode
    - k.encode
    - oauthlib.common.urlencode
    - urllib.parse.urlencode.decode
    - token.update
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.update
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.items
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f419a3049a0>
    - <ast.Constant object at 0x7f419a304f10>
    - <ast.Constant object at 0x7f419a3048b0>
    - <ast.Constant object at 0x7f419a304fd0>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    - credentials
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 54
    functionName: oauthlib.oauth1.rfc5849.endpoints.access_token.AccessTokenEndpoint.create_access_token_response
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.access_token
    functionUses: 0
    functionsReached:
    - oauthlib.common.urldecode
    - urllib.parse.unquote.decode
    - <builtin>.int
    - key_values.sort
    - <builtin>.zip
    - alg.prepare_key
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha512
    - token.items
    - urllib.parse.quote.encode
    - oauthlib.oauth1.rfc5849.utils.escape
    - oauthlib.common.CaseInsensitiveDict.get
    - k.startswith
    - token.update
    - oauthlib.oauth1.rfc5849.signature.sign_plaintext
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - k.encode
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - urllib.parse.urlparse
    - <builtin>.hasattr
    - oauthlib.common.urlencode
    - v.decode
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - urllib.parse.urlunparse
    - params.extend
    - log.info
    - oauthlib.common.to_unicode
    - <builtin>.all
    - oauth_params.get
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_mandatory_parameters
    - time.time
    - oauthlib.oauth1.rfc5849.endpoints.access_token.AccessTokenEndpoint.create_access_token
    - binascii.a2b_base64
    - INVALID_HEX_PATTERN.search
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    - headers_lower.get
    - scheme.lower
    - <builtin>.ord
    - hostname.lower
    - <builtin>.set
    - alg.verify
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha512
    - oauthlib.common.unquote
    - hmac.new
    - request.uri.lower
    - k.lower
    - oauthlib.common.Request.__init__
    - jwt.algorithms.RSAAlgorithm
    - signature.digest
    - <builtin>.list
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_transport_security
    - urllib.parse.unquote
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._create_request
    - oauthlib.oauth1.rfc5849.utils.parse_authorization_header
    - <builtin>.dict
    - decoded.append
    - http_method.upper
    - oauthlib.oauth1.rfc5849.signature._verify_rsa
    - oauthlib.common.CaseInsensitiveDict.__init__
    - k.decode
    - oauthlib.common.safe_string_equals
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - host.lower
    - oauthlib.oauth1.rfc5849.signature.verify_plaintext
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - encoded.append
    - <builtin>.abs
    - headers.items
    - unescaped_params.append
    - oauthlib.common.decode_params_utf8
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - v.encode
    - binascii.b2a_base64
    - urllib.parse.urlencode.decode
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha1
    - oauthlib.oauth1.rfc5849.utils.parse_http_list
    - oauthlib.common.encode_params_utf8
    - oauthlib.common.quote
    - oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    - v.replace
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.len
    - urllib.request.parse_keqv_list
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha256
    - <builtin>.filter
    - urllib.parse.quote.decode
    - request.signature.encode
    - log.debug
    - contextlib.suppress
    - urllib.parse.urlencode.items
    - urllib.parse.urlencode
    - keystr.decode
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._get_signature_type_and_params
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha256
    - utils.filter_oauth_params
    - oauthlib.oauth1.rfc5849.signature.collect_parameters
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature._verify_hmac
    - <builtin>.str
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_signature
    - urllib.request.parse_http_list
    - oauthlib.oauth1.rfc5849.endpoints.access_token.AccessTokenEndpoint.validate_access_token_request
    - urllib.parse.parse_qsl
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha1
    - ipaddress.ip_address
    - oauthlib.oauth1.rfc5849.utils.unescape
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 8
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 119
    functionName: oauthlib.oauth1.rfc5849.endpoints.access_token.AccessTokenEndpoint.validate_access_token_request
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.access_token
    functionUses: 1
    functionsReached:
    - oauthlib.common.quote
    - <builtin>.int
    - v.replace
    - <builtin>.len
    - key_values.sort
    - <builtin>.zip
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    - alg.prepare_key
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha256
    - http_method.upper
    - oauthlib.oauth1.rfc5849.signature._verify_rsa
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha512
    - urllib.parse.quote.encode
    - scheme.lower
    - <builtin>.ord
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - request.signature.encode
    - hostname.lower
    - log.debug
    - oauthlib.oauth1.rfc5849.signature.sign_plaintext
    - oauthlib.common.safe_string_equals
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - contextlib.suppress
    - alg.verify
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha512
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - hmac.new
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - host.lower
    - urllib.parse.urlparse
    - keystr.decode
    - oauthlib.oauth1.rfc5849.signature.verify_plaintext
    - <builtin>.isinstance
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha256
    - <builtin>.abs
    - request.uri.lower
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - oauthlib.oauth1.rfc5849.signature._verify_hmac
    - urllib.parse.quote
    - log.info
    - <builtin>.all
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_signature
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_mandatory_parameters
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_transport_security
    - jwt.algorithms.RSAAlgorithm
    - signature.digest
    - time.time
    - binascii.b2a_base64
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha1
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha1
    - ipaddress.ip_address
    - binascii.a2b_base64
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.endpoints.base
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199c8fe50>
    argNames:
    - self
    - request_validator
    - token_generator
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 23
    functionName: oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint.__init__
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 27
    functionName: oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._get_signature_type_and_params
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.base
    functionUses: 7
    functionsReached:
    - oauthlib.common.urldecode
    - oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    - urllib.parse.unquote.decode
    - oauthlib.oauth1.rfc5849.utils.parse_authorization_header
    - oauthlib.common.extract_params
    - <builtin>.len
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - urllib.request.parse_keqv_list
    - headers_lower.get
    - <builtin>.filter
    - k.decode
    - k.startswith
    - <builtin>.set
    - urllib.parse.urlencode.items
    - oauthlib.common.unquote
    - <builtin>.isinstance
    - <builtin>.hasattr
    - urllib.parse.unquote
    - utils.filter_oauth_params
    - oauthlib.oauth1.rfc5849.signature.collect_parameters
    - v.decode
    - params.extend
    - headers.items
    - k.lower
    - unescaped_params.append
    - oauthlib.common.decode_params_utf8
    - urllib.request.parse_http_list
    - <builtin>.list
    - urllib.parse.parse_qsl
    - oauthlib.oauth1.rfc5849.utils.unescape
    - oauthlib.oauth1.rfc5849.utils.parse_http_list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._get_signature_type_and_params.<lambda1>
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: utils.filter_oauth_params
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauth_params.get
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: request.uri.lower
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.abs
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.endpoints.request_token
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.request_token
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - credentials
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 32
    functionName: oauthlib.oauth1.rfc5849.endpoints.request_token.RequestTokenEndpoint.create_request_token
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.request_token
    functionUses: 1
    functionsReached:
    - token.items
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - v.encode
    - k.encode
    - oauthlib.common.urlencode
    - urllib.parse.urlencode.decode
    - token.update
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f4199aaa4c0>
    - <ast.Constant object at 0x7f4199aaa460>
    - <ast.Constant object at 0x7f4199aaaa60>
    - <ast.Constant object at 0x7f4199aaa340>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    - credentials
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 49
    functionName: oauthlib.oauth1.rfc5849.endpoints.request_token.RequestTokenEndpoint.create_request_token_response
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.request_token
    functionUses: 0
    functionsReached:
    - oauthlib.common.urldecode
    - urllib.parse.unquote.decode
    - <builtin>.int
    - <builtin>.zip
    - key_values.sort
    - alg.prepare_key
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha512
    - token.items
    - urllib.parse.quote.encode
    - oauthlib.oauth1.rfc5849.utils.escape
    - oauthlib.common.CaseInsensitiveDict.get
    - k.startswith
    - token.update
    - oauthlib.oauth1.rfc5849.signature.sign_plaintext
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - k.encode
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - urllib.parse.urlparse
    - <builtin>.hasattr
    - oauthlib.common.urlencode
    - v.decode
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - urllib.parse.urlunparse
    - request.realm.split
    - params.extend
    - log.info
    - <builtin>.all
    - oauthlib.common.to_unicode
    - oauth_params.get
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_mandatory_parameters
    - time.time
    - binascii.a2b_base64
    - INVALID_HEX_PATTERN.search
    - oauthlib.oauth1.rfc5849.endpoints.request_token.RequestTokenEndpoint.create_request_token
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    - scheme.lower
    - headers_lower.get
    - <builtin>.ord
    - hostname.lower
    - <builtin>.set
    - alg.verify
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha512
    - oauthlib.common.unquote
    - hmac.new
    - request.uri.lower
    - k.lower
    - oauthlib.common.Request.__init__
    - jwt.algorithms.RSAAlgorithm
    - signature.digest
    - <builtin>.list
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_transport_security
    - urllib.parse.unquote
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._create_request
    - oauthlib.oauth1.rfc5849.utils.parse_authorization_header
    - <builtin>.dict
    - decoded.append
    - http_method.upper
    - oauthlib.oauth1.rfc5849.signature._verify_rsa
    - oauthlib.common.CaseInsensitiveDict.__init__
    - k.decode
    - oauthlib.common.safe_string_equals
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - host.lower
    - oauthlib.oauth1.rfc5849.signature.verify_plaintext
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - encoded.append
    - <builtin>.abs
    - headers.items
    - unescaped_params.append
    - oauthlib.common.decode_params_utf8
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - v.encode
    - binascii.b2a_base64
    - urllib.parse.urlencode.decode
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha1
    - oauthlib.oauth1.rfc5849.utils.parse_http_list
    - oauthlib.common.encode_params_utf8
    - oauthlib.common.quote
    - oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    - v.replace
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.len
    - urllib.request.parse_keqv_list
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha256
    - <builtin>.filter
    - urllib.parse.quote.decode
    - request.signature.encode
    - log.debug
    - contextlib.suppress
    - urllib.parse.urlencode.items
    - oauthlib.oauth1.rfc5849.endpoints.request_token.RequestTokenEndpoint.validate_request_token_request
    - urllib.parse.urlencode
    - keystr.decode
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._get_signature_type_and_params
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha256
    - utils.filter_oauth_params
    - oauthlib.oauth1.rfc5849.signature.collect_parameters
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature._verify_hmac
    - <builtin>.str
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_signature
    - urllib.request.parse_http_list
    - urllib.parse.parse_qsl
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha1
    - ipaddress.ip_address
    - oauthlib.oauth1.rfc5849.utils.unescape
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 8
    IfCount: 7
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 110
    functionName: oauthlib.oauth1.rfc5849.endpoints.request_token.RequestTokenEndpoint.validate_request_token_request
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.request_token
    functionUses: 1
    functionsReached:
    - oauthlib.common.quote
    - <builtin>.int
    - v.replace
    - <builtin>.len
    - key_values.sort
    - <builtin>.zip
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    - alg.prepare_key
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha256
    - http_method.upper
    - oauthlib.oauth1.rfc5849.signature._verify_rsa
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha512
    - urllib.parse.quote.encode
    - scheme.lower
    - <builtin>.ord
    - urllib.parse.quote.decode
    - oauthlib.oauth1.rfc5849.utils.escape
    - request.signature.encode
    - hostname.lower
    - log.debug
    - oauthlib.oauth1.rfc5849.signature.sign_plaintext
    - oauthlib.common.safe_string_equals
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - contextlib.suppress
    - alg.verify
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha512
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - hmac.new
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - host.lower
    - urllib.parse.urlparse
    - keystr.decode
    - oauthlib.oauth1.rfc5849.signature.verify_plaintext
    - <builtin>.isinstance
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha256
    - <builtin>.abs
    - request.uri.lower
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - oauthlib.oauth1.rfc5849.signature._verify_hmac
    - urllib.parse.quote
    - request.realm.split
    - log.info
    - <builtin>.all
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_signature
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_mandatory_parameters
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_transport_security
    - jwt.algorithms.RSAAlgorithm
    - signature.digest
    - time.time
    - binascii.b2a_base64
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha1
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha1
    - ipaddress.ip_address
    - binascii.a2b_base64
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: request.realm.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.endpoints.pre_configured
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.pre_configured
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request_validator
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 10
    functionName: oauthlib.oauth1.rfc5849.endpoints.pre_configured.WebApplicationServer.__init__
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.pre_configured
    functionUses: 0
    functionsReached:
    - RequestTokenEndpoint.__init__
    - ResourceEndpoint.__init__
    - AccessTokenEndpoint.__init__
    - AuthorizationEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: RequestTokenEndpoint.__init__
    functionSourceFile: RequestTokenEndpoint
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: AuthorizationEndpoint.__init__
    functionSourceFile: AuthorizationEndpoint
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: AccessTokenEndpoint.__init__
    functionSourceFile: AccessTokenEndpoint
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ResourceEndpoint.__init__
    functionSourceFile: ResourceEndpoint
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.endpoints.signature_only
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.signature_only
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 9
    IfCount: 3
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f4199acbf70>
    - <ast.Constant object at 0x7f4199acbcd0>
    - <ast.Constant object at 0x7f4199acbc70>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 21
    functionName: oauthlib.oauth1.rfc5849.endpoints.signature_only.SignatureOnlyEndpoint.validate_request
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.signature_only
    functionUses: 0
    functionsReached:
    - oauthlib.common.urldecode
    - urllib.parse.unquote.decode
    - <builtin>.int
    - <builtin>.zip
    - key_values.sort
    - alg.prepare_key
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha512
    - urllib.parse.quote.encode
    - oauthlib.oauth1.rfc5849.utils.escape
    - oauthlib.common.CaseInsensitiveDict.get
    - k.startswith
    - oauthlib.oauth1.rfc5849.signature.sign_plaintext
    - oauthlib.oauth1.rfc5849.signature.signature_base_string
    - oauthlib.oauth1.rfc5849.signature._prepare_key_plus
    - urllib.parse.urlparse
    - <builtin>.hasattr
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.base_string_uri
    - v.decode
    - params.extend
    - log.info
    - <builtin>.all
    - oauthlib.common.to_unicode
    - oauth_params.get
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_mandatory_parameters
    - time.time
    - binascii.a2b_base64
    - INVALID_HEX_PATTERN.search
    - oauthlib.oauth1.rfc5849.signature._sign_hmac
    - headers_lower.get
    - scheme.lower
    - <builtin>.ord
    - hostname.lower
    - <builtin>.set
    - alg.verify
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha512
    - oauthlib.common.unquote
    - hmac.new
    - request.uri.lower
    - k.lower
    - oauthlib.common.Request.__init__
    - jwt.algorithms.RSAAlgorithm
    - signature.digest
    - <builtin>.list
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_transport_security
    - urllib.parse.unquote
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._create_request
    - oauthlib.oauth1.rfc5849.utils.parse_authorization_header
    - <builtin>.dict
    - decoded.append
    - http_method.upper
    - oauthlib.oauth1.rfc5849.signature._verify_rsa
    - oauthlib.common.CaseInsensitiveDict.__init__
    - k.decode
    - oauthlib.common.safe_string_equals
    - oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm
    - host.lower
    - oauthlib.oauth1.rfc5849.signature.verify_plaintext
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - <builtin>.abs
    - headers.items
    - unescaped_params.append
    - oauthlib.common.decode_params_utf8
    - oauthlib.oauth1.rfc5849.signature.normalize_parameters
    - binascii.b2a_base64
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha1
    - oauthlib.oauth1.rfc5849.utils.parse_http_list
    - oauthlib.common.quote
    - oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    - v.replace
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.len
    - urllib.request.parse_keqv_list
    - oauthlib.oauth1.rfc5849.signature.verify_rsa_sha256
    - <builtin>.filter
    - urllib.parse.quote.decode
    - request.signature.encode
    - log.debug
    - contextlib.suppress
    - urllib.parse.urlencode.items
    - keystr.decode
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._get_signature_type_and_params
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha256
    - utils.filter_oauth_params
    - oauthlib.oauth1.rfc5849.signature.collect_parameters
    - urllib.parse.quote
    - oauthlib.oauth1.rfc5849.signature._verify_hmac
    - <builtin>.str
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_signature
    - urllib.request.parse_http_list
    - urllib.parse.parse_qsl
    - oauthlib.oauth1.rfc5849.signature.verify_hmac_sha1
    - ipaddress.ip_address
    - oauthlib.oauth1.rfc5849.utils.unescape
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth1.rfc5849.endpoints.authorization
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.authorization
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - credentials
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 37
    functionName: oauthlib.oauth1.rfc5849.endpoints.authorization.AuthorizationEndpoint.create_verifier
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.authorization
    functionUses: 1
    functionsReached:
    - verifier.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: verifier.update
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f419a40b7f0>
    - <ast.Constant object at 0x7f419a40bd00>
    - <ast.Constant object at 0x7f4199d8cdc0>
    - <ast.Constant object at 0x7f4199d8c2e0>
    - <ast.Constant object at 0x7f4199d8c940>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    - realms
    - credentials
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 54
    functionName: oauthlib.oauth1.rfc5849.endpoints.authorization.AuthorizationEndpoint.create_authorization_response
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.authorization
    functionUses: 0
    functionsReached:
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._create_request
    - oauthlib.common.urldecode
    - oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    - urllib.parse.unquote.decode
    - data.items
    - oauthlib.common.extract_params
    - oauthlib.oauth1.rfc5849.utils.parse_authorization_header
    - <builtin>.len
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - urllib.request.parse_keqv_list
    - oauthlib.common.CaseInsensitiveDict.__init__
    - oauthlib.common.add_params_to_qs
    - headers_lower.get
    - k.decode
    - <builtin>.filter
    - oauthlib.oauth1.rfc5849.endpoints.authorization.AuthorizationEndpoint.create_verifier
    - oauthlib.common.CaseInsensitiveDict.get
    - k.startswith
    - <builtin>.set
    - k.encode
    - urllib.parse.urlencode.items
    - queryparams.extend
    - oauthlib.common.unquote
    - urllib.parse.urlencode
    - urllib.parse.urlparse
    - <builtin>.isinstance
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._get_signature_type_and_params
    - oauthlib.common.Request.__init__.encode
    - <builtin>.hasattr
    - urllib.parse.unquote
    - encoded.append
    - oauthlib.common.urlencode
    - utils.filter_oauth_params
    - v.decode
    - urllib.parse.urlunparse
    - oauthlib.oauth1.rfc5849.signature.collect_parameters
    - params.extend
    - headers.items
    - verifier.items
    - oauthlib.common.to_unicode
    - <builtin>.str
    - k.lower
    - unescaped_params.append
    - oauthlib.common.Request.__init__
    - oauthlib.common.decode_params_utf8
    - oauth_params.get
    - urllib.request.parse_http_list
    - oauthlib.common.add_params_to_uri
    - v.encode
    - <builtin>.list
    - urllib.parse.parse_qsl
    - verifier.update
    - urllib.parse.urlencode.decode
    - oauthlib.oauth1.rfc5849.utils.unescape
    - oauthlib.oauth1.rfc5849.utils.parse_http_list
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: verifier.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f419a317250>
    - <ast.Constant object at 0x7f419a3178e0>
    - <ast.Constant object at 0x7f419a317460>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 136
    functionName: oauthlib.oauth1.rfc5849.endpoints.authorization.AuthorizationEndpoint.get_realms_and_credentials
    functionSourceFile: oauthlib.oauth1.rfc5849.endpoints.authorization
    functionUses: 0
    functionsReached:
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._create_request
    - oauthlib.common.urldecode
    - oauthlib.oauth1.rfc5849.utils.parse_keqv_list
    - urllib.parse.unquote.decode
    - data.items
    - oauthlib.oauth1.rfc5849.utils.parse_authorization_header
    - <builtin>.len
    - <builtin>.dict
    - oauthlib.common.extract_params
    - INVALID_HEX_PATTERN.search
    - decoded.append
    - urllib.request.parse_keqv_list
    - oauthlib.common.CaseInsensitiveDict.__init__
    - headers_lower.get
    - <builtin>.filter
    - k.decode
    - oauthlib.common.CaseInsensitiveDict.get
    - k.startswith
    - <builtin>.set
    - urllib.parse.urlencode.items
    - oauthlib.common.unquote
    - <builtin>.isinstance
    - oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._get_signature_type_and_params
    - oauthlib.common.Request.__init__.encode
    - <builtin>.hasattr
    - urllib.parse.unquote
    - utils.filter_oauth_params
    - oauthlib.oauth1.rfc5849.signature.collect_parameters
    - v.decode
    - params.extend
    - headers.items
    - oauthlib.common.to_unicode
    - <builtin>.str
    - k.lower
    - unescaped_params.append
    - oauthlib.common.Request.__init__
    - oauthlib.common.decode_params_utf8
    - oauth_params.get
    - urllib.request.parse_http_list
    - <builtin>.list
    - urllib.parse.parse_qsl
    - oauthlib.oauth1.rfc5849.utils.unescape
    - oauthlib.oauth1.rfc5849.utils.parse_http_list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib
    functionSourceFile: oauthlib
    functionUses: 0
    functionsReached:
    - logging.NullHandler
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: logging.NullHandler
    functionSourceFile: logging
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - debug_val
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 21
    functionName: oauthlib.set_debug
    functionSourceFile: oauthlib
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 29
    functionName: oauthlib.get_debug
    functionSourceFile: oauthlib
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.uri_validate
    functionSourceFile: oauthlib.uri_validate
    functionUses: 0
    functionsReached:
    - <builtin>.locals
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.locals
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - uri
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 180
    functionName: oauthlib.uri_validate.is_uri
    functionSourceFile: oauthlib.uri_validate
    functionUses: 0
    functionsReached:
    - re.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.match
    functionSourceFile: re
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - uri
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 184
    functionName: oauthlib.uri_validate.is_uri_reference
    functionSourceFile: oauthlib.uri_validate
    functionUses: 0
    functionsReached:
    - re.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - uri
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 188
    functionName: oauthlib.uri_validate.is_absolute_uri
    functionSourceFile: oauthlib.uri_validate
    functionUses: 12
    functionsReached:
    - re.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.signals
    functionSourceFile: oauthlib.signals
    functionUses: 0
    functionsReached:
    - blinker.Namespace
    - blinker.Namespace.signal
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199f0a3a0>
    argNames:
    - self
    - name
    - doc
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 12
    functionName: oauthlib.signals.Namespace.signal
    functionSourceFile: oauthlib.signals
    functionUses: 0
    functionsReached:
    - oauthlib.signals._FakeSignal.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199f0a430>
    argNames:
    - self
    - name
    - doc
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 22
    functionName: oauthlib.signals._FakeSignal.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 25
    functionName: oauthlib.signals._FakeSignal._fail
    functionSourceFile: oauthlib.signals
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - a
    - kw
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 29
    functionName: oauthlib.signals._FakeSignal.send
    functionSourceFile: oauthlib.signals
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: blinker.Namespace
    functionSourceFile: blinker
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: blinker.Namespace.signal
    functionSourceFile: blinker
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2
    functionSourceFile: oauthlib.oauth2
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc8628.endpoints
    functionSourceFile: oauthlib.oauth2.rfc8628.endpoints
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc8628.endpoints.pre_configured
    functionSourceFile: oauthlib.oauth2.rfc8628.endpoints.pre_configured
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4199abfc70>
    - <ast.Constant object at 0x7f4199abf310>
    - <ast.Constant object at 0x7f4199abf1f0>
    argNames:
    - self
    - request_validator
    - verification_uri
    - interval
    - verification_uri_complete
    - user_code_generator
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 12
    functionName: oauthlib.oauth2.rfc8628.endpoints.pre_configured.DeviceApplicationServer.__init__
    functionSourceFile: oauthlib.oauth2.rfc8628.endpoints.pre_configured
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    - oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4199aae130>
    - <ast.Constant object at 0x7f4199aae490>
    - <ast.Constant object at 0x7f4199aaec10>
    - <ast.Constant object at 0x7f4199aaefa0>
    argNames:
    - self
    - request_validator
    - verification_uri
    - expires_in
    - interval
    - verification_uri_complete
    - user_code_generator
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 36
    functionName: oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.__init__
    functionSourceFile: oauthlib.oauth2.rfc8628.endpoints.device_authorization
    functionUses: 1
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.openid.connect
    functionSourceFile: oauthlib.openid.connect
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core
    functionSourceFile: oauthlib.openid.connect.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc8628.endpoints.device_authorization
    functionSourceFile: oauthlib.oauth2.rfc8628.endpoints.device_authorization
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 21
    functionName: oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    functionSourceFile: ''
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.interval
    functionSourceFile: oauthlib.oauth2.rfc8628.endpoints.device_authorization
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 72
    functionName: oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.expires_in
    functionSourceFile: oauthlib.oauth2.rfc8628.endpoints.device_authorization
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 77
    functionName: oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.verification_uri
    functionSourceFile: oauthlib.oauth2.rfc8628.endpoints.device_authorization
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - user_code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 84
    functionName: oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.verification_uri_complete
    functionSourceFile: oauthlib.oauth2.rfc8628.endpoints.device_authorization
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.callable
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.callable
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint
    functionSourceFile: oauthlib.oauth2.rfc8628.endpoints.device_authorization
    functionUses: 0
    functionsReached:
    - functools.wraps
    - oauthlib.oauth2.rfc6749.endpoints.base.catch_errors_and_unavailability
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - f
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 91
    functionName: oauthlib.oauth2.rfc6749.endpoints.base.catch_errors_and_unavailability
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.base
    functionUses: 8
    functionsReached:
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 94
    functionName: oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.validate_device_authorization_request
    functionSourceFile: oauthlib.oauth2.rfc8628.endpoints.device_authorization
    functionUses: 2
    functionsReached:
    - log.debug
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_invalid_client
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    functionName: oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_invalid_client
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.base
    functionUses: 7
    functionsReached:
    - log.debug
    linkageType: pythonLinkage
    raised:
    - InvalidClientError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e1eeb0>
    - <ast.Constant object at 0x7f4199e1ec40>
    - <ast.Constant object at 0x7f4199d985e0>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 144
    functionName: oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.create_device_authorization_response
    functionSourceFile: oauthlib.oauth2.rfc8628.endpoints.device_authorization
    functionUses: 1
    functionsReached:
    - oauthlib.common.urldecode
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.dict
    - secrets.SystemRandom.choice
    - decoded.append
    - random.SystemRandom
    - INVALID_HEX_PATTERN.search
    - oauthlib.common.CaseInsensitiveDict.__init__
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_invalid_client
    - k.decode
    - oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.validate_device_authorization_request
    - oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.verification_uri_complete
    - log.debug
    - <builtin>.set
    - secrets.SystemRandom
    - urllib.parse.urlencode.items
    - <builtin>.range
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - <builtin>.hasattr
    - v.decode
    - oauthlib.common.to_unicode
    - <builtin>.str
    - k.lower
    - oauthlib.common.decode_params_utf8
    - oauthlib.common.Request.__init__
    - <builtin>.callable
    - oauthlib.common.generate_token
    - <builtin>.list
    - urllib.parse.parse_qsl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.errors
    functionSourceFile: oauthlib.oauth2.rfc6749.errors
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f41997367c0>
    - <ast.Constant object at 0x7f4199736790>
    - <ast.Constant object at 0x7f4199736760>
    - <ast.Constant object at 0x7f4199736730>
    - <ast.Constant object at 0x7f4199736700>
    argNames:
    - self
    - description
    - uri
    - state
    - status_code
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 20
    functionName: oauthlib.oauth2.rfc6749.errors.OAuth2Error.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.errors
    functionUses: 1
    functionsReached:
    - <builtin>.repr
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - uri
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 75
    functionName: oauthlib.oauth2.rfc6749.errors.OAuth2Error.in_uri
    functionSourceFile: oauthlib.oauth2.rfc6749.errors
    functionUses: 0
    functionsReached:
    - queryparams.extend
    - oauthlib.common.add_params_to_qs
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - oauthlib.common.add_params_to_uri
    - <builtin>.isinstance
    - encoded.append
    - v.encode
    - k.encode
    - urllib.parse.parse_qsl
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 80
    functionName: oauthlib.oauth2.rfc6749.errors.OAuth2Error.twotuples
    functionSourceFile: oauthlib.oauth2.rfc6749.errors
    functionUses: 0
    functionsReached:
    - error.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 91
    functionName: oauthlib.oauth2.rfc6749.errors.OAuth2Error.urlencoded
    functionSourceFile: oauthlib.oauth2.rfc6749.errors
    functionUses: 0
    functionsReached:
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - v.encode
    - k.encode
    - oauthlib.common.urlencode
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 95
    functionName: oauthlib.oauth2.rfc6749.errors.OAuth2Error.json
    functionSourceFile: oauthlib.oauth2.rfc6749.errors
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 99
    functionName: oauthlib.oauth2.rfc6749.errors.OAuth2Error.headers
    functionSourceFile: oauthlib.oauth2.rfc6749.errors
    functionUses: 0
    functionsReached:
    - authvalues.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: authvalues.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - error
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 385
    functionName: oauthlib.oauth2.rfc6749.errors.CustomOAuth2Error.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.errors
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d83c10>
    argNames:
    - error
    - params
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 390
    functionName: oauthlib.oauth2.rfc6749.errors.raise_from_error
    functionSourceFile: oauthlib.oauth2.rfc6749.errors
    functionUses: 7
    functionsReached:
    - inspect.getmembers
    - params.get
    linkageType: pythonLinkage
    raised:
    - cls
    - CustomOAuth2Error
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: params.get
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: inspect.getmembers
    functionSourceFile: inspect
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.base
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.base
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - valid_request_methods
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 31
    functionName: oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.valid_request_methods
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.base
    functionUses: 0
    functionsReached:
    - x.upper
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: x.upper
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - available
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 42
    functionName: oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.available
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - catch_errors
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 50
    functionName: oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.catch_errors
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 53
    functionName: oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_missing_token
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.base
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - InvalidRequestError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 68
    functionName: oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_unsupported_token
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.base
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - UnsupportedTokenTypeError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 75
    functionName: oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_method
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.base
    functionUses: 7
    functionsReached:
    - request.http_method.upper
    linkageType: pythonLinkage
    raised:
    - ValueError
    - InvalidRequestError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: request.http_method.upper
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 82
    functionName: oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_post_request
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.base
    functionUses: 7
    functionsReached:
    - request.http_method.upper
    linkageType: pythonLinkage
    raised:
    - InvalidRequestError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: functools.wraps
    functionSourceFile: functools
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - endpoint
    - uri
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 93
    functionName: oauthlib.oauth2.rfc6749.endpoints.base.catch_errors_and_unavailability.wrapper
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.base
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_missing_token
    - oauthlib.common.urldecode
    - response_type_handler.validate_authorization_request
    - request.http_method.upper
    - scope.strip
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.dict
    - <builtin>.len
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - secrets.SystemRandom.choice
    - random.SystemRandom
    - oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.create_authorization_response
    - <builtin>.setattr
    - oauthlib.oauth2.rfc6749.errors.OAuth2Error.__init__
    - oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.verify_request
    - oauthlib.common.CaseInsensitiveDict.__init__
    - oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint.validate_userinfo_request
    - oauthlib.oauth2.rfc6749.tokens.get_token_from_header
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.create_token_response
    - oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.validate_introspect_request
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_invalid_client
    - k.decode
    - oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.validate_authorization_request
    - oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.validate_device_authorization_request
    - token_type_handler.validate_request
    - oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.verification_uri_complete
    - log.debug
    - response_type_handler.create_authorization_response
    - oauthlib.common.CaseInsensitiveDict.get
    - claims.pop
    - <builtin>.set
    - secrets.SystemRandom
    - urllib.parse.urlencode.items
    - <builtin>.repr
    - <builtin>.range
    - <builtin>.super
    - oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.create_revocation_response
    - log.error
    - <builtin>.isinstance
    - oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint.create_userinfo_response
    - oauthlib.common.Request.__init__.encode
    - oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.create_introspect_response
    - json.dumps
    - <builtin>.hasattr
    - v.decode
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.create_metadata_response
    - log.info
    - oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.validate_revocation_request
    - oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.find_token_type
    - oauthlib.common.to_unicode
    - resp_headers.update
    - <builtin>.str
    - k.lower
    - oauthlib.common.Request.__init__
    - oauthlib.common.decode_params_utf8
    - t.estimate_type
    - <builtin>.callable
    - log.warning
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_post_request
    - oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.validate_token_request
    - oauthlib.common.generate_token
    - <builtin>.list
    - urllib.parse.parse_qsl
    - oauthlib.oauth2.rfc6749.tokens.BearerToken.validate_request
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_unsupported_token
    - oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.create_device_authorization_response
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_method
    - grant_type_handler.create_token_response
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f419a399d90>
    - <ast.Constant object at 0x7f419a399580>
    - <ast.Constant object at 0x7f419a399670>
    - <ast.Constant object at 0x7f419a399df0>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    - scopes
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 62
    functionName: oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.verify_request
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.resource
    functionUses: 1
    functionsReached:
    - oauthlib.common.urldecode
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - oauthlib.common.CaseInsensitiveDict.__init__
    - k.decode
    - token_type_handler.validate_request
    - log.debug
    - <builtin>.set
    - urllib.parse.urlencode.items
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - <builtin>.hasattr
    - v.decode
    - oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.find_token_type
    - oauthlib.common.to_unicode
    - <builtin>.str
    - k.lower
    - oauthlib.common.Request.__init__
    - oauthlib.common.decode_params_utf8
    - t.estimate_type
    - <builtin>.list
    - urllib.parse.parse_qsl
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d7a460>
    - <ast.Constant object at 0x7f4199d7af10>
    - <ast.Constant object at 0x7f4199d7aa30>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 39
    functionName: oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.create_revocation_response
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.revocation
    functionUses: 1
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_missing_token
    - oauthlib.common.urldecode
    - request.http_method.upper
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - oauthlib.common.CaseInsensitiveDict.__init__
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_invalid_client
    - k.decode
    - log.debug
    - <builtin>.set
    - urllib.parse.urlencode.items
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - <builtin>.hasattr
    - v.decode
    - oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.validate_revocation_request
    - oauthlib.common.to_unicode
    - <builtin>.str
    - resp_headers.update
    - k.lower
    - oauthlib.common.Request.__init__
    - oauthlib.common.decode_params_utf8
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_post_request
    - <builtin>.list
    - urllib.parse.parse_qsl
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_unsupported_token
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_method
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e9c610>
    - <ast.Constant object at 0x7f4199e9c310>
    - <ast.Constant object at 0x7f4199e9c580>
    - <ast.Constant object at 0x7f4199e9c250>
    - <ast.Constant object at 0x7f4199e9c280>
    - <ast.Constant object at 0x7f4199e9c370>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    - credentials
    - grant_type_for_scope
    - claims
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 86
    functionName: oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.create_token_response
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.token
    functionUses: 1
    functionsReached:
    - oauthlib.common.urldecode
    - request.http_method.upper
    - scope.strip
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - oauthlib.common.CaseInsensitiveDict.__init__
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - k.decode
    - log.debug
    - <builtin>.set
    - urllib.parse.urlencode.items
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - <builtin>.hasattr
    - v.decode
    - oauthlib.common.to_unicode
    - <builtin>.str
    - k.lower
    - oauthlib.common.Request.__init__
    - oauthlib.common.decode_params_utf8
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_post_request
    - oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.validate_token_request
    - <builtin>.list
    - urllib.parse.parse_qsl
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_method
    - grant_type_handler.create_token_response
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f4199abf100>
    - <ast.Constant object at 0x7f4199abf490>
    - <ast.Constant object at 0x7f4199abfeb0>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 104
    functionName: oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.validate_authorization_request
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.authorization
    functionUses: 1
    functionsReached:
    - oauthlib.common.urldecode
    - response_type_handler.validate_authorization_request
    - scope.strip
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - oauthlib.common.CaseInsensitiveDict.__init__
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - k.decode
    - <builtin>.set
    - urllib.parse.urlencode.items
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - <builtin>.hasattr
    - v.decode
    - <builtin>.str
    - oauthlib.common.to_unicode
    - k.lower
    - oauthlib.common.Request.__init__
    - oauthlib.common.decode_params_utf8
    - <builtin>.list
    - urllib.parse.parse_qsl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f4199c8fbe0>
    - <ast.Constant object at 0x7f4199c8fbb0>
    - <ast.Constant object at 0x7f4199c8f220>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 29
    functionName: oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint.create_userinfo_response
    functionSourceFile: oauthlib.openid.connect.core.endpoints.userinfo
    functionUses: 1
    functionsReached:
    - oauthlib.common.urldecode
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.len
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint.validate_userinfo_request
    - oauthlib.common.CaseInsensitiveDict.__init__
    - oauthlib.oauth2.rfc6749.tokens.get_token_from_header
    - k.decode
    - log.debug
    - oauthlib.common.CaseInsensitiveDict.get
    - <builtin>.set
    - urllib.parse.urlencode.items
    - log.error
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - <builtin>.hasattr
    - json.dumps
    - v.decode
    - oauthlib.common.to_unicode
    - <builtin>.str
    - k.lower
    - oauthlib.common.Request.__init__
    - oauthlib.common.decode_params_utf8
    - <builtin>.list
    - urllib.parse.parse_qsl
    - oauthlib.oauth2.rfc6749.tokens.BearerToken.validate_request
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d7ab80>
    - <ast.Constant object at 0x7f4199f4f190>
    - <ast.Constant object at 0x7f4199f4f640>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 48
    functionName: oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.create_introspect_response
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.introspect
    functionUses: 1
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_missing_token
    - oauthlib.common.urldecode
    - request.http_method.upper
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - oauthlib.common.CaseInsensitiveDict.__init__
    - oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.validate_introspect_request
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_invalid_client
    - k.decode
    - log.debug
    - claims.pop
    - <builtin>.set
    - urllib.parse.urlencode.items
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - <builtin>.hasattr
    - json.dumps
    - v.decode
    - oauthlib.common.to_unicode
    - <builtin>.str
    - resp_headers.update
    - k.lower
    - oauthlib.common.Request.__init__
    - oauthlib.common.decode_params_utf8
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_post_request
    - <builtin>.list
    - urllib.parse.parse_qsl
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_unsupported_token
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_method
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e1cbe0>
    - <ast.Constant object at 0x7f4199e1c850>
    - <ast.Constant object at 0x7f4199e1ca90>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 52
    functionName: oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.create_metadata_response
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.metadata
    functionUses: 1
    functionsReached:
    - json.dumps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d780d0>
    - <ast.Constant object at 0x7f4199d78b20>
    - <ast.Constant object at 0x7f4199d78a00>
    - <ast.Constant object at 0x7f4199d78c40>
    - <ast.Constant object at 0x7f4199d78700>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    - scopes
    - credentials
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 86
    functionName: oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.create_authorization_response
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.authorization
    functionUses: 1
    functionsReached:
    - oauthlib.common.urldecode
    - data.items
    - oauthlib.common.extract_params
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - <builtin>.setattr
    - oauthlib.common.CaseInsensitiveDict.__init__
    - k.decode
    - log.debug
    - response_type_handler.create_authorization_response
    - <builtin>.set
    - urllib.parse.urlencode.items
    - <builtin>.isinstance
    - oauthlib.common.Request.__init__.encode
    - <builtin>.hasattr
    - v.decode
    - oauthlib.common.to_unicode
    - <builtin>.str
    - k.lower
    - oauthlib.common.Request.__init__
    - oauthlib.common.decode_params_utf8
    - <builtin>.list
    - urllib.parse.parse_qsl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: log.warning
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.request_validator
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - code
    - redirect_uri
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 16
    functionName: oauthlib.openid.connect.core.request_validator.RequestValidator.get_authorization_code_scopes
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - code
    - redirect_uri
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 40
    functionName: oauthlib.openid.connect.core.request_validator.RequestValidator.get_authorization_code_nonce
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - token
    - token_handler
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: oauthlib.openid.connect.core.request_validator.RequestValidator.get_jwt_bearer_token
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - token
    - token_handler
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 80
    functionName: oauthlib.openid.connect.core.request_validator.RequestValidator.get_id_token
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - id_token
    - token
    - token_handler
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 119
    functionName: oauthlib.openid.connect.core.request_validator.RequestValidator.finalize_id_token
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - token
    - scopes
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 162
    functionName: oauthlib.openid.connect.core.request_validator.RequestValidator.validate_jwt_bearer_token
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - token
    - scopes
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 188
    functionName: oauthlib.openid.connect.core.request_validator.RequestValidator.validate_id_token
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 210
    functionName: oauthlib.openid.connect.core.request_validator.RequestValidator.validate_silent_authorization
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 227
    functionName: oauthlib.openid.connect.core.request_validator.RequestValidator.validate_silent_login
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - id_token_hint
    - scopes
    - claims
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 248
    functionName: oauthlib.openid.connect.core.request_validator.RequestValidator.validate_user_match
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 268
    functionName: oauthlib.openid.connect.core.request_validator.RequestValidator.get_userinfo_claims
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 310
    functionName: oauthlib.openid.connect.core.request_validator.RequestValidator.refresh_id_token
    functionSourceFile: oauthlib.openid.connect.core.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.request_validator
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 12
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.client_authentication_required
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 41
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.authenticate_client
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 77
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.authenticate_client_id
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 8
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - code
    - redirect_uri
    - client
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 97
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.confirm_redirect_uri
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 121
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.get_default_redirect_uri
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 135
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.get_default_scopes
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - refresh_token
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 151
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.get_original_scopes
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - request_scopes
    - refresh_token
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 164
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.is_within_original_scope
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - token
    - token_type_hint
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 186
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.introspect_token
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - code
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 228
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.invalidate_authorization_code
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - token
    - token_type_hint
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 241
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.revoke_token
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 254
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.rotate_refresh_token
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - code
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 270
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.save_authorization_code
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - token
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 306
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.save_token
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.request_validator.RequestValidator.save_bearer_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - token
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 317
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.save_bearer_token
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - token
    - scopes
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 367
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_bearer_token
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 419
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_client_id
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - code
    - client
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 437
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_code
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - grant_type
    - client
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 472
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_grant_type
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - redirect_uri
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 490
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_redirect_uri
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - refresh_token
    - client
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 508
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_refresh_token
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - response_type
    - client
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 527
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_response_type
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - scopes
    - client
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 543
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_scopes
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - username
    - password
    - client
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 561
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_user
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 581
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.is_pkce_required
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - code
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 607
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.get_code_challenge
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - code
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 636
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.get_code_challenge_method
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - origin
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 656
    functionName: oauthlib.oauth2.rfc6749.request_validator.RequestValidator.is_origin_allowed
    functionSourceFile: oauthlib.oauth2.rfc6749.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.openid
    functionSourceFile: oauthlib.openid
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.endpoints
    functionSourceFile: oauthlib.openid.connect.core.endpoints
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.endpoints.pre_configured
    functionSourceFile: oauthlib.openid.connect.core.endpoints.pre_configured
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 7
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4199f0ae20>
    - <ast.Constant object at 0x7f4199f0aaf0>
    - <ast.Constant object at 0x7f4199f0a070>
    argNames:
    - self
    - request_validator
    - token_expires_in
    - token_generator
    - refresh_token_generator
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 53
    functionName: oauthlib.openid.connect.core.endpoints.pre_configured.Server.__init__
    functionSourceFile: oauthlib.openid.connect.core.endpoints.pre_configured
    functionUses: 0
    functionsReached:
    - oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher.__init__
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    - kwargs.get
    - kwargs.items
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._setup_custom_validators
    - oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.__init__
    - oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant.__init__
    - oauthlib.openid.connect.core.grant_types.authorization_code.AuthorizationCodeGrant.__init__
    - oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationTokenGrantDispatcher.__init__
    - <builtin>.setattr
    - oauthlib.openid.connect.core.grant_types.implicit.ImplicitGrant.__init__
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.__init__
    - oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher.__init__
    - <builtin>.super
    - oauthlib.openid.connect.core.grant_types.hybrid.HybridGrant.__init__
    - oauthlib.openid.connect.core.grant_types.refresh_token.RefreshTokenGrant.__init__
    - oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.__init__
    - oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.__init__
    - <builtin>.hasattr
    - oauthlib.oauth2.rfc6749.tokens.BearerToken.__init__
    - oauthlib.openid.connect.core.tokens.JWTToken.__init__
    - oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.__init__
    - oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f419a5b0ee0>
    argNames:
    - self
    - request_validator
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 82
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 9
    functionsReached:
    - <builtin>.setattr
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.__init__
    - kwargs.get
    - <builtin>.hasattr
    - kwargs.items
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._setup_custom_validators
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d988b0>
    argNames:
    - self
    - request_validator
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 18
    functionName: oauthlib.openid.connect.core.grant_types.refresh_token.RefreshTokenGrant.__init__
    functionSourceFile: oauthlib.openid.connect.core.grant_types.refresh_token
    functionUses: 1
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant.__init__
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f419a317a30>
    argNames:
    - self
    - request_validator
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 18
    functionName: oauthlib.openid.connect.core.grant_types.authorization_code.AuthorizationCodeGrant.__init__
    functionSourceFile: oauthlib.openid.connect.core.grant_types.authorization_code
    functionUses: 1
    functionsReached:
    - <builtin>.setattr
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.__init__
    - kwargs.get
    - <builtin>.hasattr
    - kwargs.items
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._setup_custom_validators
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d7a700>
    argNames:
    - self
    - request_validator
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 19
    functionName: oauthlib.openid.connect.core.grant_types.implicit.ImplicitGrant.__init__
    functionSourceFile: oauthlib.openid.connect.core.grant_types.implicit
    functionUses: 1
    functionsReached:
    - <builtin>.setattr
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.__init__
    - kwargs.get
    - <builtin>.hasattr
    - kwargs.items
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._setup_custom_validators
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 7
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e1c5e0>
    argNames:
    - self
    - request_validator
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 20
    functionName: oauthlib.openid.connect.core.grant_types.hybrid.HybridGrant.__init__
    functionSourceFile: oauthlib.openid.connect.core.grant_types.hybrid
    functionUses: 1
    functionsReached:
    - <builtin>.setattr
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.__init__
    - kwargs.get
    - <builtin>.hasattr
    - kwargs.items
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._setup_custom_validators
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f4199aaa5e0>
    - <ast.Constant object at 0x7f4199aaa6a0>
    - <ast.Constant object at 0x7f4199aaad30>
    - <ast.Constant object at 0x7f4199aaa2b0>
    argNames:
    - self
    - request_validator
    - token_generator
    - expires_in
    - refresh_token_generator
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 283
    functionName: oauthlib.oauth2.rfc6749.tokens.BearerToken.__init__
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f4199f0ab20>
    - <ast.Constant object at 0x7f4199f0a760>
    - <ast.Constant object at 0x7f4199f0a520>
    - <ast.Constant object at 0x7f4199f0ab50>
    argNames:
    - self
    - request_validator
    - token_generator
    - expires_in
    - refresh_token_generator
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 18
    functionName: oauthlib.openid.connect.core.tokens.JWTToken.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199f4ee50>
    - <ast.Constant object at 0x7f4199f4ebb0>
    argNames:
    - self
    - default_grant
    - oidc_grant
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 18
    functionName: oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f419a586550>
    - <ast.Constant object at 0x7f419a5860a0>
    argNames:
    - self
    - default_grant
    - oidc_grant
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 47
    functionName: oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - default_response_type
    - default_token_type
    - response_types
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 62
    functionName: oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.authorization
    functionUses: 4
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f4199c616d0>
    - <ast.Constant object at 0x7f4199c61100>
    argNames:
    - self
    - request_validator
    - default_grant
    - oidc_grant
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 74
    functionName: oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationTokenGrantDispatcher.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - default_grant_type
    - default_token_type
    - grant_types
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 63
    functionName: oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.token
    functionUses: 5
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - default_token
    - token_types
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 44
    functionName: oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.resource
    functionUses: 6
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f419a5b0b50>
    - <ast.Constant object at 0x7f419a5b0c70>
    argNames:
    - self
    - request_validator
    - supported_token_types
    - enable_jsonp
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 30
    functionName: oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.revocation
    functionUses: 6
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d7a400>
    argNames:
    - self
    - request_validator
    - supported_token_types
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.introspect
    functionUses: 6
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request_validator
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 23
    functionName: oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint.__init__
    functionSourceFile: oauthlib.openid.connect.core.endpoints.userinfo
    functionUses: 1
    functionsReached:
    - oauthlib.oauth2.rfc6749.tokens.BearerToken.__init__
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.tokens
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199ac1dc0>
    argNames:
    - self
    - params
    - old_scope
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 24
    functionName: oauthlib.oauth2.rfc6749.tokens.OAuth2Token.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 5
    functionsReached:
    - <builtin>.super
    - params.get
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - <builtin>.isinstance
    - scope.strip
    - <builtin>.set
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - scope
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 24
    functionName: oauthlib.oauth2.rfc6749.utils.scope_to_list
    functionSourceFile: oauthlib.oauth2.rfc6749.utils
    functionUses: 29
    functionsReached:
    - scope.strip
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 39
    functionName: oauthlib.oauth2.rfc6749.tokens.OAuth2Token.scope_changed
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 43
    functionName: oauthlib.oauth2.rfc6749.tokens.OAuth2Token.old_scope
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.utils.list_to_scope
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - scope
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 14
    functionName: oauthlib.oauth2.rfc6749.utils.list_to_scope
    functionSourceFile: oauthlib.oauth2.rfc6749.utils
    functionUses: 12
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 47
    functionName: oauthlib.oauth2.rfc6749.tokens.OAuth2Token.old_scopes
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 51
    functionName: oauthlib.oauth2.rfc6749.tokens.OAuth2Token.scope
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.utils.list_to_scope
    - <builtin>.isinstance
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 55
    functionName: oauthlib.oauth2.rfc6749.tokens.OAuth2Token.scopes
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 59
    functionName: oauthlib.oauth2.rfc6749.tokens.OAuth2Token.missing_scopes
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 63
    functionName: oauthlib.oauth2.rfc6749.tokens.OAuth2Token.additional_scopes
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 16
    IfCount: 10
    argCount: 11
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d98940>
    - <ast.Constant object at 0x7f4199d986a0>
    - <ast.Constant object at 0x7f4199d98700>
    - <ast.Constant object at 0x7f4199d98130>
    - <ast.Constant object at 0x7f4199d98850>
    - <ast.Constant object at 0x7f4199d985e0>
    - <ast.Constant object at 0x7f4199d980a0>
    argNames:
    - token
    - uri
    - key
    - http_method
    - nonce
    - headers
    - body
    - ext
    - hash_algorithm
    - issue_time
    - draft
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 67
    functionName: oauthlib.oauth2.rfc6749.tokens.prepare_mac_header
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 1
    functionsReached:
    - header.append
    - oauthlib.oauth2.rfc6749.utils.generate_age
    - hash_algorithm.lower
    - <builtin>.int
    - http_method.upper
    - body.encode
    - oauthlib.common.generate_nonce
    - sch.upper
    - default_ports.get
    - key.encode
    - oauthlib.common.generate_timestamp
    - netloc.split
    - hmac.new
    - secrets.randbits
    - hashlib.sha256
    - random.getrandbits
    - urllib.parse.urlparse
    - datetime.datetime.now
    - <builtin>.isinstance
    - base.append
    - base_string.encode
    - sign.digest
    - <builtin>.str
    - time.time
    - oauthlib.oauth2.rfc6749.utils.host_from_uri
    - binascii.b2a_base64
    - hashlib.sha1
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - uri
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: oauthlib.oauth2.rfc6749.utils.host_from_uri
    functionSourceFile: oauthlib.oauth2.rfc6749.utils
    functionUses: 2
    functionsReached:
    - urllib.parse.urlparse
    - default_ports.get
    - sch.upper
    - netloc.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: hash_algorithm.lower
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - issue_time
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 71
    functionName: oauthlib.oauth2.rfc6749.utils.generate_age
    functionSourceFile: oauthlib.oauth2.rfc6749.utils
    functionUses: 2
    functionsReached:
    - datetime.datetime.now
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: hashlib.sha256
    functionSourceFile: hashlib
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base_string.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sign.digest
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: header.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - token
    - uri
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 173
    functionName: oauthlib.oauth2.rfc6749.tokens.prepare_bearer_uri
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 1
    functionsReached:
    - queryparams.extend
    - oauthlib.common.add_params_to_qs
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - oauthlib.common.add_params_to_uri
    - <builtin>.isinstance
    - encoded.append
    - v.encode
    - k.encode
    - urllib.parse.parse_qsl
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4199f4e400>
    argNames:
    - token
    - headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 187
    functionName: oauthlib.oauth2.rfc6749.tokens.prepare_bearer_headers
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e2d6d0>
    argNames:
    - token
    - body
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 203
    functionName: oauthlib.oauth2.rfc6749.tokens.prepare_bearer_body
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 1
    functionsReached:
    - queryparams.extend
    - oauthlib.common.add_params_to_qs
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - v.encode
    - k.encode
    - urllib.parse.parse_qsl
    - oauthlib.common.urlencode
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e2d8e0>
    argNames:
    - request
    - refresh_token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 216
    functionName: oauthlib.oauth2.rfc6749.tokens.random_token_generator
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - oauthlib.common.generate_token
    - secrets.SystemRandom.choice
    - random.SystemRandom
    - secrets.SystemRandom
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - private_pem
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 225
    functionName: oauthlib.oauth2.rfc6749.tokens.signed_token_generator
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - request
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 229
    functionName: oauthlib.oauth2.rfc6749.tokens.signed_token_generator.signed_token_generator
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached:
    - oauthlib.common.generate_signed_token
    - claims.update
    - jwt.encode
    - datetime.datetime.utcnow
    - datetime.timedelta
    - <builtin>.isinstance
    - <builtin>.hasattr
    - data.items
    - <builtin>.dict
    - <builtin>.str
    - oauthlib.common.to_unicode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - request
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 236
    functionName: oauthlib.oauth2.rfc6749.tokens.get_token_from_header
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 6
    functionsReached:
    - oauthlib.common.CaseInsensitiveDict.get
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d8c100>
    argNames:
    - self
    - request
    - refresh_token
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 259
    functionName: oauthlib.oauth2.rfc6749.tokens.TokenBase.__call__
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 262
    functionName: oauthlib.oauth2.rfc6749.tokens.TokenBase.validate_request
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 269
    functionName: oauthlib.oauth2.rfc6749.tokens.TokenBase.estimate_type
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f419a5632b0>
    argNames:
    - self
    - request
    - refresh_token
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 292
    functionName: oauthlib.oauth2.rfc6749.tokens.BearerToken.create_token
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - params.get
    - <builtin>.callable
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc6749.tokens.OAuth2Token.__init__
    - warnings.warn
    - scope.strip
    - token.update
    - <builtin>.set
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 331
    functionName: oauthlib.oauth2.rfc6749.tokens.BearerToken.validate_request
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 3
    functionsReached:
    - oauthlib.oauth2.rfc6749.tokens.get_token_from_header
    - oauthlib.common.CaseInsensitiveDict.get
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 340
    functionName: oauthlib.oauth2.rfc6749.tokens.BearerToken.estimate_type
    functionSourceFile: oauthlib.oauth2.rfc6749.tokens
    functionUses: 0
    functionsReached:
    - request.headers.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: request.headers.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.utils
    functionSourceFile: oauthlib.oauth2.rfc6749.utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: scope.strip
    functionSourceFile: <builtin>
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - uri
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 34
    functionName: oauthlib.oauth2.rfc6749.utils.params_from_uri
    functionSourceFile: oauthlib.oauth2.rfc6749.utils
    functionUses: 0
    functionsReached:
    - oauthlib.common.urldecode
    - oauthlib.common.decode_params_utf8
    - urllib.parse.urlparse
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - <builtin>.isinstance
    - k.decode
    - scope.strip
    - urllib.parse.parse_qsl
    - v.decode
    - <builtin>.dict
    - decoded.append
    - INVALID_HEX_PATTERN.search
    - <builtin>.set
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: netloc.split
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sch.upper
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: default_ports.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - u
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: oauthlib.oauth2.rfc6749.utils.escape
    functionSourceFile: oauthlib.oauth2.rfc6749.utils
    functionUses: 0
    functionsReached:
    - u.encode
    - urllib.parse.quote
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: u.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.datetime.now
    functionSourceFile: datetime
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - uri
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 79
    functionName: oauthlib.oauth2.rfc6749.utils.is_secure_transport
    functionSourceFile: oauthlib.oauth2.rfc6749.utils
    functionUses: 19
    functionsReached:
    - uri.lower
    - os.environ.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.environ.get
    functionSourceFile: os
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: uri.lower
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.endpoints.userinfo
    functionSourceFile: oauthlib.openid.connect.core.endpoints.userinfo
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint
    functionSourceFile: oauthlib.openid.connect.core.endpoints.userinfo
    functionUses: 0
    functionsReached:
    - functools.wraps
    - oauthlib.oauth2.rfc6749.endpoints.base.catch_errors_and_unavailability
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 66
    functionName: oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint.validate_userinfo_request
    functionSourceFile: oauthlib.openid.connect.core.endpoints.userinfo
    functionUses: 2
    functionsReached:
    - oauthlib.oauth2.rfc6749.tokens.get_token_from_header
    - oauthlib.common.CaseInsensitiveDict.get
    - oauthlib.oauth2.rfc6749.tokens.BearerToken.validate_request
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: log.error
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: json.dumps
    functionSourceFile: json
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.grant_types.dispatchers
    functionSourceFile: oauthlib.openid.connect.core.grant_types.dispatchers
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 22
    functionName: oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher._handler_for_request
    functionSourceFile: oauthlib.openid.connect.core.grant_types.dispatchers
    functionUses: 2
    functionsReached:
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 31
    functionName: oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher.create_authorization_response
    functionSourceFile: oauthlib.openid.connect.core.grant_types.dispatchers
    functionUses: 0
    functionsReached:
    - token.get
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects
    - scope.strip
    - secrets.SystemRandom.choice
    - random.SystemRandom
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.create_authorization_response
    - token.items
    - oauthlib.common.add_params_to_qs
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - log.debug
    - oauthlib.uri_validate.is_absolute_uri
    - secrets.SystemRandom
    - k.encode
    - <builtin>.range
    - queryparams.extend
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - <builtin>.hasattr
    - re.match
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher._handler_for_request
    - <builtin>.str
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_authorization_request
    - oauthlib.common.add_params_to_uri
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.create_authorization_code
    - v.encode
    - oauthlib.common.generate_token
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.prepare_authorization_response
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - request_info.update
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 8
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 174
    functionName: oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.create_authorization_response
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.authorization_code
    functionUses: 1
    functionsReached:
    - token.get
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects
    - scope.strip
    - secrets.SystemRandom.choice
    - random.SystemRandom
    - token.items
    - oauthlib.common.add_params_to_qs
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - log.debug
    - oauthlib.uri_validate.is_absolute_uri
    - secrets.SystemRandom
    - k.encode
    - <builtin>.range
    - queryparams.extend
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - <builtin>.hasattr
    - re.match
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - <builtin>.str
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_authorization_request
    - oauthlib.common.add_params_to_uri
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.create_authorization_code
    - v.encode
    - oauthlib.common.generate_token
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.prepare_authorization_response
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - request_info.update
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 35
    functionName: oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher.validate_authorization_request
    functionSourceFile: oauthlib.openid.connect.core.grant_types.dispatchers
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects
    - scope.strip
    - itertools.chain
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant._run_custom_validators
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_token_request
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_pre
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - request_info.copy
    - log.debug
    - oauthlib.uri_validate.is_absolute_uri
    - <builtin>.set
    - request.response_type.split
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - <builtin>.isinstance
    - re.match
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_authorization_request
    - oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.validate_authorization_request
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_post
    - oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher._handler_for_request
    - <builtin>.str
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_authorization_request
    - request_info.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 8
    IfCount: 10
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 318
    functionName: oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_authorization_request
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.authorization_code
    functionUses: 5
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects
    - re.match
    - scope.strip
    - request_info.update
    - log.debug
    - oauthlib.uri_validate.is_absolute_uri
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 29
    functionName: oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.validate_authorization_request
    functionSourceFile: oauthlib.openid.connect.core.grant_types.base
    functionUses: 2
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects
    - scope.strip
    - itertools.chain
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant._run_custom_validators
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_token_request
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_pre
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - request_info.copy
    - log.debug
    - oauthlib.uri_validate.is_absolute_uri
    - <builtin>.set
    - request.response_type.split
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - <builtin>.isinstance
    - re.match
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_authorization_request
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_post
    - <builtin>.str
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_authorization_request
    - request_info.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher._handler_for_request
    functionSourceFile: oauthlib.openid.connect.core.grant_types.dispatchers
    functionUses: 2
    functionsReached:
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 60
    functionName: oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher.create_authorization_response
    functionSourceFile: oauthlib.openid.connect.core.grant_types.dispatchers
    functionUses: 0
    functionsReached:
    - token.get
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects
    - scope.strip
    - itertools.chain
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant._run_custom_validators
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.create_token_response
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_token_request
    - token.items
    - oauthlib.common.add_params_to_qs
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_pre
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - request_info.copy
    - log.debug
    - token_handler.create_token
    - oauthlib.uri_validate.is_absolute_uri
    - <builtin>.set
    - request.response_type.split
    - k.encode
    - queryparams.extend
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - re.match
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_post
    - <builtin>.str
    - oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher._handler_for_request
    - oauthlib.common.add_params_to_uri
    - v.encode
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.prepare_authorization_response
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.create_authorization_response
    - request_info.update
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 118
    functionName: oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.create_authorization_response
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.implicit
    functionUses: 1
    functionsReached:
    - token.get
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects
    - scope.strip
    - itertools.chain
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant._run_custom_validators
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.create_token_response
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_token_request
    - token.items
    - oauthlib.common.add_params_to_qs
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_pre
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - request_info.copy
    - log.debug
    - token_handler.create_token
    - oauthlib.uri_validate.is_absolute_uri
    - <builtin>.set
    - request.response_type.split
    - k.encode
    - queryparams.extend
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - re.match
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_post
    - <builtin>.str
    - oauthlib.common.add_params_to_uri
    - v.encode
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.prepare_authorization_response
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - request_info.update
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 64
    functionName: oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher.validate_authorization_request
    functionSourceFile: oauthlib.openid.connect.core.grant_types.dispatchers
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects
    - scope.strip
    - itertools.chain
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant._run_custom_validators
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_token_request
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_pre
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - request_info.copy
    - log.debug
    - oauthlib.uri_validate.is_absolute_uri
    - <builtin>.set
    - request.response_type.split
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - <builtin>.isinstance
    - re.match
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_authorization_request
    - oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.validate_authorization_request
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_post
    - <builtin>.str
    - oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher._handler_for_request
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_authorization_request
    - request_info.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 252
    functionName: oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_authorization_request
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.implicit
    functionUses: 3
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_token_request
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_pre
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - request_info.copy
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects
    - request.response_type.split
    - re.match
    - scope.strip
    - itertools.chain
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant._run_custom_validators
    - request_info.update
    - log.debug
    - oauthlib.uri_validate.is_absolute_uri
    - <builtin>.set
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_post
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 79
    functionName: oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationTokenGrantDispatcher._handler_for_request
    functionSourceFile: oauthlib.openid.connect.core.grant_types.dispatchers
    functionUses: 1
    functionsReached:
    - log.debug
    - parameters.get
    - <builtin>.dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parameters.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 98
    functionName: oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationTokenGrantDispatcher.create_token_response
    functionSourceFile: oauthlib.openid.connect.core.grant_types.dispatchers
    functionUses: 0
    functionsReached:
    - headers.update
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._create_cors_headers
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    - uri.lower
    - <builtin>.getattr
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_code_challenge
    - oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationTokenGrantDispatcher._handler_for_request
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.create_token_response
    - <builtin>.hasattr
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._get_default_headers
    - json.dumps
    - parameters.get
    - os.environ.get
    - <builtin>.dict
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_token_request
    - log.debug
    - token_handler.create_token
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 8
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 283
    functionName: oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.create_token_response
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.authorization_code
    functionUses: 1
    functionsReached:
    - headers.update
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._create_cors_headers
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    - uri.lower
    - <builtin>.getattr
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_code_challenge
    - <builtin>.hasattr
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._get_default_headers
    - json.dumps
    - os.environ.get
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_token_request
    - log.debug
    - token_handler.create_token
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc8628.grant_types
    functionSourceFile: oauthlib.oauth2.rfc8628.grant_types
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc8628.grant_types.device_code
    functionSourceFile: oauthlib.oauth2.rfc8628.grant_types.device_code
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 13
    functionName: oauthlib.oauth2.rfc8628.grant_types.device_code.DeviceCodeGrant.create_authorization_response
    functionSourceFile: oauthlib.oauth2.rfc8628.grant_types.device_code
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc8628.grant_types.device_code.DeviceCodeGrant.validate_token_request
    - headers.update
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - <builtin>.getattr
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc8628.grant_types.device_code.DeviceCodeGrant.create_token_response
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._get_default_headers
    - scope.strip
    - json.dumps
    - <builtin>.hasattr
    - log.debug
    - token_handler.create_token
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 217
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._get_default_headers
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 5
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 36
    functionName: oauthlib.oauth2.rfc8628.grant_types.device_code.DeviceCodeGrant.validate_token_request
    functionSourceFile: oauthlib.oauth2.rfc8628.grant_types.device_code
    functionUses: 2
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - <builtin>.getattr
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - <builtin>.isinstance
    - <builtin>.hasattr
    - scope.strip
    - log.debug
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: headers.update
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token_handler.create_token
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 76
    functionName: oauthlib.oauth2.rfc8628.grant_types.device_code.DeviceCodeGrant.create_token_response
    functionSourceFile: oauthlib.oauth2.rfc8628.grant_types.device_code
    functionUses: 1
    functionsReached:
    - oauthlib.oauth2.rfc8628.grant_types.device_code.DeviceCodeGrant.validate_token_request
    - headers.update
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - <builtin>.getattr
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - <builtin>.isinstance
    - <builtin>.hasattr
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._get_default_headers
    - json.dumps
    - scope.strip
    - log.debug
    - token_handler.create_token
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.getattr
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 152
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 12
    functionsReached:
    - log.debug
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 164
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 18
    functionsReached:
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - <builtin>.isinstance
    - scope.strip
    - log.debug
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.grant_types.base
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - post_auth
    - post_token
    - pre_auth
    - pre_token
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 59
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 67
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_pre
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 9
    functionsReached:
    - itertools.chain
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: itertools.chain
    functionSourceFile: itertools
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 71
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_post
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 9
    functionsReached:
    - itertools.chain
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 95
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._setup_custom_validators
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 10
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.__init__
    - <builtin>.hasattr
    - kwargs.get
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwargs.items
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.setattr
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwargs.get
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response_type
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 110
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.register_response_type
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - modifier
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 113
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.register_code_modifier
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - modifier
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 116
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.register_token_modifier
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 119
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.create_authorization_response
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 128
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.create_token_response
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - token
    - token_handler
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 137
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.add_token
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 0
    functionsReached:
    - token_handler.create_token
    - token.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - request
    - token
    - headers
    - body
    - status
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 178
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.prepare_authorization_response
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 5
    functionsReached:
    - queryparams.extend
    - token.items
    - token.get
    - oauthlib.common.add_params_to_qs
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - oauthlib.common.add_params_to_uri
    - <builtin>.isinstance
    - encoded.append
    - v.encode
    - k.encode
    - urllib.parse.parse_qsl
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - urllib.parse.urlencode.decode
    - log.debug
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.get
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 225
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 11
    functionsReached:
    - log.debug
    - oauthlib.uri_validate.is_absolute_uri
    - re.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 250
    functionName: oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._create_cors_headers
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.base
    functionUses: 3
    functionsReached:
    - log.debug
    - os.environ.get
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    - uri.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.tokens
    functionSourceFile: oauthlib.openid.connect.core.tokens
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f419a5be490>
    argNames:
    - self
    - request
    - refresh_token
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 27
    functionName: oauthlib.openid.connect.core.tokens.JWTToken.create_token
    functionSourceFile: oauthlib.openid.connect.core.tokens
    functionUses: 0
    functionsReached:
    - <builtin>.callable
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 36
    functionName: oauthlib.openid.connect.core.tokens.JWTToken.validate_request
    functionSourceFile: oauthlib.openid.connect.core.tokens
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.tokens.get_token_from_header
    - oauthlib.common.CaseInsensitiveDict.get
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 41
    functionName: oauthlib.openid.connect.core.tokens.JWTToken.estimate_type
    functionSourceFile: oauthlib.openid.connect.core.tokens
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.tokens.get_token_from_header
    - token.startswith
    - <builtin>.len
    - token.count
    - oauthlib.common.CaseInsensitiveDict.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token.count
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.grant_types
    functionSourceFile: oauthlib.openid.connect.core.grant_types
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.grant_types.implicit
    functionSourceFile: oauthlib.openid.connect.core.grant_types.implicit
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - token
    - token_handler
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: oauthlib.openid.connect.core.grant_types.implicit.ImplicitGrant.add_id_token
    functionSourceFile: oauthlib.openid.connect.core.grant_types.implicit
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: oauthlib.openid.connect.core.grant_types.implicit.ImplicitGrant.openid_authorization_validator
    functionSourceFile: oauthlib.openid.connect.core.grant_types.implicit
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - InvalidRequestError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.grant_types.implicit
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.implicit
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 165
    functionName: oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.create_token_response
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.implicit
    functionUses: 2
    functionsReached:
    - token.get
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects
    - scope.strip
    - itertools.chain
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant._run_custom_validators
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_token_request
    - token.items
    - oauthlib.common.add_params_to_qs
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_pre
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - request_info.copy
    - log.debug
    - token_handler.create_token
    - oauthlib.uri_validate.is_absolute_uri
    - <builtin>.set
    - request.response_type.split
    - k.encode
    - queryparams.extend
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - re.match
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_post
    - <builtin>.str
    - oauthlib.common.add_params_to_uri
    - v.encode
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.prepare_authorization_response
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - request_info.update
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 6
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 259
    functionName: oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_token_request
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.implicit
    functionUses: 7
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_pre
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - request_info.copy
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects
    - request.response_type.split
    - re.match
    - scope.strip
    - itertools.chain
    - oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant._run_custom_validators
    - request_info.update
    - log.debug
    - oauthlib.uri_validate.is_absolute_uri
    - <builtin>.set
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_post
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: request.response_type.split
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f419a304220>
    argNames:
    - self
    - request
    - validations
    - request_info
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 360
    functionName: oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant._run_custom_validators
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.implicit
    functionUses: 8
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_pre
    - request_info.copy
    - itertools.chain
    - request_info.update
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_post
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: request_info.update
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: request_info.copy
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.grant_types.refresh_token
    functionSourceFile: oauthlib.openid.connect.core.grant_types.refresh_token
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d7a4c0>
    - <ast.Constant object at 0x7f4199d7a8b0>
    argNames:
    - self
    - request_validator
    - issue_new_refresh_tokens
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 21
    functionName: oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.refresh_token
    functionUses: 5
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - token
    - token_handler
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 23
    functionName: oauthlib.openid.connect.core.grant_types.refresh_token.RefreshTokenGrant.add_id_token
    functionSourceFile: oauthlib.openid.connect.core.grant_types.refresh_token
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.grant_types.refresh_token
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.refresh_token
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 8
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 29
    functionName: oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant.create_token_response
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.refresh_token
    functionUses: 0
    functionsReached:
    - headers.update
    - oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant.validate_token_request
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._create_cors_headers
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    - uri.lower
    - <builtin>.getattr
    - utils.scope_to_list
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._get_default_headers
    - json.dumps
    - os.environ.get
    - log.debug
    - token_handler.create_token
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    - <builtin>.all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 10
    IfCount: 9
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 75
    functionName: oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant.validate_token_request
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.refresh_token
    functionUses: 1
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    - <builtin>.getattr
    - utils.scope_to_list
    - log.debug
    - <builtin>.all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: utils.scope_to_list
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.grant_types.hybrid
    functionSourceFile: oauthlib.openid.connect.core.grant_types.hybrid
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - token
    - token_handler
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: oauthlib.openid.connect.core.grant_types.hybrid.HybridGrant.add_id_token
    functionSourceFile: oauthlib.openid.connect.core.grant_types.hybrid
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: oauthlib.openid.connect.core.grant_types.hybrid.HybridGrant.openid_authorization_validator
    functionSourceFile: oauthlib.openid.connect.core.grant_types.hybrid
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - InvalidRequestError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.grant_types.authorization_code
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.authorization_code
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - verifier
    - challenge
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 18
    functionName: oauthlib.oauth2.rfc6749.grant_types.authorization_code.code_challenge_method_s256
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.authorization_code
    functionUses: 0
    functionsReached:
    - hashlib.sha256
    - verifier.encode
    - base64.urlsafe_b64encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: verifier.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base64.urlsafe_b64encode
    functionSourceFile: base64
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - verifier
    - challenge
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 52
    functionName: oauthlib.oauth2.rfc6749.grant_types.authorization_code.code_challenge_method_plain
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.authorization_code
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 160
    functionName: oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.create_authorization_code
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.authorization_code
    functionUses: 2
    functionsReached:
    - <builtin>.range
    - oauthlib.common.generate_token
    - <builtin>.hasattr
    - secrets.SystemRandom.choice
    - random.SystemRandom
    - log.debug
    - secrets.SystemRandom
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 28
    ICount: 12
    IfCount: 19
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 434
    functionName: oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_token_request
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.authorization_code
    functionUses: 2
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    - <builtin>.getattr
    - oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_code_challenge
    - <builtin>.hasattr
    - log.debug
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - challenge
    - challenge_method
    - verifier
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 544
    functionName: oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_code_challenge
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.grant_types.authorization_code
    functionSourceFile: oauthlib.openid.connect.core.grant_types.authorization_code
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - token
    - token_handler
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 25
    functionName: oauthlib.openid.connect.core.grant_types.authorization_code.AuthorizationCodeGrant.add_id_token
    functionSourceFile: oauthlib.openid.connect.core.grant_types.authorization_code
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.grant_types.base
    functionSourceFile: oauthlib.openid.connect.core.grant_types.base
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 19
    functionName: oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.__getattr__
    functionSourceFile: oauthlib.openid.connect.core.grant_types.base
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - attr
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 22
    functionName: oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.__setattr__
    functionSourceFile: oauthlib.openid.connect.core.grant_types.base
    functionUses: 0
    functionsReached:
    - <builtin>.setattr
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 36
    functionName: oauthlib.openid.connect.core.grant_types.base.GrantTypeBase._inflate_claims
    functionSourceFile: oauthlib.openid.connect.core.grant_types.base
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - json.loads
    linkageType: pythonLinkage
    raised:
    - InvalidRequestError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: json.loads
    functionSourceFile: json
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Attribute object at 0x7f4199aae5b0>
    argNames:
    - self
    - value
    - hashfunc
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.id_token_hash
    functionSourceFile: oauthlib.openid.connect.core.grant_types.base
    functionUses: 1
    functionsReached:
    - value.encode
    - <builtin>.len
    - base64.urlsafe_b64encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d8c0a0>
    argNames:
    - self
    - token
    - token_handler
    - request
    - nonce
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 74
    functionName: oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.add_id_token
    functionSourceFile: oauthlib.openid.connect.core.grant_types.base
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - time.time
    - <builtin>.len
    - oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.id_token_hash
    - value.encode
    - base64.urlsafe_b64encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 2
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 146
    functionName: oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.openid_authorization_validator
    functionSourceFile: oauthlib.openid.connect.core.grant_types.base
    functionUses: 0
    functionsReached:
    - prompt.strip
    - ui_locales.strip
    - <builtin>.isinstance
    - json.loads
    - <builtin>.hasattr
    - <builtin>.len
    - oauthlib.openid.connect.core.grant_types.base.GrantTypeBase._inflate_claims
    - <builtin>.set
    linkageType: pythonLinkage
    raised:
    - ConsentRequired
    - LoginRequired
    - InvalidRequestError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: prompt.strip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ui_locales.strip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.grant_types
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.grant_types.client_credentials
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.client_credentials
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 7
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 49
    functionName: oauthlib.oauth2.rfc6749.grant_types.client_credentials.ClientCredentialsGrant.create_token_response
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.client_credentials
    functionUses: 0
    functionsReached:
    - headers.update
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - <builtin>.getattr
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - <builtin>.isinstance
    - <builtin>.hasattr
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._get_default_headers
    - json.dumps
    - scope.strip
    - log.debug
    - token_handler.create_token
    - oauthlib.oauth2.rfc6749.grant_types.client_credentials.ClientCredentialsGrant.validate_token_request
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 8
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 86
    functionName: oauthlib.oauth2.rfc6749.grant_types.client_credentials.ClientCredentialsGrant.validate_token_request
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.client_credentials
    functionUses: 1
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - <builtin>.getattr
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - <builtin>.isinstance
    - <builtin>.hasattr
    - scope.strip
    - log.debug
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 10
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - token_handler
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 69
    functionName: oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials.ResourceOwnerPasswordCredentialsGrant.create_token_response
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials
    functionUses: 0
    functionsReached:
    - headers.update
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - <builtin>.getattr
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - <builtin>.isinstance
    - <builtin>.hasattr
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._get_default_headers
    - json.dumps
    - scope.strip
    - log.debug
    - token_handler.create_token
    - <builtin>.str
    - oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials.ResourceOwnerPasswordCredentialsGrant.validate_token_request
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 7
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 114
    functionName: oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials.ResourceOwnerPasswordCredentialsGrant.validate_token_request
    functionSourceFile: oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials
    functionUses: 1
    functionsReached:
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes
    - <builtin>.getattr
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - <builtin>.isinstance
    - <builtin>.hasattr
    - scope.strip
    - log.debug
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.metadata
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.metadata
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Dict object at 0x7f4199acbb20>
    - <ast.Constant object at 0x7f419a5b0160>
    argNames:
    - self
    - endpoints
    - claims
    - raise_errors
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 40
    functionName: oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.metadata
    functionUses: 0
    functionsReached:
    - endpoint._response_types.keys
    - copy.deepcopy
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_server
    - claims.setdefault
    - endpoint._grant_types.keys
    - utils.is_secure_transport
    - code_grant._code_challenge_methods.keys
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_introspection
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata
    - <builtin>.hasattr
    - <builtin>.filter
    - <builtin>.list
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_authorization
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_revocation
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 14
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 140
    functionName: oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_server
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.metadata
    functionUses: 1
    functionsReached:
    - endpoint._response_types.keys
    - copy.deepcopy
    - claims.setdefault
    - endpoint._grant_types.keys
    - utils.is_secure_transport
    - code_grant._code_challenge_methods.keys
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_introspection
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata
    - <builtin>.hasattr
    - <builtin>.filter
    - <builtin>.list
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_authorization
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_revocation
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.metadata
    functionUses: 0
    functionsReached:
    - functools.wraps
    - oauthlib.oauth2.rfc6749.endpoints.base.catch_errors_and_unavailability
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 0
    IfCount: 11
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e1c2b0>
    - <ast.Constant object at 0x7f4199e1c280>
    - <ast.Constant object at 0x7f4199e1c7f0>
    - <ast.Constant object at 0x7f4199e1caf0>
    argNames:
    - self
    - array
    - key
    - is_required
    - is_list
    - is_url
    - is_issuer
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 62
    functionName: oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.metadata
    functionUses: 6
    functionsReached:
    - <builtin>.isinstance
    - utils.is_secure_transport
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: utils.is_secure_transport
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 6
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - claims
    - endpoint
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 87
    functionName: oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_token
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.metadata
    functionUses: 2
    functionsReached:
    - claims.setdefault
    - endpoint._grant_types.keys
    - utils.is_secure_transport
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: endpoint._grant_types.keys
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: claims.setdefault
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 8
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - claims
    - endpoint
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 101
    functionName: oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_authorization
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.metadata
    functionUses: 2
    functionsReached:
    - endpoint._response_types.keys
    - claims.setdefault
    - utils.is_secure_transport
    - code_grant._code_challenge_methods.keys
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata
    - <builtin>.filter
    - <builtin>.list
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_authorization.<lambda1>
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.metadata
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: endpoint._response_types.keys
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: code_grant._code_challenge_methods.keys
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - claims
    - endpoint
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 124
    functionName: oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_revocation
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.metadata
    functionUses: 2
    functionsReached:
    - utils.is_secure_transport
    - claims.setdefault
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - claims
    - endpoint
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 132
    functionName: oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_introspection
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.metadata
    functionUses: 2
    functionsReached:
    - utils.is_secure_transport
    - claims.setdefault
    - oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: copy.deepcopy
    functionSourceFile: copy
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.token
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.token
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 70
    functionName: oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.grant_types
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.token
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 74
    functionName: oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.default_grant_type
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.token
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 78
    functionName: oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.default_grant_type_handler
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.token
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 82
    functionName: oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.default_token_type
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.token
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.token
    functionUses: 0
    functionsReached:
    - functools.wraps
    - oauthlib.oauth2.rfc6749.endpoints.base.catch_errors_and_unavailability
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 117
    functionName: oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.validate_token_request
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.token
    functionUses: 2
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_post_request
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_method
    - request.http_method.upper
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: grant_type_handler.create_token_response
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.revocation
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.revocation
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.revocation
    functionUses: 0
    functionsReached:
    - functools.wraps
    - oauthlib.oauth2.rfc6749.endpoints.base.catch_errors_and_unavailability
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 6
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 85
    functionName: oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.validate_revocation_request
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.revocation
    functionUses: 2
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_missing_token
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_post_request
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_invalid_client
    - request.http_method.upper
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_unsupported_token
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_method
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: resp_headers.update
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.authorization
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.authorization
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 70
    functionName: oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.response_types
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.authorization
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 74
    functionName: oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.default_response_type
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.authorization
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 78
    functionName: oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.default_response_type_handler
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.authorization
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 82
    functionName: oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.default_token_type
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.authorization
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.authorization
    functionUses: 0
    functionsReached:
    - functools.wraps
    - oauthlib.oauth2.rfc6749.endpoints.base.catch_errors_and_unavailability
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: response_type_handler.create_authorization_response
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: response_type_handler.validate_authorization_request
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.introspect
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.introspect
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.introspect
    functionUses: 0
    functionsReached:
    - functools.wraps
    - oauthlib.oauth2.rfc6749.endpoints.base.catch_errors_and_unavailability
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 6
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 82
    functionName: oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.validate_introspect_request
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.introspect
    functionUses: 2
    functionsReached:
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_missing_token
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_post_request
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_invalid_client
    - request.http_method.upper
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_unsupported_token
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_method
    - log.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: claims.pop
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.pre_configured
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.pre_configured
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 6
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f419a580880>
    - <ast.Constant object at 0x7f419a580e80>
    - <ast.Constant object at 0x7f419a580b50>
    argNames:
    - self
    - request_validator
    - token_expires_in
    - token_generator
    - refresh_token_generator
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 33
    functionName: oauthlib.oauth2.rfc6749.endpoints.pre_configured.Server.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.pre_configured
    functionUses: 0
    functionsReached:
    - <builtin>.setattr
    - <builtin>.super
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.__init__
    - oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.__init__
    - oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.__init__
    - kwargs.get
    - oauthlib.oauth2.rfc6749.tokens.BearerToken.__init__
    - <builtin>.hasattr
    - kwargs.items
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._setup_custom_validators
    - oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.__init__
    - oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant.__init__
    - oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 6
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f4199c61be0>
    - <ast.Constant object at 0x7f4199c61370>
    - <ast.Constant object at 0x7f4199c61e80>
    argNames:
    - self
    - request_validator
    - token_generator
    - token_expires_in
    - refresh_token_generator
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 101
    functionName: oauthlib.oauth2.rfc6749.endpoints.pre_configured.WebApplicationServer.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.pre_configured
    functionUses: 0
    functionsReached:
    - <builtin>.setattr
    - <builtin>.super
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.__init__
    - oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.__init__
    - oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.__init__
    - kwargs.get
    - oauthlib.oauth2.rfc6749.tokens.BearerToken.__init__
    - <builtin>.hasattr
    - kwargs.items
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._setup_custom_validators
    - oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.__init__
    - oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant.__init__
    - oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e7cdf0>
    - <ast.Constant object at 0x7f4199e7c790>
    - <ast.Constant object at 0x7f4199e7c9d0>
    argNames:
    - self
    - request_validator
    - token_generator
    - token_expires_in
    - refresh_token_generator
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 154
    functionName: oauthlib.oauth2.rfc6749.endpoints.pre_configured.MobileApplicationServer.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.pre_configured
    functionUses: 0
    functionsReached:
    - <builtin>.setattr
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.__init__
    - oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.__init__
    - kwargs.get
    - oauthlib.oauth2.rfc6749.tokens.BearerToken.__init__
    - <builtin>.hasattr
    - kwargs.items
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._setup_custom_validators
    - oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.__init__
    - oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.__init__
    - oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f419a3045e0>
    - <ast.Constant object at 0x7f419a304d00>
    - <ast.Constant object at 0x7f419a3048b0>
    argNames:
    - self
    - request_validator
    - token_generator
    - token_expires_in
    - refresh_token_generator
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 201
    functionName: oauthlib.oauth2.rfc6749.endpoints.pre_configured.LegacyApplicationServer.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.pre_configured
    functionUses: 0
    functionsReached:
    - <builtin>.setattr
    - <builtin>.super
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.__init__
    - oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.__init__
    - oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.__init__
    - kwargs.get
    - oauthlib.oauth2.rfc6749.tokens.BearerToken.__init__
    - <builtin>.hasattr
    - kwargs.items
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._setup_custom_validators
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.__init__
    - oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant.__init__
    - oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f419a317b20>
    - <ast.Constant object at 0x7f419a317760>
    - <ast.Constant object at 0x7f419a3171f0>
    argNames:
    - self
    - request_validator
    - token_generator
    - token_expires_in
    - refresh_token_generator
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 248
    functionName: oauthlib.oauth2.rfc6749.endpoints.pre_configured.BackendApplicationServer.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.pre_configured
    functionUses: 0
    functionsReached:
    - <builtin>.setattr
    - oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.__init__
    - oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.__init__
    - oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.__init__
    - oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.__init__
    - kwargs.get
    - oauthlib.oauth2.rfc6749.tokens.BearerToken.__init__
    - <builtin>.hasattr
    - kwargs.items
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._setup_custom_validators
    - oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.__init__
    - oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.__init__
    - oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc8628
    functionSourceFile: oauthlib.oauth2.rfc8628
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc8628.errors
    functionSourceFile: oauthlib.oauth2.rfc8628.errors
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.resource
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.resource
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 50
    functionName: oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.default_token
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.resource
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 54
    functionName: oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.default_token_type_handler
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.resource
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 58
    functionName: oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.tokens
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.resource
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.resource
    functionUses: 0
    functionsReached:
    - functools.wraps
    - oauthlib.oauth2.rfc6749.endpoints.base.catch_errors_and_unavailability
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 74
    functionName: oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.find_token_type
    functionSourceFile: oauthlib.oauth2.rfc6749.endpoints.resource
    functionUses: 2
    functionsReached:
    - t.estimate_type
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: token_type_handler.validate_request
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: t.estimate_type
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.sorted
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc8628.clients
    functionSourceFile: oauthlib.oauth2.rfc8628.clients
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc8628.clients.device
    functionSourceFile: oauthlib.oauth2.rfc8628.clients.device
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 31
    functionName: oauthlib.oauth2.rfc8628.clients.device.DeviceClient.__init__
    functionSourceFile: oauthlib.oauth2.rfc8628.clients.device
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - kwargs.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f419a40bac0>
    argNames:
    - self
    - uri
    - scope
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 35
    functionName: oauthlib.oauth2.rfc8628.clients.device.DeviceClient.prepare_request_uri
    functionSourceFile: oauthlib.oauth2.rfc8628.clients.device
    functionUses: 0
    functionsReached:
    - kwargs.items
    - oauthlib.common.add_params_to_qs
    - uri.lower
    - os.environ.get
    - k.encode
    - queryparams.extend
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - encoded.append
    - <builtin>.isinstance
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    - params.append
    - <builtin>.str
    - oauthlib.oauth2.rfc6749.utils.list_to_scope
    - oauthlib.common.add_params_to_uri
    - v.encode
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised:
    - InsecureTransportError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f4199f4e700>
    - <ast.Constant object at 0x7f4199f4e8e0>
    - <ast.Constant object at 0x7f4199f4e370>
    argNames:
    - self
    - device_code
    - body
    - scope
    - include_client_id
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 54
    functionName: oauthlib.oauth2.rfc8628.clients.device.DeviceClient.prepare_request_body
    functionSourceFile: oauthlib.oauth2.rfc8628.clients.device
    functionUses: 0
    functionsReached:
    - params.append
    - queryparams.extend
    - oauthlib.common.add_params_to_qs
    - oauthlib.common.encode_params_utf8
    - urllib.parse.urlencode
    - oauthlib.oauth2.rfc6749.utils.list_to_scope
    - kwargs.pop
    - encoded.append
    - k.encode
    - <builtin>.isinstance
    - v.encode
    - urllib.parse.parse_qsl
    - oauthlib.common.urlencode
    - urllib.parse.urlencode.decode
    - oauthlib.oauth2.rfc6749.parameters.prepare_token_request
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 5
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f419a563670>
    - <ast.Constant object at 0x7f419a5636d0>
    - <ast.Constant object at 0x7f419a563460>
    argNames:
    - grant_type
    - body
    - include_client_id
    - code_verifier
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 93
    functionName: oauthlib.oauth2.rfc6749.parameters.prepare_token_request
    functionSourceFile: oauthlib.oauth2.rfc6749.parameters
    functionUses: 5
    functionsReached:
    - queryparams.extend
    - oauthlib.common.add_params_to_qs
    - oauthlib.common.encode_params_utf8
    - urllib.parse.urlencode
    - oauthlib.oauth2.rfc6749.utils.list_to_scope
    - kwargs.pop
    - encoded.append
    - k.encode
    - <builtin>.isinstance
    - v.encode
    - urllib.parse.parse_qsl
    - oauthlib.common.urlencode
    - urllib.parse.urlencode.decode
    - <builtin>.str
    - params.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.parameters
    functionSourceFile: oauthlib.oauth2.rfc6749.parameters
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 7
    IfCount: 6
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7f4199f52430>
    - <ast.Constant object at 0x7f4199f52f40>
    - <ast.Constant object at 0x7f4199f528e0>
    - <ast.Constant object at 0x7f4199f52d90>
    - <ast.Constant object at 0x7f4199f52640>
    argNames:
    - uri
    - client_id
    - response_type
    - redirect_uri
    - scope
    - state
    - code_challenge
    - code_challenge_method
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 25
    functionName: oauthlib.oauth2.rfc6749.parameters.prepare_grant_uri
    functionSourceFile: oauthlib.oauth2.rfc6749.parameters
    functionUses: 2
    functionsReached:
    - oauthlib.common.add_params_to_qs
    - uri.lower
    - os.environ.get
    - k.encode
    - queryparams.extend
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - encoded.append
    - <builtin>.isinstance
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    - params.append
    - <builtin>.str
    - oauthlib.oauth2.rfc6749.utils.list_to_scope
    - oauthlib.common.add_params_to_uri
    - v.encode
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised:
    - InsecureTransportError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwargs.pop
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e86c10>
    - <ast.Constant object at 0x7f4199e86700>
    - <ast.Constant object at 0x7f4199e86910>
    argNames:
    - url
    - token
    - token_type_hint
    - callback
    - body
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 174
    functionName: oauthlib.oauth2.rfc6749.parameters.prepare_token_revocation_request
    functionSourceFile: oauthlib.oauth2.rfc6749.parameters
    functionUses: 0
    functionsReached:
    - oauthlib.common.add_params_to_qs
    - uri.lower
    - os.environ.get
    - k.encode
    - queryparams.extend
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    - <builtin>.str
    - params.append
    - oauthlib.common.add_params_to_uri
    - v.encode
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised:
    - InsecureTransportError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4199aaab50>
    argNames:
    - uri
    - state
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 232
    functionName: oauthlib.oauth2.rfc6749.parameters.parse_authorization_code_response
    functionSourceFile: oauthlib.oauth2.rfc6749.parameters
    functionUses: 1
    functionsReached:
    - params.get
    - oauthlib.oauth2.rfc6749.errors.raise_from_error
    - uri.lower
    - urllib.parse.urlparse
    - urllib.parse.parse_qsl
    - os.environ.get
    - <builtin>.dict
    - inspect.getmembers
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    linkageType: pythonLinkage
    raised:
    - MismatchingStateError
    - MissingCodeError
    - InsecureTransportError
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 4
    IfCount: 7
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d98790>
    - <ast.Constant object at 0x7f4199d985b0>
    argNames:
    - uri
    - state
    - scope
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 288
    functionName: oauthlib.oauth2.rfc6749.parameters.parse_implicit_response
    functionSourceFile: oauthlib.oauth2.rfc6749.parameters
    functionUses: 1
    functionsReached:
    - oauthlib.oauth2.rfc6749.errors.raise_from_error
    - <builtin>.int
    - scope.strip
    - <builtin>.Warning
    - <builtin>.dict
    - <builtin>.float
    - oauthlib.oauth2.rfc6749.parameters.parse_expires
    - params.get
    - scope_changed.send
    - uri.lower
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - os.environ.get
    - <builtin>.round
    - inspect.getmembers
    - <builtin>.set
    - <builtin>.super
    - urllib.parse.urlparse
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc6749.tokens.OAuth2Token.__init__
    - oauthlib.oauth2.rfc6749.parameters.validate_token_parameters
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    - <builtin>.str
    - params.pop
    - time.time
    - urllib.parse.parse_qsl
    linkageType: pythonLinkage
    raised:
    - ValueError
    - InsecureTransportError
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 1
    IfCount: 9
    argCount: 1
    argDefaultValues: []
    argNames:
    - params
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 475
    functionName: oauthlib.oauth2.rfc6749.parameters.parse_expires
    functionSourceFile: oauthlib.oauth2.rfc6749.parameters
    functionUses: 7
    functionsReached:
    - params.get
    - <builtin>.isinstance
    - time.time
    - <builtin>.int
    - <builtin>.round
    - <builtin>.float
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: params.pop
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - params
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 448
    functionName: oauthlib.oauth2.rfc6749.parameters.validate_token_parameters
    functionSourceFile: oauthlib.oauth2.rfc6749.parameters
    functionUses: 4
    functionsReached:
    - params.get
    - scope_changed.send
    - oauthlib.oauth2.rfc6749.errors.raise_from_error
    - os.environ.get
    - <builtin>.Warning
    - inspect.getmembers
    linkageType: pythonLinkage
    raised:
    - MissingTokenTypeError
    - MissingTokenError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4199ac1670>
    argNames:
    - body
    - scope
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 360
    functionName: oauthlib.oauth2.rfc6749.parameters.parse_token_response
    functionSourceFile: oauthlib.oauth2.rfc6749.parameters
    functionUses: 1
    functionsReached:
    - oauthlib.oauth2.rfc6749.errors.raise_from_error
    - <builtin>.int
    - scope.strip
    - <builtin>.Warning
    - <builtin>.dict
    - <builtin>.float
    - oauthlib.oauth2.rfc6749.parameters.parse_expires
    - params.get
    - scope_changed.send
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - os.environ.get
    - <builtin>.round
    - inspect.getmembers
    - <builtin>.set
    - <builtin>.super
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc6749.tokens.OAuth2Token.__init__
    - oauthlib.oauth2.rfc6749.parameters.validate_token_parameters
    - <builtin>.str
    - params.pop
    - time.time
    - json.loads
    - urllib.parse.parse_qsl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: scope_changed.send
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.Warning
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.float
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.round
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.clients
    functionSourceFile: oauthlib.oauth2.rfc6749.clients
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.clients.service_application
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.service_application
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4199ac1190>
    - <ast.Constant object at 0x7f4199ac12b0>
    - <ast.Constant object at 0x7f4199ac18b0>
    - <ast.Constant object at 0x7f4199ac11c0>
    argNames:
    - self
    - client_id
    - private_key
    - subject
    - issuer
    - audience
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: oauthlib.oauth2.rfc6749.clients.service_application.ServiceApplicationClient.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.service_application
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7f419a586ca0>
    - <ast.Constant object at 0x7f419a586520>
    - <ast.Constant object at 0x7f419a586a00>
    - <ast.Constant object at 0x7f419a5868b0>
    - <ast.Constant object at 0x7f419a586190>
    - <ast.Constant object at 0x7f419a586250>
    - <ast.Constant object at 0x7f419a586430>
    - <ast.Constant object at 0x7f419a586a30>
    - <ast.Constant object at 0x7f419a5867c0>
    - <ast.Constant object at 0x7f419a586a90>
    argNames:
    - self
    - private_key
    - subject
    - issuer
    - audience
    - expires_at
    - issued_at
    - extra_claims
    - body
    - scope
    - include_client_id
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 64
    functionName: oauthlib.oauth2.rfc6749.clients.service_application.ServiceApplicationClient.prepare_request_body
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.service_application
    functionUses: 0
    functionsReached:
    - jwt.encode
    - <builtin>.int
    - data.items
    - <builtin>.dict
    - oauthlib.common.add_params_to_qs
    - claim.update
    - k.encode
    - queryparams.extend
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - <builtin>.hasattr
    - oauthlib.common.urlencode
    - oauthlib.oauth2.rfc6749.parameters.prepare_token_request
    - <builtin>.str
    - params.append
    - oauthlib.common.to_unicode
    - oauthlib.oauth2.rfc6749.utils.list_to_scope
    - kwargs.pop
    - v.encode
    - time.time
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: claim.update
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.clients.backend_application
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.backend_application
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f419a5865b0>
    - <ast.Constant object at 0x7f419a586460>
    - <ast.Constant object at 0x7f419a586d60>
    argNames:
    - self
    - body
    - scope
    - include_client_id
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 33
    functionName: oauthlib.oauth2.rfc6749.clients.backend_application.BackendApplicationClient.prepare_request_body
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.backend_application
    functionUses: 0
    functionsReached:
    - params.append
    - queryparams.extend
    - oauthlib.common.add_params_to_qs
    - oauthlib.common.encode_params_utf8
    - urllib.parse.urlencode
    - oauthlib.oauth2.rfc6749.utils.list_to_scope
    - kwargs.pop
    - encoded.append
    - k.encode
    - <builtin>.isinstance
    - v.encode
    - urllib.parse.parse_qsl
    - oauthlib.common.urlencode
    - urllib.parse.urlencode.decode
    - oauthlib.oauth2.rfc6749.parameters.prepare_token_request
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.clients.base
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 17
    argDefaultValues:
    - <ast.Name object at 0x7f419a580fd0>
    - <ast.Constant object at 0x7f419a580df0>
    - <ast.Constant object at 0x7f419a580eb0>
    - <ast.Constant object at 0x7f419a5809d0>
    - <ast.Constant object at 0x7f419a580430>
    - <ast.Constant object at 0x7f419a580c10>
    - <ast.Constant object at 0x7f419a580910>
    - <ast.Constant object at 0x7f419a5804f0>
    - <ast.Constant object at 0x7f419a580b80>
    - <ast.Constant object at 0x7f419a580ca0>
    - <ast.Name object at 0x7f419a580550>
    - <ast.Constant object at 0x7f419a5808b0>
    - <ast.Constant object at 0x7f419a580790>
    - <ast.Constant object at 0x7f419a580f10>
    argNames:
    - self
    - client_id
    - default_token_placement
    - token_type
    - access_token
    - refresh_token
    - mac_key
    - mac_algorithm
    - token
    - scope
    - state
    - redirect_url
    - state_generator
    - code_verifier
    - code_challenge
    - code_challenge_method
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 55
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached:
    - params.get
    - <builtin>.isinstance
    - <builtin>.int
    - time.time
    - oauthlib.oauth2.rfc6749.clients.base.Client.populate_token_attributes
    - <builtin>.round
    - <builtin>.float
    - response.get
    - oauthlib.oauth2.rfc6749.parameters.parse_expires
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 1
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 573
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.populate_token_attributes
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 4
    functionsReached:
    - params.get
    - <builtin>.isinstance
    - <builtin>.int
    - time.time
    - <builtin>.round
    - <builtin>.float
    - response.get
    - oauthlib.oauth2.rfc6749.parameters.parse_expires
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 140
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.token_types
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 155
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.prepare_request_uri
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 159
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.prepare_request_body
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 163
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.parse_request_uri_response
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e2de80>
    - <ast.Constant object at 0x7f4199e2d760>
    - <ast.Constant object at 0x7f4199e2d0a0>
    - <ast.Constant object at 0x7f4199e2d940>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    - token_placement
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 167
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.add_token
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached:
    - k.lower
    - uri.lower
    - time.time
    - os.environ.get
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    linkageType: pythonLinkage
    raised:
    - ValueError
    - TokenExpiredError
    - InsecureTransportError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f4199c8f700>
    - <ast.Constant object at 0x7f4199c8fc70>
    - <ast.Constant object at 0x7f4199c8f040>
    argNames:
    - self
    - authorization_url
    - state
    - redirect_url
    - scope
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 221
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.prepare_authorization_request
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - oauthlib.oauth2.rfc6749.clients.base.Client.prepare_request_uri
    - uri.lower
    - oauthlib.common.generate_token
    - os.environ.get
    - secrets.SystemRandom
    - secrets.SystemRandom.choice
    - random.SystemRandom
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    linkageType: pythonLinkage
    raised:
    - InsecureTransportError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e7c0d0>
    - <ast.Constant object at 0x7f4199e7ca30>
    - <ast.Constant object at 0x7f4199e7c2b0>
    - <ast.Constant object at 0x7f4199e7cca0>
    argNames:
    - self
    - token_url
    - authorization_response
    - redirect_url
    - state
    - body
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 259
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.prepare_token_request
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 2
    functionsReached:
    - oauthlib.oauth2.rfc6749.clients.base.Client.prepare_request_body
    - uri.lower
    - oauthlib.oauth2.rfc6749.clients.base.Client.parse_request_uri_response
    - os.environ.get
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    linkageType: pythonLinkage
    raised:
    - InsecureTransportError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f419a304490>
    - <ast.Constant object at 0x7f419a304790>
    - <ast.Constant object at 0x7f419a304ca0>
    argNames:
    - self
    - token_url
    - refresh_token
    - body
    - scope
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 293
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.prepare_refresh_token_request
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.clients.base.Client.prepare_request_body
    - oauthlib.oauth2.rfc6749.clients.base.Client.prepare_token_request
    - uri.lower
    - oauthlib.oauth2.rfc6749.clients.base.Client.prepare_refresh_body
    - oauthlib.oauth2.rfc6749.clients.base.Client.parse_request_uri_response
    - os.environ.get
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    linkageType: pythonLinkage
    raised:
    - InsecureTransportError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f419a3175b0>
    - <ast.Constant object at 0x7f419a317f10>
    - <ast.Constant object at 0x7f419a3173a0>
    argNames:
    - self
    - body
    - refresh_token
    - scope
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 430
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.prepare_refresh_body
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 1
    functionsReached:
    - oauthlib.oauth2.rfc6749.clients.base.Client.prepare_request_body
    - oauthlib.oauth2.rfc6749.clients.base.Client.prepare_token_request
    - uri.lower
    - oauthlib.oauth2.rfc6749.clients.base.Client.parse_request_uri_response
    - os.environ.get
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e37280>
    - <ast.Constant object at 0x7f4199e37520>
    - <ast.Constant object at 0x7f4199e37610>
    argNames:
    - self
    - revocation_url
    - token
    - token_type_hint
    - body
    - callback
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 322
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.prepare_token_revocation_request
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached:
    - uri.lower
    - os.environ.get
    - oauthlib.oauth2.rfc6749.clients.base.Client.prepare_token_revocation_request
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    linkageType: pythonLinkage
    raised:
    - InsecureTransportError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f4199aae9d0>
    argNames:
    - self
    - body
    - scope
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 377
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.parse_request_body_response
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.parameters.parse_token_response
    - oauthlib.oauth2.rfc6749.errors.raise_from_error
    - <builtin>.int
    - scope.strip
    - <builtin>.Warning
    - <builtin>.dict
    - <builtin>.float
    - oauthlib.oauth2.rfc6749.parameters.parse_expires
    - params.get
    - scope_changed.send
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - os.environ.get
    - <builtin>.round
    - inspect.getmembers
    - <builtin>.set
    - <builtin>.super
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc6749.tokens.OAuth2Token.__init__
    - oauthlib.oauth2.rfc6749.clients.base.Client.populate_token_attributes
    - oauthlib.oauth2.rfc6749.parameters.validate_token_parameters
    - response.get
    - <builtin>.str
    - params.pop
    - time.time
    - json.loads
    - urllib.parse.parse_qsl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f419a399700>
    - <ast.Constant object at 0x7f419a399790>
    - <ast.Constant object at 0x7f419a399040>
    - <ast.Constant object at 0x7f419a399070>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    - token_placement
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 451
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client._add_bearer_token
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached:
    - queryparams.extend
    - oauthlib.common.add_params_to_qs
    - oauthlib.oauth2.rfc6749.tokens.prepare_bearer_body
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - oauthlib.common.add_params_to_uri
    - <builtin>.isinstance
    - encoded.append
    - oauthlib.oauth2.rfc6749.tokens.prepare_bearer_uri
    - v.encode
    - urllib.parse.parse_qsl
    - k.encode
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - urllib.parse.urlencode.decode
    - oauthlib.oauth2.rfc6749.tokens.prepare_bearer_headers
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - length
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 467
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.create_code_verifier
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - oauthlib.common.generate_token
    - secrets.SystemRandom.choice
    - random.SystemRandom
    - secrets.SystemRandom
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d73790>
    argNames:
    - self
    - code_verifier
    - code_challenge_method
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 499
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.create_code_challenge
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached:
    - code_challenge.replace
    - code_verifier.encode
    - bytes.decode
    - hashlib.sha256
    - h.digest
    - h.update
    - base64.urlsafe_b64encode
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: code_verifier.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: h.update
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: h.digest
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: bytes.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: code_challenge.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f4199d83cd0>
    - <ast.Constant object at 0x7f4199d832e0>
    - <ast.Constant object at 0x7f4199d83eb0>
    - <ast.Name object at 0x7f4199d833d0>
    - <ast.Constant object at 0x7f4199d835e0>
    argNames:
    - self
    - uri
    - http_method
    - body
    - headers
    - token_placement
    - ext
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 548
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client._add_mac_token
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached:
    - header.append
    - oauthlib.oauth2.rfc6749.utils.generate_age
    - hash_algorithm.lower
    - <builtin>.int
    - body.encode
    - http_method.upper
    - oauthlib.common.generate_nonce
    - sch.upper
    - default_ports.get
    - key.encode
    - oauthlib.common.generate_timestamp
    - netloc.split
    - hmac.new
    - secrets.randbits
    - hashlib.sha256
    - random.getrandbits
    - urllib.parse.urlparse
    - datetime.datetime.now
    - <builtin>.isinstance
    - base.append
    - base_string.encode
    - sign.digest
    - <builtin>.str
    - time.time
    - oauthlib.oauth2.rfc6749.utils.host_from_uri
    - binascii.b2a_base64
    - oauthlib.oauth2.rfc6749.tokens.prepare_mac_header
    - hashlib.sha1
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 562
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client._populate_attributes
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 0
    functionsReached:
    - params.get
    - <builtin>.isinstance
    - <builtin>.int
    - time.time
    - warnings.warn
    - oauthlib.oauth2.rfc6749.clients.base.Client.populate_token_attributes
    - <builtin>.round
    - <builtin>.float
    - response.get
    - oauthlib.oauth2.rfc6749.parameters.parse_expires
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 567
    functionName: oauthlib.oauth2.rfc6749.clients.base.Client.populate_code_attributes
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.base
    functionUses: 1
    functionsReached:
    - response.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: response.get
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.clients.mobile_application
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.mobile_application
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e2d910>
    - <ast.Constant object at 0x7f4199e2df10>
    - <ast.Constant object at 0x7f4199e2d280>
    argNames:
    - self
    - uri
    - redirect_uri
    - scope
    - state
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 49
    functionName: oauthlib.oauth2.rfc6749.clients.mobile_application.MobileApplicationClient.prepare_request_uri
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.mobile_application
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.parameters.prepare_grant_uri
    - oauthlib.common.add_params_to_qs
    - uri.lower
    - os.environ.get
    - k.encode
    - queryparams.extend
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    - params.append
    - <builtin>.str
    - oauthlib.oauth2.rfc6749.utils.list_to_scope
    - oauthlib.common.add_params_to_uri
    - v.encode
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f4199c612b0>
    - <ast.Constant object at 0x7f4199c614f0>
    argNames:
    - self
    - uri
    - state
    - scope
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 98
    functionName: oauthlib.oauth2.rfc6749.clients.mobile_application.MobileApplicationClient.parse_request_uri_response
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.mobile_application
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.errors.raise_from_error
    - <builtin>.int
    - scope.strip
    - <builtin>.Warning
    - <builtin>.dict
    - <builtin>.float
    - oauthlib.oauth2.rfc6749.parameters.parse_expires
    - params.get
    - scope_changed.send
    - uri.lower
    - oauthlib.oauth2.rfc6749.utils.scope_to_list
    - os.environ.get
    - <builtin>.round
    - inspect.getmembers
    - <builtin>.set
    - <builtin>.super
    - oauthlib.oauth2.rfc6749.parameters.parse_implicit_response
    - urllib.parse.urlparse
    - <builtin>.isinstance
    - oauthlib.oauth2.rfc6749.tokens.OAuth2Token.__init__
    - oauthlib.oauth2.rfc6749.clients.base.Client.populate_token_attributes
    - oauthlib.oauth2.rfc6749.parameters.validate_token_parameters
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    - response.get
    - <builtin>.str
    - params.pop
    - time.time
    - urllib.parse.parse_qsl
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.clients.legacy_application
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.legacy_application
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client_id
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: oauthlib.oauth2.rfc6749.clients.legacy_application.LegacyApplicationClient.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.legacy_application
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f419a40be50>
    - <ast.Constant object at 0x7f419a40b610>
    - <ast.Constant object at 0x7f419a40bc40>
    argNames:
    - self
    - username
    - password
    - body
    - scope
    - include_client_id
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 41
    functionName: oauthlib.oauth2.rfc6749.clients.legacy_application.LegacyApplicationClient.prepare_request_body
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.legacy_application
    functionUses: 0
    functionsReached:
    - params.append
    - queryparams.extend
    - oauthlib.common.add_params_to_qs
    - oauthlib.common.encode_params_utf8
    - urllib.parse.urlencode
    - oauthlib.oauth2.rfc6749.utils.list_to_scope
    - kwargs.pop
    - encoded.append
    - k.encode
    - <builtin>.isinstance
    - v.encode
    - urllib.parse.parse_qsl
    - oauthlib.common.urlencode
    - urllib.parse.urlencode.decode
    - oauthlib.oauth2.rfc6749.parameters.prepare_token_request
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749.clients.web_application
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.web_application
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f419a317550>
    argNames:
    - self
    - client_id
    - code
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: oauthlib.oauth2.rfc6749.clients.web_application.WebApplicationClient.__init__
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.web_application
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f419a3171f0>
    - <ast.Constant object at 0x7f4199aae640>
    - <ast.Constant object at 0x7f4199aaed00>
    - <ast.Constant object at 0x7f4199aae190>
    - <ast.Constant object at 0x7f4199aae430>
    argNames:
    - self
    - uri
    - redirect_uri
    - scope
    - state
    - code_challenge
    - code_challenge_method
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 43
    functionName: oauthlib.oauth2.rfc6749.clients.web_application.WebApplicationClient.prepare_request_uri
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.web_application
    functionUses: 0
    functionsReached:
    - oauthlib.oauth2.rfc6749.parameters.prepare_grant_uri
    - oauthlib.common.add_params_to_qs
    - uri.lower
    - os.environ.get
    - k.encode
    - queryparams.extend
    - urllib.parse.urlparse
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - encoded.append
    - oauthlib.common.urlencode
    - urllib.parse.urlunparse
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    - params.append
    - <builtin>.str
    - oauthlib.oauth2.rfc6749.utils.list_to_scope
    - oauthlib.common.add_params_to_uri
    - v.encode
    - urllib.parse.parse_qsl
    - urllib.parse.urlencode.decode
    - oauthlib.common.encode_params_utf8
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f4199e37520>
    - <ast.Constant object at 0x7f4199e37280>
    - <ast.Constant object at 0x7f4199e37670>
    - <ast.Constant object at 0x7f4199e375e0>
    - <ast.Constant object at 0x7f4199e377c0>
    argNames:
    - self
    - code
    - redirect_uri
    - body
    - include_client_id
    - code_verifier
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 104
    functionName: oauthlib.oauth2.rfc6749.clients.web_application.WebApplicationClient.prepare_request_body
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.web_application
    functionUses: 0
    functionsReached:
    - params.append
    - queryparams.extend
    - oauthlib.common.add_params_to_qs
    - oauthlib.common.encode_params_utf8
    - urllib.parse.urlencode
    - oauthlib.oauth2.rfc6749.utils.list_to_scope
    - kwargs.pop
    - encoded.append
    - k.encode
    - <builtin>.isinstance
    - v.encode
    - warnings.warn
    - urllib.parse.parse_qsl
    - oauthlib.common.urlencode
    - urllib.parse.urlencode.decode
    - oauthlib.oauth2.rfc6749.parameters.prepare_token_request
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f419a304dc0>
    argNames:
    - self
    - uri
    - state
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 176
    functionName: oauthlib.oauth2.rfc6749.clients.web_application.WebApplicationClient.parse_request_uri_response
    functionSourceFile: oauthlib.oauth2.rfc6749.clients.web_application
    functionUses: 0
    functionsReached:
    - params.get
    - oauthlib.oauth2.rfc6749.errors.raise_from_error
    - uri.lower
    - urllib.parse.urlparse
    - urllib.parse.parse_qsl
    - oauthlib.oauth2.rfc6749.clients.base.Client.populate_code_attributes
    - oauthlib.oauth2.rfc6749.utils.is_secure_transport
    - os.environ.get
    - <builtin>.dict
    - inspect.getmembers
    - oauthlib.oauth2.rfc6749.parameters.parse_authorization_code_response
    - response.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc6749
    functionSourceFile: oauthlib.oauth2.rfc6749
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.oauth2.rfc8628.request_validator
    functionSourceFile: oauthlib.oauth2.rfc8628.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - request
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 5
    functionName: oauthlib.oauth2.rfc8628.request_validator.RequestValidator.client_authentication_required
    functionSourceFile: oauthlib.oauth2.rfc8628.request_validator
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: oauthlib.openid.connect.core.exceptions
    functionSourceFile: oauthlib.openid.connect.core.exceptions
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f4199f4e3d0>
    argNames:
    - error
    - params
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 142
    functionName: oauthlib.openid.connect.core.exceptions.raise_from_error
    functionSourceFile: oauthlib.openid.connect.core.exceptions
    functionUses: 0
    functionsReached:
    - inspect.getmembers
    - params.get
    linkageType: pythonLinkage
    raised:
    - cls
    returnType: N/A
  Function list name: All functions
Function coverage:
  '...fuzz_oauth1_sig':
  - 72
  - 71
  '...fuzz_oauth1_sig.TestOneInput':
  - 40
  - 41
  - 42
  - 43
  - 46
  - 47
  - 50
  - 53
  - 58
  - 59
  '...fuzz_oauth1_sig.main':
  - 66
  - 67
  - 68
  oauthlib:
  - 1
  - 17
  oauthlib.common:
  - 32
  - 1
  - 96
  - 33
  - 39
  oauthlib.common.CaseInsensitiveDict:
  - 297
  oauthlib.common.CaseInsensitiveDict.__contains__:
  - 307
  oauthlib.common.CaseInsensitiveDict.__delitem__:
  - 312
  - 310
  - 311
  oauthlib.common.CaseInsensitiveDict.__getitem__:
  - 315
  - 316
  oauthlib.common.CaseInsensitiveDict.__init__:
  - 302
  - 303
  oauthlib.common.CaseInsensitiveDict.__setitem__:
  - 322
  - 323
  oauthlib.common.CaseInsensitiveDict.update:
  - 328
  - 326
  - 327
  oauthlib.common.Request:
  - 333
  oauthlib.common.Request.__getattr__:
  - 398
  oauthlib.common.Request.__init__:
  - 352
  - 353
  - 354
  - 355
  - 356
  - 394
  - 395
  oauthlib.common.Request.__init__.encode:
  - 350
  oauthlib.common.Request.__repr__:
  - 404
  - 407
  - 408
  - 409
  - 410
  - 412
  oauthlib.common.Request.duplicate_params:
  - 433
  - 428
  - 431
  oauthlib.common.Request.uri_query:
  - 417
  oauthlib.common.Request.uri_query_params:
  - 421
  - 423
  oauthlib.common.add_params_to_qs:
  - 234
  - 235
  - 236
  - 237
  - 238
  - 239
  oauthlib.common.add_params_to_uri:
  - 243
  - 244
  - 245
  - 246
  - 248
  - 249
  oauthlib.common.decode_params_utf8:
  - 85
  - 89
  - 90
  - 91
  - 92
  oauthlib.common.encode_params_utf8:
  - 73
  - 77
  - 78
  - 79
  - 80
  oauthlib.common.extract_params:
  - 133
  - 140
  - 142
  - 145
  - 147
  - 153
  - 154
  oauthlib.common.generate_client_id:
  - 225
  - 230
  oauthlib.common.generate_nonce:
  - 162
  - 173
  oauthlib.common.generate_signed_token:
  - 203
  - 207
  - 210
  - 212
  - 213
  oauthlib.common.generate_timestamp:
  - 177
  - 185
  oauthlib.common.generate_token:
  - 197
  - 196
  - 189
  oauthlib.common.quote:
  - 48
  - 49
  - 44
  - 45
  oauthlib.common.safe_string_equals:
  - 265
  - 261
  - 266
  - 253
  oauthlib.common.to_unicode:
  - 288
  - 289
  - 290
  - 271
  - 272
  - 275
  - 276
  - 278
  - 280
  - 285
  oauthlib.common.unquote:
  - 58
  - 59
  - 54
  oauthlib.common.urldecode:
  - 129
  - 100
  - 109
  - 121
  - 126
  oauthlib.common.urlencode:
  - 64
  - 65
  - 66
  - 69
  oauthlib.common.verify_signed_token:
  - 221
  oauthlib.get_debug:
  - 30
  oauthlib.oauth1:
  - 1
  oauthlib.oauth1.rfc5849:
  - 32
  - 1
  oauthlib.oauth1.rfc5849.Client:
  - 76
  oauthlib.oauth1.rfc5849.Client.__init__:
  - 128
  - 129
  - 130
  - 131
  - 132
  - 101
  - 133
  - 134
  - 135
  - 136
  - 137
  - 138
  - 139
  - 140
  - 127
  oauthlib.oauth1.rfc5849.Client.__init__.encode:
  - 125
  oauthlib.oauth1.rfc5849.Client.__repr__:
  - 148
  - 149
  - 143
  oauthlib.oauth1.rfc5849.Client._render:
  - 256
  - 257
  - 228
  - 247
  - 248
  - 250
  - 251
  - 253
  - 254
  oauthlib.oauth1.rfc5849.Client.get_oauth_params:
  - 193
  - 195
  - 197
  - 206
  - 207
  - 208
  - 209
  - 210
  - 211
  - 220
  - 221
  - 222
  - 223
  oauthlib.oauth1.rfc5849.Client.get_oauth_signature:
  - 161
  - 163
  - 166
  - 168
  - 169
  - 172
  - 174
  - 175
  - 176
  - 177
  - 179
  - 182
  - 152
  - 187
  - 189
  - 184
  oauthlib.oauth1.rfc5849.Client.sign:
  - 265
  - 295
  - 299
  - 300
  - 307
  - 313
  - 318
  - 333
  - 344
  - 348
  - 351
  - 352
  - 355
  - 358
  - 359
  - 360
  - 361
  - 363
  - 364
  oauthlib.oauth1.rfc5849.endpoints.access_token:
  - 2
  - 18
  oauthlib.oauth1.rfc5849.endpoints.access_token.AccessTokenEndpoint:
  - 23
  oauthlib.oauth1.rfc5849.endpoints.access_token.AccessTokenEndpoint.create_access_token:
  - 33
  - 42
  - 45
  - 46
  - 48
  - 50
  - 51
  - 52
  oauthlib.oauth1.rfc5849.endpoints.access_token.AccessTokenEndpoint.create_access_token_response:
  - 104
  - 105
  - 107
  - 108
  - 109
  - 56
  oauthlib.oauth1.rfc5849.endpoints.access_token.AccessTokenEndpoint.validate_access_token_request:
  - 129
  - 130
  - 132
  - 136
  - 141
  - 145
  - 149
  - 161
  - 163
  - 173
  - 175
  - 187
  - 193
  - 207
  - 209
  - 210
  - 211
  - 212
  - 213
  - 214
  - 120
  oauthlib.oauth1.rfc5849.endpoints.authorization:
  - 2
  oauthlib.oauth1.rfc5849.endpoints.authorization.AuthorizationEndpoint:
  - 19
  oauthlib.oauth1.rfc5849.endpoints.authorization.AuthorizationEndpoint.create_authorization_response:
  - 129
  - 132
  - 133
  - 106
  - 109
  - 112
  - 117
  - 56
  - 123
  - 124
  - 126
  oauthlib.oauth1.rfc5849.endpoints.authorization.AuthorizationEndpoint.create_verifier:
  - 49
  - 50
  - 38
  - 47
  oauthlib.oauth1.rfc5849.endpoints.authorization.AuthorizationEndpoint.get_realms_and_credentials:
  - 152
  - 138
  - 156
  - 149
  oauthlib.oauth1.rfc5849.endpoints.base:
  - 2
  oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_mandatory_parameters:
  - 130
  - 162
  - 170
  - 139
  - 174
  - 147
  - 116
  - 152
  oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_signature:
  - 180
  - 186
  - 189
  - 190
  - 191
  - 192
  - 193
  - 194
  - 208
  - 212
  - 213
  - 215
  - 220
  - 224
  - 225
  - 227
  - 228
  - 230
  - 231
  - 233
  - 234
  oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._check_transport_security:
  - 109
  - 110
  oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._create_request:
  - 101
  - 71
  - 72
  - 73
  - 75
  - 77
  - 81
  - 85
  - 86
  - 87
  - 88
  - 89
  - 90
  - 91
  - 92
  - 93
  - 94
  oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint._get_signature_type_and_params:
  - 33
  - 35
  - 37
  - 41
  - 42
  - 43
  - 44
  - 46
  - 48
  - 50
  - 53
  - 28
  oauthlib.oauth1.rfc5849.endpoints.pre_configured.WebApplicationServer.__init__:
  - 11
  - 12
  - 13
  - 14
  oauthlib.oauth1.rfc5849.endpoints.request_token:
  - 2
  - 18
  oauthlib.oauth1.rfc5849.endpoints.request_token.RequestTokenEndpoint:
  - 23
  oauthlib.oauth1.rfc5849.endpoints.request_token.RequestTokenEndpoint.create_request_token:
  - 33
  - 41
  - 42
  - 45
  - 46
  - 47
  oauthlib.oauth1.rfc5849.endpoints.request_token.RequestTokenEndpoint.create_request_token_response:
  - 99
  - 100
  - 102
  - 103
  - 51
  oauthlib.oauth1.rfc5849.endpoints.request_token.RequestTokenEndpoint.validate_request_token_request:
  - 128
  - 133
  - 137
  - 149
  - 151
  - 176
  - 182
  - 184
  - 188
  - 202
  - 203
  - 204
  - 205
  - 206
  - 207
  - 208
  - 111
  - 120
  - 121
  - 123
  - 124
  - 126
  oauthlib.oauth1.rfc5849.endpoints.resource:
  - 2
  - 14
  oauthlib.oauth1.rfc5849.endpoints.resource.ResourceEndpoint:
  - 19
  oauthlib.oauth1.rfc5849.endpoints.resource.ResourceEndpoint.validate_protected_resource_request:
  - 137
  - 141
  - 155
  - 157
  - 158
  - 159
  - 160
  - 161
  - 162
  - 55
  - 69
  - 74
  - 75
  - 79
  - 82
  - 86
  - 98
  - 100
  - 110
  - 112
  oauthlib.oauth1.rfc5849.endpoints.signature_only:
  - 2
  - 14
  oauthlib.oauth1.rfc5849.endpoints.signature_only.SignatureOnlyEndpoint:
  - 19
  oauthlib.oauth1.rfc5849.endpoints.signature_only.SignatureOnlyEndpoint.validate_request:
  - 65
  - 34
  - 36
  - 41
  - 42
  - 44
  - 77
  - 78
  - 79
  - 48
  - 80
  - 50
  - 81
  - 23
  - 60
  - 62
  oauthlib.oauth1.rfc5849.errors:
  - 1
  oauthlib.oauth1.rfc5849.errors.OAuth1Error.__init__:
  - 37
  - 38
  - 39
  - 40
  - 17
  oauthlib.oauth1.rfc5849.errors.OAuth1Error.in_uri:
  - 46
  oauthlib.oauth1.rfc5849.errors.OAuth1Error.twotuples:
  - 51
  - 52
  - 53
  - 54
  oauthlib.oauth1.rfc5849.errors.OAuth1Error.urlencoded:
  - 59
  oauthlib.oauth1.rfc5849.parameters:
  - 1
  oauthlib.oauth1.rfc5849.parameters._append_params:
  - 89
  - 99
  - 100
  - 105
  oauthlib.oauth1.rfc5849.parameters._append_params.<lambda1>:
  - 105
  oauthlib.oauth1.rfc5849.parameters.prepare_form_encoded_body:
  - 118
  - 110
  oauthlib.oauth1.rfc5849.parameters.prepare_headers:
  - 66
  - 73
  - 47
  - 83
  - 20
  - 53
  - 52
  - 58
  - 60
  oauthlib.oauth1.rfc5849.parameters.prepare_request_uri_query:
  - 130
  - 131
  - 132
  - 133
  - 122
  oauthlib.oauth1.rfc5849.request_validator:
  - 1
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator:
  - 13
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator._subclass_must_implement:
  - 202
  - 203
  - 198
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.check_access_token:
  - 170
  - 174
  - 175
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.check_client_key:
  - 154
  - 158
  - 159
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.check_nonce:
  - 178
  - 182
  - 183
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.check_realms:
  - 194
  - 195
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.check_request_token:
  - 162
  - 166
  - 167
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.check_verifier:
  - 186
  - 190
  - 191
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.dummy_access_token:
  - 247
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.dummy_client:
  - 207
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.dummy_request_token:
  - 231
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_access_token_secret:
  - 331
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_client_secret:
  - 262
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_default_realms:
  - 364
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_realms:
  - 381
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_redirect_uri:
  - 396
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_request_token_secret:
  - 298
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.get_rsa_key:
  - 414
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.invalidate_request_token:
  - 438
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.safe_characters:
  - 119
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.save_access_token:
  - 786
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.save_request_token:
  - 810
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.save_verifier:
  - 831
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_access_token:
  - 537
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_client_key:
  - 465
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_realms:
  - 677
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_redirect_uri:
  - 623
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_request_token:
  - 502
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_requested_realms:
  - 657
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_timestamp_and_nonce:
  - 573
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.validate_verifier:
  - 711
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.verify_realms:
  - 762
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator.verify_request_token:
  - 743
  oauthlib.oauth1.rfc5849.signature:
  - 1
  - 50
  oauthlib.oauth1.rfc5849.signature._get_jwt_rsa_algorithm:
  - 577
  - 564
  - 557
  oauthlib.oauth1.rfc5849.signature._prepare_key_plus:
  - 593
  - 585
  - 594
  - 595
  oauthlib.oauth1.rfc5849.signature._sign_hmac:
  - 419
  - 420
  - 421
  - 396
  - 428
  - 370
  - 405
  oauthlib.oauth1.rfc5849.signature._sign_rsa:
  - 642
  - 646
  - 647
  - 657
  - 626
  - 630
  - 601
  oauthlib.oauth1.rfc5849.signature._verify_hmac:
  - 450
  - 451
  - 452
  - 454
  - 456
  - 457
  - 458
  - 435
  oauthlib.oauth1.rfc5849.signature._verify_rsa:
  - 708
  - 715
  - 717
  - 718
  - 689
  - 690
  - 691
  - 663
  - 696
  - 700
  oauthlib.oauth1.rfc5849.signature.base_string_uri:
  - 131
  - 135
  - 148
  - 157
  - 161
  - 163
  - 164
  - 168
  - 173
  - 175
  - 188
  - 192
  - 193
  - 196
  - 198
  - 201
  - 203
  - 205
  - 210
  - 234
  - 107
  oauthlib.oauth1.rfc5849.signature.collect_parameters:
  - 288
  - 318
  - 258
  - 239
  - 305
  - 306
  - 275
  - 276
  - 310
  - 311
  - 312
  - 313
  - 317
  - 284
  - 285
  - 286
  - 287
  oauthlib.oauth1.rfc5849.signature.normalize_parameters:
  - 356
  - 325
  - 361
  - 346
  - 351
  oauthlib.oauth1.rfc5849.signature.sign_hmac_sha1:
  - 484
  - 491
  - 492
  - 494
  - 474
  oauthlib.oauth1.rfc5849.signature.sign_hmac_sha1_with_client:
  - 465
  oauthlib.oauth1.rfc5849.signature.sign_hmac_sha256:
  - 521
  - 529
  - 530
  - 532
  - 511
  oauthlib.oauth1.rfc5849.signature.sign_hmac_sha256_with_client:
  - 501
  oauthlib.oauth1.rfc5849.signature.sign_hmac_sha512_with_client:
  - 540
  oauthlib.oauth1.rfc5849.signature.sign_plaintext:
  - 827
  - 836
  - 807
  oauthlib.oauth1.rfc5849.signature.sign_plaintext_with_client:
  - 803
  oauthlib.oauth1.rfc5849.signature.sign_rsa_sha1:
  - 769
  - 772
  - 773
  - 775
  - 759
  oauthlib.oauth1.rfc5849.signature.sign_rsa_sha1_with_client:
  - 748
  - 749
  - 751
  oauthlib.oauth1.rfc5849.signature.sign_rsa_sha256_with_client:
  - 781
  oauthlib.oauth1.rfc5849.signature.sign_rsa_sha512_with_client:
  - 791
  oauthlib.oauth1.rfc5849.signature.signature_base_string:
  - 81
  - 91
  - 59
  - 101
  oauthlib.oauth1.rfc5849.signature.verify_hmac_sha1:
  - 470
  oauthlib.oauth1.rfc5849.signature.verify_hmac_sha256:
  - 506
  oauthlib.oauth1.rfc5849.signature.verify_hmac_sha512:
  - 547
  oauthlib.oauth1.rfc5849.signature.verify_plaintext:
  - 842
  - 848
  - 849
  - 850
  - 851
  oauthlib.oauth1.rfc5849.signature.verify_rsa_sha1:
  - 755
  oauthlib.oauth1.rfc5849.signature.verify_rsa_sha256:
  - 785
  oauthlib.oauth1.rfc5849.signature.verify_rsa_sha512:
  - 795
  oauthlib.oauth1.rfc5849.utils:
  - 1
  oauthlib.oauth1.rfc5849.utils.escape:
  - 49
  - 42
  - 54
  oauthlib.oauth1.rfc5849.utils.filter_oauth_params:
  - 32
  - 35
  - 36
  - 38
  oauthlib.oauth1.rfc5849.utils.filter_oauth_params.is_oauth:
  - 34
  oauthlib.oauth1.rfc5849.utils.filter_params:
  - 18
  oauthlib.oauth1.rfc5849.utils.filter_params.wrapper:
  - 24
  - 25
  oauthlib.oauth1.rfc5849.utils.parse_authorization_header:
  - 76
  - 77
  - 78
  - 79
  - 81
  oauthlib.oauth1.rfc5849.utils.parse_http_list:
  - 72
  - 70
  oauthlib.oauth1.rfc5849.utils.parse_keqv_list:
  - 64
  - 66
  oauthlib.oauth1.rfc5849.utils.unescape:
  - 58
  - 60
  oauthlib.oauth2:
  - 1
  oauthlib.oauth2.rfc6749:
  - 16
  - 1
  oauthlib.oauth2.rfc6749.clients:
  - 2
  oauthlib.oauth2.rfc6749.clients.backend_application:
  - 2
  oauthlib.oauth2.rfc6749.clients.backend_application.BackendApplicationClient:
  - 15
  oauthlib.oauth2.rfc6749.clients.backend_application.BackendApplicationClient.prepare_request_body:
  - 73
  - 35
  oauthlib.oauth2.rfc6749.clients.base:
  - 2
  oauthlib.oauth2.rfc6749.clients.base.Client:
  - 36
  oauthlib.oauth2.rfc6749.clients.base.Client.__init__:
  - 137
  - 71
  oauthlib.oauth2.rfc6749.clients.base.Client._add_bearer_token:
  - 453
  - 454
  - 455
  - 457
  - 458
  - 460
  - 461
  oauthlib.oauth2.rfc6749.clients.base.Client._add_mac_token:
  - 554
  - 557
  - 550
  oauthlib.oauth2.rfc6749.clients.base.Client._populate_attributes:
  - 563
  - 565
  oauthlib.oauth2.rfc6749.clients.base.Client.add_token:
  - 169
  - 202
  - 208
  - 209
  - 212
  - 215
  - 218
  oauthlib.oauth2.rfc6749.clients.base.Client.create_code_challenge:
  - 528
  - 531
  - 500
  - 537
  - 538
  - 539
  - 540
  - 541
  - 543
  oauthlib.oauth2.rfc6749.clients.base.Client.create_code_verifier:
  - 490
  - 468
  - 493
  - 487
  oauthlib.oauth2.rfc6749.clients.base.Client.parse_request_body_response:
  - 426
  - 378
  - 427
  oauthlib.oauth2.rfc6749.clients.base.Client.parse_request_uri_response:
  - 164
  oauthlib.oauth2.rfc6749.clients.base.Client.populate_code_attributes:
  - 568
  - 570
  - 571
  oauthlib.oauth2.rfc6749.clients.base.Client.populate_token_attributes:
  - 576
  - 577
  - 579
  - 580
  - 582
  - 583
  - 585
  - 586
  - 588
  - 590
  - 593
  - 594
  - 596
  - 597
  - 574
  oauthlib.oauth2.rfc6749.clients.base.Client.prepare_authorization_request:
  - 250
  - 247
  - 254
  - 223
  oauthlib.oauth2.rfc6749.clients.base.Client.prepare_refresh_body:
  - 448
  - 431
  oauthlib.oauth2.rfc6749.clients.base.Client.prepare_refresh_token_request:
  - 313
  - 318
  - 295
  oauthlib.oauth2.rfc6749.clients.base.Client.prepare_request_body:
  - 160
  oauthlib.oauth2.rfc6749.clients.base.Client.prepare_request_uri:
  - 156
  oauthlib.oauth2.rfc6749.clients.base.Client.prepare_token_request:
  - 288
  - 261
  - 280
  - 284
  - 285
  oauthlib.oauth2.rfc6749.clients.base.Client.prepare_token_revocation_request:
  - 370
  - 324
  - 373
  oauthlib.oauth2.rfc6749.clients.base.Client.token_types:
  - 141
  oauthlib.oauth2.rfc6749.clients.legacy_application:
  - 2
  oauthlib.oauth2.rfc6749.clients.legacy_application.LegacyApplicationClient:
  - 15
  oauthlib.oauth2.rfc6749.clients.legacy_application.LegacyApplicationClient.__init__:
  - 39
  oauthlib.oauth2.rfc6749.clients.legacy_application.LegacyApplicationClient.prepare_request_body:
  - 83
  - 43
  oauthlib.oauth2.rfc6749.clients.mobile_application:
  - 2
  oauthlib.oauth2.rfc6749.clients.mobile_application.MobileApplicationClient:
  - 15
  oauthlib.oauth2.rfc6749.clients.mobile_application.MobileApplicationClient.parse_request_uri_response:
  - 99
  - 172
  - 173
  oauthlib.oauth2.rfc6749.clients.mobile_application.MobileApplicationClient.prepare_request_uri:
  - 51
  - 95
  oauthlib.oauth2.rfc6749.clients.service_application:
  - 2
  oauthlib.oauth2.rfc6749.clients.service_application.ServiceApplicationClient:
  - 18
  oauthlib.oauth2.rfc6749.clients.service_application.ServiceApplicationClient.__init__:
  - 34
  - 58
  oauthlib.oauth2.rfc6749.clients.service_application.ServiceApplicationClient.prepare_request_body:
  - 162
  - 163
  - 166
  - 167
  - 171
  - 76
  - 172
  - 174
  - 175
  - 177
  - 179
  - 180
  - 185
  - 155
  oauthlib.oauth2.rfc6749.clients.web_application:
  - 2
  oauthlib.oauth2.rfc6749.clients.web_application.WebApplicationClient:
  - 20
  oauthlib.oauth2.rfc6749.clients.web_application.WebApplicationClient.__init__:
  - 40
  oauthlib.oauth2.rfc6749.clients.web_application.WebApplicationClient.parse_request_uri_response:
  - 177
  - 220
  - 221
  oauthlib.oauth2.rfc6749.clients.web_application.WebApplicationClient.prepare_request_body:
  - 162
  - 163
  - 167
  - 106
  - 173
  oauthlib.oauth2.rfc6749.clients.web_application.WebApplicationClient.prepare_request_uri:
  - 100
  - 45
  oauthlib.oauth2.rfc6749.endpoints:
  - 1
  oauthlib.oauth2.rfc6749.endpoints.authorization:
  - 1
  - 15
  oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint:
  - 20
  oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.__init__:
  - 64
  oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.create_authorization_response:
  - 96
  - 98
  - 100
  - 88
  - 89
  - 94
  - 95
  oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.default_response_type_handler:
  - 79
  oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint.validate_authorization_request:
  - 106
  - 107
  - 110
  - 112
  - 114
  oauthlib.oauth2.rfc6749.endpoints.base:
  - 16
  - 1
  oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_method:
  - 76
  - 78
  oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_bad_post_request:
  - 83
  - 85
  - 87
  oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_invalid_client:
  - 64
  - 65
  - 59
  - 60
  - 61
  - 62
  oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_missing_token:
  - 54
  - 55
  oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint._raise_on_unsupported_token:
  - 69
  - 70
  oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint.valid_request_methods:
  - 32
  - 33
  oauthlib.oauth2.rfc6749.endpoints.base.catch_errors_and_unavailability:
  - 92
  oauthlib.oauth2.rfc6749.endpoints.base.catch_errors_and_unavailability.wrapper:
  - 96
  - 99
  - 101
  - 107
  - 108
  - 112
  - 94
  - 95
  oauthlib.oauth2.rfc6749.endpoints.introspect:
  - 1
  - 17
  oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint:
  - 22
  oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.__init__:
  - 42
  oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.create_introspect_response:
  - 64
  - 65
  - 67
  - 68
  - 71
  - 76
  - 77
  - 78
  - 79
  - 80
  - 50
  - 62
  oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint.validate_introspect_request:
  - 83
  - 116
  - 117
  - 118
  - 119
  - 120
  oauthlib.oauth2.rfc6749.endpoints.metadata:
  - 1
  - 20
  oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint:
  - 25
  oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.__init__:
  - 41
  - 42
  - 43
  - 45
  - 49
  oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.create_metadata_response:
  - 60
  - 54
  oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata:
  - 66
  - 67
  - 70
  - 71
  - 73
  - 76
  - 77
  - 80
  - 81
  - 83
  - 84
  - 63
  oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_authorization:
  - 102
  - 103
  - 104
  - 109
  - 110
  - 112
  - 113
  - 114
  - 116
  - 119
  - 120
  - 121
  - 122
  oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_introspection:
  - 136
  - 137
  - 138
  - 133
  oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_revocation:
  - 128
  - 129
  - 130
  - 125
  oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_server:
  - 141
  - 214
  - 215
  - 216
  - 217
  - 218
  - 219
  - 220
  - 221
  - 224
  - 225
  - 226
  - 227
  - 228
  - 229
  - 230
  - 231
  - 232
  - 236
  - 237
  oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint.validate_metadata_token:
  - 97
  - 98
  - 99
  - 88
  - 94
  - 95
  oauthlib.oauth2.rfc6749.endpoints.pre_configured:
  - 1
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.BackendApplicationServer:
  - 246
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.BackendApplicationServer.__init__:
  - 256
  - 269
  - 270
  - 273
  - 279
  - 282
  - 285
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.LegacyApplicationServer:
  - 199
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.LegacyApplicationServer.__init__:
  - 224
  - 227
  - 236
  - 239
  - 240
  - 209
  - 222
  - 223
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.MobileApplicationServer:
  - 152
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.MobileApplicationServer.__init__:
  - 162
  - 175
  - 176
  - 179
  - 185
  - 188
  - 191
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.Server:
  - 28
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.Server.__init__:
  - 89
  - 66
  - 42
  - 77
  - 92
  - 55
  - 56
  - 57
  - 58
  - 59
  - 60
  - 93
  - 62
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.WebApplicationServer:
  - 99
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.WebApplicationServer.__init__:
  - 133
  - 109
  - 142
  - 145
  - 146
  - 122
  - 123
  - 124
  - 127
  oauthlib.oauth2.rfc6749.endpoints.resource:
  - 1
  - 14
  oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint:
  - 19
  oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.__init__:
  - 45
  oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.default_token_type_handler:
  - 55
  oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.find_token_type:
  - 83
  - 82
  - 75
  oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint.verify_request:
  - 64
  - 65
  - 66
  - 68
  - 70
  - 72
  oauthlib.oauth2.rfc6749.endpoints.revocation:
  - 16
  - 1
  oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint:
  - 21
  oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.__init__:
  - 32
  oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.create_revocation_response:
  - 64
  - 67
  - 68
  - 70
  - 72
  - 41
  - 73
  - 74
  - 77
  - 81
  oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint.validate_revocation_request:
  - 86
  - 122
  - 123
  - 124
  - 125
  - 126
  oauthlib.oauth2.rfc6749.endpoints.token:
  - 1
  - 15
  oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint:
  - 20
  oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.__init__:
  - 64
  oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.create_token_response:
  - 97
  - 100
  - 107
  - 110
  - 112
  - 114
  - 89
  - 90
  - 92
  oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.default_grant_type_handler:
  - 79
  oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint.validate_token_request:
  - 118
  - 119
  oauthlib.oauth2.rfc6749.errors:
  - 1
  oauthlib.oauth2.rfc6749.errors.AccessDeniedError:
  - 220
  oauthlib.oauth2.rfc6749.errors.ConsentRequired:
  - 359
  oauthlib.oauth2.rfc6749.errors.CustomOAuth2Error:
  - 381
  oauthlib.oauth2.rfc6749.errors.CustomOAuth2Error.__init__:
  - 387
  oauthlib.oauth2.rfc6749.errors.FatalClientError:
  - 144
  oauthlib.oauth2.rfc6749.errors.InsufficientScopeError:
  - 345
  oauthlib.oauth2.rfc6749.errors.InvalidClientError:
  - 277
  oauthlib.oauth2.rfc6749.errors.InvalidGrantError:
  - 293
  oauthlib.oauth2.rfc6749.errors.InvalidRequestError:
  - 187
  oauthlib.oauth2.rfc6749.errors.InvalidRequestFatalError:
  - 158
  oauthlib.oauth2.rfc6749.errors.InvalidScopeError:
  - 247
  oauthlib.oauth2.rfc6749.errors.InvalidTokenError:
  - 331
  oauthlib.oauth2.rfc6749.errors.LoginRequired:
  - 370
  oauthlib.oauth2.rfc6749.errors.MissingCodeChallengeError:
  - 200
  oauthlib.oauth2.rfc6749.errors.MissingCodeVerifierError:
  - 212
  oauthlib.oauth2.rfc6749.errors.OAuth2Error.__init__:
  - 65
  - 44
  - 47
  - 48
  - 49
  - 50
  - 22
  - 55
  - 58
  oauthlib.oauth2.rfc6749.errors.OAuth2Error.headers:
  - 100
  - 101
  - 108
  - 109
  - 110
  - 111
  - 112
  - 113
  oauthlib.oauth2.rfc6749.errors.OAuth2Error.in_uri:
  - 77
  oauthlib.oauth2.rfc6749.errors.OAuth2Error.json:
  - 96
  oauthlib.oauth2.rfc6749.errors.OAuth2Error.twotuples:
  - 82
  - 83
  - 84
  - 85
  - 86
  - 87
  oauthlib.oauth2.rfc6749.errors.OAuth2Error.urlencoded:
  - 92
  oauthlib.oauth2.rfc6749.errors.ServerError:
  - 257
  oauthlib.oauth2.rfc6749.errors.TemporarilyUnavailableError:
  - 267
  oauthlib.oauth2.rfc6749.errors.UnauthorizedClientError:
  - 306
  oauthlib.oauth2.rfc6749.errors.UnsupportedCodeChallengeMethodError:
  - 235
  oauthlib.oauth2.rfc6749.errors.UnsupportedGrantTypeError:
  - 314
  oauthlib.oauth2.rfc6749.errors.UnsupportedResponseTypeError:
  - 227
  oauthlib.oauth2.rfc6749.errors.UnsupportedTokenTypeError:
  - 322
  oauthlib.oauth2.rfc6749.errors.raise_from_error:
  - 392
  - 393
  - 394
  - 396
  - 397
  oauthlib.oauth2.rfc6749.grant_types:
  - 1
  oauthlib.oauth2.rfc6749.grant_types.authorization_code:
  - 1
  - 15
  oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant:
  - 66
  oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.create_authorization_code:
  - 168
  - 161
  - 170
  - 167
  oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.create_authorization_response:
  - 280
  - 265
  - 267
  - 175
  - 272
  - 273
  - 274
  - 275
  - 244
  - 245
  - 276
  - 277
  - 278
  - 254
  oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.create_token_response:
  - 298
  - 300
  - 301
  - 303
  - 304
  - 307
  - 309
  - 310
  - 316
  - 312
  - 313
  - 315
  - 284
  oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_authorization_request:
  - 386
  - 390
  - 393
  - 397
  - 403
  - 406
  - 410
  - 413
  - 419
  - 421
  - 429
  - 430
  - 319
  - 344
  - 349
  - 354
  - 357
  - 362
  - 367
  - 382
  - 383
  oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_code_challenge:
  - 545
  - 546
  oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant.validate_token_request:
  - 512
  - 516
  - 517
  - 518
  - 523
  - 525
  - 527
  - 528
  - 532
  - 534
  - 537
  - 541
  - 542
  - 435
  - 440
  - 443
  - 444
  - 446
  - 450
  - 451
  - 455
  - 461
  - 462
  - 464
  - 468
  - 471
  - 479
  - 483
  - 485
  - 490
  - 492
  - 493
  - 496
  - 497
  - 500
  - 506
  - 509
  - 511
  oauthlib.oauth2.rfc6749.grant_types.authorization_code.code_challenge_method_plain:
  - 53
  oauthlib.oauth2.rfc6749.grant_types.authorization_code.code_challenge_method_s256:
  - 48
  - 19
  - 47
  oauthlib.oauth2.rfc6749.grant_types.base:
  - 1
  - 15
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.__init__:
  - 88
  - 83
  - 92
  - 93
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._create_cors_headers:
  - 256
  - 257
  - 259
  - 261
  - 264
  - 251
  - 252
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._get_default_headers:
  - 218
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._handle_redirects:
  - 226
  - 228
  - 229
  - 237
  - 241
  - 244
  - 245
  - 247
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase._setup_custom_validators:
  - 96
  - 97
  - 98
  - 99
  - 100
  - 101
  - 102
  - 107
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.add_token:
  - 138
  - 149
  - 146
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.create_authorization_response:
  - 120
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.create_token_response:
  - 129
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.prepare_authorization_response:
  - 193
  - 194
  - 198
  - 200
  - 201
  - 204
  - 205
  - 209
  - 210
  - 179
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.register_code_modifier:
  - 114
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.register_response_type:
  - 111
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.register_token_modifier:
  - 117
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_grant_type:
  - 160
  - 153
  - 157
  - 158
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase.validate_scopes:
  - 165
  - 169
  - 170
  - 171
  - 172
  - 174
  oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer:
  - 19
  oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_post:
  - 72
  oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer.all_pre:
  - 68
  oauthlib.oauth2.rfc6749.grant_types.client_credentials:
  - 1
  - 11
  oauthlib.oauth2.rfc6749.grant_types.client_credentials.ClientCredentialsGrant:
  - 16
  oauthlib.oauth2.rfc6749.grant_types.client_credentials.ClientCredentialsGrant.create_token_response:
  - 66
  - 68
  - 69
  - 71
  - 72
  - 75
  - 77
  - 78
  - 80
  - 50
  - 82
  - 84
  oauthlib.oauth2.rfc6749.grant_types.client_credentials.ClientCredentialsGrant.validate_token_request:
  - 98
  - 101
  - 102
  - 106
  - 107
  - 108
  - 110
  - 115
  - 119
  - 118
  - 87
  - 121
  - 122
  - 91
  - 92
  - 94
  oauthlib.oauth2.rfc6749.grant_types.implicit:
  - 1
  - 12
  oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant:
  - 17
  oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant._run_custom_validators:
  - 365
  - 369
  - 370
  - 371
  - 372
  oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.create_authorization_response:
  - 163
  - 119
  oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.create_token_response:
  - 229
  - 166
  - 230
  - 236
  - 238
  - 241
  - 210
  - 242
  - 246
  - 247
  - 249
  - 218
  oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_authorization_request:
  - 257
  - 253
  oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant.validate_token_request:
  - 288
  - 352
  - 260
  - 293
  - 324
  - 327
  - 298
  - 330
  - 332
  - 301
  - 336
  - 306
  - 310
  - 342
  - 344
  oauthlib.oauth2.rfc6749.grant_types.refresh_token:
  - 1
  - 11
  oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant:
  - 16
  oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant.__init__:
  - 24
  oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant.create_token_response:
  - 65
  - 66
  - 68
  - 70
  - 72
  - 73
  - 53
  - 55
  - 56
  - 62
  - 58
  - 59
  - 30
  oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant.validate_token_request:
  - 128
  - 129
  - 130
  - 132
  - 138
  - 139
  - 76
  - 81
  - 84
  - 85
  - 87
  - 99
  - 100
  - 101
  - 102
  - 105
  - 107
  - 108
  - 112
  - 115
  - 117
  - 119
  - 123
  - 124
  - 127
  oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials:
  - 1
  - 11
  oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials.ResourceOwnerPasswordCredentialsGrant:
  - 16
  ? oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials.ResourceOwnerPasswordCredentialsGrant.create_token_response
  : - 96
    - 97
    - 99
    - 100
    - 70
    - 103
    - 105
    - 106
    - 108
    - 110
    - 112
    - 86
    - 88
    - 89
    - 90
    - 91
    - 93
    - 94
  ? oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials.ResourceOwnerPasswordCredentialsGrant.validate_token_request
  : - 161
    - 162
    - 193
    - 164
    - 165
    - 195
    - 197
    - 198
    - 169
    - 170
    - 175
    - 178
    - 115
    - 179
    - 183
    - 188
    - 191
  oauthlib.oauth2.rfc6749.parameters:
  - 1
  oauthlib.oauth2.rfc6749.parameters.parse_authorization_code_response:
  - 233
  - 270
  - 273
  - 274
  - 276
  - 279
  - 280
  - 282
  oauthlib.oauth2.rfc6749.parameters.parse_expires:
  - 513
  - 516
  - 520
  - 524
  - 525
  - 526
  - 495
  - 496
  - 497
  - 498
  - 499
  - 500
  - 503
  - 506
  - 476
  - 509
  - 510
  - 511
  oauthlib.oauth2.rfc6749.parameters.parse_implicit_response:
  - 352
  - 289
  - 355
  - 356
  - 333
  - 336
  - 337
  - 339
  - 340
  - 342
  - 343
  - 345
  - 346
  - 347
  - 349
  - 350
  oauthlib.oauth2.rfc6749.parameters.parse_token_response:
  - 421
  - 361
  - 428
  - 430
  - 431
  - 433
  - 434
  - 436
  - 437
  - 438
  - 440
  - 441
  - 443
  - 444
  oauthlib.oauth2.rfc6749.parameters.prepare_grant_uri:
  - 70
  - 76
  - 77
  - 78
  - 79
  - 80
  - 81
  - 82
  - 83
  - 84
  - 86
  - 87
  - 88
  - 90
  - 27
  oauthlib.oauth2.rfc6749.parameters.prepare_token_request:
  - 162
  - 163
  - 164
  - 167
  - 168
  - 169
  - 171
  - 148
  - 149
  - 152
  - 153
  - 154
  - 158
  - 157
  - 94
  oauthlib.oauth2.rfc6749.parameters.prepare_token_revocation_request:
  - 225
  - 226
  - 227
  - 229
  - 176
  - 211
  - 216
  - 217
  - 219
  - 220
  - 221
  oauthlib.oauth2.rfc6749.parameters.validate_token_parameters:
  - 449
  - 450
  - 451
  - 453
  - 456
  - 463
  - 464
  - 467
  - 468
  - 469
  oauthlib.oauth2.rfc6749.request_validator:
  - 1
  - 7
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.authenticate_client:
  - 42
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.authenticate_client_id:
  - 78
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.client_authentication_required:
  - 13
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.confirm_redirect_uri:
  - 99
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.get_code_challenge:
  - 608
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.get_code_challenge_method:
  - 637
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.get_default_redirect_uri:
  - 122
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.get_default_scopes:
  - 136
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.get_original_scopes:
  - 152
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.introspect_token:
  - 187
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.invalidate_authorization_code:
  - 229
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.is_origin_allowed:
  - 657
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.is_pkce_required:
  - 582
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.is_within_original_scope:
  - 165
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.revoke_token:
  - 242
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.rotate_refresh_token:
  - 255
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.save_authorization_code:
  - 271
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.save_bearer_token:
  - 318
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.save_token:
  - 315
  - 307
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_bearer_token:
  - 368
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_client_id:
  - 420
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_code:
  - 438
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_grant_type:
  - 473
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_redirect_uri:
  - 491
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_refresh_token:
  - 509
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_response_type:
  - 528
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_scopes:
  - 544
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator.validate_user:
  - 562
  oauthlib.oauth2.rfc6749.tokens:
  - 1
  oauthlib.oauth2.rfc6749.tokens.BearerToken.create_token:
  - 321
  - 322
  - 323
  - 293
  - 326
  - 328
  - 329
  - 300
  - 301
  - 305
  - 310
  - 318
  - 319
  oauthlib.oauth2.rfc6749.tokens.BearerToken.estimate_type:
  - 345
  - 347
  - 341
  oauthlib.oauth2.rfc6749.tokens.BearerToken.validate_request:
  - 336
  - 337
  - 332
  oauthlib.oauth2.rfc6749.tokens.OAuth2Token.__init__:
  - 25
  - 27
  - 28
  - 29
  - 30
  - 31
  oauthlib.oauth2.rfc6749.tokens.OAuth2Token.additional_scopes:
  - 64
  oauthlib.oauth2.rfc6749.tokens.OAuth2Token.missing_scopes:
  - 60
  oauthlib.oauth2.rfc6749.tokens.OAuth2Token.old_scope:
  - 44
  oauthlib.oauth2.rfc6749.tokens.OAuth2Token.old_scopes:
  - 48
  oauthlib.oauth2.rfc6749.tokens.OAuth2Token.scope:
  - 52
  oauthlib.oauth2.rfc6749.tokens.OAuth2Token.scopes:
  - 56
  oauthlib.oauth2.rfc6749.tokens.TokenBase.estimate_type:
  - 270
  oauthlib.oauth2.rfc6749.tokens.TokenBase.validate_request:
  - 263
  oauthlib.oauth2.rfc6749.tokens.get_token_from_header:
  - 248
  - 237
  - 246
  - 247
  oauthlib.oauth2.rfc6749.tokens.prepare_bearer_body:
  - 204
  - 213
  oauthlib.oauth2.rfc6749.tokens.prepare_bearer_headers:
  - 188
  oauthlib.oauth2.rfc6749.tokens.prepare_bearer_uri:
  - 184
  - 174
  oauthlib.oauth2.rfc6749.tokens.prepare_mac_header:
  - 129
  - 130
  - 131
  - 137
  - 138
  - 140
  - 141
  - 142
  - 143
  - 144
  - 145
  - 146
  - 147
  - 148
  - 149
  - 152
  - 153
  - 154
  - 155
  - 158
  - 159
  - 160
  - 161
  - 162
  - 163
  - 164
  - 165
  - 166
  - 169
  - 75
  - 107
  - 108
  - 110
  - 112
  - 117
  - 118
  - 119
  - 121
  - 122
  - 124
  oauthlib.oauth2.rfc6749.tokens.random_token_generator:
  - 217
  - 222
  oauthlib.oauth2.rfc6749.tokens.signed_token_generator:
  - 226
  oauthlib.oauth2.rfc6749.tokens.signed_token_generator.signed_token_generator:
  - 231
  oauthlib.oauth2.rfc6749.utils:
  - 1
  oauthlib.oauth2.rfc6749.utils.escape:
  - 66
  - 68
  - 61
  oauthlib.oauth2.rfc6749.utils.generate_age:
  - 72
  - 73
  - 76
  oauthlib.oauth2.rfc6749.utils.host_from_uri:
  - 42
  - 51
  - 52
  - 53
  - 55
  oauthlib.oauth2.rfc6749.utils.is_secure_transport:
  - 80
  - 81
  - 83
  oauthlib.oauth2.rfc6749.utils.list_to_scope:
  - 16
  - 18
  - 19
  - 15
  oauthlib.oauth2.rfc6749.utils.params_from_uri:
  - 35
  - 36
  - 37
  oauthlib.oauth2.rfc6749.utils.scope_to_list:
  - 25
  - 26
  - 27
  - 28
  - 31
  oauthlib.oauth2.rfc8628:
  - 16
  - 1
  oauthlib.oauth2.rfc8628.clients:
  - 1
  oauthlib.oauth2.rfc8628.clients.device:
  - 1
  oauthlib.oauth2.rfc8628.clients.device.DeviceClient:
  - 17
  oauthlib.oauth2.rfc8628.clients.device.DeviceClient.__init__:
  - 32
  - 33
  oauthlib.oauth2.rfc8628.clients.device.DeviceClient.prepare_request_body:
  - 56
  - 94
  oauthlib.oauth2.rfc8628.clients.device.DeviceClient.prepare_request_uri:
  - 36
  - 42
  - 43
  - 45
  - 46
  - 48
  - 49
  - 50
  - 52
  oauthlib.oauth2.rfc8628.endpoints:
  - 1
  oauthlib.oauth2.rfc8628.endpoints.device_authorization:
  - 1
  - 19
  oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint:
  - 23
  oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.__init__:
  - 61
  - 45
  oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.create_device_authorization_response:
  - 224
  - 228
  - 229
  - 147
  - 212
  - 213
  - 214
  - 217
  - 222
  oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.expires_in:
  - 73
  oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.interval:
  - 65
  oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.validate_device_authorization_request:
  - 129
  - 132
  - 106
  - 141
  - 113
  - 120
  - 95
  oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.verification_uri:
  - 78
  oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint.verification_uri_complete:
  - 85
  - 87
  - 88
  - 89
  - 90
  oauthlib.oauth2.rfc8628.endpoints.pre_configured.DeviceApplicationServer:
  - 10
  oauthlib.oauth2.rfc8628.endpoints.pre_configured.DeviceApplicationServer.__init__:
  - 29
  - 21
  oauthlib.oauth2.rfc8628.errors:
  - 3
  oauthlib.oauth2.rfc8628.errors.AccessDenied:
  - 51
  oauthlib.oauth2.rfc8628.errors.AuthorizationPendingError:
  - 13
  oauthlib.oauth2.rfc8628.errors.ExpiredTokenError:
  - 40
  oauthlib.oauth2.rfc8628.errors.SlowDownError:
  - 30
  oauthlib.oauth2.rfc8628.grant_types.device_code.DeviceCodeGrant.create_authorization_response:
  - 32
  - 34
  - 16
  - 20
  - 22
  - 24
  - 27
  - 29
  - 30
  oauthlib.oauth2.rfc8628.grant_types.device_code.DeviceCodeGrant.create_token_response:
  - 96
  - 98
  - 101
  - 104
  - 107
  - 109
  - 79
  - 111
  - 94
  oauthlib.oauth2.rfc8628.grant_types.device_code.DeviceCodeGrant.validate_token_request:
  - 68
  - 37
  - 71
  - 41
  - 42
  - 73
  - 44
  - 74
  - 49
  - 52
  - 53
  - 58
  - 60
  oauthlib.oauth2.rfc8628.request_validator.RequestValidator.client_authentication_required:
  - 6
  oauthlib.openid:
  - 1
  oauthlib.openid.connect.core.endpoints:
  - 1
  oauthlib.openid.connect.core.endpoints.pre_configured:
  - 1
  oauthlib.openid.connect.core.endpoints.pre_configured.Server:
  - 48
  oauthlib.openid.connect.core.endpoints.pre_configured.Server.__init__:
  - 134
  - 137
  - 138
  - 139
  - 62
  - 75
  - 76
  - 77
  - 78
  - 79
  - 80
  - 81
  - 82
  - 83
  - 85
  - 89
  - 93
  - 96
  - 102
  - 118
  - 122
  oauthlib.openid.connect.core.endpoints.userinfo:
  - 1
  - 17
  oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint:
  - 21
  oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint.__init__:
  - 24
  - 26
  oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint.create_userinfo_response:
  - 38
  - 40
  - 42
  - 43
  - 44
  - 47
  - 51
  - 52
  - 54
  - 55
  - 61
  - 30
  - 63
  oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint.validate_userinfo_request:
  - 105
  - 67
  - 103
  oauthlib.openid.connect.core.exceptions:
  - 1
  oauthlib.openid.connect.core.exceptions.AccountSelectionRequired:
  - 47
  oauthlib.openid.connect.core.exceptions.ConsentRequired:
  - 61
  oauthlib.openid.connect.core.exceptions.InsufficientScopeError:
  - 129
  oauthlib.openid.connect.core.exceptions.InteractionRequired:
  - 23
  oauthlib.openid.connect.core.exceptions.InvalidRequestObject:
  - 83
  oauthlib.openid.connect.core.exceptions.InvalidRequestURI:
  - 73
  oauthlib.openid.connect.core.exceptions.InvalidTokenError:
  - 115
  oauthlib.openid.connect.core.exceptions.LoginRequired:
  - 35
  oauthlib.openid.connect.core.exceptions.RegistrationNotSupported:
  - 107
  oauthlib.openid.connect.core.exceptions.RequestNotSupported:
  - 91
  oauthlib.openid.connect.core.exceptions.RequestURINotSupported:
  - 99
  oauthlib.openid.connect.core.exceptions.raise_from_error:
  - 144
  - 145
  - 146
  - 148
  - 149
  oauthlib.openid.connect.core.grant_types:
  - 1
  oauthlib.openid.connect.core.grant_types.authorization_code:
  - 1
  - 13
  oauthlib.openid.connect.core.grant_types.authorization_code.AuthorizationCodeGrant.__init__:
  - 19
  - 21
  - 23
  oauthlib.openid.connect.core.grant_types.authorization_code.AuthorizationCodeGrant.add_id_token:
  - 26
  - 43
  - 34
  - 37
  oauthlib.openid.connect.core.grant_types.base:
  - 11
  oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.__getattr__:
  - 20
  oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.__setattr__:
  - 24
  - 25
  - 27
  oauthlib.openid.connect.core.grant_types.base.GrantTypeBase._inflate_claims:
  - 43
  - 38
  oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.add_id_token:
  - 96
  - 97
  - 130
  - 131
  - 105
  - 138
  - 75
  - 139
  - 142
  - 116
  - 88
  - 92
  oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.id_token_hash:
  - 72
  - 49
  - 70
  - 71
  oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.openid_authorization_validator:
  - 290
  - 291
  - 292
  - 294
  - 296
  - 300
  - 303
  - 306
  - 147
  - 308
  - 314
  - 315
  - 286
  oauthlib.openid.connect.core.grant_types.base.GrantTypeBase.validate_authorization_request:
  - 34
  - 30
  oauthlib.openid.connect.core.grant_types.dispatchers:
  - 3
  oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher:
  - 12
  oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher._handler_for_request:
  - 25
  - 28
  oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher.create_authorization_response:
  - 32
  - 33
  oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher.validate_authorization_request:
  - 36
  - 37
  oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationTokenGrantDispatcher:
  - 70
  oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationTokenGrantDispatcher._handler_for_request:
  - 82
  - 83
  - 84
  - 85
  - 89
  - 90
  - 92
  - 95
  oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationTokenGrantDispatcher.create_token_response:
  - 99
  - 100
  - 101
  oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher:
  - 41
  oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher._handler_for_request:
  - 57
  - 54
  oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher.create_authorization_response:
  - 61
  - 62
  oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher.validate_authorization_request:
  - 65
  - 66
  oauthlib.openid.connect.core.grant_types.hybrid:
  - 1
  - 15
  oauthlib.openid.connect.core.grant_types.hybrid.HybridGrant.__init__:
  - 34
  - 35
  - 36
  - 21
  - 23
  - 27
  - 28
  - 29
  - 30
  oauthlib.openid.connect.core.grant_types.hybrid.HybridGrant.add_id_token:
  - 39
  oauthlib.openid.connect.core.grant_types.hybrid.HybridGrant.openid_authorization_validator:
  - 57
  - 42
  - 44
  - 45
  oauthlib.openid.connect.core.grant_types.implicit:
  - 1
  - 14
  oauthlib.openid.connect.core.grant_types.implicit.ImplicitGrant.__init__:
  - 20
  - 22
  - 23
  - 24
  - 26
  oauthlib.openid.connect.core.grant_types.implicit.ImplicitGrant.add_id_token:
  - 29
  - 31
  oauthlib.openid.connect.core.grant_types.implicit.ImplicitGrant.openid_authorization_validator:
  - 34
  - 36
  - 37
  - 46
  oauthlib.openid.connect.core.grant_types.refresh_token:
  - 1
  - 13
  oauthlib.openid.connect.core.grant_types.refresh_token.RefreshTokenGrant.__init__:
  - 19
  - 21
  oauthlib.openid.connect.core.grant_types.refresh_token.RefreshTokenGrant.add_id_token:
  - 24
  - 34
  - 31
  oauthlib.openid.connect.core.request_validator:
  - 1
  - 11
  oauthlib.openid.connect.core.request_validator.RequestValidator.finalize_id_token:
  - 120
  oauthlib.openid.connect.core.request_validator.RequestValidator.get_authorization_code_nonce:
  - 41
  oauthlib.openid.connect.core.request_validator.RequestValidator.get_authorization_code_scopes:
  - 17
  oauthlib.openid.connect.core.request_validator.RequestValidator.get_id_token:
  - 81
  oauthlib.openid.connect.core.request_validator.RequestValidator.get_jwt_bearer_token:
  - 65
  oauthlib.openid.connect.core.request_validator.RequestValidator.get_userinfo_claims:
  - 269
  oauthlib.openid.connect.core.request_validator.RequestValidator.refresh_id_token:
  - 311
  oauthlib.openid.connect.core.request_validator.RequestValidator.validate_id_token:
  - 189
  oauthlib.openid.connect.core.request_validator.RequestValidator.validate_jwt_bearer_token:
  - 163
  oauthlib.openid.connect.core.request_validator.RequestValidator.validate_silent_authorization:
  - 211
  oauthlib.openid.connect.core.request_validator.RequestValidator.validate_silent_login:
  - 228
  oauthlib.openid.connect.core.request_validator.RequestValidator.validate_user_match:
  - 249
  oauthlib.openid.connect.core.tokens:
  - 1
  oauthlib.openid.connect.core.tokens.JWTToken.create_token:
  - 34
  - 28
  - 30
  oauthlib.openid.connect.core.tokens.JWTToken.estimate_type:
  - 42
  - 43
  oauthlib.openid.connect.core.tokens.JWTToken.validate_request:
  - 37
  - 38
  oauthlib.set_debug:
  - 22
  oauthlib.signals:
  - 1
  - 37
  - 41
  oauthlib.signals.Namespace.signal:
  - 13
  oauthlib.signals._FakeSignal:
  - 16
  oauthlib.uri_validate:
  - 1
  - 131
  - 136
  - 139
  - 22
  - 152
  - 25
  - 163
  - 36
  - 166
  - 40
  - 170
  - 46
  - 174
  - 177
  - 62
  - 65
  - 72
  - 75
  - 78
  - 81
  - 85
  - 88
  - 91
  - 96
  - 99
  - 103
  - 106
  - 109
  - 112
  - 115
  oauthlib.uri_validate.is_absolute_uri:
  - 189
  oauthlib.uri_validate.is_uri:
  - 181
  oauthlib.uri_validate.is_uri_reference:
  - 185
Fuzzer filename: /src/fuzz_oauth1_sig.py
Inheritance:
  '...fuzz_oauth1_sig.FuzzMockRequest': []
  oauthlib.common.CaseInsensitiveDict:
  - dict
  oauthlib.common.Request: []
  oauthlib.oauth1.rfc5849.Client: []
  oauthlib.oauth1.rfc5849.endpoints.access_token.AccessTokenEndpoint:
  - BaseEndpoint
  oauthlib.oauth1.rfc5849.endpoints.authorization.AuthorizationEndpoint:
  - BaseEndpoint
  oauthlib.oauth1.rfc5849.endpoints.base.BaseEndpoint: []
  oauthlib.oauth1.rfc5849.endpoints.pre_configured.WebApplicationServer:
  - RequestTokenEndpoint
  - ResourceEndpoint
  - AccessTokenEndpoint
  - AuthorizationEndpoint
  oauthlib.oauth1.rfc5849.endpoints.request_token.RequestTokenEndpoint:
  - BaseEndpoint
  oauthlib.oauth1.rfc5849.endpoints.resource.ResourceEndpoint:
  - BaseEndpoint
  oauthlib.oauth1.rfc5849.endpoints.signature_only.SignatureOnlyEndpoint:
  - BaseEndpoint
  oauthlib.oauth1.rfc5849.errors.InsecureTransportError:
  - OAuth1Error
  oauthlib.oauth1.rfc5849.errors.InvalidClientError:
  - OAuth1Error
  oauthlib.oauth1.rfc5849.errors.InvalidRequestError:
  - OAuth1Error
  oauthlib.oauth1.rfc5849.errors.InvalidSignatureMethodError:
  - OAuth1Error
  oauthlib.oauth1.rfc5849.errors.OAuth1Error:
  - Exception
  oauthlib.oauth1.rfc5849.request_validator.RequestValidator: []
  oauthlib.oauth2.rfc6749.clients.backend_application.BackendApplicationClient:
  - Client
  oauthlib.oauth2.rfc6749.clients.base.Client: []
  oauthlib.oauth2.rfc6749.clients.legacy_application.LegacyApplicationClient:
  - Client
  oauthlib.oauth2.rfc6749.clients.mobile_application.MobileApplicationClient:
  - Client
  oauthlib.oauth2.rfc6749.clients.service_application.ServiceApplicationClient:
  - Client
  oauthlib.oauth2.rfc6749.clients.web_application.WebApplicationClient:
  - Client
  oauthlib.oauth2.rfc6749.endpoints.authorization.AuthorizationEndpoint:
  - BaseEndpoint
  oauthlib.oauth2.rfc6749.endpoints.base.BaseEndpoint: []
  oauthlib.oauth2.rfc6749.endpoints.introspect.IntrospectEndpoint:
  - BaseEndpoint
  oauthlib.oauth2.rfc6749.endpoints.metadata.MetadataEndpoint:
  - BaseEndpoint
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.BackendApplicationServer:
  - RevocationEndpoint
  - ResourceEndpoint
  - IntrospectEndpoint
  - TokenEndpoint
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.LegacyApplicationServer:
  - RevocationEndpoint
  - ResourceEndpoint
  - IntrospectEndpoint
  - TokenEndpoint
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.MobileApplicationServer:
  - RevocationEndpoint
  - ResourceEndpoint
  - IntrospectEndpoint
  - AuthorizationEndpoint
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.Server:
  - RevocationEndpoint
  - ResourceEndpoint
  - AuthorizationEndpoint
  - IntrospectEndpoint
  - TokenEndpoint
  oauthlib.oauth2.rfc6749.endpoints.pre_configured.WebApplicationServer:
  - RevocationEndpoint
  - ResourceEndpoint
  - AuthorizationEndpoint
  - IntrospectEndpoint
  - TokenEndpoint
  oauthlib.oauth2.rfc6749.endpoints.resource.ResourceEndpoint:
  - BaseEndpoint
  oauthlib.oauth2.rfc6749.endpoints.revocation.RevocationEndpoint:
  - BaseEndpoint
  oauthlib.oauth2.rfc6749.endpoints.token.TokenEndpoint:
  - BaseEndpoint
  oauthlib.oauth2.rfc6749.errors.AccessDeniedError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.ConsentRequired:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.CustomOAuth2Error:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.FatalClientError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.InsecureTransportError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.InsufficientScopeError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.InvalidClientError:
  - FatalClientError
  oauthlib.oauth2.rfc6749.errors.InvalidClientIdError:
  - InvalidRequestFatalError
  oauthlib.oauth2.rfc6749.errors.InvalidGrantError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.InvalidRedirectURIError:
  - InvalidRequestFatalError
  oauthlib.oauth2.rfc6749.errors.InvalidRequestError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.InvalidRequestFatalError:
  - FatalClientError
  oauthlib.oauth2.rfc6749.errors.InvalidScopeError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.InvalidTokenError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.LoginRequired:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.MismatchingRedirectURIError:
  - InvalidRequestFatalError
  oauthlib.oauth2.rfc6749.errors.MismatchingStateError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.MissingClientIdError:
  - InvalidRequestFatalError
  oauthlib.oauth2.rfc6749.errors.MissingCodeChallengeError:
  - InvalidRequestError
  oauthlib.oauth2.rfc6749.errors.MissingCodeError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.MissingCodeVerifierError:
  - InvalidRequestError
  oauthlib.oauth2.rfc6749.errors.MissingRedirectURIError:
  - InvalidRequestFatalError
  oauthlib.oauth2.rfc6749.errors.MissingResponseTypeError:
  - InvalidRequestError
  oauthlib.oauth2.rfc6749.errors.MissingTokenError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.MissingTokenTypeError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.OAuth2Error:
  - Exception
  oauthlib.oauth2.rfc6749.errors.ServerError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.TemporarilyUnavailableError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.TokenExpiredError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.UnauthorizedClientError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.UnsupportedCodeChallengeMethodError:
  - InvalidRequestError
  oauthlib.oauth2.rfc6749.errors.UnsupportedGrantTypeError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.UnsupportedResponseTypeError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.errors.UnsupportedTokenTypeError:
  - OAuth2Error
  oauthlib.oauth2.rfc6749.grant_types.authorization_code.AuthorizationCodeGrant:
  - GrantTypeBase
  oauthlib.oauth2.rfc6749.grant_types.base.GrantTypeBase: []
  oauthlib.oauth2.rfc6749.grant_types.base.ValidatorsContainer: []
  oauthlib.oauth2.rfc6749.grant_types.client_credentials.ClientCredentialsGrant:
  - GrantTypeBase
  oauthlib.oauth2.rfc6749.grant_types.implicit.ImplicitGrant:
  - GrantTypeBase
  oauthlib.oauth2.rfc6749.grant_types.refresh_token.RefreshTokenGrant:
  - GrantTypeBase
  oauthlib.oauth2.rfc6749.grant_types.resource_owner_password_credentials.ResourceOwnerPasswordCredentialsGrant:
  - GrantTypeBase
  oauthlib.oauth2.rfc6749.request_validator.RequestValidator: []
  oauthlib.oauth2.rfc6749.tokens.BearerToken:
  - TokenBase
  oauthlib.oauth2.rfc6749.tokens.OAuth2Token:
  - dict
  oauthlib.oauth2.rfc6749.tokens.TokenBase: []
  oauthlib.oauth2.rfc8628.clients.device.DeviceClient:
  - Client
  oauthlib.oauth2.rfc8628.endpoints.device_authorization.DeviceAuthorizationEndpoint:
  - BaseEndpoint
  oauthlib.oauth2.rfc8628.endpoints.pre_configured.DeviceApplicationServer:
  - DeviceAuthorizationEndpoint
  oauthlib.oauth2.rfc8628.errors.AccessDenied:
  - OAuth2Error
  oauthlib.oauth2.rfc8628.errors.AuthorizationPendingError:
  - OAuth2Error
  oauthlib.oauth2.rfc8628.errors.ExpiredTokenError:
  - OAuth2Error
  oauthlib.oauth2.rfc8628.errors.SlowDownError:
  - OAuth2Error
  oauthlib.oauth2.rfc8628.grant_types.device_code.DeviceCodeGrant:
  - GrantTypeBase
  oauthlib.oauth2.rfc8628.request_validator.RequestValidator:
  - OAuth2RequestValidator
  oauthlib.openid.connect.core.endpoints.pre_configured.Server:
  - RevocationEndpoint
  - UserInfoEndpoint
  - ResourceEndpoint
  - AuthorizationEndpoint
  - IntrospectEndpoint
  - TokenEndpoint
  oauthlib.openid.connect.core.endpoints.userinfo.UserInfoEndpoint:
  - BaseEndpoint
  oauthlib.openid.connect.core.exceptions.AccountSelectionRequired:
  - OpenIDClientError
  oauthlib.openid.connect.core.exceptions.ConsentRequired:
  - OpenIDClientError
  oauthlib.openid.connect.core.exceptions.FatalOpenIDClientError:
  - FatalClientError
  oauthlib.openid.connect.core.exceptions.InsufficientScopeError:
  - OAuth2Error
  oauthlib.openid.connect.core.exceptions.InteractionRequired:
  - OpenIDClientError
  oauthlib.openid.connect.core.exceptions.InvalidRequestObject:
  - OpenIDClientError
  oauthlib.openid.connect.core.exceptions.InvalidRequestURI:
  - OpenIDClientError
  oauthlib.openid.connect.core.exceptions.InvalidTokenError:
  - OAuth2Error
  oauthlib.openid.connect.core.exceptions.LoginRequired:
  - OpenIDClientError
  oauthlib.openid.connect.core.exceptions.OpenIDClientError:
  - OAuth2Error
  oauthlib.openid.connect.core.exceptions.RegistrationNotSupported:
  - OpenIDClientError
  oauthlib.openid.connect.core.exceptions.RequestNotSupported:
  - OpenIDClientError
  oauthlib.openid.connect.core.exceptions.RequestURINotSupported:
  - OpenIDClientError
  oauthlib.openid.connect.core.grant_types.authorization_code.AuthorizationCodeGrant:
  - GrantTypeBase
  oauthlib.openid.connect.core.grant_types.base.GrantTypeBase: []
  oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationCodeGrantDispatcher:
  - Dispatcher
  oauthlib.openid.connect.core.grant_types.dispatchers.AuthorizationTokenGrantDispatcher:
  - Dispatcher
  oauthlib.openid.connect.core.grant_types.dispatchers.Dispatcher: []
  oauthlib.openid.connect.core.grant_types.dispatchers.ImplicitTokenGrantDispatcher:
  - Dispatcher
  oauthlib.openid.connect.core.grant_types.hybrid.HybridGrant:
  - GrantTypeBase
  oauthlib.openid.connect.core.grant_types.implicit.ImplicitGrant:
  - GrantTypeBase
  oauthlib.openid.connect.core.grant_types.refresh_token.RefreshTokenGrant:
  - GrantTypeBase
  oauthlib.openid.connect.core.request_validator.RequestValidator:
  - OAuth2RequestValidator
  oauthlib.openid.connect.core.tokens.JWTToken:
  - TokenBase
  oauthlib.signals.Namespace: []
  oauthlib.signals._FakeSignal: []
ep:
  func_name: TestOneInput
  module: '...fuzz_oauth1_sig'
