All classes:
- botocore.UNSIGNED
- botocore.vendored.requests.packages.urllib3.exceptions.HTTPError
- botocore.vendored.requests.packages.urllib3.exceptions.HTTPWarning
- botocore.vendored.requests.packages.urllib3.exceptions.PoolError
- botocore.vendored.requests.packages.urllib3.exceptions.RequestError
- botocore.vendored.requests.packages.urllib3.exceptions.SSLError
- botocore.vendored.requests.packages.urllib3.exceptions.ProxyError
- botocore.vendored.requests.packages.urllib3.exceptions.DecodeError
- botocore.vendored.requests.packages.urllib3.exceptions.ProtocolError
- botocore.vendored.requests.packages.urllib3.exceptions.MaxRetryError
- botocore.vendored.requests.packages.urllib3.exceptions.HostChangedError
- botocore.vendored.requests.packages.urllib3.exceptions.TimeoutStateError
- botocore.vendored.requests.packages.urllib3.exceptions.TimeoutError
- botocore.vendored.requests.packages.urllib3.exceptions.ReadTimeoutError
- botocore.vendored.requests.packages.urllib3.exceptions.ConnectTimeoutError
- botocore.vendored.requests.packages.urllib3.exceptions.EmptyPoolError
- botocore.vendored.requests.packages.urllib3.exceptions.ClosedPoolError
- botocore.vendored.requests.packages.urllib3.exceptions.LocationValueError
- botocore.vendored.requests.packages.urllib3.exceptions.LocationParseError
- botocore.vendored.requests.packages.urllib3.exceptions.ResponseError
- botocore.vendored.requests.packages.urllib3.exceptions.SecurityWarning
- botocore.vendored.requests.packages.urllib3.exceptions.InsecureRequestWarning
- botocore.vendored.requests.packages.urllib3.exceptions.SystemTimeWarning
- botocore.vendored.requests.packages.urllib3.exceptions.InsecurePlatformWarning
- botocore.vendored.requests.packages.urllib3.exceptions.ResponseNotChunked
- botocore.vendored.requests.exceptions.RequestException
- botocore.vendored.requests.exceptions.HTTPError
- botocore.vendored.requests.exceptions.ConnectionError
- botocore.vendored.requests.exceptions.ProxyError
- botocore.vendored.requests.exceptions.SSLError
- botocore.vendored.requests.exceptions.Timeout
- botocore.vendored.requests.exceptions.ConnectTimeout
- botocore.vendored.requests.exceptions.ReadTimeout
- botocore.vendored.requests.exceptions.URLRequired
- botocore.vendored.requests.exceptions.TooManyRedirects
- botocore.vendored.requests.exceptions.MissingSchema
- botocore.vendored.requests.exceptions.InvalidSchema
- botocore.vendored.requests.exceptions.InvalidURL
- botocore.vendored.requests.exceptions.ChunkedEncodingError
- botocore.vendored.requests.exceptions.ContentDecodingError
- botocore.vendored.requests.exceptions.StreamConsumedError
- botocore.vendored.requests.exceptions.RetryError
- botocore.exceptions.BotoCoreError
- botocore.exceptions.DataNotFoundError
- botocore.exceptions.UnknownServiceError
- botocore.exceptions.UnknownRegionError
- botocore.exceptions.ApiVersionNotFoundError
- botocore.exceptions.HTTPClientError
- botocore.exceptions.ConnectionError
- botocore.exceptions.InvalidIMDSEndpointError
- botocore.exceptions.InvalidIMDSEndpointModeError
- botocore.exceptions.EndpointConnectionError
- botocore.exceptions.SSLError
- botocore.exceptions.ConnectionClosedError
- botocore.exceptions.ReadTimeoutError
- botocore.exceptions.ConnectTimeoutError
- botocore.exceptions.ProxyConnectionError
- botocore.exceptions.ResponseStreamingError
- botocore.exceptions.NoCredentialsError
- botocore.exceptions.NoAuthTokenError
- botocore.exceptions.TokenRetrievalError
- botocore.exceptions.PartialCredentialsError
- botocore.exceptions.CredentialRetrievalError
- botocore.exceptions.UnknownSignatureVersionError
- botocore.exceptions.ServiceNotInRegionError
- botocore.exceptions.BaseEndpointResolverError
- botocore.exceptions.NoRegionError
- botocore.exceptions.EndpointVariantError
- botocore.exceptions.UnknownEndpointError
- botocore.exceptions.UnknownFIPSEndpointError
- botocore.exceptions.ProfileNotFound
- botocore.exceptions.ConfigParseError
- botocore.exceptions.ConfigNotFound
- botocore.exceptions.MissingParametersError
- botocore.exceptions.ValidationError
- botocore.exceptions.ParamValidationError
- botocore.exceptions.UnknownKeyError
- botocore.exceptions.RangeError
- botocore.exceptions.UnknownParameterError
- botocore.exceptions.InvalidRegionError
- botocore.exceptions.AliasConflictParameterError
- botocore.exceptions.UnknownServiceStyle
- botocore.exceptions.PaginationError
- botocore.exceptions.OperationNotPageableError
- botocore.exceptions.ChecksumError
- botocore.exceptions.UnseekableStreamError
- botocore.exceptions.WaiterError
- botocore.exceptions.IncompleteReadError
- botocore.exceptions.InvalidExpressionError
- botocore.exceptions.UnknownCredentialError
- botocore.exceptions.WaiterConfigError
- botocore.exceptions.UnknownClientMethodError
- botocore.exceptions.UnsupportedSignatureVersionError
- botocore.exceptions.ClientError
- botocore.exceptions.EventStreamError
- botocore.exceptions.UnsupportedTLSVersionWarning
- botocore.exceptions.ImminentRemovalWarning
- botocore.exceptions.InvalidDNSNameError
- botocore.exceptions.InvalidS3AddressingStyleError
- botocore.exceptions.UnsupportedS3ArnError
- botocore.exceptions.UnsupportedS3ControlArnError
- botocore.exceptions.InvalidHostLabelError
- botocore.exceptions.UnsupportedOutpostResourceError
- botocore.exceptions.UnsupportedS3ConfigurationError
- botocore.exceptions.UnsupportedS3AccesspointConfigurationError
- botocore.exceptions.InvalidEndpointDiscoveryConfigurationError
- botocore.exceptions.UnsupportedS3ControlConfigurationError
- botocore.exceptions.InvalidRetryConfigurationError
- botocore.exceptions.InvalidMaxRetryAttemptsError
- botocore.exceptions.InvalidRetryModeError
- botocore.exceptions.InvalidS3UsEast1RegionalEndpointConfigError
- botocore.exceptions.InvalidSTSRegionalEndpointsConfigError
- botocore.exceptions.StubResponseError
- botocore.exceptions.StubAssertionError
- botocore.exceptions.UnStubbedResponseError
- botocore.exceptions.InvalidConfigError
- botocore.exceptions.InfiniteLoopConfigError
- botocore.exceptions.RefreshWithMFAUnsupportedError
- botocore.exceptions.MD5UnavailableError
- botocore.exceptions.MissingDependencyException
- botocore.exceptions.MetadataRetrievalError
- botocore.exceptions.UndefinedModelAttributeError
- botocore.exceptions.MissingServiceIdError
- botocore.exceptions.SSOError
- botocore.exceptions.SSOTokenLoadError
- botocore.exceptions.UnauthorizedSSOTokenError
- botocore.exceptions.LoginError
- botocore.exceptions.LoginRefreshRequired
- botocore.exceptions.LoginInsufficientPermissions
- botocore.exceptions.LoginTokenLoadError
- botocore.exceptions.LoginAuthorizationCodeError
- botocore.exceptions.CapacityNotAvailableError
- botocore.exceptions.InvalidProxiesConfigError
- botocore.exceptions.InvalidDefaultsMode
- botocore.exceptions.AwsChunkedWrapperError
- botocore.exceptions.FlexibleChecksumError
- botocore.exceptions.InvalidEndpointConfigurationError
- botocore.exceptions.EndpointProviderError
- botocore.exceptions.EndpointResolutionError
- botocore.exceptions.UnknownEndpointResolutionBuiltInName
- botocore.exceptions.InvalidChecksumConfigError
- botocore.exceptions.UnsupportedServiceProtocolsError
- botocore.vendored.six.X
- botocore.vendored.six._LazyDescr
- botocore.vendored.six.MovedModule
- botocore.vendored.six._LazyModule
- botocore.vendored.six.MovedAttribute
- botocore.vendored.six._SixMetaPathImporter
- botocore.vendored.six._MovedItems
- botocore.vendored.six.Module_six_moves_urllib_parse
- botocore.vendored.six.Module_six_moves_urllib_error
- botocore.vendored.six.Module_six_moves_urllib_request
- botocore.vendored.six.Module_six_moves_urllib_response
- botocore.vendored.six.Module_six_moves_urllib_robotparser
- botocore.vendored.six.Module_six_moves_urllib
- botocore.vendored.six.Iterator
- botocore.vendored.six.with_metaclass.metaclass
- botocore.compat.HTTPHeaders
- botocore.awsrequest.AWSHTTPResponse
- botocore.awsrequest.AWSConnection
- botocore.awsrequest.AWSHTTPConnection
- botocore.awsrequest.AWSHTTPSConnection
- botocore.awsrequest.AWSHTTPConnectionPool
- botocore.awsrequest.AWSHTTPSConnectionPool
- botocore.awsrequest.AWSRequestPreparer
- botocore.awsrequest.AWSRequest
- botocore.awsrequest.AWSPreparedRequest
- botocore.awsrequest.AWSResponse
- botocore.awsrequest._HeaderKey
- botocore.awsrequest.HeadersDict
- botocore.httpsession.ProxyConfiguration
- botocore.httpsession.URLLib3Session
- botocore.plugin.PluginContext
- botocore.utils._RetriesExceededError
- botocore.utils.BadIMDSRequestError
- botocore.utils.IMDSFetcher
- botocore.utils.InstanceMetadataFetcher
- botocore.utils.IMDSRegionProvider
- botocore.utils.InstanceMetadataRegionFetcher
- botocore.utils.CachedProperty
- botocore.utils.ArgumentGenerator
- botocore.utils.IdentityCache
- botocore.utils.S3ExpressIdentityCache
- botocore.utils.S3ExpressIdentityResolver
- botocore.utils.S3RegionRedirectorv2
- botocore.utils.S3RegionRedirector
- botocore.utils.InvalidArnException
- botocore.utils.ArnParser
- botocore.utils.S3ArnParamHandler
- botocore.utils.S3EndpointSetter
- botocore.utils.S3ControlEndpointSetter
- botocore.utils.S3ControlArnParamHandler
- botocore.utils.S3ControlArnParamHandlerv2
- botocore.utils.ContainerMetadataFetcher
- botocore.utils.FileWebIdentityTokenLoader
- botocore.utils.SSOTokenLoader
- botocore.utils.EventbridgeSignerSetter
- botocore.utils.JSONFileCache
- botocore.utils.LoginTokenLoader
- botocore.validate.ValidationErrors
- botocore.validate.ParamValidator
- botocore.validate.ParamValidationDecorator
- botocore.context.ClientContext
- botocore.useragent.UserAgentComponentSizeConfig
- botocore.useragent.UserAgentComponent
- botocore.useragent.RawStringUserAgentComponent
- botocore.useragent.UserAgentString
- botocore.serialize.Serializer
- botocore.serialize.QuerySerializer
- botocore.serialize.EC2Serializer
- botocore.serialize.JSONSerializer
- botocore.serialize.CBORSerializer
- botocore.serialize.BaseRestSerializer
- botocore.serialize.BaseRpcV2Serializer
- botocore.serialize.RestJSONSerializer
- botocore.serialize.RestXMLSerializer
- botocore.serialize.RpcV2CBORSerializer
- botocore.auth.BaseSigner
- botocore.auth.TokenSigner
- botocore.auth.SigV2Auth
- botocore.auth.SigV3Auth
- botocore.auth.SigV4Auth
- botocore.auth.S3SigV4Auth
- botocore.auth.S3ExpressAuth
- botocore.auth.S3ExpressPostAuth
- botocore.auth.S3ExpressQueryAuth
- botocore.auth.SigV4QueryAuth
- botocore.auth.S3SigV4QueryAuth
- botocore.auth.S3SigV4PostAuth
- botocore.auth.HmacV1Auth
- botocore.auth.HmacV1QueryAuth
- botocore.auth.HmacV1PostAuth
- botocore.auth.BearerAuth
- botocore.crt.auth.CrtSigV4Auth
- botocore.crt.auth.CrtS3SigV4Auth
- botocore.crt.auth.CrtSigV4AsymAuth
- botocore.crt.auth.CrtS3SigV4AsymAuth
- botocore.crt.auth.CrtSigV4AsymQueryAuth
- botocore.crt.auth.CrtS3SigV4AsymQueryAuth
- botocore.crt.auth.CrtSigV4QueryAuth
- botocore.crt.auth.CrtS3SigV4QueryAuth
- botocore.model.NoShapeFoundError
- botocore.model.InvalidShapeError
- botocore.model.OperationNotFoundError
- botocore.model.InvalidShapeReferenceError
- botocore.model.ServiceId
- botocore.model.Shape
- botocore.model.StructureShape
- botocore.model.ListShape
- botocore.model.MapShape
- botocore.model.StringShape
- botocore.model.StaticContextParameter
- botocore.model.ContextParameter
- botocore.model.ClientContextParameter
- botocore.model.ServiceModel
- botocore.model.OperationModel
- botocore.model.ShapeResolver
- botocore.model.UnresolvableShapeMap
- botocore.model.DenormalizedStructureBuilder
- botocore.model.ShapeNameGenerator
- botocore.stub._ANY
- botocore.stub.Stubber
- botocore.errorfactory.BaseClientExceptions
- botocore.errorfactory.ClientExceptionsFactory
- botocore.eventstream.ParserError
- botocore.eventstream.DuplicateHeader
- botocore.eventstream.InvalidHeadersLength
- botocore.eventstream.InvalidPayloadLength
- botocore.eventstream.ChecksumMismatch
- botocore.eventstream.NoInitialResponseError
- botocore.eventstream.DecodeUtils
- botocore.eventstream.MessagePrelude
- botocore.eventstream.EventStreamMessage
- botocore.eventstream.EventStreamHeaderParser
- botocore.eventstream.EventStreamBuffer
- botocore.eventstream.EventStream
- botocore.parsers.ResponseParserFactory
- botocore.parsers.ResponseParserError
- botocore.parsers.ResponseParser
- botocore.parsers.BaseXMLResponseParser
- botocore.parsers.QueryParser
- botocore.parsers.EC2QueryParser
- botocore.parsers.BaseJSONParser
- botocore.parsers.BaseCBORParser
- botocore.parsers.BaseEventStreamParser
- botocore.parsers.EventStreamJSONParser
- botocore.parsers.EventStreamXMLParser
- botocore.parsers.EventStreamCBORParser
- botocore.parsers.JSONParser
- botocore.parsers.BaseRestParser
- botocore.parsers.BaseRpcV2Parser
- botocore.parsers.RestJSONParser
- botocore.parsers.RpcV2CBORParser
- botocore.parsers.RestXMLParser
- botocore.hooks.NodeList
- botocore.hooks.BaseEventHooks
- botocore.hooks.HierarchicalEmitter
- botocore.hooks.EventAliaser
- botocore.hooks._PrefixTrie
- botocore.response.StreamingBody
- botocore.httpchecksum.BaseChecksum
- botocore.httpchecksum.Crc32Checksum
- botocore.httpchecksum.CrtCrc32Checksum
- botocore.httpchecksum.CrtCrc32cChecksum
- botocore.httpchecksum.CrtCrc64NvmeChecksum
- botocore.httpchecksum.Sha1Checksum
- botocore.httpchecksum.Sha256Checksum
- botocore.httpchecksum.AwsChunkedWrapper
- botocore.httpchecksum.StreamingChecksumBody
- botocore.history.BaseHistoryHandler
- botocore.history.HistoryRecorder
- botocore.endpoint.Endpoint
- botocore.endpoint.EndpointCreator
- botocore.config.Config
- botocore.tokens.FrozenAuthToken
- botocore.tokens.DeferredRefreshableToken
- botocore.tokens.TokenProviderChain
- botocore.tokens.SSOTokenProvider
- botocore.tokens.ScopedEnvTokenProvider
- botocore.credentials.ProfileProviderBuilder
- botocore.credentials.create_mfa_serial_refresher._Refresher
- botocore.credentials.Credentials
- botocore.credentials.RefreshableCredentials
- botocore.credentials.DeferredRefreshableCredentials
- botocore.credentials.CachedCredentialFetcher
- botocore.credentials.BaseAssumeRoleCredentialFetcher
- botocore.credentials.AssumeRoleCredentialFetcher
- botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher
- botocore.credentials.CredentialProvider
- botocore.credentials.ProcessProvider
- botocore.credentials.InstanceMetadataProvider
- botocore.credentials.EnvProvider
- botocore.credentials.OriginalEC2Provider
- botocore.credentials.SharedCredentialProvider
- botocore.credentials.ConfigProvider
- botocore.credentials.BotoProvider
- botocore.credentials.AssumeRoleProvider
- botocore.credentials.AssumeRoleWithWebIdentityProvider
- botocore.credentials.CanonicalNameCredentialSourcer
- botocore.credentials.ContainerProvider
- botocore.credentials.CredentialResolver
- botocore.credentials.SSOCredentialFetcher
- botocore.credentials.SSOProvider
- botocore.credentials.LoginCredentialFetcher
- botocore.credentials.LoginProvider
- botocore.paginate.TokenEncoder
- botocore.paginate.TokenDecoder
- botocore.paginate.PaginatorModel
- botocore.paginate.PageIterator
- botocore.paginate.Paginator
- botocore.paginate.ResultKeyIterator
- botocore.endpoint_provider.RuleSetStandardLibrary
- botocore.endpoint_provider.BaseRule
- botocore.endpoint_provider.RuleSetEndpoint
- botocore.endpoint_provider.EndpointRule
- botocore.endpoint_provider.ErrorRule
- botocore.endpoint_provider.TreeRule
- botocore.endpoint_provider.RuleCreator
- botocore.endpoint_provider.ParameterType
- botocore.endpoint_provider.ParameterDefinition
- botocore.endpoint_provider.RuleSet
- botocore.endpoint_provider.EndpointProvider
- botocore.regions.BaseEndpointResolver
- botocore.regions.EndpointResolver
- botocore.regions.EndpointResolverBuiltins
- botocore.regions.EndpointRulesetResolver
- botocore.signers.RequestSigner
- botocore.signers.CloudFrontSigner
- botocore.signers.S3PostPresigner
- botocore.args.ClientArgsCreator
- botocore.args.ConfigObjectWrapper
- botocore.args.ClientConfigString
- botocore.docs.bcdoc.docstringparser.DocStringParser
- botocore.docs.bcdoc.docstringparser.HTMLTree
- botocore.docs.bcdoc.docstringparser.Node
- botocore.docs.bcdoc.docstringparser.StemNode
- botocore.docs.bcdoc.docstringparser.TagNode
- botocore.docs.bcdoc.docstringparser.DataNode
- botocore.docs.bcdoc.style.BaseStyle
- botocore.docs.bcdoc.style.ReSTStyle
- botocore.docs.bcdoc.restdoc.ReSTDocument
- botocore.docs.bcdoc.restdoc.DocumentStructure
- botocore.docs.shape.ShapeDocumenter
- botocore.docs.utils.DocumentedShape
- botocore.docs.utils.AutoPopulatedParam
- botocore.docs.utils.HideParamFromOperations
- botocore.docs.utils.AppendParamDocumentation
- botocore.docs.example.BaseExampleDocumenter
- botocore.docs.example.ResponseExampleDocumenter
- botocore.docs.example.RequestExampleDocumenter
- botocore.docs.params.BaseParamsDocumenter
- botocore.docs.params.ResponseParamsDocumenter
- botocore.docs.params.RequestParamsDocumenter
- botocore.docs.paginator.PaginatorDocumenter
- botocore.docs.waiter.WaiterDocumenter
- botocore.docs.docstring.LazyLoadedDocstring
- botocore.docs.docstring.ClientMethodDocstring
- botocore.docs.docstring.WaiterDocstring
- botocore.docs.docstring.PaginatorDocstring
- botocore.docs.sharedexample.SharedExampleDocumenter
- botocore.docs.client.ClientDocumenter
- botocore.docs.client.ClientExceptionsDocumenter
- botocore.docs.client.ClientContextParamsDocumenter
- botocore.docs.service.ServiceDocumenter
- botocore.waiter.NormalizedOperationMethod
- botocore.waiter.WaiterModel
- botocore.waiter.SingleWaiterConfig
- botocore.waiter.AcceptorConfig
- botocore.waiter.Waiter
- botocore.discovery.EndpointDiscoveryException
- botocore.discovery.EndpointDiscoveryRequired
- botocore.discovery.EndpointDiscoveryRefreshFailed
- botocore.discovery.EndpointDiscoveryModel
- botocore.discovery.EndpointDiscoveryManager
- botocore.discovery.EndpointDiscoveryHandler
- botocore.retryhandler.RetryHandler
- botocore.retryhandler.BaseChecker
- botocore.retryhandler.MaxAttemptsDecorator
- botocore.retryhandler.HTTPStatusCodeChecker
- botocore.retryhandler.ServiceErrorCodeChecker
- botocore.retryhandler.MultiChecker
- botocore.retryhandler.CRC32Checker
- botocore.retryhandler.ExceptionRaiser
- botocore.retries.bucket.Clock
- botocore.retries.bucket.TokenBucket
- botocore.retries.quota.RetryQuota
- botocore.retries.base.BaseRetryBackoff
- botocore.retries.base.BaseRetryableChecker
- botocore.retries.special.RetryIDPCommunicationError
- botocore.retries.special.RetryDDBChecksumError
- botocore.retries.standard.RetryHandler
- botocore.retries.standard.RetryEventAdapter
- botocore.retries.standard.RetryContext
- botocore.retries.standard.RetryPolicy
- botocore.retries.standard.ExponentialBackoff
- botocore.retries.standard.MaxAttemptsChecker
- botocore.retries.standard.TransientRetryableChecker
- botocore.retries.standard.ThrottledRetryableChecker
- botocore.retries.standard.ModeledRetryableChecker
- botocore.retries.standard.ModeledRetryErrorDetector
- botocore.retries.standard.ThrottlingErrorDetector
- botocore.retries.standard.StandardRetryConditions
- botocore.retries.standard.OrRetryChecker
- botocore.retries.standard.RetryQuotaChecker
- botocore.retries.throttling.CubicCalculator
- botocore.retries.adaptive.ClientRateLimiter
- botocore.retries.adaptive.RateClocker
- botocore.client.ClientCreator
- botocore.client.ClientEndpointBridge
- botocore.client.BaseClient
- botocore.client.ClientMeta
- botocore.handlers.DeprecatedServiceDocumenter
- botocore.handlers.ParameterAlias
- botocore.handlers.ClientMethodAlias
- botocore.handlers.HeaderToHostHoister
- botocore.monitoring.Monitor
- botocore.monitoring.MonitorEventAdapter
- botocore.monitoring.BaseMonitorEvent
- botocore.monitoring.APICallEvent
- botocore.monitoring.APICallAttemptEvent
- botocore.monitoring.CSMSerializer
- botocore.monitoring.SocketPublisher
- botocore.configprovider.DefaultConfigResolver
- botocore.configprovider.ConfigChainFactory
- botocore.configprovider.ConfigValueStore
- botocore.configprovider.SmartDefaultsConfigStoreFactory
- botocore.configprovider.BaseProvider
- botocore.configprovider.ChainProvider
- botocore.configprovider.InstanceVarProvider
- botocore.configprovider.ScopedConfigProvider
- botocore.configprovider.EnvironmentProvider
- botocore.configprovider.SectionConfigProvider
- botocore.configprovider.ConstantProvider
- botocore.configprovider.ConfiguredEndpointProvider
- botocore.loaders.JSONFileLoader
- botocore.loaders.Loader
- botocore.loaders.ExtrasProcessor
- botocore.session.Session
- botocore.session.ComponentLocator
- botocore.session.SessionVarDict
- botocore.session.SubsetChainConfigFactory
- botocore.docs.translator.BotoHTML5Translator
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_serialization'
    functionSourceFile: '...fuzz_serialization'
    functionUses: 0
    functionsReached:
    - atheris.Setup
    - '...fuzz_serialization.main'
    - atheris.Fuzz
    - atheris.instrument_all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 25
    functionName: '...fuzz_serialization.TestOneInput'
    functionSourceFile: '...fuzz_serialization'
    functionUses: 0
    functionsReached:
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - <builtin>.hasattr
    - botocore.validate.ParamValidator._check_special_validation_cases
    - botocore.validate.ParamValidationDecorator.__init__
    - io.BytesIO
    - botocore.model.ServiceModel.operation_model
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.validate.ParamValidationDecorator.serialize_to_request
    - shape.serialization.get
    - fdp.ConsumeIntInRange
    - botocore.model.OperationModel.__init__
    - botocore.validate.ParamValidator._validate
    - operation_model.get
    - <builtin>.isinstance
    - botocore.validate.ParamValidator._validate_document
    - <builtin>.getattr
    - botocore.validate.ValidationErrors.has_errors
    - botocore.utils.is_json_value_header
    - botocore.model.ShapeResolver.__init__
    - service_description.get
    - botocore.serialize.create_serializer
    - atheris.FuzzedDataProvider
    - <builtin>.type
    - botocore.validate.ValidationErrors.__init__
    - json.dumps
    - botocore.validate.ValidationErrors.report
    - botocore.model.ServiceModel.__init__
    - <builtin>.len
    - botocore.validate.ParamValidator.validate
    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: <builtin>.len
    functionSourceFile: <builtin>
    functionUses: 345
    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.ConsumeIntInRange
    functionSourceFile: <builtin>
    functionUses: 1
    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 0x7f9830ceffd0>
    argNames:
    - self
    - service_description
    - service_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 308
    functionName: botocore.model.ServiceModel.__init__
    functionSourceFile: botocore.model
    functionUses: 5
    functionsReached:
    - service_description.get
    - botocore.model.ShapeResolver.__init__
    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 0x7f9830c52eb0>
    - <ast.Name object at 0x7f9830c52f10>
    argNames:
    - protocol_name
    - include_validation
    - timestamp_precision
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 77
    functionName: botocore.serialize.create_serializer
    functionSourceFile: botocore.serialize
    functionUses: 4
    functionsReached:
    - botocore.validate.ParamValidationDecorator.__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: io.BytesIO
    functionSourceFile: io
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - operation_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 372
    functionName: botocore.model.ServiceModel.operation_model
    functionSourceFile: botocore.model
    functionUses: 9
    functionsReached:
    - operation_model.get
    - botocore.model.OperationModel.__init__
    linkageType: pythonLinkage
    raised:
    - OperationNotFoundError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parameters
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 417
    functionName: botocore.validate.ParamValidationDecorator.serialize_to_request
    functionSourceFile: botocore.validate
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - botocore.validate.ValidationErrors.__init__
    - botocore.validate.ValidationErrors.has_errors
    - botocore.validate.ParamValidator._validate
    - json.dumps
    - botocore.validate.ParamValidator._check_special_validation_cases
    - <builtin>.hasattr
    - <builtin>.str
    - <builtin>.isinstance
    - botocore.validate.ValidationErrors.report
    - botocore.validate.ParamValidator._validate_document
    - <builtin>.type
    - botocore.utils.is_json_value_header
    - <builtin>.enumerate
    - botocore.validate.ParamValidator.validate
    - botocore.validate.ParamValidationDecorator.serialize_to_request
    - shape.serialization.get
    linkageType: pythonLinkage
    raised:
    - ParamValidationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 73
    functionName: '...fuzz_serialization.main'
    functionSourceFile: '...fuzz_serialization'
    functionUses: 1
    functionsReached:
    - atheris.Setup
    - atheris.Fuzz
    - atheris.instrument_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: 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: botocore.serialize
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - re.compile
    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: 70
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - param_validator
    - serializer
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 413
    functionName: botocore.validate.ParamValidationDecorator.__init__
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Name object at 0x7f9830dfbb80>
    argNames:
    - self
    - timestamp_precision
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 112
    functionName: botocore.serialize.Serializer.__init__
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parameters
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 119
    functionName: botocore.serialize.Serializer.serialize_to_request
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    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: 157
    functionName: botocore.serialize.Serializer._create_default_request
    functionSourceFile: botocore.serialize
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 172
    functionName: botocore.serialize.Serializer._timestamp_iso8601
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - value.strftime
    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.strftime
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 188
    functionName: botocore.serialize.Serializer._timestamp_unixtimestamp
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - value.timetuple
    - calendar.timegm
    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.timetuple
    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: calendar.timegm
    functionSourceFile: calendar
    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>.int
    functionSourceFile: <builtin>
    functionUses: 59
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 198
    functionName: botocore.serialize.Serializer._timestamp_rfc822
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - email.utils.formatdate
    - <builtin>.isinstance
    - <builtin>.int
    - calendar.timegm
    - value.timetuple
    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: 432
    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: email.utils.formatdate
    functionSourceFile: email
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f98309b2550>
    argNames:
    - self
    - value
    - timestamp_format
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 205
    functionName: botocore.serialize.Serializer._convert_timestamp_to_str
    functionSourceFile: botocore.serialize
    functionUses: 8
    functionsReached:
    - <builtin>.getattr
    - <builtin>.float
    - timestamp_format.lower
    - datetime_obj.replace
    - logger.debug
    - dateutil.tz.tzutc
    - epoch_zero.astimezone
    - botocore.utils.parse_timestamp
    - datetime.datetime.fromtimestamp
    - botocore.utils._epoch_seconds_to_datetime
    - dateutil.parser.parse
    - botocore.compat.get_tzinfo_options
    - <builtin>.isinstance
    - botocore.utils._parse_timestamp_with_tzinfo
    - botocore.utils.parse_to_aware_datetime
    - datetime_obj.astimezone
    - datetime.datetime
    - datetime.timedelta
    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: timestamp_format.lower
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1026
    functionName: botocore.utils.parse_to_aware_datetime
    functionSourceFile: botocore.utils
    functionUses: 11
    functionsReached:
    - <builtin>.float
    - datetime_obj.replace
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - datetime.datetime.fromtimestamp
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.utils._epoch_seconds_to_datetime
    - <builtin>.isinstance
    - botocore.utils._parse_timestamp_with_tzinfo
    - datetime.datetime
    - datetime_obj.astimezone
    - botocore.compat.get_tzinfo_options
    - datetime.timedelta
    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: 263
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - default_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 214
    functionName: botocore.serialize.Serializer._get_serialized_name
    functionSourceFile: botocore.serialize
    functionUses: 4
    functionsReached:
    - shape.serialization.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: shape.serialization.get
    functionSourceFile: <builtin>
    functionUses: 73
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 219
    functionName: botocore.serialize.Serializer._get_base64
    functionSourceFile: botocore.serialize
    functionUses: 6
    functionsReached:
    - base64.b64encode
    - <builtin>.isinstance
    - value.encode
    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: 50
    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: 72
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parameters
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 227
    functionName: botocore.serialize.Serializer._expand_host_prefix
    functionSourceFile: botocore.serialize
    functionUses: 4
    functionsReached:
    - HOST_PREFIX_RE.match
    - shape.serialization.get
    - host_prefix_expression.format
    - input_members.items
    - bad_labels.append
    linkageType: pythonLinkage
    raised:
    - ParamValidationError
    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: input_members.items
    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: HOST_PREFIX_RE.match
    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: bad_labels.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: host_prefix_expression.format
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 261
    functionName: botocore.serialize.Serializer._is_shape_flattened
    functionSourceFile: botocore.serialize
    functionUses: 3
    functionsReached:
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 264
    functionName: botocore.serialize.Serializer._handle_float
    functionSourceFile: botocore.serialize
    functionUses: 10
    functionsReached:
    - <builtin>.float
    - math.isnan
    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: 58
    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: math.isnan
    functionSourceFile: math
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - operation_model
    - serialized
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 273
    functionName: botocore.serialize.Serializer._handle_query_compatible_trait
    functionSourceFile: botocore.serialize
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parameters
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 281
    functionName: botocore.serialize.QuerySerializer.serialize_to_request
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.serialize.QuerySerializer._serialize
    - HOST_PREFIX_RE.match
    - botocore.serialize.Serializer._create_default_request
    - shape.serialization.get
    - botocore.serialize.Serializer._expand_host_prefix
    - operation_model.http.get
    - host_prefix_expression.format
    - input_members.items
    - bad_labels.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: operation_model.http.get
    functionSourceFile: <builtin>
    functionUses: 3
    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 0x7f9830858c70>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 305
    functionName: botocore.serialize.QuerySerializer._serialize
    functionSourceFile: botocore.serialize
    functionUses: 5
    functionsReached:
    - <builtin>.getattr
    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 0x7f9830858a90>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 320
    functionName: botocore.serialize.QuerySerializer._serialize_type_structure
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.serialize.QuerySerializer._serialize
    - botocore.serialize.Serializer._get_serialized_name
    - value.items
    - shape.serialization.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: value.items
    functionSourceFile: <builtin>
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830da9d60>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 329
    functionName: botocore.serialize.QuerySerializer._serialize_type_list
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.serialize.QuerySerializer._serialize
    - shape.member.serialization.get
    - prefix.split
    - botocore.serialize.Serializer._get_serialized_name
    - botocore.serialize.Serializer._is_shape_flattened
    - <builtin>.enumerate
    - shape.serialization.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: shape.member.serialization.get
    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: prefix.split
    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>.enumerate
    functionSourceFile: <builtin>
    functionUses: 70
    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 0x7f9830d92d00>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 348
    functionName: botocore.serialize.QuerySerializer._serialize_type_map
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.serialize.QuerySerializer._serialize
    - template.format
    - botocore.serialize.Serializer._get_serialized_name
    - botocore.serialize.Serializer._is_shape_flattened
    - <builtin>.enumerate
    - shape.serialization.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: template.format
    functionSourceFile: <builtin>
    functionUses: 5
    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 0x7f98309a7520>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 364
    functionName: botocore.serialize.QuerySerializer._serialize_type_blob
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - value.encode
    - botocore.serialize.Serializer._get_base64
    - <builtin>.isinstance
    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 0x7f98309a77c0>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 368
    functionName: botocore.serialize.QuerySerializer._serialize_type_timestamp
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - shape.serialization.get
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - <builtin>.isinstance
    - botocore.utils._parse_timestamp_with_tzinfo
    - botocore.utils.parse_to_aware_datetime
    - <builtin>.getattr
    - <builtin>.float
    - datetime_obj.replace
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - datetime_obj.astimezone
    - timestamp_format.lower
    - datetime.datetime.fromtimestamp
    - botocore.serialize.Serializer._convert_timestamp_to_str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f98309a7880>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 373
    functionName: botocore.serialize.QuerySerializer._serialize_type_boolean
    functionSourceFile: botocore.serialize
    functionUses: 0
    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 0x7f98309a7820>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 379
    functionName: botocore.serialize.QuerySerializer._default_serialize
    functionSourceFile: botocore.serialize
    functionUses: 0
    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 0x7f9830c86160>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 382
    functionName: botocore.serialize.QuerySerializer._serialize_type_float
    functionSourceFile: botocore.serialize
    functionUses: 1
    functionsReached:
    - botocore.serialize.Serializer._handle_float
    - <builtin>.float
    - math.isnan
    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 0x7f9830c869d0>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 385
    functionName: botocore.serialize.QuerySerializer._serialize_type_double
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - botocore.serialize.Serializer._handle_float
    - <builtin>.float
    - math.isnan
    - botocore.serialize.QuerySerializer._serialize_type_float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - default_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 399
    functionName: botocore.serialize.EC2Serializer._get_serialized_name
    functionSourceFile: botocore.serialize
    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 0x7f9830f2da90>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 412
    functionName: botocore.serialize.EC2Serializer._serialize_type_list
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - <builtin>.enumerate
    - botocore.serialize.QuerySerializer._serialize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parameters
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 422
    functionName: botocore.serialize.JSONSerializer.serialize_to_request
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.serialize.JSONSerializer._serialize
    - json.dumps
    - HOST_PREFIX_RE.match
    - bad_labels.append
    - botocore.serialize.Serializer._create_default_request
    - botocore.serialize.Serializer._expand_host_prefix
    - botocore.serialize.Serializer._handle_query_compatible_trait
    - operation_model.http.get
    - host_prefix_expression.format
    - input_members.items
    - shape.serialization.get
    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 0x7f983081c970>
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 450
    functionName: botocore.serialize.JSONSerializer._serialize
    functionSourceFile: botocore.serialize
    functionUses: 5
    functionsReached:
    - <builtin>.getattr
    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: 37
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 458
    functionName: botocore.serialize.JSONSerializer._serialize_type_structure
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - value.items
    - botocore.serialize.JSONSerializer._serialize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 480
    functionName: botocore.serialize.JSONSerializer._serialize_type_map
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - value.items
    - botocore.serialize.JSONSerializer._serialize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 486
    functionName: botocore.serialize.JSONSerializer._serialize_type_list
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - list_obj.append
    - botocore.serialize.JSONSerializer._serialize
    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: list_obj.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: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 498
    functionName: botocore.serialize.JSONSerializer._default_serialize
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 501
    functionName: botocore.serialize.JSONSerializer._serialize_type_timestamp
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - shape.serialization.get
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - <builtin>.isinstance
    - botocore.utils._parse_timestamp_with_tzinfo
    - botocore.utils.parse_to_aware_datetime
    - <builtin>.getattr
    - <builtin>.float
    - datetime_obj.replace
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - datetime_obj.astimezone
    - timestamp_format.lower
    - datetime.datetime.fromtimestamp
    - botocore.serialize.Serializer._convert_timestamp_to_str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 506
    functionName: botocore.serialize.JSONSerializer._serialize_type_blob
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - value.encode
    - botocore.serialize.Serializer._get_base64
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830ee9610>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 509
    functionName: botocore.serialize.JSONSerializer._serialize_type_float
    functionSourceFile: botocore.serialize
    functionUses: 1
    functionsReached:
    - botocore.serialize.Serializer._handle_float
    - <builtin>.float
    - <builtin>.isinstance
    - math.isnan
    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 0x7f9830818b50>
    argNames:
    - self
    - serialized
    - value
    - shape
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 514
    functionName: botocore.serialize.JSONSerializer._serialize_type_double
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.float
    - botocore.serialize.JSONSerializer._serialize_type_float
    - botocore.serialize.Serializer._handle_float
    - <builtin>.isinstance
    - math.isnan
    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 0x7f9830b4b130>
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 528
    functionName: botocore.serialize.CBORSerializer._serialize_data_item
    functionSourceFile: botocore.serialize
    functionUses: 4
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 537
    functionName: botocore.serialize.CBORSerializer._serialize_type_integer
    functionSourceFile: botocore.serialize
    functionUses: 1
    functionsReached:
    - botocore.serialize.CBORSerializer._get_initial_byte
    - serialized.extend
    - botocore.serialize.CBORSerializer._get_additional_info_and_num_bytes
    - value.to_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 710
    functionName: botocore.serialize.CBORSerializer._get_additional_info_and_num_bytes
    functionSourceFile: ''
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - major_type
    - additional_info
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 732
    functionName: botocore.serialize.CBORSerializer._get_initial_byte
    functionSourceFile: ''
    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: serialized.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: value.to_bytes
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 555
    functionName: botocore.serialize.CBORSerializer._serialize_type_long
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - serialized.extend
    - botocore.serialize.CBORSerializer._serialize_type_integer
    - botocore.serialize.CBORSerializer._get_additional_info_and_num_bytes
    - botocore.serialize.CBORSerializer._get_initial_byte
    - value.to_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 558
    functionName: botocore.serialize.CBORSerializer._serialize_type_blob
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - serialized.extend
    - botocore.serialize.CBORSerializer._get_initial_byte
    - value.read
    - <builtin>.isinstance
    - botocore.serialize.CBORSerializer._get_additional_info_and_num_bytes
    - value.encode
    - <builtin>.len
    - length.to_bytes
    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.read
    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: length.to_bytes
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 578
    functionName: botocore.serialize.CBORSerializer._serialize_type_string
    functionSourceFile: botocore.serialize
    functionUses: 1
    functionsReached:
    - serialized.extend
    - length.to_bytes
    - botocore.serialize.CBORSerializer._get_additional_info_and_num_bytes
    - value.encode
    - <builtin>.len
    - botocore.serialize.CBORSerializer._get_initial_byte
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 594
    functionName: botocore.serialize.CBORSerializer._serialize_type_list
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - serialized.extend
    - botocore.serialize.CBORSerializer._serialize_data_item
    - length.to_bytes
    - botocore.serialize.CBORSerializer._get_additional_info_and_num_bytes
    - <builtin>.len
    - botocore.serialize.CBORSerializer._get_initial_byte
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 609
    functionName: botocore.serialize.CBORSerializer._serialize_type_map
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - serialized.extend
    - botocore.serialize.CBORSerializer._serialize_data_item
    - botocore.serialize.CBORSerializer._get_initial_byte
    - botocore.serialize.CBORSerializer._get_additional_info_and_num_bytes
    - value.items
    - <builtin>.len
    - length.to_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 625
    functionName: botocore.serialize.CBORSerializer._serialize_type_structure
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.serialize.CBORSerializer._serialize_data_item
    - serialized.extend
    - botocore.serialize.CBORSerializer._get_initial_byte
    - map_length.to_bytes
    - botocore.serialize.CBORSerializer._get_additional_info_and_num_bytes
    - botocore.serialize.CBORSerializer._serialize_type_string
    - value.encode
    - value.items
    - <builtin>.len
    - length.to_bytes
    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: map_length.to_bytes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 658
    functionName: botocore.serialize.CBORSerializer._serialize_type_timestamp
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - <builtin>.isinstance
    - botocore.utils._parse_timestamp_with_tzinfo
    - botocore.utils.parse_to_aware_datetime
    - botocore.serialize.CBORSerializer._get_initial_byte
    - <builtin>.getattr
    - <builtin>.float
    - serialized.extend
    - datetime_obj.replace
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - timestamp.to_bytes
    - datetime_obj.astimezone
    - timestamp_format.lower
    - datetime.datetime.fromtimestamp
    - botocore.serialize.Serializer._convert_timestamp_to_str
    - botocore.serialize.CBORSerializer._get_additional_info_and_num_bytes
    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: timestamp.to_bytes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 680
    functionName: botocore.serialize.CBORSerializer._serialize_type_float
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - botocore.serialize.CBORSerializer._get_bytes_for_special_numbers
    - <builtin>.float
    - serialized.extend
    - <builtin>.any
    - struct.pack
    - botocore.serialize.CBORSerializer._is_special_number
    - botocore.serialize.CBORSerializer._get_initial_byte
    - math.isnan
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 738
    functionName: botocore.serialize.CBORSerializer._is_special_number
    functionSourceFile: botocore.serialize
    functionUses: 2
    functionsReached:
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 747
    functionName: botocore.serialize.CBORSerializer._get_bytes_for_special_numbers
    functionSourceFile: botocore.serialize
    functionUses: 2
    functionsReached:
    - <builtin>.float
    - botocore.serialize.CBORSerializer._get_initial_byte
    - math.isnan
    - struct.pack
    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: struct.pack
    functionSourceFile: struct
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 691
    functionName: botocore.serialize.CBORSerializer._serialize_type_double
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - botocore.serialize.CBORSerializer._get_bytes_for_special_numbers
    - <builtin>.float
    - serialized.extend
    - <builtin>.any
    - struct.pack
    - botocore.serialize.CBORSerializer._is_special_number
    - botocore.serialize.CBORSerializer._get_initial_byte
    - math.isnan
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - value
    - shape
    - key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 702
    functionName: botocore.serialize.CBORSerializer._serialize_type_boolean
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - botocore.serialize.CBORSerializer._get_initial_byte
    - serialized.extend
    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>.any
    functionSourceFile: <builtin>
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parameters
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 778
    functionName: botocore.serialize.BaseRestSerializer.serialize_to_request
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - user_input.items
    - botocore.serialize.BaseRestSerializer._serialize_empty_body
    - botocore.serialize.BaseRestSerializer._convert_header_value
    - <builtin>.hasattr
    - body.encode
    - uri_template.format
    - re.findall
    - botocore.serialize.Serializer._create_default_request
    - botocore.serialize.BaseRestSerializer._serialize_body_params
    - datetime.datetime
    - math.isnan
    - <builtin>.str
    - botocore.compat.get_tzinfo_options
    - shape.serialization.get
    - urllib.parse.quote
    - datetime.timedelta
    - botocore.serialize.BaseRestSerializer._partition_parameters
    - logger.debug
    - epoch_zero.astimezone
    - botocore.serialize.BaseRestSerializer._escape_header_list_string
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.serialize.BaseRestSerializer._has_streaming_payload
    - botocore.serialize.Serializer._expand_host_prefix
    - botocore.serialize.BaseRestSerializer._render_uri_template
    - <builtin>.isinstance
    - botocore.serialize.BaseRestSerializer._do_serialize_header_map
    - host_prefix_expression.format
    - botocore.utils._parse_timestamp_with_tzinfo
    - botocore.utils.parse_to_aware_datetime
    - template_param.endswith
    - botocore.serialize.BaseRestSerializer._encode_payload
    - calendar.timegm
    - <builtin>.getattr
    - <builtin>.float
    - datetime_obj.replace
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.utils.is_json_value_header
    - botocore.serialize.BaseRestSerializer._get_uri_and_query_string_value
    - operation_model.http.get
    - botocore.serialize.Serializer._get_base64
    - datetime_obj.astimezone
    - bad_labels.append
    - botocore.utils.percent_encode
    - timestamp_format.lower
    - datetime.datetime.fromtimestamp
    - botocore.serialize.Serializer._convert_timestamp_to_str
    - parameters.items
    - json.dumps
    - botocore.serialize.Serializer._handle_float
    - botocore.serialize.BaseRestSerializer._serialize_content_type
    - HOST_PREFIX_RE.match
    - urllib.parse.quote.encode
    - value.encode
    - member.serialization.get
    - datetime_obj.utctimetuple
    - value.replace
    - input_members.items
    - parameters.get
    - botocore.serialize.BaseRestSerializer._requires_empty_body
    - botocore.serialize.BaseRestSerializer._serialize_payload
    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.items
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 2
    IfCount: 7
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - partitioned
    - param_name
    - param_value
    - shape_members
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 919
    functionName: botocore.serialize.BaseRestSerializer._partition_parameters
    functionSourceFile: botocore.serialize
    functionUses: 1
    functionsReached:
    - base64.b64encode
    - user_input.items
    - botocore.serialize.BaseRestSerializer._convert_header_value
    - <builtin>.hasattr
    - datetime.datetime
    - math.isnan
    - <builtin>.str
    - botocore.compat.get_tzinfo_options
    - shape.serialization.get
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - botocore.serialize.BaseRestSerializer._escape_header_list_string
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - <builtin>.isinstance
    - botocore.serialize.BaseRestSerializer._do_serialize_header_map
    - value.replace
    - botocore.utils.parse_to_aware_datetime
    - botocore.utils._parse_timestamp_with_tzinfo
    - <builtin>.getattr
    - <builtin>.float
    - datetime_obj.replace
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.serialize.BaseRestSerializer._get_uri_and_query_string_value
    - botocore.serialize.Serializer._get_base64
    - datetime_obj.astimezone
    - timestamp_format.lower
    - datetime.datetime.fromtimestamp
    - botocore.serialize.Serializer._convert_timestamp_to_str
    - json.dumps
    - botocore.serialize.Serializer._handle_float
    - value.encode
    - member.serialization.get
    - datetime_obj.utctimetuple
    - calendar.timegm
    - botocore.utils.is_json_value_header
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - uri_template
    - params
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 838
    functionName: botocore.serialize.BaseRestSerializer._render_uri_template
    functionSourceFile: botocore.serialize
    functionUses: 1
    functionsReached:
    - botocore.utils.percent_encode
    - re.findall
    - uri_template.format
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - urllib.parse.quote
    - template_param.endswith
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - partitioned
    - parameters
    - serialized
    - shape
    - shape_members
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 857
    functionName: botocore.serialize.BaseRestSerializer._serialize_payload
    functionSourceFile: botocore.serialize
    functionUses: 1
    functionsReached:
    - botocore.serialize.BaseRestSerializer._serialize_empty_body
    - body.encode
    - botocore.serialize.BaseRestSerializer._has_streaming_payload
    - botocore.serialize.BaseRestSerializer._requires_empty_body
    - botocore.serialize.BaseRestSerializer._serialize_body_params
    - <builtin>.isinstance
    - parameters.get
    - botocore.serialize.BaseRestSerializer._encode_payload
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - shape
    - shape_members
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 892
    functionName: botocore.serialize.BaseRestSerializer._serialize_content_type
    functionSourceFile: ''
    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: re.findall
    functionSourceFile: re
    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: template_param.endswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Name object at 0x7f9830a536a0>
    argNames:
    - input_str
    - safe
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 922
    functionName: botocore.utils.percent_encode
    functionSourceFile: botocore.utils
    functionUses: 12
    functionsReached:
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - urllib.parse.quote
    - <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: uri_template.format
    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
    - payload
    - shape_members
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 907
    functionName: botocore.serialize.BaseRestSerializer._has_streaming_payload
    functionSourceFile: ''
    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: parameters.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - body
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 914
    functionName: botocore.serialize.BaseRestSerializer._encode_payload
    functionSourceFile: botocore.serialize
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - body.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - params
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 989
    functionName: botocore.serialize.BaseRestSerializer._serialize_body_params
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    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: 889
    functionName: botocore.serialize.BaseRestSerializer._serialize_empty_body
    functionSourceFile: ''
    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:
    - self
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 900
    functionName: botocore.serialize.BaseRestSerializer._requires_empty_body
    functionSourceFile: ''
    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: body.encode
    functionSourceFile: <builtin>
    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: member.serialization.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - param_value
    - member
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 970
    functionName: botocore.serialize.BaseRestSerializer._get_uri_and_query_string_value
    functionSourceFile: botocore.serialize
    functionUses: 2
    functionsReached:
    - datetime.datetime
    - math.isnan
    - <builtin>.str
    - botocore.compat.get_tzinfo_options
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - <builtin>.isinstance
    - botocore.utils._parse_timestamp_with_tzinfo
    - botocore.utils.parse_to_aware_datetime
    - <builtin>.getattr
    - <builtin>.float
    - datetime_obj.replace
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - datetime_obj.astimezone
    - timestamp_format.lower
    - datetime.datetime.fromtimestamp
    - botocore.serialize.Serializer._convert_timestamp_to_str
    - botocore.serialize.Serializer._handle_float
    - member.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 992
    functionName: botocore.serialize.BaseRestSerializer._convert_header_value
    functionSourceFile: botocore.serialize
    functionUses: 2
    functionsReached:
    - base64.b64encode
    - botocore.serialize.BaseRestSerializer._convert_header_value
    - <builtin>.hasattr
    - datetime.datetime
    - math.isnan
    - botocore.compat.get_tzinfo_options
    - <builtin>.str
    - shape.serialization.get
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - botocore.serialize.BaseRestSerializer._escape_header_list_string
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - <builtin>.isinstance
    - value.replace
    - botocore.utils.parse_to_aware_datetime
    - botocore.utils._parse_timestamp_with_tzinfo
    - <builtin>.getattr
    - <builtin>.float
    - datetime_obj.replace
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.serialize.Serializer._get_base64
    - datetime_obj.astimezone
    - timestamp_format.lower
    - datetime.datetime.fromtimestamp
    - botocore.serialize.Serializer._convert_timestamp_to_str
    - json.dumps
    - botocore.serialize.Serializer._handle_float
    - value.encode
    - datetime_obj.utctimetuple
    - calendar.timegm
    - botocore.utils.is_json_value_header
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - header_prefix
    - headers
    - user_input
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 984
    functionName: botocore.serialize.BaseRestSerializer._do_serialize_header_map
    functionSourceFile: botocore.serialize
    functionUses: 2
    functionsReached:
    - user_input.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>.str
    functionSourceFile: <builtin>
    functionUses: 133
    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: user_input.items
    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: datetime_obj.utctimetuple
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1027
    functionName: botocore.serialize.BaseRestSerializer._escape_header_list_string
    functionSourceFile: botocore.serialize
    functionUses: 3
    functionsReached:
    - value.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - shape
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 238
    functionName: botocore.utils.is_json_value_header
    functionSourceFile: botocore.utils
    functionUses: 33
    functionsReached:
    - <builtin>.hasattr
    - shape.serialization.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: value.replace
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parameters
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1048
    functionName: botocore.serialize.BaseRpcV2Serializer.serialize_to_request
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - botocore.serialize.BaseRpcV2Serializer._serialize_payload
    - HOST_PREFIX_RE.match
    - botocore.serialize.Serializer._create_default_request
    - botocore.serialize.BaseRpcV2Serializer._serialize_body_params
    - botocore.serialize.Serializer._expand_host_prefix
    - shape.serialization.get
    - host_prefix_expression.format
    - input_members.items
    - botocore.serialize.BaseRpcV2Serializer._serialize_headers
    - bad_labels.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - parameters
    - serialized
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1068
    functionName: botocore.serialize.BaseRpcV2Serializer._serialize_payload
    functionSourceFile: botocore.serialize
    functionUses: 1
    functionsReached:
    - botocore.serialize.BaseRpcV2Serializer._serialize_body_params
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1072
    functionName: botocore.serialize.BaseRpcV2Serializer._serialize_headers
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parameters
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1075
    functionName: botocore.serialize.BaseRpcV2Serializer._serialize_body_params
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    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: 1080
    functionName: botocore.serialize.RestJSONSerializer._serialize_empty_body
    functionSourceFile: botocore.serialize
    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
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1083
    functionName: botocore.serialize.RestJSONSerializer._requires_empty_body
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - shape.members.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: shape.members.items
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - shape
    - shape_members
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1093
    functionName: botocore.serialize.RestJSONSerializer._serialize_content_type
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - key.lower
    - botocore.utils.has_header
    - botocore.serialize.BaseRestSerializer._has_streaming_payload
    - <builtin>.isinstance
    - header_name.lower
    - headers.keys
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - header_name
    - headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 255
    functionName: botocore.utils.has_header
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - key.lower
    - <builtin>.isinstance
    - header_name.lower
    - headers.keys
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - params
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1105
    functionName: botocore.serialize.RestJSONSerializer._serialize_body_params
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - json.dumps
    - <builtin>.getattr
    - botocore.serialize.JSONSerializer._serialize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - params
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1114
    functionName: botocore.serialize.RestXMLSerializer._serialize_body_params
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - xml.etree.ElementTree.tostring
    - botocore.serialize.RestXMLSerializer._serialize
    - <builtin>.list
    - xml.etree.ElementTree.Element
    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: xml.etree.ElementTree.Element
    functionSourceFile: xml
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - shape
    - params
    - xmlnode
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1121
    functionName: botocore.serialize.RestXMLSerializer._serialize
    functionSourceFile: botocore.serialize
    functionUses: 4
    functionsReached:
    - <builtin>.getattr
    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: 98
    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: xml.etree.ElementTree.tostring
    functionSourceFile: xml
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - xmlnode
    - params
    - shape
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1129
    functionName: botocore.serialize.RestXMLSerializer._serialize_type_structure
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.serialize.RestXMLSerializer._serialize
    - namespace_metadata.get
    - xml.etree.ElementTree.SubElement
    - botocore.serialize.RestXMLSerializer._add_xml_namespace
    - <builtin>.isinstance
    - member_shape.serialization.get
    - params.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: xml.etree.ElementTree.SubElement
    functionSourceFile: xml
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - structure_node
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1227
    functionName: botocore.serialize.RestXMLSerializer._add_xml_namespace
    functionSourceFile: botocore.serialize
    functionUses: 9
    functionsReached:
    - <builtin>.isinstance
    - namespace_metadata.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: params.items
    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: member_shape.serialization.get
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - xmlnode
    - params
    - shape
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1150
    functionName: botocore.serialize.RestXMLSerializer._serialize_type_list
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.serialize.RestXMLSerializer._serialize
    - namespace_metadata.get
    - xml.etree.ElementTree.SubElement
    - botocore.serialize.RestXMLSerializer._add_xml_namespace
    - <builtin>.isinstance
    - member_shape.serialization.get
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - xmlnode
    - params
    - shape
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1162
    functionName: botocore.serialize.RestXMLSerializer._serialize_type_map
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.serialize.RestXMLSerializer._serialize
    - namespace_metadata.get
    - botocore.serialize.Serializer._get_serialized_name
    - xml.etree.ElementTree.SubElement
    - botocore.serialize.Serializer._is_shape_flattened
    - botocore.serialize.RestXMLSerializer._add_xml_namespace
    - <builtin>.isinstance
    - params.items
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - xmlnode
    - params
    - shape
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1188
    functionName: botocore.serialize.RestXMLSerializer._serialize_type_boolean
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - xml.etree.ElementTree.SubElement
    - botocore.serialize.RestXMLSerializer._add_xml_namespace
    - <builtin>.isinstance
    - namespace_metadata.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - xmlnode
    - params
    - shape
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1200
    functionName: botocore.serialize.RestXMLSerializer._serialize_type_blob
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - namespace_metadata.get
    - <builtin>.isinstance
    - xml.etree.ElementTree.SubElement
    - value.encode
    - botocore.serialize.RestXMLSerializer._add_xml_namespace
    - botocore.serialize.Serializer._get_base64
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - xmlnode
    - params
    - shape
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1205
    functionName: botocore.serialize.RestXMLSerializer._serialize_type_timestamp
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - botocore.serialize.RestXMLSerializer._add_xml_namespace
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - <builtin>.str
    - shape.serialization.get
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - xml.etree.ElementTree.SubElement
    - <builtin>.isinstance
    - botocore.utils._parse_timestamp_with_tzinfo
    - botocore.utils.parse_to_aware_datetime
    - <builtin>.getattr
    - <builtin>.float
    - datetime_obj.replace
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - namespace_metadata.get
    - datetime_obj.astimezone
    - timestamp_format.lower
    - datetime.datetime.fromtimestamp
    - botocore.serialize.Serializer._convert_timestamp_to_str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - xmlnode
    - params
    - shape
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1214
    functionName: botocore.serialize.RestXMLSerializer._serialize_type_float
    functionSourceFile: botocore.serialize
    functionUses: 1
    functionsReached:
    - <builtin>.float
    - botocore.serialize.Serializer._handle_float
    - namespace_metadata.get
    - xml.etree.ElementTree.SubElement
    - botocore.serialize.RestXMLSerializer._add_xml_namespace
    - <builtin>.isinstance
    - math.isnan
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - xmlnode
    - params
    - shape
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1219
    functionName: botocore.serialize.RestXMLSerializer._serialize_type_double
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.float
    - botocore.serialize.Serializer._handle_float
    - namespace_metadata.get
    - botocore.serialize.RestXMLSerializer._serialize_type_float
    - xml.etree.ElementTree.SubElement
    - botocore.serialize.RestXMLSerializer._add_xml_namespace
    - <builtin>.isinstance
    - math.isnan
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - xmlnode
    - params
    - shape
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1222
    functionName: botocore.serialize.RestXMLSerializer._default_serialize
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - namespace_metadata.get
    - xml.etree.ElementTree.SubElement
    - botocore.serialize.RestXMLSerializer._add_xml_namespace
    - <builtin>.isinstance
    - <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: namespace_metadata.get
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parameters
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1244
    functionName: botocore.serialize.RpcV2CBORSerializer.serialize_to_request
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - botocore.context.get_context
    - contextvars.ContextVar.get
    - botocore.useragent.register_feature_id
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - feature_id
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 106
    functionName: botocore.useragent.register_feature_id
    functionSourceFile: botocore.useragent
    functionUses: 54
    functionsReached:
    - ctx.features.add
    - botocore.context.get_context
    - _USERAGENT_FEATURE_MAPPINGS.get
    - contextvars.ContextVar.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: <builtin>.super
    functionSourceFile: <builtin>
    functionUses: 180
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parameters
    - input_shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1248
    functionName: botocore.serialize.RpcV2CBORSerializer._serialize_body_params
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.serialize.CBORSerializer._serialize_data_item
    - <builtin>.bytes
    - <builtin>.bytearray
    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>.bytearray
    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>.bytes
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - serialized
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1253
    functionName: botocore.serialize.RpcV2CBORSerializer._serialize_headers
    functionSourceFile: botocore.serialize
    functionUses: 0
    functionsReached:
    - key.lower
    - botocore.utils.has_header
    - botocore.serialize.Serializer._handle_query_compatible_trait
    - header_name.lower
    - <builtin>.isinstance
    - headers.keys
    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: botocore.useragent
    functionSourceFile: botocore.useragent
    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: 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: 41
    functionName: botocore.context.get_context
    functionSourceFile: botocore.context
    functionUses: 60
    functionsReached:
    - contextvars.ContextVar.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: _USERAGENT_FEATURE_MAPPINGS.get
    functionSourceFile: <builtin>
    functionUses: 55
    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: ctx.features.add
    functionSourceFile: <builtin>
    functionUses: 55
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - feature_ids
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 125
    functionName: botocore.useragent.register_feature_ids
    functionSourceFile: botocore.useragent
    functionUses: 23
    functionsReached:
    - botocore.context.get_context
    - contextvars.ContextVar.get
    - botocore.useragent.register_feature_id
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - raw_str
    - allow_hash
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 136
    functionName: botocore.useragent.sanitize_user_agent_string_component
    functionSourceFile: botocore.useragent
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - max_size_in_bytes
    - delimiter
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 162
    functionName: botocore.useragent.UserAgentComponentSizeConfig.__init__
    functionSourceFile: botocore.useragent
    functionUses: 3
    functionsReached:
    - botocore.useragent.UserAgentComponentSizeConfig._validate_input
    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: 0
    functionLinenumber: 167
    functionName: botocore.useragent.UserAgentComponentSizeConfig._validate_input
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 194
    functionName: botocore.useragent.UserAgentComponent.to_string
    functionSourceFile: botocore.useragent
    functionUses: 0
    functionsReached:
    - string.split
    - logger.debug
    - botocore.useragent.UserAgentComponent._truncate_string
    - typing.NamedTuple.size_config.delimiter.join
    - parts.pop
    - string.encode
    - <builtin>.len
    - botocore.useragent.sanitize_user_agent_string_component
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - string
    - max_size
    - delimiter
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 217
    functionName: botocore.useragent.UserAgentComponent._truncate_string
    functionSourceFile: botocore.useragent
    functionUses: 1
    functionsReached:
    - string.split
    - logger.debug
    - typing.NamedTuple.size_config.delimiter.join
    - parts.pop
    - string.encode
    - <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: 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: string.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: parts.pop
    functionSourceFile: <builtin>
    functionUses: 9
    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: typing.NamedTuple.size_config.delimiter.join
    functionSourceFile: typing
    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: logger.debug
    functionSourceFile: <builtin>
    functionUses: 280
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 250
    functionName: botocore.useragent.RawStringUserAgentComponent.__init__
    functionSourceFile: botocore.useragent
    functionUses: 4
    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: 253
    functionName: botocore.useragent.RawStringUserAgentComponent.to_string
    functionSourceFile: botocore.useragent
    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:
    - components
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 263
    functionName: botocore.useragent.modify_components
    functionSourceFile: botocore.useragent
    functionUses: 0
    functionsReached: []
    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 0x7f98307200d0>
    argNames:
    - self
    - platform_name
    - platform_version
    - platform_machine
    - python_version
    - python_implementation
    - execution_env
    - crt_version
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 296
    functionName: botocore.useragent.UserAgentString.__init__
    functionSourceFile: botocore.useragent
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 348
    functionName: botocore.useragent.UserAgentString.from_environment
    functionSourceFile: botocore.useragent
    functionUses: 8
    functionsReached:
    - os.environ.get
    - botocore.useragent._get_crt_version
    - platform.system
    - platform.python_implementation
    - platform.machine
    - platform.python_version
    - botocore.useragent.UserAgentString.__init__
    - platform.release
    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: 662
    functionName: botocore.useragent._get_crt_version
    functionSourceFile: ''
    functionUses: 9
    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: platform.system
    functionSourceFile: platform
    functionUses: 17
    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: platform.release
    functionSourceFile: platform
    functionUses: 17
    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: platform.machine
    functionSourceFile: platform
    functionUses: 9
    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: platform.python_version
    functionSourceFile: platform
    functionUses: 17
    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: platform.python_implementation
    functionSourceFile: platform
    functionUses: 9
    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: os.environ.get
    functionSourceFile: os
    functionUses: 110
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - session_user_agent_name
    - session_user_agent_version
    - session_user_agent_extra
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 362
    functionName: botocore.useragent.UserAgentString.set_session_config
    functionSourceFile: botocore.useragent
    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
    - features
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 385
    functionName: botocore.useragent.UserAgentString.set_client_features
    functionSourceFile: botocore.useragent
    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_config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 395
    functionName: botocore.useragent.UserAgentString.with_client_config
    functionSourceFile: botocore.useragent
    functionUses: 0
    functionsReached:
    - copy.copy
    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.copy
    functionSourceFile: copy
    functionUses: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 406
    functionName: botocore.useragent.UserAgentString.to_string
    functionSourceFile: botocore.useragent
    functionUses: 1
    functionsReached:
    - <builtin>.hasattr
    - botocore.context.get_context
    - contextvars.ContextVar.get
    - lang_md.append
    - botocore.useragent.UserAgentString._build_architecture_metadata
    - sdk_md.append
    - botocore.useragent.UserAgentString._build_os_metadata
    - botocore.useragent.UserAgentString._build_legacy_ua_string
    - botocore.useragent.UserAgentString._build_language_metadata
    - client_features.union
    - botocore.customizations.useragent.modify_components
    - components.append
    - botocore.useragent.UserAgentString._build_config_metadata
    - botocore.useragent.UserAgentString._build_app_id
    - comp.to_string
    - botocore.useragent.UserAgentString._build_sdk_metadata
    - extra.append
    - <builtin>.set
    - botocore.useragent.UserAgentString._build_feature_metadata
    - botocore.useragent.UserAgentComponentSizeConfig._validate_input
    - botocore.useragent.sanitize_user_agent_string_component
    - sdk_md.extend
    - botocore.useragent.UserAgentString._build_execution_env_metadata
    - cfg_md.append
    - typing.NamedTuple.__init__
    - botocore.useragent.UserAgentComponentSizeConfig.__init__
    - botocore.useragent.RawStringUserAgentComponent.__init__
    - botocore.useragent.UserAgentString._build_extra
    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: 220
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_ua_override
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 646
    functionName: botocore.useragent.UserAgentString._build_legacy_ua_string
    functionSourceFile: botocore.useragent
    functionUses: 2
    functionsReached:
    - components.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 439
    functionName: botocore.useragent.UserAgentString._build_sdk_metadata
    functionSourceFile: botocore.useragent
    functionUses: 2
    functionsReached:
    - sdk_md.extend
    - sdk_md.append
    - typing.NamedTuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 480
    functionName: botocore.useragent.UserAgentString._build_os_metadata
    functionSourceFile: botocore.useragent
    functionUses: 2
    functionsReached:
    - typing.NamedTuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 518
    functionName: botocore.useragent.UserAgentString._build_architecture_metadata
    functionSourceFile: botocore.useragent
    functionUses: 2
    functionsReached:
    - typing.NamedTuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 533
    functionName: botocore.useragent.UserAgentString._build_language_metadata
    functionSourceFile: botocore.useragent
    functionUses: 2
    functionsReached:
    - lang_md.append
    - typing.NamedTuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 553
    functionName: botocore.useragent.UserAgentString._build_execution_env_metadata
    functionSourceFile: botocore.useragent
    functionUses: 2
    functionsReached:
    - typing.NamedTuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 565
    functionName: botocore.useragent.UserAgentString._build_feature_metadata
    functionSourceFile: botocore.useragent
    functionUses: 2
    functionsReached:
    - <builtin>.set
    - botocore.context.get_context
    - client_features.union
    - contextvars.ContextVar.get
    - botocore.useragent.UserAgentComponentSizeConfig._validate_input
    - typing.NamedTuple.__init__
    - botocore.useragent.UserAgentComponentSizeConfig.__init__
    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: 585
    functionName: botocore.useragent.UserAgentString._build_config_metadata
    functionSourceFile: botocore.useragent
    functionUses: 2
    functionsReached:
    - cfg_md.append
    - typing.NamedTuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 601
    functionName: botocore.useragent.UserAgentString._build_app_id
    functionSourceFile: botocore.useragent
    functionUses: 2
    functionsReached:
    - botocore.useragent.sanitize_user_agent_string_component
    - botocore.useragent.RawStringUserAgentComponent.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 620
    functionName: botocore.useragent.UserAgentString._build_extra
    functionSourceFile: botocore.useragent
    functionUses: 2
    functionsReached:
    - extra.append
    - botocore.useragent.RawStringUserAgentComponent.__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: botocore.customizations.useragent.modify_components
    functionSourceFile: botocore
    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: comp.to_string
    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: sdk_md.extend
    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: typing.NamedTuple.__init__
    functionSourceFile: ''
    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: sdk_md.append
    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: lang_md.append
    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>.set
    functionSourceFile: <builtin>
    functionUses: 88
    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: client_features.union
    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: cfg_md.append
    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: extra.append
    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: components.append
    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: []
    argNames:
    - self
    - operation_name
    - request
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 654
    functionName: botocore.useragent.UserAgentString.rebuild_and_replace_user_agent_handler
    functionSourceFile: botocore.useragent
    functionUses: 0
    functionsReached:
    - request.headers.get
    - <builtin>.hasattr
    - botocore.context.get_context
    - contextvars.ContextVar.get
    - lang_md.append
    - botocore.useragent.UserAgentString.to_string
    - botocore.useragent.UserAgentString._build_architecture_metadata
    - sdk_md.append
    - botocore.useragent.UserAgentString._build_os_metadata
    - botocore.useragent.UserAgentString._build_language_metadata
    - botocore.useragent.UserAgentString._build_legacy_ua_string
    - client_features.union
    - request.headers.replace_header
    - botocore.customizations.useragent.modify_components
    - components.append
    - botocore.useragent.UserAgentString._build_config_metadata
    - botocore.useragent.UserAgentString._build_app_id
    - comp.to_string
    - botocore.useragent.UserAgentString._build_sdk_metadata
    - extra.append
    - <builtin>.set
    - botocore.useragent.UserAgentString._build_feature_metadata
    - botocore.useragent.UserAgentComponentSizeConfig._validate_input
    - botocore.useragent.sanitize_user_agent_string_component
    - sdk_md.extend
    - botocore.useragent.UserAgentString._build_execution_env_metadata
    - cfg_md.append
    - typing.NamedTuple.__init__
    - botocore.useragent.UserAgentComponentSizeConfig.__init__
    - botocore.useragent.RawStringUserAgentComponent.__init__
    - botocore.useragent.UserAgentString._build_extra
    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: 9
    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.headers.replace_header
    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: botocore
    functionSourceFile: botocore
    functionUses: 0
    functionsReached:
    - os.path.abspath
    - logging.getLogger
    - logging.NullHandler
    - re.compile
    - os.path.dirname
    - log.addHandler
    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: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: log.addHandler
    functionSourceFile: <builtin>
    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: os.path.abspath
    functionSourceFile: os
    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: os.path.dirname
    functionSourceFile: os
    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: 0
    functionLinenumber: 145
    functionName: botocore.UNSIGNED.__copy__
    functionSourceFile: botocore
    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
    - memodict
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 148
    functionName: botocore.UNSIGNED.__deepcopy__
    functionSourceFile: botocore
    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 0x7f983153e700>
    - <ast.Name object at 0x7f983153ebe0>
    argNames:
    - name
    - sep
    - _xform_cache
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 155
    functionName: botocore.xform_name
    functionSourceFile: botocore
    functionUses: 36
    functionsReached:
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - matched.lower
    - is_special.group
    - _special_case_transform.search
    - <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: _special_case_transform.search
    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: is_special.group
    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: matched.lower
    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: _first_cap_regex.sub
    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: _end_cap_regex.sub
    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:
    - callback
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 179
    functionName: botocore.register_initializer
    functionSourceFile: botocore
    functionUses: 0
    functionsReached:
    - _INITIALIZERS.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: _INITIALIZERS.append
    functionSourceFile: <builtin>
    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:
    - callback
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 193
    functionName: botocore.unregister_initializer
    functionSourceFile: botocore
    functionUses: 0
    functionsReached:
    - _INITIALIZERS.remove
    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: _INITIALIZERS.remove
    functionSourceFile: <builtin>
    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:
    - session
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 207
    functionName: botocore.invoke_initializers
    functionSourceFile: botocore
    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: botocore.context
    functionSourceFile: botocore.context
    functionUses: 0
    functionsReached:
    - contextvars.ContextVar
    - contextlib.contextmanager
    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: dataclasses.field
    functionSourceFile: dataclasses
    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: 1
    functionLinenumber: -1
    functionName: botocore.context.ClientContext
    functionSourceFile: botocore.context
    functionUses: 0
    functionsReached:
    - dataclasses.field
    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: contextvars.ContextVar
    functionSourceFile: contextvars
    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: contextvars.ContextVar.get
    functionSourceFile: contextvars
    functionUses: 64
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - ctx
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 46
    functionName: botocore.context.set_context
    functionSourceFile: botocore.context
    functionUses: 2
    functionsReached:
    - contextvars.ContextVar.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: contextvars.ContextVar.set
    functionSourceFile: contextvars
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - token
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: botocore.context.reset_context
    functionSourceFile: botocore.context
    functionUses: 2
    functionsReached:
    - contextvars.ContextVar.reset
    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: contextvars.ContextVar.reset
    functionSourceFile: contextvars
    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: contextlib.contextmanager
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f9830d1ff40>
    argNames:
    - ctx
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 70
    functionName: botocore.context.start_as_current_context
    functionSourceFile: botocore.context
    functionUses: 1
    functionsReached:
    - botocore.context.reset_context
    - botocore.context.get_context
    - contextvars.ContextVar.set
    - botocore.context.set_context
    - contextvars.ContextVar.get
    - contextvars.ContextVar.reset
    - copy.deepcopy
    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: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f9830762b20>
    argNames:
    - hook
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 100
    functionName: botocore.context.with_current_context
    functionSourceFile: botocore.context
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 117
    functionName: botocore.context.with_current_context.decorator
    functionSourceFile: botocore.context
    functionUses: 4
    functionsReached:
    - functools.wraps
    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: functools.wraps
    functionSourceFile: functools
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 119
    functionName: botocore.context.with_current_context.decorator.wrapper
    functionSourceFile: botocore.context
    functionUses: 0
    functionsReached:
    - botocore.context.reset_context
    - botocore.context.get_context
    - contextvars.ContextVar.set
    - botocore.context.start_as_current_context
    - botocore.context.set_context
    - contextvars.ContextVar.get
    - contextvars.ContextVar.reset
    - copy.deepcopy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: botocore.compat
    functionSourceFile: botocore.compat
    functionUses: 0
    functionsReached:
    - disabled.lower
    - os.environ.get
    - logging.getLogger
    - <builtin>.frozenset
    - <builtin>.map
    - crt_version_str.split
    - <builtin>.tuple
    - botocore.compat.has_minimum_crt_version
    - re.compile
    - hashlib.md5
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - http_response
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 64
    functionName: botocore.compat.set_socket_timeout
    functionSourceFile: botocore.compat
    functionUses: 0
    functionsReached:
    - http_response._fp.fp.raw._sock.settimeout
    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_response._fp.fp.raw._sock.settimeout
    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:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 72
    functionName: botocore.compat.accepts_kwargs
    functionSourceFile: botocore.compat
    functionUses: 12
    functionsReached:
    - inspect.getfullargspec
    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.getfullargspec
    functionSourceFile: inspect
    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 0x7f9830dd83d0>
    - <ast.Constant object at 0x7f9830dd8af0>
    argNames:
    - s
    - encoding
    - errors
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 75
    functionName: botocore.compat.ensure_unicode
    functionSourceFile: botocore.compat
    functionUses: 44
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830dd8700>
    - <ast.Constant object at 0x7f9830dd8b20>
    argNames:
    - s
    - encoding
    - errors
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 79
    functionName: botocore.compat.ensure_bytes
    functionSourceFile: botocore.compat
    functionUses: 42
    functionsReached:
    - <builtin>.isinstance
    - io.BytesIO.encode
    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: io.BytesIO.encode
    functionSourceFile: io
    functionUses: 43
    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: 93
    functionName: botocore.compat.filter_ssl_warnings
    functionSourceFile: botocore.compat
    functionUses: 1
    functionsReached:
    - warnings.filterwarnings
    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.filterwarnings
    functionSourceFile: warnings
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - d
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 104
    functionName: botocore.compat.from_dict
    functionSourceFile: botocore.compat
    functionUses: 0
    functionsReached:
    - d.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: d.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - pairs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 112
    functionName: botocore.compat.from_pairs
    functionSourceFile: botocore.compat
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - kwargs
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 123
    functionName: botocore.compat.copy_kwargs
    functionSourceFile: botocore.compat
    functionUses: 0
    functionsReached:
    - copy.copy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - delta
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 131
    functionName: botocore.compat.total_seconds
    functionSourceFile: botocore.compat
    functionUses: 26
    functionsReached:
    - typing.NamedTuple.expiration.total_seconds
    - dateutil.parser.parse.total_seconds
    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: typing.NamedTuple.expiration.total_seconds
    functionSourceFile: typing
    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: dateutil.parser.parse.total_seconds
    functionSourceFile: dateutil
    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: hashlib.md5
    functionSourceFile: hashlib
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 152
    functionName: botocore.compat.get_md5
    functionSourceFile: botocore.compat
    functionUses: 10
    functionsReached:
    - hashlib.md5
    linkageType: pythonLinkage
    raised:
    - MD5UnavailableError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f983082c5e0>
    argNames:
    - s
    - platform
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 167
    functionName: botocore.compat.compat_shell_split
    functionSourceFile: botocore.compat
    functionUses: 3
    functionsReached:
    - shlex.split
    - <builtin>.int
    - math.floor
    - botocore.compat._windows_shell_split
    - components.append
    - buff.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 10
    IfCount: 12
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 177
    functionName: botocore.compat._windows_shell_split
    functionSourceFile: botocore.compat
    functionUses: 4
    functionsReached:
    - <builtin>.int
    - buff.append
    - components.append
    - math.floor
    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: shlex.split
    functionSourceFile: shlex
    functionUses: 9
    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: math.floor
    functionSourceFile: math
    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: buff.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 271
    functionName: botocore.compat.get_tzinfo_options
    functionSourceFile: botocore.compat
    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: disabled.lower
    functionSourceFile: <builtin>
    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:
    - minimum_version
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 294
    functionName: botocore.compat.has_minimum_crt_version
    functionSourceFile: botocore.compat
    functionUses: 2
    functionsReached:
    - <builtin>.tuple
    - <builtin>.map
    - crt_version_str.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: crt_version_str.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: <builtin>.map
    functionSourceFile: <builtin>
    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: <builtin>.tuple
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f983074f4f0>
    argNames:
    - remove_tzinfo
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 309
    functionName: botocore.compat.get_current_datetime
    functionSourceFile: botocore.compat
    functionUses: 27
    functionsReached:
    - datetime_now.replace
    - datetime.datetime.now
    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: 45
    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_now.replace
    functionSourceFile: <builtin>
    functionUses: 28
    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>.frozenset
    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: botocore.exceptions
    functionSourceFile: botocore.exceptions
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e657f0>
    - <ast.Constant object at 0x7f9830e65bb0>
    argNames:
    - exception_cls
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 19
    functionName: botocore.exceptions._exception_from_packed_args
    functionSourceFile: botocore.exceptions
    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
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 40
    functionName: botocore.exceptions.BotoCoreError.__init__
    functionSourceFile: botocore.exceptions
    functionUses: 2
    functionsReached:
    - Exception.__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: Exception.__init__
    functionSourceFile: <builtin>
    functionUses: 4
    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: 45
    functionName: botocore.exceptions.BotoCoreError.__reduce__
    functionSourceFile: botocore.exceptions
    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 0x7f98300a4610>
    - <ast.Constant object at 0x7f98300a4970>
    argNames:
    - self
    - request
    - response
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 97
    functionName: botocore.exceptions.HTTPClientError.__init__
    functionSourceFile: botocore.exceptions
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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: 102
    functionName: botocore.exceptions.HTTPClientError.__reduce__
    functionSourceFile: botocore.exceptions
    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
    - name
    - reason
    - last_response
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 476
    functionName: botocore.exceptions.WaiterError.__init__
    functionSourceFile: botocore.exceptions
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - error_response
    - operation_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 523
    functionName: botocore.exceptions.ClientError.__init__
    functionSourceFile: botocore.exceptions
    functionUses: 0
    functionsReached:
    - metadata.get
    - error_response.get
    - error.get
    - <builtin>.super
    - botocore.exceptions.ClientError._get_retry_info
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 536
    functionName: botocore.exceptions.ClientError._get_retry_info
    functionSourceFile: botocore.exceptions
    functionUses: 1
    functionsReached:
    - metadata.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: error_response.get
    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: error.get
    functionSourceFile: <builtin>
    functionUses: 9
    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: metadata.get
    functionSourceFile: <builtin>
    functionUses: 6
    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: 547
    functionName: botocore.exceptions.ClientError.__reduce__
    functionSourceFile: botocore.exceptions
    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
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 748
    functionName: botocore.exceptions.MissingServiceIdError.__init__
    functionSourceFile: botocore.exceptions
    functionUses: 0
    functionsReached:
    - Exception.__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: botocore.vendored.requests
    functionSourceFile: botocore.vendored.requests
    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: botocore.vendored.requests.exceptions
    functionSourceFile: botocore.vendored.requests.exceptions
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 17
    functionName: botocore.vendored.requests.exceptions.RequestException.__init__
    functionSourceFile: botocore.vendored.requests.exceptions
    functionUses: 0
    functionsReached:
    - <builtin>.hasattr
    - <builtin>.super
    - kwargs.pop
    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.pop
    functionSourceFile: <builtin>
    functionUses: 25
    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: botocore.vendored.requests.packages.urllib3.exceptions
    functionSourceFile: botocore.vendored.requests.packages.urllib3.exceptions
    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
    - pool
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 16
    functionName: botocore.vendored.requests.packages.urllib3.exceptions.PoolError.__init__
    functionSourceFile: botocore.vendored.requests.packages.urllib3.exceptions
    functionUses: 3
    functionsReached:
    - HTTPError.__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: HTTPError.__init__
    functionSourceFile: <builtin>
    functionUses: 5
    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: 20
    functionName: botocore.vendored.requests.packages.urllib3.exceptions.PoolError.__reduce__
    functionSourceFile: botocore.vendored.requests.packages.urllib3.exceptions
    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
    - pool
    - url
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 27
    functionName: botocore.vendored.requests.packages.urllib3.exceptions.RequestError.__init__
    functionSourceFile: botocore.vendored.requests.packages.urllib3.exceptions
    functionUses: 2
    functionsReached:
    - HTTPError.__init__
    - botocore.vendored.requests.packages.urllib3.exceptions.PoolError.__init__
    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: 31
    functionName: botocore.vendored.requests.packages.urllib3.exceptions.RequestError.__reduce__
    functionSourceFile: botocore.vendored.requests.packages.urllib3.exceptions
    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 0x7f98307629d0>
    argNames:
    - self
    - pool
    - url
    - reason
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 72
    functionName: botocore.vendored.requests.packages.urllib3.exceptions.MaxRetryError.__init__
    functionSourceFile: botocore.vendored.requests.packages.urllib3.exceptions
    functionUses: 0
    functionsReached:
    - HTTPError.__init__
    - botocore.vendored.requests.packages.urllib3.exceptions.PoolError.__init__
    - botocore.vendored.requests.packages.urllib3.exceptions.RequestError.__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 0x7f9830762610>
    argNames:
    - self
    - pool
    - url
    - retries
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 84
    functionName: botocore.vendored.requests.packages.urllib3.exceptions.HostChangedError.__init__
    functionSourceFile: botocore.vendored.requests.packages.urllib3.exceptions
    functionUses: 0
    functionsReached:
    - HTTPError.__init__
    - botocore.vendored.requests.packages.urllib3.exceptions.PoolError.__init__
    - botocore.vendored.requests.packages.urllib3.exceptions.RequestError.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - location
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 134
    functionName: botocore.vendored.requests.packages.urllib3.exceptions.LocationParseError.__init__
    functionSourceFile: botocore.vendored.requests.packages.urllib3.exceptions
    functionUses: 0
    functionsReached:
    - HTTPError.__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: botocore.vendored.requests.packages
    functionSourceFile: botocore.vendored.requests.packages
    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: botocore.vendored.requests.packages.urllib3
    functionSourceFile: botocore.vendored.requests.packages.urllib3
    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: botocore.vendored
    functionSourceFile: botocore.vendored
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 23
    ICount: 27
    IfCount: 16
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: botocore.vendored.six
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - struct.Struct
    - <builtin>.exec
    - operator.itemgetter
    - botocore.vendored.six._LazyModule.__init__
    - botocore.vendored.six._add_doc
    - <builtin>.enumerate
    - botocore.vendored.six.MovedAttribute.__init__
    - <builtin>.int
    - <builtin>.isinstance
    - operator.attrgetter
    - <builtin>.super
    - <builtin>.getattr
    - sys._getframe
    - botocore.vendored.six._SixMetaPathImporter.__init__
    - sys.meta_path.append
    - sys.platform.startswith
    - <builtin>.setattr
    - functools.partial
    - botocore.vendored.six._SixMetaPathImporter._add_module
    - botocore.vendored.six.exec_
    - operator.methodcaller
    - <builtin>.type
    - <builtin>.globals
    - types.ModuleType.__init__
    - <builtin>.len
    - botocore.vendored.six.MovedModule.__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: sys.platform.startswith
    functionSourceFile: sys
    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: 0
    functionLinenumber: 62
    functionName: botocore.vendored.six.X.__len__
    functionSourceFile: botocore.vendored.six
    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:
    - func
    - doc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 80
    functionName: botocore.vendored.six._add_doc
    functionSourceFile: botocore.vendored.six
    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:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 85
    functionName: botocore.vendored.six._import_module
    functionSourceFile: botocore.vendored.six
    functionUses: 4
    functionsReached:
    - <builtin>.__import__
    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>.__import__
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 93
    functionName: botocore.vendored.six._LazyDescr.__init__
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - obj
    - tp
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 96
    functionName: botocore.vendored.six._LazyDescr.__get__
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.vendored.six.MovedModule._resolve
    - botocore.vendored.six._import_module
    - <builtin>.__import__
    - <builtin>.setattr
    - botocore.vendored.six.MovedAttribute._resolve
    - <builtin>.delattr
    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: 119
    functionName: botocore.vendored.six.MovedModule._resolve
    functionSourceFile: botocore.vendored.six
    functionUses: 2
    functionsReached:
    - botocore.vendored.six._import_module
    - <builtin>.__import__
    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: 164
    functionName: botocore.vendored.six.MovedAttribute._resolve
    functionSourceFile: botocore.vendored.six
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    - botocore.vendored.six._import_module
    - <builtin>.__import__
    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: 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: <builtin>.delattr
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f982f86f9a0>
    argNames:
    - self
    - name
    - old
    - new
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 110
    functionName: botocore.vendored.six.MovedModule.__init__
    functionSourceFile: botocore.vendored.six
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 122
    functionName: botocore.vendored.six.MovedModule.__getattr__
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.vendored.six.MovedModule._resolve
    - botocore.vendored.six._import_module
    - <builtin>.__import__
    - <builtin>.setattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 131
    functionName: botocore.vendored.six._LazyModule.__init__
    functionSourceFile: botocore.vendored.six
    functionUses: 1
    functionsReached:
    - <builtin>.super
    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: 135
    functionName: botocore.vendored.six._LazyModule.__dir__
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9830ac4370>
    - <ast.Constant object at 0x7f9830ac43d0>
    argNames:
    - self
    - name
    - old_mod
    - new_mod
    - old_attr
    - new_attr
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 146
    functionName: botocore.vendored.six.MovedAttribute.__init__
    functionSourceFile: botocore.vendored.six
    functionUses: 1
    functionsReached:
    - <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
    - six_module_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 178
    functionName: botocore.vendored.six._SixMetaPathImporter.__init__
    functionSourceFile: botocore.vendored.six
    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
    - mod
    - fullnames
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 182
    functionName: botocore.vendored.six._SixMetaPathImporter._add_module
    functionSourceFile: botocore.vendored.six
    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
    - fullname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 186
    functionName: botocore.vendored.six._SixMetaPathImporter._get_module
    functionSourceFile: botocore.vendored.six
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830b914f0>
    argNames:
    - self
    - fullname
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 189
    functionName: botocore.vendored.six._SixMetaPathImporter.find_module
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830b916a0>
    argNames:
    - self
    - fullname
    - path
    - target
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 194
    functionName: botocore.vendored.six._SixMetaPathImporter.find_spec
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - importlib.util.spec_from_loader
    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: importlib.util.spec_from_loader
    functionSourceFile: importlib
    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
    - fullname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 199
    functionName: botocore.vendored.six._SixMetaPathImporter.__get_module
    functionSourceFile: botocore.vendored.six
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ImportError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fullname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 205
    functionName: botocore.vendored.six._SixMetaPathImporter.load_module
    functionSourceFile: botocore.vendored.six
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - botocore.vendored.six._SixMetaPathImporter.__get_module
    - mod._resolve
    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: mod._resolve
    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:
    - self
    - fullname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 219
    functionName: botocore.vendored.six._SixMetaPathImporter.is_package
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.hasattr
    - botocore.vendored.six._SixMetaPathImporter.__get_module
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fullname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 228
    functionName: botocore.vendored.six._SixMetaPathImporter.get_code
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - botocore.vendored.six._SixMetaPathImporter.__get_module
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - spec
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 236
    functionName: botocore.vendored.six._SixMetaPathImporter.create_module
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - botocore.vendored.six._SixMetaPathImporter.__get_module
    - botocore.vendored.six._SixMetaPathImporter.load_module
    - mod._resolve
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - module
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 239
    functionName: botocore.vendored.six._SixMetaPathImporter.exec_module
    functionSourceFile: botocore.vendored.six
    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: 1
    functionLinenumber: -1
    functionName: botocore.vendored.six.Module_six_moves_urllib
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - botocore.vendored.six._SixMetaPathImporter._get_module
    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: 503
    functionName: botocore.vendored.six.Module_six_moves_urllib.__dir__
    functionSourceFile: botocore.vendored.six
    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: types.ModuleType.__init__
    functionSourceFile: ''
    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:
    - move
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 510
    functionName: botocore.vendored.six.add_move
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.setattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 515
    functionName: botocore.vendored.six.remove_move
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.delattr
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - it
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 547
    functionName: botocore.vendored.six.advance_iterator
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - it.next
    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: it.next
    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:
    - obj
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 555
    functionName: botocore.vendored.six.callable
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.any
    - <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: 72
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - unbound
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 570
    functionName: botocore.vendored.six.get_unbound_function
    functionSourceFile: botocore.vendored.six
    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:
    - func
    - cls
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 576
    functionName: botocore.vendored.six.create_unbound_method
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - types.MethodType
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - func
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 573
    functionName: botocore.vendored.six.create_bound_method
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - types.MethodType
    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: types.MethodType
    functionSourceFile: types
    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: 1
    functionLinenumber: 581
    functionName: botocore.vendored.six.Iterator.next
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <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: operator.attrgetter
    functionSourceFile: operator
    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:
    - d
    - kw
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 616
    functionName: botocore.vendored.six.iterkeys
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - d.iterkeys
    - d.keys
    - <builtin>.iter
    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: d.keys
    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>.iter
    functionSourceFile: <builtin>
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - d
    - kw
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 619
    functionName: botocore.vendored.six.itervalues
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - d.itervalues
    - <builtin>.iter
    - d.values
    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: d.values
    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:
    - d
    - kw
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 622
    functionName: botocore.vendored.six.iteritems
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - d.items
    - d.iteritems
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - d
    - kw
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 625
    functionName: botocore.vendored.six.iterlists
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    - d.iterlists
    - d.lists
    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: d.lists
    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: operator.methodcaller
    functionSourceFile: operator
    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: d.iterkeys
    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: d.itervalues
    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: d.iteritems
    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: d.iterlists
    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:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 669
    functionName: botocore.vendored.six.b
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - s.encode
    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: s.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: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 673
    functionName: botocore.vendored.six.u
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - s.replace
    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: struct.Struct
    functionSourceFile: struct
    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: operator.itemgetter
    functionSourceFile: operator
    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: s.replace
    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:
    - bs
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 678
    functionName: botocore.vendored.six.byte2int
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <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>.ord
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - buf
    - i
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 681
    functionName: botocore.vendored.six.indexbytes
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <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: functools.partial
    functionSourceFile: functools
    functionUses: 13
    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: 1
    functionLinenumber: 694
    functionName: botocore.vendored.six.assertCountEqual
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    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: 1
    functionLinenumber: 698
    functionName: botocore.vendored.six.assertRaisesRegex
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    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: 1
    functionLinenumber: 702
    functionName: botocore.vendored.six.assertRegex
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    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: 1
    functionLinenumber: 706
    functionName: botocore.vendored.six.assertNotRegex
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f98309a79a0>
    argNames:
    - tp
    - value
    - tb
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 713
    functionName: botocore.vendored.six.reraise
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e0c490>
    - <ast.Constant object at 0x7f9830e0c670>
    argNames:
    - _code_
    - _globs_
    - _locs_
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 725
    functionName: botocore.vendored.six.exec_
    functionSourceFile: botocore.vendored.six
    functionUses: 1
    functionsReached:
    - sys._getframe
    - <builtin>.exec
    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: sys._getframe
    functionSourceFile: sys
    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: <builtin>.exec
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - value
    - from_value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 753
    functionName: botocore.vendored.six.raise_from
    functionSourceFile: botocore.vendored.six
    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:
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 815
    functionName: botocore.vendored.six.print_
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - botocore.vendored.six.print_
    - <builtin>.getattr
    - data.encode
    - kwargs.pop
    - fp.write
    - <builtin>.isinstance
    - kwargs.get
    - <builtin>.enumerate
    - <builtin>.str
    - fp.flush
    - botocore.vendored.six.print_.write
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 765
    functionName: botocore.vendored.six.print_.write
    functionSourceFile: botocore.vendored.six
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    - data.encode
    - <builtin>.isinstance
    - <builtin>.str
    - fp.write
    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.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: fp.write
    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: kwargs.get
    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: fp.flush
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7f9830aa8040>
    - <ast.Attribute object at 0x7f9830aa8a30>
    argNames:
    - wrapper
    - wrapped
    - assigned
    - updated
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 830
    functionName: botocore.vendored.six._update_wrapper
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - <builtin>.setattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Attribute object at 0x7f9830b4b5e0>
    - <ast.Attribute object at 0x7f9830b4b730>
    argNames:
    - wrapped
    - assigned
    - updated
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 846
    functionName: botocore.vendored.six.wraps
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - functools.partial
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - meta
    - bases
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 856
    functionName: botocore.vendored.six.with_metaclass
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - type.__new__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - name
    - this_bases
    - d
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 863
    functionName: botocore.vendored.six.with_metaclass.metaclass.__new__
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - types.resolve_bases
    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: types.resolve_bases
    functionSourceFile: types
    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:
    - cls
    - name
    - this_bases
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 875
    functionName: botocore.vendored.six.with_metaclass.metaclass.__prepare__
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - meta.__prepare__
    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: meta.__prepare__
    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: type.__new__
    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:
    - metaclass
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 880
    functionName: botocore.vendored.six.add_metaclass
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 882
    functionName: botocore.vendored.six.add_metaclass.wrapper
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - orig_vars.pop
    - <builtin>.hasattr
    - <builtin>.isinstance
    - cls.__dict__.copy
    - orig_vars.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: cls.__dict__.copy
    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: orig_vars.get
    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: orig_vars.pop
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830cc6e50>
    - <ast.Constant object at 0x7f9830cc6a00>
    argNames:
    - s
    - encoding
    - errors
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 898
    functionName: botocore.vendored.six.ensure_binary
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - s.encode
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a38460>
    - <ast.Constant object at 0x7f9830a38b50>
    argNames:
    - s
    - encoding
    - errors
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 916
    functionName: botocore.vendored.six.ensure_str
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - s.encode
    - <builtin>.type
    - s.decode
    linkageType: pythonLinkage
    raised:
    - TypeError
    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: s.decode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830da42e0>
    - <ast.Constant object at 0x7f9830da4340>
    argNames:
    - s
    - encoding
    - errors
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 939
    functionName: botocore.vendored.six.ensure_text
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - s.decode
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - klass
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 958
    functionName: botocore.vendored.six.python_2_unicode_compatible
    functionSourceFile: botocore.vendored.six
    functionUses: 0
    functionsReached: []
    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: botocore.vendored.six.python_2_unicode_compatible.<lambda1>
    functionSourceFile: botocore.vendored.six
    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>.globals
    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: sys.meta_path.append
    functionSourceFile: sys
    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: botocore.validate
    functionSourceFile: botocore.validate
    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:
    - params
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 24
    functionName: botocore.validate.validate_parameters
    functionSourceFile: botocore.validate
    functionUses: 5
    functionsReached:
    - <builtin>.getattr
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - botocore.validate.ValidationErrors.__init__
    - botocore.validate.ValidationErrors.has_errors
    - botocore.validate.ParamValidator._validate
    - botocore.validate.ParamValidator._check_special_validation_cases
    - json.dumps
    - <builtin>.hasattr
    - <builtin>.str
    - <builtin>.isinstance
    - botocore.validate.ValidationErrors.report
    - <builtin>.enumerate
    - botocore.validate.ParamValidator._validate_document
    - botocore.utils.is_json_value_header
    - <builtin>.type
    - botocore.validate.ParamValidator.validate
    - shape.serialization.get
    linkageType: pythonLinkage
    raised:
    - ParamValidationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - params
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 208
    functionName: botocore.validate.ParamValidator.validate
    functionSourceFile: botocore.validate
    functionUses: 8
    functionsReached:
    - <builtin>.getattr
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - botocore.validate.ValidationErrors.__init__
    - json.dumps
    - botocore.validate.ParamValidator._validate
    - botocore.validate.ParamValidator._check_special_validation_cases
    - <builtin>.hasattr
    - <builtin>.isinstance
    - botocore.validate.ValidationErrors.report
    - <builtin>.enumerate
    - botocore.validate.ParamValidator._validate_document
    - botocore.utils.is_json_value_header
    - <builtin>.type
    - <builtin>.str
    - shape.serialization.get
    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: 0
    functionLinenumber: 94
    functionName: botocore.validate.ValidationErrors.has_errors
    functionSourceFile: ''
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - valid_types
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 50
    functionName: botocore.validate.type_check
    functionSourceFile: botocore.validate
    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:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 51
    functionName: botocore.validate.type_check._create_type_check_guard
    functionSourceFile: botocore.validate
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - param
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 52
    functionName: botocore.validate.type_check._create_type_check_guard._on_passes_type_check
    functionSourceFile: botocore.validate
    functionUses: 0
    functionsReached:
    - botocore.validate.type_check._create_type_check_guard._type_check
    - <builtin>.isinstance
    - <builtin>.str
    - errors.report
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - param
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 56
    functionName: botocore.validate.type_check._create_type_check_guard._type_check
    functionSourceFile: botocore.validate
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.str
    - errors.report
    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: errors.report
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 5
    argDefaultValues: []
    argNames:
    - name
    - value
    - shape
    - error_type
    - errors
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 73
    functionName: botocore.validate.range_check
    functionSourceFile: botocore.validate
    functionUses: 5
    functionsReached:
    - <builtin>.hasattr
    - <builtin>.float
    - errors.report
    - shape.serialization.get
    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: 91
    functionName: botocore.validate.ValidationErrors.__init__
    functionSourceFile: botocore.validate
    functionUses: 9
    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: 3
    functionLinenumber: 99
    functionName: botocore.validate.ValidationErrors.generate_report
    functionSourceFile: botocore.validate
    functionUses: 0
    functionsReached:
    - name.startswith
    - error_messages.append
    - botocore.validate.ValidationErrors._format_error
    - botocore.validate.ValidationErrors._get_name
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 0
    IfCount: 9
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - error
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 105
    functionName: botocore.validate.ValidationErrors._format_error
    functionSourceFile: botocore.validate
    functionUses: 1
    functionsReached:
    - botocore.validate.ValidationErrors._get_name
    - <builtin>.type
    - name.startswith
    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_messages.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 169
    functionName: botocore.validate.ValidationErrors._get_name
    functionSourceFile: botocore.validate
    functionUses: 2
    functionsReached:
    - name.startswith
    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: name.startswith
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - reason
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 177
    functionName: botocore.validate.ValidationErrors.report
    functionSourceFile: botocore.validate
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 204
    functionName: botocore.validate.ParamValidator._shape_has_constraints
    functionSourceFile: botocore.validate
    functionUses: 1
    functionsReached:
    - <builtin>.set
    - <builtin>.bool
    - shape.metadata.keys
    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: shape.metadata.keys
    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: <builtin>.bool
    functionSourceFile: <builtin>
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - params
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 232
    functionName: botocore.validate.ParamValidator._validate
    functionSourceFile: botocore.validate
    functionUses: 12
    functionsReached:
    - <builtin>.getattr
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - <builtin>.hasattr
    - botocore.validate.ParamValidator._check_special_validation_cases
    - json.dumps
    - <builtin>.isinstance
    - botocore.validate.ValidationErrors.report
    - <builtin>.enumerate
    - botocore.validate.ParamValidator._validate_document
    - botocore.utils.is_json_value_header
    - <builtin>.type
    - <builtin>.str
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 226
    functionName: botocore.validate.ParamValidator._check_special_validation_cases
    functionSourceFile: botocore.validate
    functionUses: 13
    functionsReached:
    - <builtin>.hasattr
    - botocore.utils.is_json_value_header
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - params
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 241
    functionName: botocore.validate.ParamValidator._validate_jsonvalue_string
    functionSourceFile: botocore.validate
    functionUses: 13
    functionsReached:
    - json.dumps
    - botocore.validate.ValidationErrors.report
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - params
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 249
    functionName: botocore.validate.ParamValidator._validate_document
    functionSourceFile: botocore.validate
    functionUses: 13
    functionsReached:
    - <builtin>.isinstance
    - botocore.validate.ValidationErrors.report
    - botocore.validate.ParamValidator._validate_document
    - <builtin>.type
    - <builtin>.enumerate
    - <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: 1
    functionLinenumber: -1
    functionName: botocore.validate.ParamValidator
    functionSourceFile: botocore.validate
    functionUses: 0
    functionsReached:
    - botocore.validate.type_check._create_type_check_guard
    - botocore.validate.type_check
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 6
    IfCount: 5
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - params
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 273
    functionName: botocore.validate.ParamValidator._validate_structure
    functionSourceFile: botocore.validate
    functionUses: 0
    functionsReached:
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - <builtin>.hasattr
    - botocore.validate.ParamValidator._check_special_validation_cases
    - <builtin>.list
    - <builtin>.enumerate
    - <builtin>.str
    - known_params.append
    - shape.serialization.get
    - botocore.validate.ParamValidator._validate
    - errors.report
    - <builtin>.isinstance
    - botocore.validate.ParamValidator._validate_document
    - <builtin>.getattr
    - botocore.utils.is_json_value_header
    - <builtin>.type
    - json.dumps
    - botocore.validate.ValidationErrors.report
    - shape.metadata.get
    - <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: shape.metadata.get
    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: known_params.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: 5
    argDefaultValues: []
    argNames:
    - self
    - param
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 314
    functionName: botocore.validate.ParamValidator._validate_string
    functionSourceFile: botocore.validate
    functionUses: 0
    functionsReached:
    - botocore.validate.range_check
    - <builtin>.float
    - <builtin>.hasattr
    - errors.report
    - <builtin>.len
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - param
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 326
    functionName: botocore.validate.ParamValidator._validate_list
    functionSourceFile: botocore.validate
    functionUses: 0
    functionsReached:
    - botocore.validate.range_check
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - <builtin>.hasattr
    - botocore.validate.ParamValidator._check_special_validation_cases
    - botocore.validate.ParamValidator._shape_has_constraints
    - <builtin>.enumerate
    - <builtin>.str
    - shape.serialization.get
    - <builtin>.bool
    - botocore.validate.ParamValidator._validate
    - errors.report
    - shape.metadata.keys
    - <builtin>.isinstance
    - botocore.validate.ParamValidator._validate_document
    - <builtin>.getattr
    - <builtin>.float
    - <builtin>.set
    - botocore.utils.is_json_value_header
    - <builtin>.type
    - json.dumps
    - botocore.validate.ValidationErrors.report
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - param
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 352
    functionName: botocore.validate.ParamValidator._validate_map
    functionSourceFile: botocore.validate
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - json.dumps
    - botocore.validate.ParamValidator._validate
    - botocore.validate.ParamValidator._check_special_validation_cases
    - <builtin>.hasattr
    - param.items
    - <builtin>.isinstance
    - botocore.validate.ValidationErrors.report
    - <builtin>.enumerate
    - botocore.validate.ParamValidator._validate_document
    - botocore.utils.is_json_value_header
    - <builtin>.type
    - <builtin>.str
    - shape.serialization.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: param.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: 5
    argDefaultValues: []
    argNames:
    - self
    - param
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 360
    functionName: botocore.validate.ParamValidator._validate_integer
    functionSourceFile: botocore.validate
    functionUses: 0
    functionsReached:
    - botocore.validate.range_check
    - <builtin>.float
    - <builtin>.hasattr
    - errors.report
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - param
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 363
    functionName: botocore.validate.ParamValidator._validate_blob
    functionSourceFile: botocore.validate
    functionUses: 0
    functionsReached:
    - <builtin>.hasattr
    - <builtin>.isinstance
    - errors.report
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - param
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 378
    functionName: botocore.validate.ParamValidator._validate_boolean
    functionSourceFile: botocore.validate
    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
    - param
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 382
    functionName: botocore.validate.ParamValidator._validate_double
    functionSourceFile: botocore.validate
    functionUses: 0
    functionsReached:
    - botocore.validate.range_check
    - <builtin>.float
    - <builtin>.hasattr
    - errors.report
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - param
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 388
    functionName: botocore.validate.ParamValidator._validate_long
    functionSourceFile: botocore.validate
    functionUses: 0
    functionsReached:
    - botocore.validate.range_check
    - <builtin>.float
    - <builtin>.hasattr
    - errors.report
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - param
    - shape
    - errors
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 391
    functionName: botocore.validate.ParamValidator._validate_timestamp
    functionSourceFile: botocore.validate
    functionUses: 0
    functionsReached:
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - <builtin>.str
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - errors.report
    - <builtin>.isinstance
    - botocore.utils._parse_timestamp_with_tzinfo
    - botocore.utils.parse_to_aware_datetime
    - <builtin>.float
    - datetime_obj.replace
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - datetime_obj.astimezone
    - datetime.datetime.fromtimestamp
    - botocore.validate.ParamValidator._type_check_datetime
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 402
    functionName: botocore.validate.ParamValidator._type_check_datetime
    functionSourceFile: botocore.validate
    functionUses: 1
    functionsReached:
    - <builtin>.float
    - datetime_obj.replace
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - datetime.datetime.fromtimestamp
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.compat.get_tzinfo_options
    - <builtin>.isinstance
    - botocore.utils._parse_timestamp_with_tzinfo
    - botocore.utils.parse_to_aware_datetime
    - datetime_obj.astimezone
    - datetime.datetime
    - datetime.timedelta
    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: botocore.utils
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - logging.getLogger
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - val
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 203
    functionName: botocore.utils.ensure_boolean
    functionSourceFile: botocore.utils
    functionUses: 11
    functionsReached:
    - val.lower
    - <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: val.lower
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - session
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 216
    functionName: botocore.utils.resolve_imds_endpoint_mode
    functionSourceFile: botocore.utils
    functionUses: 42
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised:
    - InvalidIMDSEndpointModeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830d227c0>
    argNames:
    - self
    - logical_name
    - methods
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 320
    functionName: botocore.session.Session.get_config_variable
    functionSourceFile: botocore.session
    functionUses: 42
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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_mode.lower
    functionSourceFile: <builtin>
    functionUses: 43
    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_name.lower
    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: key.lower
    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: headers.keys
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - service_model
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 265
    functionName: botocore.utils.get_service_module_name
    functionSourceFile: botocore.utils
    functionUses: 24
    functionsReached:
    - service_model.metadata.get
    - name.replace
    - re.sub
    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: service_model.metadata.get
    functionSourceFile: <builtin>
    functionUses: 29
    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: name.replace
    functionSourceFile: <builtin>
    functionUses: 25
    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: re.sub
    functionSourceFile: re
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 282
    functionName: botocore.utils.normalize_url_path
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - output_list.append
    - urllib.parse.urlparse.path.split
    - botocore.utils.remove_dot_segments
    - output_list.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - url
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 297
    functionName: botocore.utils.remove_dot_segments
    functionSourceFile: botocore.utils
    functionUses: 5
    functionsReached:
    - output_list.append
    - urllib.parse.urlparse.path.split
    - output_list.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - val
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 288
    functionName: botocore.utils.normalize_boolean
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - botocore.utils.ensure_boolean
    - val.lower
    - <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.urlparse.path.split
    functionSourceFile: urllib
    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: output_list.pop
    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: output_list.append
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - expression
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 324
    functionName: botocore.utils.validate_jmespath_for_set
    functionSourceFile: botocore.utils
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - InvalidExpressionError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f983159daf0>
    argNames:
    - source
    - expression
    - value
    - is_first
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 335
    functionName: botocore.utils.set_value_from_jmespath
    functionSourceFile: botocore.utils
    functionUses: 6
    functionsReached:
    - <builtin>.len
    - expression.split
    - botocore.utils.set_value_from_jmespath
    - botocore.utils.validate_jmespath_for_set
    linkageType: pythonLinkage
    raised:
    - InvalidExpressionError
    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: expression.split
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - context
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 365
    functionName: botocore.utils.is_global_accesspoint
    functionSourceFile: botocore.utils
    functionUses: 7
    functionsReached:
    - context.get
    - s3_accesspoint.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: context.get
    functionSourceFile: <builtin>
    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: s3_accesspoint.get
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - session
    - service_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 372
    functionName: botocore.utils.create_nested_client
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - contextvars.ContextVar.set
    - contextvars.ContextVar.reset
    - botocore.plugin.reset_plugin_context
    - botocore.plugin.set_plugin_context
    - session.create_client
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - ctx
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 45
    functionName: botocore.plugin.set_plugin_context
    functionSourceFile: botocore.plugin
    functionUses: 3
    functionsReached:
    - contextvars.ContextVar.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: session.create_client
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - token
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: botocore.plugin.reset_plugin_context
    functionSourceFile: botocore.plugin
    functionUses: 3
    functionsReached:
    - contextvars.ContextVar.reset
    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: 0
    functionLinenumber: 391
    functionName: botocore.utils.BadIMDSRequestError.__init__
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Name object at 0x7f9830879eb0>
    - <ast.Constant object at 0x7f9830879940>
    - <ast.Name object at 0x7f9830879280>
    - <ast.Constant object at 0x7f9830c19ca0>
    - <ast.Constant object at 0x7f9830c19df0>
    - <ast.Constant object at 0x7f9830c191c0>
    argNames:
    - self
    - timeout
    - num_attempts
    - base_url
    - env
    - user_agent
    - config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 400
    functionName: botocore.utils.IMDSFetcher.__init__
    functionSourceFile: botocore.utils
    functionUses: 43
    functionsReached:
    - botocore.utils.get_environ_proxies
    - <builtin>.hasattr
    - allowed.match
    - UNSAFE_URL_CHARS.intersection
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.utils.is_valid_uri
    - logger.debug
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.util.ssl_.SSLContext
    - botocore.utils.should_bypass_proxies
    - logger.warning
    - urllib3.Timeout
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - urllib.request.proxy_bypass
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.getattr
    - config.get
    - botocore.utils.is_valid_endpoint_url
    - urllib.parse.urlsplit
    - <builtin>.len
    - env.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - pool_manager_kwargs.update
    - os.environ.copy
    - os.environ.get
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.create_urllib3_context
    - urllib3.PoolManager
    - botocore.httpsession.ProxyConfiguration.__init__
    - urllib.request.getproxies
    - IPV6_ADDRZ_RE.match
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - base_url
    - config
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 431
    functionName: botocore.utils.IMDSFetcher._select_base_url
    functionSourceFile: botocore.utils
    functionUses: 44
    functionsReached:
    - logger.debug
    - config.get
    - botocore.utils.is_valid_endpoint_url
    - <builtin>.len
    - urllib.parse.urlsplit
    - logger.warning
    - IPV6_ADDRZ_RE.match
    - re.compile
    - allowed.match
    - botocore.utils.is_valid_ipv6_endpoint_url
    - UNSAFE_URL_CHARS.intersection
    - urllib.parse.urlparse
    - botocore.utils.is_valid_uri
    linkageType: pythonLinkage
    raised:
    - InvalidIMDSEndpointError
    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.copy
    functionSourceFile: os
    functionUses: 44
    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: env.get
    functionSourceFile: <builtin>
    functionUses: 44
    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: config.get
    functionSourceFile: <builtin>
    functionUses: 63
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - url
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3192
    functionName: botocore.utils.get_environ_proxies
    functionSourceFile: botocore.utils
    functionUses: 49
    functionsReached:
    - urllib.request.getproxies
    - urllib.parse.urlparse
    - botocore.utils.should_bypass_proxies
    - urllib.request.proxy_bypass
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f9830825c70>
    - <ast.Constant object at 0x7f9830825400>
    - <ast.Constant object at 0x7f98308251f0>
    - <ast.Name object at 0x7f9830825280>
    - <ast.Constant object at 0x7f9830825fd0>
    - <ast.Constant object at 0x7f9830825940>
    - <ast.Constant object at 0x7f9830825310>
    argNames:
    - self
    - verify
    - proxies
    - timeout
    - max_pool_connections
    - socket_options
    - client_cert
    - proxies_config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 298
    functionName: botocore.httpsession.URLLib3Session.__init__
    functionSourceFile: botocore.httpsession
    functionUses: 51
    functionsReached:
    - <builtin>.getattr
    - os.environ.get
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.util.ssl_.SSLContext
    - botocore.httpsession.create_urllib3_context
    - <builtin>.hasattr
    - urllib3.PoolManager
    - urllib3.Timeout
    - botocore.httpsession.ProxyConfiguration.__init__
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - pool_manager_kwargs.update
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    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: 428
    functionName: botocore.utils.IMDSFetcher.get_base_url
    functionSourceFile: botocore.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: logger.warning
    functionSourceFile: <builtin>
    functionUses: 70
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - endpoint_url
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1328
    functionName: botocore.utils.is_valid_uri
    functionSourceFile: botocore.utils
    functionUses: 45
    functionsReached:
    - botocore.utils.is_valid_endpoint_url
    - <builtin>.len
    - urllib.parse.urlsplit
    - IPV6_ADDRZ_RE.match
    - re.compile
    - allowed.match
    - UNSAFE_URL_CHARS.intersection
    - botocore.utils.is_valid_ipv6_endpoint_url
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 462
    functionName: botocore.utils.IMDSFetcher._construct_url
    functionSourceFile: botocore.utils
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 468
    functionName: botocore.utils.IMDSFetcher._fetch_metadata_token
    functionSourceFile: botocore.utils
    functionUses: 20
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - urllib.parse.urlencode
    - botocore.awsrequest.AWSRequest.__init__
    - botocore.utils.IMDSFetcher._assert_enabled
    - logger.debug
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - proxy_manager_kwargs.update
    - delim.join
    - url.startswith
    - io.BytesIO.lower
    - os.environ.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - urllib3.PoolManager.connection_from_url
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - urllib.parse.unquote
    - <builtin>.getattr
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - auth_str.encode
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - key.encode
    - botocore.httpsession.get_cert_path
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.utils.IMDSFetcher._construct_url
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - url.lower
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - <builtin>.type
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - http.client.HTTPMessage.items
    - botocore.httpsession.ensure_boolean
    - <builtin>.len
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised:
    - InvalidIMDSEndpointError
    - BadIMDSRequestError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 552
    functionName: botocore.utils.IMDSFetcher._assert_enabled
    functionSourceFile: botocore.utils
    functionUses: 24
    functionsReached:
    - logger.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 548
    functionName: botocore.utils.IMDSFetcher._add_user_agent
    functionSourceFile: ''
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f982f86fdc0>
    - <ast.Constant object at 0x7f982f86f4f0>
    - <ast.Constant object at 0x7f982f86fdf0>
    - <ast.Constant object at 0x7f982f86fc70>
    - <ast.Constant object at 0x7f982f86fbe0>
    - <ast.Constant object at 0x7f982f86f8e0>
    - <ast.Constant object at 0x7f982f86fa30>
    argNames:
    - self
    - method
    - url
    - headers
    - data
    - params
    - auth_path
    - stream_output
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 443
    functionName: botocore.awsrequest.AWSRequest.__init__
    functionSourceFile: botocore.awsrequest
    functionUses: 38
    functionsReached:
    - http.client.HTTPMessage.__init__
    - headers.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>.range
    functionSourceFile: <builtin>
    functionUses: 69
    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: 6
    functionLinenumber: 479
    functionName: botocore.awsrequest.AWSRequest.prepare
    functionSourceFile: botocore.awsrequest
    functionUses: 30
    functionsReached:
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - urllib.parse.urlencode
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.list
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - logger.debug
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - <builtin>.isinstance
    - delim.join
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - <builtin>.len
    - body.tell
    - collections.abc.MutableMapping.update
    - original.params.items
    - <builtin>.type
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - http.client.HTTPMessage.items
    - key.encode
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 460
    functionName: botocore.httpsession.URLLib3Session.send
    functionSourceFile: botocore.httpsession
    functionUses: 36
    functionsReached:
    - base64.b64encode
    - botocore.httpsession.URLLib3Session._path_url
    - urllib3.PoolManager.connection_from_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - base64.b64encode.strip
    - <builtin>.hasattr
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - urllib.parse.urlparse
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - logger.debug
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - proxy_url.startswith
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - <builtin>.bool
    - urllib3.util.ssl_.SSLContext
    - urllib3.proxy_from_url
    - urllib3.util.retry.Retry
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib.parse.unquote
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - proxy_manager_kwargs.update
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - <builtin>.getattr
    - urllib3.util.ssl_.is_ipaddress
    - botocore.compat.ensure_bytes
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - url.lower
    - botocore.httpsession._is_ipaddress
    - url.startswith
    - val.lower
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - io.BytesIO.encode
    - certifi.where
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - io.BytesIO.lower
    - auth_str.encode
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - os.environ.get
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.httpsession.ensure_boolean
    - botocore.httpsession.get_cert_path
    - proxies_kwargs.items
    linkageType: pythonLinkage
    raised:
    - SSLError
    - ConnectTimeoutError
    - ConnectionClosedError
    - HTTPClientError
    - EndpointConnectionError
    - ProxyConnectionError
    - ReadTimeoutError
    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: e.kwargs.get
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e7b790>
    argNames:
    - self
    - url_path
    - retry_func
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 504
    functionName: botocore.utils.IMDSFetcher._get_request
    functionSourceFile: botocore.utils
    functionUses: 22
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - urllib.parse.urlencode
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.awsrequest.AWSRequest.__init__
    - botocore.utils.IMDSFetcher._assert_enabled
    - logger.debug
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - proxy_manager_kwargs.update
    - delim.join
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - urllib.parse.unquote
    - <builtin>.getattr
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - auth_str.encode
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - json.loads
    - url.lower
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - http.client.HTTPMessage.items
    - botocore.httpsession.ensure_boolean
    - <builtin>.len
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - 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: 0
    functionLinenumber: 557
    functionName: botocore.utils.IMDSFetcher._assert_v1_enabled
    functionSourceFile: ''
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - MetadataRetrievalError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 663
    functionName: botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    functionSourceFile: botocore.utils
    functionUses: 23
    functionsReached:
    - botocore.utils.IMDSFetcher._log_imds_response
    - logger.debug
    - logger_args.append
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._is_non_ok_response
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 563
    functionName: botocore.utils.IMDSFetcher._default_retry
    functionSourceFile: botocore.utils
    functionUses: 23
    functionsReached:
    - botocore.utils.IMDSFetcher._log_imds_response
    - logger.debug
    - logger_args.append
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._is_non_ok_response
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 666
    functionName: botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    functionSourceFile: botocore.utils
    functionUses: 23
    functionsReached:
    - botocore.utils.IMDSFetcher._log_imds_response
    - logger.debug
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - json.loads
    - logger_args.append
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._is_non_ok_response
    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: 2
    functionLinenumber: 566
    functionName: botocore.utils.IMDSFetcher._is_non_ok_response
    functionSourceFile: botocore.utils
    functionUses: 26
    functionsReached:
    - botocore.utils.IMDSFetcher._log_imds_response
    - logger.debug
    - logger_args.append
    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: 2
    functionLinenumber: 572
    functionName: botocore.utils.IMDSFetcher._is_empty
    functionSourceFile: botocore.utils
    functionUses: 26
    functionsReached:
    - botocore.utils.IMDSFetcher._log_imds_response
    - logger.debug
    - logger_args.append
    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 0x7f9830769a60>
    argNames:
    - self
    - response
    - reason_to_log
    - log_body
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 578
    functionName: botocore.utils.IMDSFetcher._log_imds_response
    functionSourceFile: botocore.utils
    functionUses: 29
    functionsReached:
    - logger.debug
    - logger_args.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: logger_args.append
    functionSourceFile: <builtin>
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 599
    functionName: botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    functionSourceFile: botocore.utils
    functionUses: 13
    functionsReached:
    - new_time.strftime
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - urllib.parse.urlencode
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - proxy_manager_kwargs.update
    - delim.join
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - urllib.parse.unquote
    - <builtin>.getattr
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - auth_str.encode
    - datetime_now.replace
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - <builtin>.hasattr
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - json.loads
    - url.lower
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - <builtin>.type
    - pool_manager_kwargs.update
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.ensure_boolean
    - <builtin>.len
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - random.randint
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830ce6fd0>
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 640
    functionName: botocore.utils.InstanceMetadataFetcher._get_iam_role
    functionSourceFile: botocore.utils
    functionUses: 14
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - urllib.parse.urlencode
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - proxy_manager_kwargs.update
    - delim.join
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - urllib.parse.unquote
    - <builtin>.getattr
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - auth_str.encode
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - json.loads
    - url.lower
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - http.client.HTTPMessage.items
    - botocore.httpsession.ensure_boolean
    - <builtin>.len
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    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 0x7f98301195e0>
    argNames:
    - self
    - role_name
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 647
    functionName: botocore.utils.InstanceMetadataFetcher._get_credentials
    functionSourceFile: botocore.utils
    functionUses: 14
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - urllib.parse.urlencode
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - proxy_manager_kwargs.update
    - delim.join
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - urllib.parse.unquote
    - <builtin>.getattr
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - auth_str.encode
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - key.encode
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - botocore.httpsession.get_cert_path
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - json.loads
    - url.lower
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - <builtin>.type
    - pool_manager_kwargs.update
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.ensure_boolean
    - <builtin>.len
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - credentials
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 673
    functionName: botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    functionSourceFile: botocore.utils
    functionUses: 14
    functionsReached:
    - logger.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - credentials
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 683
    functionName: botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    functionSourceFile: botocore.utils
    functionUses: 14
    functionsReached:
    - datetime_now.replace
    - new_time.strftime
    - logger.debug
    - datetime.datetime.strptime
    - credentials.get
    - logger.info
    - random.randint
    - datetime.datetime.now
    - botocore.compat.get_current_datetime
    - datetime.timedelta
    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.loads
    functionSourceFile: json
    functionUses: 69
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 655
    functionName: botocore.utils.InstanceMetadataFetcher._is_invalid_json
    functionSourceFile: botocore.utils
    functionUses: 24
    functionsReached:
    - botocore.utils.IMDSFetcher._log_imds_response
    - logger.debug
    - json.loads
    - logger_args.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: credentials.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: datetime.datetime.strptime
    functionSourceFile: datetime
    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: random.randint
    functionSourceFile: random
    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: datetime.timedelta
    functionSourceFile: datetime
    functionUses: 67
    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: new_time.strftime
    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: logger.info
    functionSourceFile: <builtin>
    functionUses: 32
    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 0x7f982f8913d0>
    - <ast.Constant object at 0x7f982f891f10>
    argNames:
    - self
    - session
    - environ
    - fetcher
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 720
    functionName: botocore.utils.IMDSRegionProvider.__init__
    functionSourceFile: botocore.utils
    functionUses: 43
    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: 16
    functionLinenumber: 742
    functionName: botocore.utils.IMDSRegionProvider.provide
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - urllib.parse.urlencode
    - UNSAFE_URL_CHARS.intersection
    - botocore.utils.IMDSRegionProvider._get_instance_metadata_region
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.LoginProvider.__init__
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.session.Session.user_agent
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - proxy_manager_kwargs.update
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - delim.join
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - url.startswith
    - io.BytesIO.lower
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.utils.IMDSRegionProvider._create_fetcher
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.utils.IMDSFetcher._log_imds_response
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.utils.JSONFileCache.__init__
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - urllib.request.getproxies
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.credentials.ProcessProvider.__init__
    - botocore.utils.IMDSFetcher._get_request
    - botocore.session.Session._create_credential_resolver
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - urllib3.PoolManager.connection_from_url
    - base64.b64encode.strip
    - headers.items
    - botocore.monitoring.MonitorEventAdapter.__init__
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.utils.IMDSFetcher._add_user_agent
    - allowed.match
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.utils.IMDSRegionProvider._get_fetcher
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - urllib3.proxy_from_url
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - platform.system
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - urllib.parse.unquote
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - auth_str.encode
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.session.Session._get_crt_version
    - botocore.httpsession.ProxyConfiguration.__init__
    - botocore.utils.determine_content_length
    - mapping.get
    - value.encode
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.httpsession.get_cert_path
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.utils.get_environ_proxies
    - botocore.utils.InstanceMetadataRegionFetcher._get_region
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - botocore.credentials.InstanceMetadataProvider.__init__
    - conn.urlopen
    - urllib.request.proxy_bypass
    - config_variables.items
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - json.loads
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.monitoring.CSMSerializer.__init__
    - botocore.credentials.EnvProvider.__init__
    - providers.remove
    - url.lower
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - botocore.awsrequest.AWSResponse
    - provider.provide
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - <builtin>.type
    - session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.utils.is_valid_ipv6_endpoint_url
    - http.client.HTTPMessage.items
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.credentials.CredentialResolver.__init__
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - scoped_config_providers.append
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - botocore.utils.InstanceMetadataRegionFetcher.retrieve_region
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - botocore.compat.ensure_bytes
    - config.get
    - loader.is_builtin_path
    - botocore.httpsession._is_ipaddress
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - platform.python_version
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - certifi.where
    - original.params.items
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - mapping.items
    - urllib.parse.urlparse
    - platform.release
    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: 15
    functionLinenumber: 747
    functionName: botocore.utils.IMDSRegionProvider._get_instance_metadata_region
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - urllib.parse.urlencode
    - UNSAFE_URL_CHARS.intersection
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.LoginProvider.__init__
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.session.Session.user_agent
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - proxy_manager_kwargs.update
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - delim.join
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - url.startswith
    - io.BytesIO.lower
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.utils.IMDSRegionProvider._create_fetcher
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.utils.IMDSFetcher._log_imds_response
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.utils.JSONFileCache.__init__
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - urllib.request.getproxies
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.credentials.ProcessProvider.__init__
    - botocore.utils.IMDSFetcher._get_request
    - botocore.session.Session._create_credential_resolver
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - urllib3.PoolManager.connection_from_url
    - base64.b64encode.strip
    - headers.items
    - botocore.monitoring.MonitorEventAdapter.__init__
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.utils.IMDSFetcher._add_user_agent
    - allowed.match
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.utils.IMDSRegionProvider._get_fetcher
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - urllib3.proxy_from_url
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - platform.system
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - urllib.parse.unquote
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - auth_str.encode
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.session.Session._get_crt_version
    - botocore.httpsession.ProxyConfiguration.__init__
    - botocore.utils.determine_content_length
    - mapping.get
    - value.encode
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.httpsession.get_cert_path
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.utils.get_environ_proxies
    - botocore.utils.InstanceMetadataRegionFetcher._get_region
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - botocore.credentials.InstanceMetadataProvider.__init__
    - conn.urlopen
    - urllib.request.proxy_bypass
    - config_variables.items
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - json.loads
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.monitoring.CSMSerializer.__init__
    - botocore.credentials.EnvProvider.__init__
    - providers.remove
    - url.lower
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - botocore.awsrequest.AWSResponse
    - provider.provide
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - <builtin>.type
    - session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.utils.is_valid_ipv6_endpoint_url
    - http.client.HTTPMessage.items
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.credentials.CredentialResolver.__init__
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - scoped_config_providers.append
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - botocore.utils.InstanceMetadataRegionFetcher.retrieve_region
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - botocore.compat.ensure_bytes
    - config.get
    - loader.is_builtin_path
    - botocore.httpsession._is_ipaddress
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - platform.python_version
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - certifi.where
    - original.params.items
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - mapping.items
    - urllib.parse.urlparse
    - platform.release
    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: 14
    functionLinenumber: 752
    functionName: botocore.utils.IMDSRegionProvider._get_fetcher
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.utils.is_valid_uri
    - endpoint_mode.lower
    - botocore.session.Session._create_token_resolver
    - session.user_agent
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.session.Session.user_agent
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.utils.IMDSRegionProvider._create_fetcher
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - platform.system
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - botocore.session.Session._get_crt_version
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.configprovider.SectionConfigProvider.__init__
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - platform.python_version
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    - platform.release
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 788
    functionName: botocore.utils.InstanceMetadataRegionFetcher.retrieve_region
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - urllib.parse.urlencode
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.awsrequest.AWSRequest.__init__
    - botocore.utils.IMDSFetcher._assert_enabled
    - logger.debug
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - proxy_manager_kwargs.update
    - delim.join
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - urllib.parse.unquote
    - <builtin>.getattr
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - auth_str.encode
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.utils.InstanceMetadataRegionFetcher._get_region
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - json.loads
    - url.lower
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - http.client.HTTPMessage.items
    - botocore.httpsession.ensure_boolean
    - <builtin>.len
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    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: 13
    functionLinenumber: 757
    functionName: botocore.utils.IMDSRegionProvider._create_fetcher
    functionSourceFile: botocore.utils
    functionUses: 5
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.utils.is_valid_uri
    - endpoint_mode.lower
    - botocore.session.Session._create_token_resolver
    - session.user_agent
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.session.Session.user_agent
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - platform.system
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - botocore.session.Session._get_crt_version
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.configprovider.SectionConfigProvider.__init__
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - platform.python_version
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    - platform.release
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 545
    functionName: botocore.session.Session.user_agent
    functionSourceFile: botocore.session
    functionUses: 7
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - platform.system
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.session.Session._get_crt_version
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - platform.python_version
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    - platform.release
    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: 9
    functionLinenumber: 811
    functionName: botocore.utils.InstanceMetadataRegionFetcher._get_region
    functionSourceFile: botocore.utils
    functionUses: 5
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - urllib.parse.urlencode
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - proxy_manager_kwargs.update
    - delim.join
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - urllib.parse.unquote
    - <builtin>.getattr
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - auth_str.encode
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - json.loads
    - url.lower
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - http.client.HTTPMessage.items
    - botocore.httpsession.ensure_boolean
    - <builtin>.len
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830cc99a0>
    argNames:
    - dict1
    - dict2
    - append_lists
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 823
    functionName: botocore.utils.merge_dicts
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - botocore.utils.merge_dicts
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - original
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 852
    functionName: botocore.utils.lowercase_dict
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - key.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Name object at 0x7f9830a631f0>
    argNames:
    - filename
    - _open
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 860
    functionName: botocore.utils.parse_key_val_file
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - botocore.utils.parse_key_val_file_contents
    - contents.splitlines
    - val.strip
    - line.split
    - key.strip
    - f.read
    linkageType: pythonLinkage
    raised:
    - ConfigNotFound
    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: f.read
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - contents
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 869
    functionName: botocore.utils.parse_key_val_file_contents
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - contents.splitlines
    - key.strip
    - line.split
    - val.strip
    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: contents.splitlines
    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: line.split
    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: key.strip
    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: val.strip
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Name object at 0x7f983008b370>
    argNames:
    - mapping
    - safe
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 884
    functionName: botocore.utils.percent_encode_sequence
    functionSourceFile: botocore.utils
    functionUses: 5
    functionsReached:
    - botocore.utils.percent_encode
    - encoded_pairs.append
    - <builtin>.hasattr
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - mapping.items
    - urllib.parse.quote
    - <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: mapping.items
    functionSourceFile: <builtin>
    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: encoded_pairs.append
    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: urllib.parse.quote.encode
    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.quote
    functionSourceFile: urllib
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - value
    - tzinfo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 943
    functionName: botocore.utils._epoch_seconds_to_datetime
    functionSourceFile: botocore.utils
    functionUses: 37
    functionsReached:
    - epoch_zero.astimezone
    - datetime.timedelta
    - dateutil.tz.tzutc
    - datetime.datetime
    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: dateutil.tz.tzutc
    functionSourceFile: dateutil
    functionUses: 65
    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
    functionSourceFile: datetime
    functionUses: 46
    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: epoch_zero.astimezone
    functionSourceFile: <builtin>
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - value
    - tzinfo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 959
    functionName: botocore.utils._parse_timestamp_with_tzinfo
    functionSourceFile: botocore.utils
    functionUses: 37
    functionsReached:
    - dateutil.parser.parse
    - <builtin>.float
    - <builtin>.isinstance
    - datetime.datetime.fromtimestamp
    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: datetime.datetime.fromtimestamp
    functionSourceFile: datetime
    functionUses: 52
    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: dateutil.parser.parse
    functionSourceFile: <builtin>
    functionUses: 70
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 978
    functionName: botocore.utils.parse_timestamp
    functionSourceFile: botocore.utils
    functionUses: 36
    functionsReached:
    - <builtin>.float
    - epoch_zero.astimezone
    - logger.debug
    - datetime.datetime.fromtimestamp
    - dateutil.tz.tzutc
    - dateutil.parser.parse
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.utils._parse_timestamp_with_tzinfo
    - <builtin>.isinstance
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - datetime.timedelta
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    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_obj.replace
    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: datetime_obj.astimezone
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830f2e9a0>
    argNames:
    - dt
    - default_timezone
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1071
    functionName: botocore.utils.datetime2timestamp
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - dateutil.tz.tzutc
    - d.total_seconds
    - dt.utcoffset
    - dt.replace
    - datetime.datetime
    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: dt.replace
    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: dt.utcoffset
    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: d.total_seconds
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830c52bb0>
    argNames:
    - body
    - as_hex
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1090
    functionName: botocore.utils.calculate_sha256
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - checksum.update
    - <builtin>.iter
    - hashlib.sha256
    - checksum.digest
    - checksum.hexdigest
    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: 29
    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: botocore.utils.calculate_sha256.<lambda1>
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - io.BytesIO.read
    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: io.BytesIO.read
    functionSourceFile: io
    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: checksum.update
    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: checksum.hexdigest
    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: checksum.digest
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - body
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1117
    functionName: botocore.utils.calculate_tree_hash
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - itertools.zip_longest
    - <builtin>.iter
    - new_chunks.append
    - chunks.append
    - hashlib.sha256
    - binascii.hexlify
    - botocore.utils._in_pairs
    - <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: 1
    functionLinenumber: -1
    functionName: botocore.utils.calculate_tree_hash.<lambda1>
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - io.BytesIO.read
    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: chunks.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - iterable
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1150
    functionName: botocore.utils._in_pairs
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - itertools.zip_longest
    - <builtin>.iter
    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: new_chunks.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: binascii.hexlify
    functionSourceFile: binascii
    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: itertools.zip_longest
    functionSourceFile: itertools
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fget
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1175
    functionName: botocore.utils.CachedProperty.__init__
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - obj
    - cls
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1178
    functionName: botocore.utils.CachedProperty.__get__
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830b41220>
    argNames:
    - self
    - use_member_names
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1214
    functionName: botocore.utils.ArgumentGenerator.__init__
    functionSourceFile: botocore.utils
    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
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1217
    functionName: botocore.utils.ArgumentGenerator.generate_skeleton
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - botocore.utils.ArgumentGenerator._generate_type_map
    - shape.members.items
    - stack.count
    - botocore.utils.ArgumentGenerator._generate_skeleton
    - collections.OrderedDict
    - botocore.utils.ArgumentGenerator._generate_type_list
    - datetime.datetime
    - stack.pop
    - stack.append
    - random.choice
    - botocore.utils.ArgumentGenerator._generate_type_structure
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 2
    IfCount: 10
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f98309b2e20>
    argNames:
    - self
    - shape
    - stack
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1230
    functionName: botocore.utils.ArgumentGenerator._generate_skeleton
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - botocore.utils.ArgumentGenerator._generate_type_map
    - shape.members.items
    - botocore.utils.ArgumentGenerator._generate_type_list
    - botocore.utils.ArgumentGenerator._generate_skeleton
    - collections.OrderedDict
    - datetime.datetime
    - stack.count
    - stack.pop
    - stack.append
    - random.choice
    - botocore.utils.ArgumentGenerator._generate_type_structure
    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: stack.append
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - stack
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1256
    functionName: botocore.utils.ArgumentGenerator._generate_type_structure
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - botocore.utils.ArgumentGenerator._generate_type_map
    - shape.members.items
    - botocore.utils.ArgumentGenerator._generate_skeleton
    - collections.OrderedDict
    - botocore.utils.ArgumentGenerator._generate_type_list
    - stack.count
    - stack.pop
    - datetime.datetime
    - stack.append
    - random.choice
    - botocore.utils.ArgumentGenerator._generate_type_structure
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - stack
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1266
    functionName: botocore.utils.ArgumentGenerator._generate_type_list
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - botocore.utils.ArgumentGenerator._generate_type_map
    - shape.members.items
    - stack.count
    - botocore.utils.ArgumentGenerator._generate_skeleton
    - collections.OrderedDict
    - botocore.utils.ArgumentGenerator._generate_type_list
    - datetime.datetime
    - stack.pop
    - stack.append
    - random.choice
    - botocore.utils.ArgumentGenerator._generate_type_structure
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - stack
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1276
    functionName: botocore.utils.ArgumentGenerator._generate_type_map
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - botocore.utils.ArgumentGenerator._generate_type_map
    - shape.members.items
    - botocore.utils.ArgumentGenerator._generate_type_list
    - botocore.utils.ArgumentGenerator._generate_skeleton
    - collections.OrderedDict
    - datetime.datetime
    - stack.count
    - stack.pop
    - stack.append
    - random.choice
    - botocore.utils.ArgumentGenerator._generate_type_structure
    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.choice
    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: stack.pop
    functionSourceFile: <builtin>
    functionUses: 17
    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: stack.count
    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: collections.OrderedDict
    functionSourceFile: collections
    functionUses: 53
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - endpoint_url
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1287
    functionName: botocore.utils.is_valid_ipv6_endpoint_url
    functionSourceFile: botocore.utils
    functionUses: 62
    functionsReached:
    - IPV6_ADDRZ_RE.match
    - urllib.parse.urlparse
    - UNSAFE_URL_CHARS.intersection
    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: UNSAFE_URL_CHARS.intersection
    functionSourceFile: <builtin>
    functionUses: 64
    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.urlparse
    functionSourceFile: urllib
    functionUses: 120
    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: IPV6_ADDRZ_RE.match
    functionSourceFile: <builtin>
    functionUses: 100
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - endpoint_url
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1294
    functionName: botocore.utils.is_valid_ipv4_endpoint_url
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - urllib.parse.urlparse
    - IPV4_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: IPV4_RE.match
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - endpoint_url
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1299
    functionName: botocore.utils.is_valid_endpoint_url
    functionSourceFile: botocore.utils
    functionUses: 50
    functionsReached:
    - urllib.parse.urlsplit
    - re.compile
    - allowed.match
    - UNSAFE_URL_CHARS.intersection
    - <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: urllib.parse.urlsplit
    functionSourceFile: urllib
    functionUses: 110
    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: allowed.match
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - region_name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1334
    functionName: botocore.utils.validate_region_name
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - valid_host_label.match
    - re.compile
    linkageType: pythonLinkage
    raised:
    - InvalidRegionError
    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: valid_host_label.match
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - bucket_name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1344
    functionName: botocore.utils.check_dns_name
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - LABEL_RE.match
    - match.end
    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: LABEL_RE.match
    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: match.end
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830858e50>
    argNames:
    - request
    - signature_version
    - region_name
    - default_endpoint_url
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1367
    functionName: botocore.utils.fix_s3_host
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - logger.debug
    - urllib.parse.urlsplit.path.split
    - request.url.endswith
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - LABEL_RE.match
    - path_parts.remove
    - match.end
    - botocore.utils._is_get_bucket_location_request
    - botocore.utils.check_dns_name
    - <builtin>.len
    - request.context.get
    - botocore.utils.switch_to_virtual_host_style
    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.context.get
    functionSourceFile: <builtin>
    functionUses: 36
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 5
    IfCount: 8
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830d17400>
    argNames:
    - request
    - signature_version
    - default_endpoint_url
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1396
    functionName: botocore.utils.switch_to_virtual_host_style
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - logger.debug
    - request.url.endswith
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - LABEL_RE.match
    - path_parts.remove
    - match.end
    - botocore.utils.check_dns_name
    - botocore.utils._is_get_bucket_location_request
    - <builtin>.len
    - urllib.parse.urlsplit.path.split
    linkageType: pythonLinkage
    raised:
    - InvalidDNSNameError
    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: 1
    functionLinenumber: 1460
    functionName: botocore.utils._is_get_bucket_location_request
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - request.url.endswith
    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.urlsplit.path.split
    functionSourceFile: urllib
    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: path_parts.remove
    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: urllib.parse.urlunsplit
    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: request.url.endswith
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1464
    functionName: botocore.utils.instance_cache
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1482
    functionName: botocore.utils.instance_cache._cache_guard
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - botocore.xform_name
    - botocore.regions.EndpointRulesetResolver._get_static_context_params
    - botocore.regions.EndpointRulesetResolver._get_dynamic_context_params
    - botocore.regions.EndpointRulesetResolver._get_client_context_params
    - <builtin>.tuple
    - matched.lower
    - <builtin>.sorted
    - operation_model.get
    - is_special.group
    - _special_case_transform.search
    - kwargs.items
    - botocore.model.ServiceModel.operation_model
    - <builtin>.len
    - botocore.model.OperationModel.__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: kwargs.items
    functionSourceFile: <builtin>
    functionUses: 33
    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: 43
    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: 2
    functionLinenumber: 653
    functionName: botocore.regions.EndpointRulesetResolver._get_client_context_params
    functionSourceFile: botocore.regions
    functionUses: 5
    functionsReached:
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - botocore.xform_name
    - matched.lower
    - is_special.group
    - _special_case_transform.search
    - <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
    - operation_model
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 637
    functionName: botocore.regions.EndpointRulesetResolver._get_static_context_params
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - operation_model
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 645
    functionName: botocore.regions.EndpointRulesetResolver._get_dynamic_context_params
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cache_args
    - cache_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1497
    functionName: botocore.utils.lru_cache_weakref
    functionSourceFile: botocore.utils
    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:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1510
    functionName: botocore.utils.lru_cache_weakref.wrapper
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - functools.lru_cache
    - functools.wraps
    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: functools.lru_cache
    functionSourceFile: functools
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - weakref_to_self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1512
    functionName: botocore.utils.lru_cache_weakref.wrapper.func_with_weakref
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1516
    functionName: botocore.utils.lru_cache_weakref.wrapper.inner
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - weakref.ref
    - <builtin>.tuple
    - botocore.utils.lru_cache_weakref.wrapper.func_with_weakref
    - <builtin>.isinstance
    - kwargs.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: weakref.ref
    functionSourceFile: weakref
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - request
    - operation_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1528
    functionName: botocore.utils.switch_host_s3_accelerate
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - logger.debug
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - botocore.utils._get_new_endpoint
    - botocore.utils._switch_hosts
    - <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 0x7f9830ce3040>
    argNames:
    - request
    - new_endpoint
    - use_new_scheme
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1555
    functionName: botocore.utils._switch_hosts
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - urllib.parse.urlunsplit
    - urllib.parse.urlsplit
    - logger.debug
    - botocore.utils._get_new_endpoint
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - request
    - param_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1547
    functionName: botocore.utils.switch_host_with_param
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - request_json.get
    - request.data.decode
    - logger.debug
    - json.loads
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - botocore.utils._get_new_endpoint
    - botocore.utils._switch_hosts
    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.data.decode
    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_json.get
    functionSourceFile: <builtin>
    functionUses: 2
    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 0x7f9830ce3190>
    argNames:
    - original_endpoint
    - new_endpoint
    - use_new_scheme
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1562
    functionName: botocore.utils._get_new_endpoint
    functionSourceFile: botocore.utils
    functionUses: 10
    functionsReached:
    - urllib.parse.urlsplit
    - logger.debug
    - urllib.parse.urlunsplit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - base
    - extra
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1582
    functionName: botocore.utils.deep_merge
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - <builtin>.isinstance
    - botocore.utils.deep_merge
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - service_id
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1603
    functionName: botocore.utils.hyphenize_service_id
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - service_id.replace
    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: service_id.replace
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client
    - credential_cls
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1620
    functionName: botocore.utils.IdentityCache.__init__
    functionSourceFile: botocore.utils
    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
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1624
    functionName: botocore.utils.IdentityCache.get_credentials
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - metadata.get
    - threading.Lock
    - value.strftime
    - botocore.credentials.RefreshableCredentials._expiry_datetime
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - collections.namedtuple
    - botocore.compat.ensure_unicode
    - value.isoformat
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback
    - <builtin>.isinstance
    - botocore.credentials.RefreshableCredentials.__init__
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - botocore.credentials.RefreshableCredentials.create_from_metadata
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bucket
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1662
    functionName: botocore.utils.S3ExpressIdentityCache.build_refresh_callback
    functionSourceFile: ''
    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: 2
    functionLinenumber: 1663
    functionName: botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    functionSourceFile: botocore.utils
    functionUses: 13
    functionsReached:
    - value.isoformat
    - <builtin>.isinstance
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - value.strftime
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a170d0>
    - <ast.Constant object at 0x7f9830a173d0>
    argNames:
    - cls
    - metadata
    - refresh_using
    - method
    - advisory_timeout
    - mandatory_timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 446
    functionName: botocore.credentials.RefreshableCredentials.create_from_metadata
    functionSourceFile: botocore.credentials
    functionUses: 3
    functionsReached:
    - metadata.get
    - threading.Lock
    - botocore.credentials.RefreshableCredentials._expiry_datetime
    - collections.namedtuple
    - dateutil.parser.parse
    - botocore.compat.ensure_unicode
    - botocore.credentials.RefreshableCredentials.__init__
    - botocore.credentials.RefreshableCredentials._normalize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - kwargs
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1636
    functionName: botocore.utils.IdentityCache.build_refresh_callback
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client
    - credential_cls
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1654
    functionName: botocore.utils.S3ExpressIdentityCache.__init__
    functionSourceFile: botocore.utils
    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: 1
    functionLinenumber: -1
    functionName: botocore.utils.S3ExpressIdentityCache
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - functools.lru_cache
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - bucket
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1659
    functionName: botocore.utils.S3ExpressIdentityCache.get_credentials
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830aa8130>
    argNames:
    - self
    - value
    - iso
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1678
    functionName: botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    functionSourceFile: botocore.utils
    functionUses: 14
    functionsReached:
    - value.isoformat
    - <builtin>.isinstance
    - value.strftime
    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.isoformat
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830aa8250>
    argNames:
    - self
    - client
    - credential_cls
    - cache
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1687
    functionName: botocore.utils.S3ExpressIdentityResolver.__init__
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - weakref.proxy
    - botocore.utils.S3ExpressIdentityCache.__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: weakref.proxy
    functionSourceFile: weakref
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830aa83d0>
    argNames:
    - self
    - event_emitter
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1694
    functionName: botocore.utils.S3ExpressIdentityResolver.register
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - logger.debug
    - emitter.register
    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: emitter.register
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1700
    functionName: botocore.utils.S3ExpressIdentityResolver.apply_signing_cache_key
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - context.setdefault
    - endpoint_properties.get
    - context.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: endpoint_properties.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: context.setdefault
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 8
    argDefaultValues: []
    argNames:
    - self
    - request
    - signing_name
    - region_name
    - signature_version
    - request_signer
    - operation_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1710
    functionName: botocore.utils.S3ExpressIdentityResolver.resolve_s3express_identity
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - signing_context.get
    - request.context.get
    - signature_version.startswith
    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: signing_context.get
    functionSourceFile: <builtin>
    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: signature_version.startswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    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 0x7f9830f2d400>
    argNames:
    - self
    - endpoint_bridge
    - client
    - cache
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1742
    functionName: botocore.utils.S3RegionRedirectorv2.__init__
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - weakref.proxy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830f2d8e0>
    argNames:
    - self
    - event_emitter
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1746
    functionName: botocore.utils.S3RegionRedirectorv2.register
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - logger.debug
    - emitter.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 5
    IfCount: 6
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - request_dict
    - response
    - operation
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1757
    functionName: botocore.utils.S3RegionRedirectorv2.redirect_from_error
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - redirect_ctx.get
    - botocore.utils.ArnParser.parse_arn
    - request_dict.get
    - botocore.utils._get_new_endpoint
    - <builtin>.any
    - botocore.utils.S3RegionRedirectorv2.set_request_url
    - botocore.utils.ArnParser.is_arn
    - botocore.utils.S3RegionRedirectorv2.get_bucket_region
    - logger.debug
    - urllib.parse.urlunsplit
    - ep_info.properties.get
    - <builtin>.isinstance
    - urllib.parse.unquote.startswith
    - urllib.parse.urlsplit
    - error.get
    - urllib.parse.unquote.split
    - service_response.get
    - ep_resolver.auth_schemes_to_signing_ctx
    - response_metadata.get
    - headers.get
    - <builtin>.len
    - ep_resolver.construct_endpoint
    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_dict.get
    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: redirect_ctx.get
    functionSourceFile: <builtin>
    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:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2143
    functionName: botocore.utils.ArnParser.is_arn
    functionSourceFile: botocore.utils
    functionUses: 19
    functionsReached:
    - urllib.parse.unquote.startswith
    - botocore.utils.ArnParser.parse_arn
    - <builtin>.isinstance
    - urllib.parse.unquote.split
    - <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: response_metadata.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - bucket
    - response
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1874
    functionName: botocore.utils.S3RegionRedirectorv2.get_bucket_region
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - service_response.get
    - 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: ep_resolver.construct_endpoint
    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
    - old_url
    - new_endpoint
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1907
    functionName: botocore.utils.S3RegionRedirectorv2.set_request_url
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - urllib.parse.urlunsplit
    - urllib.parse.urlsplit
    - logger.debug
    - botocore.utils._get_new_endpoint
    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: ep_info.properties.get
    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: ep_resolver.auth_schemes_to_signing_ctx
    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: service_response.get
    functionSourceFile: <builtin>
    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: headers.get
    functionSourceFile: <builtin>
    functionUses: 52
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - builtins
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1915
    functionName: botocore.utils.S3RegionRedirectorv2.redirect_from_cache
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - params.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: params.get
    functionSourceFile: <builtin>
    functionUses: 25
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1927
    functionName: botocore.utils.S3RegionRedirectorv2.annotate_request_context
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - params.get
    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 0x7f9831544370>
    argNames:
    - self
    - endpoint_bridge
    - client
    - cache
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1944
    functionName: botocore.utils.S3RegionRedirector.__init__
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - weakref.proxy
    - warnings.warn
    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: 46
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f98303e2ac0>
    argNames:
    - self
    - event_emitter
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1961
    functionName: botocore.utils.S3RegionRedirector.register
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - emitter.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 6
    IfCount: 5
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - request_dict
    - response
    - operation
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1967
    functionName: botocore.utils.S3RegionRedirector.redirect_from_error
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - botocore.utils.S3RegionRedirector.set_request_url
    - logger.debug
    - botocore.utils.S3RegionRedirector._is_s3_accesspoint
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - response_metadata.get
    - headers.get
    - request_dict.get
    - botocore.utils._get_new_endpoint
    - <builtin>.any
    - error.get
    - botocore.utils.S3RegionRedirector.get_bucket_region
    - service_response.get
    - context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2118
    functionName: botocore.utils.S3RegionRedirector._is_s3_accesspoint
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - bucket
    - response
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2066
    functionName: botocore.utils.S3RegionRedirector.get_bucket_region
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - service_response.get
    - headers.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2099
    functionName: botocore.utils.S3RegionRedirector.set_request_url
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - logger.debug
    - urllib.parse.urlunsplit
    - urllib.parse.urlsplit
    - botocore.utils._get_new_endpoint
    - context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2104
    functionName: botocore.utils.S3RegionRedirector.redirect_from_cache
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - botocore.utils.S3RegionRedirector._is_s3_accesspoint
    - params.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - arn
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2127
    functionName: botocore.utils.ArnParser.parse_arn
    functionSourceFile: botocore.utils
    functionUses: 29
    functionsReached:
    - <builtin>.len
    - urllib.parse.unquote.split
    linkageType: pythonLinkage
    raised:
    - InvalidArnException
    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.split
    functionSourceFile: urllib
    functionUses: 30
    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.startswith
    functionSourceFile: urllib
    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: 1
    functionLinenumber: -1
    functionName: botocore.utils.S3ArnParamHandler
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - re.compile
    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 0x7f9830d59a90>
    argNames:
    - self
    - arn_parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2164
    functionName: botocore.utils.S3ArnParamHandler.__init__
    functionSourceFile: botocore.utils
    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
    - event_emitter
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2169
    functionName: botocore.utils.S3ArnParamHandler.register
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - event_emitter.register
    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: event_emitter.register
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - params
    - model
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 2172
    functionName: botocore.utils.S3ArnParamHandler.handle_arn
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - botocore.utils.S3ArnParamHandler._store_accesspoint
    - botocore.utils.ArnParser.parse_arn
    - botocore.utils.S3ArnParamHandler._store_outpost
    - match.group
    - urllib.parse.unquote.split
    - botocore.utils.S3ArnParamHandler._get_arn_details_from_bucket_param
    - botocore.utils.S3ArnParamHandler._add_resource_type_and_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - params
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2183
    functionName: botocore.utils.S3ArnParamHandler._get_arn_details_from_bucket_param
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - botocore.utils.ArnParser.parse_arn
    - match.group
    - urllib.parse.unquote.split
    - <builtin>.len
    - botocore.utils.S3ArnParamHandler._add_resource_type_and_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - arn_details
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2202
    functionName: botocore.utils.S3ArnParamHandler._store_accesspoint
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - arn_details
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2219
    functionName: botocore.utils.S3ArnParamHandler._store_outpost
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - match.group
    linkageType: pythonLinkage
    raised:
    - UnsupportedOutpostResourceError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - arn
    - arn_details
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2194
    functionName: botocore.utils.S3ArnParamHandler._add_resource_type_and_name
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - match.group
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3ArnError
    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: match.group
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f982f12a7c0>
    - <ast.Constant object at 0x7f982f12a790>
    - <ast.Constant object at 0x7f982f12a760>
    - <ast.Constant object at 0x7f982f12a730>
    - <ast.Constant object at 0x7f982f12a700>
    argNames:
    - self
    - endpoint_resolver
    - region
    - s3_config
    - endpoint_url
    - partition
    - use_fips_endpoint
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2243
    functionName: botocore.utils.S3EndpointSetter.__init__
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event_emitter
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2264
    functionName: botocore.utils.S3EndpointSetter.register
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - event_emitter.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2272
    functionName: botocore.utils.S3EndpointSetter.update_endpoint_to_s3_object_lambda
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - logger.debug
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - resolver.construct_endpoint
    - botocore.utils._get_new_endpoint
    - botocore.utils.S3EndpointSetter._override_signing_name
    - context.get
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3ConfigurationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - context
    - signing_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2565
    functionName: botocore.utils.S3EndpointSetter._override_signing_name
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - context.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: resolver.construct_endpoint
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 7
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 2299
    functionName: botocore.utils.S3EndpointSetter.set_endpoint
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - botocore.utils.S3EndpointSetter._resolve_region_for_accesspoint_endpoint
    - botocore.utils.S3EndpointSetter._validate_mrap_s3_config
    - botocore.utils.S3EndpointSetter._override_signing_region
    - botocore.utils._get_new_endpoint
    - context.get
    - botocore.utils.S3EndpointSetter._switch_to_accesspoint_endpoint
    - botocore.utils.S3EndpointSetter._validate_global_regions
    - logger.debug
    - accesspoint_netloc_components.extend
    - urllib.parse.urlunsplit
    - mrap_netloc_components.append
    - botocore.utils.is_global_accesspoint
    - urllib.parse.urlsplit.path.replace
    - botocore.utils.S3EndpointSetter._s3_addressing_handler
    - botocore.utils._switch_hosts
    - botocore.utils.switch_host_s3_accelerate
    - urllib.parse.urlsplit
    - botocore.utils.S3EndpointSetter._get_accesspoint_netloc
    - botocore.utils.S3EndpointSetter._resolve_signing_name_for_accesspoint_endpoint
    - botocore.utils.S3EndpointSetter._validate_accesspoint_supported
    - botocore.utils.S3EndpointSetter._get_mrap_netloc
    - botocore.utils.S3EndpointSetter._validate_fips_supported
    - mrap_netloc_components.extend
    - botocore.utils.S3EndpointSetter._get_accesspoint_path
    - botocore.utils.S3EndpointSetter._use_accesspoint_endpoint
    - botocore.utils.S3EndpointSetter._inject_fips_if_needed
    - request.context.get
    - accesspoint_netloc_components.append
    - botocore.utils.S3EndpointSetter._get_netloc
    - s3_accesspoint.get
    - <builtin>.len
    - botocore.utils.S3EndpointSetter._override_signing_name
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3ConfigurationError
    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: 0
    functionLinenumber: 2323
    functionName: botocore.utils.S3EndpointSetter._use_accesspoint_endpoint
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 2368
    functionName: botocore.utils.S3EndpointSetter._validate_accesspoint_supported
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - context.get
    - botocore.utils.is_global_accesspoint
    - botocore.utils.S3EndpointSetter._validate_mrap_s3_config
    - s3_accesspoint.get
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3AccesspointConfigurationError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2326
    functionName: botocore.utils.S3EndpointSetter._validate_fips_supported
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3AccesspointConfigurationError
    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: 0
    functionLinenumber: 2356
    functionName: botocore.utils.S3EndpointSetter._validate_global_regions
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3AccesspointConfigurationError
    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: 2423
    functionName: botocore.utils.S3EndpointSetter._resolve_region_for_accesspoint_endpoint
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - botocore.utils.S3EndpointSetter._override_signing_region
    - botocore.utils.is_global_accesspoint
    - s3_accesspoint.get
    - context.get
    - request.context.get
    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: 2447
    functionName: botocore.utils.S3EndpointSetter._resolve_signing_name_for_accesspoint_endpoint
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - botocore.utils.S3EndpointSetter._override_signing_name
    - context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 2451
    functionName: botocore.utils.S3EndpointSetter._switch_to_accesspoint_endpoint
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - logger.debug
    - botocore.utils.S3EndpointSetter._get_netloc
    - accesspoint_netloc_components.extend
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - mrap_netloc_components.append
    - botocore.utils.is_global_accesspoint
    - botocore.utils.S3EndpointSetter._get_accesspoint_netloc
    - urllib.parse.urlsplit.path.replace
    - s3_accesspoint.get
    - botocore.utils.S3EndpointSetter._get_mrap_netloc
    - mrap_netloc_components.extend
    - botocore.utils.S3EndpointSetter._get_accesspoint_path
    - botocore.utils.S3EndpointSetter._inject_fips_if_needed
    - context.get
    - accesspoint_netloc_components.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2622
    functionName: botocore.utils.S3EndpointSetter._s3_addressing_handler
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - logger.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2405
    functionName: botocore.utils.S3EndpointSetter._validate_mrap_s3_config
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - botocore.utils.is_global_accesspoint
    - context.get
    - s3_accesspoint.get
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3AccesspointConfigurationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2556
    functionName: botocore.utils.S3EndpointSetter._override_signing_region
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2436
    functionName: botocore.utils.S3EndpointSetter.set_signer
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - botocore.utils.is_global_accesspoint
    - context.get
    - s3_accesspoint.get
    linkageType: pythonLinkage
    raised:
    - MissingDependencyException
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request_context
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2469
    functionName: botocore.utils.S3EndpointSetter._get_netloc
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - accesspoint_netloc_components.extend
    - urllib.parse.urlsplit
    - mrap_netloc_components.append
    - botocore.utils.is_global_accesspoint
    - botocore.utils.S3EndpointSetter._get_accesspoint_netloc
    - s3_accesspoint.get
    - botocore.utils.S3EndpointSetter._get_mrap_netloc
    - botocore.utils.S3EndpointSetter._inject_fips_if_needed
    - mrap_netloc_components.extend
    - accesspoint_netloc_components.append
    - context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - original_path
    - request_context
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2530
    functionName: botocore.utils.S3EndpointSetter._get_accesspoint_path
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - urllib.parse.urlsplit.path.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request_context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2475
    functionName: botocore.utils.S3EndpointSetter._get_mrap_netloc
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - urllib.parse.urlsplit
    - mrap_netloc_components.extend
    - mrap_netloc_components.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 7
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request_context
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2493
    functionName: botocore.utils.S3EndpointSetter._get_accesspoint_netloc
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - accesspoint_netloc_components.extend
    - urllib.parse.urlsplit
    - s3_accesspoint.get
    - botocore.utils.S3EndpointSetter._inject_fips_if_needed
    - accesspoint_netloc_components.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: mrap_netloc_components.append
    functionSourceFile: <builtin>
    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: mrap_netloc_components.extend
    functionSourceFile: <builtin>
    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: accesspoint_netloc_components.append
    functionSourceFile: <builtin>
    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: accesspoint_netloc_components.extend
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - component
    - request_context
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2525
    functionName: botocore.utils.S3EndpointSetter._inject_fips_if_needed
    functionSourceFile: ''
    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: urllib.parse.urlsplit.path.replace
    functionSourceFile: urllib
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - partition_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2539
    functionName: botocore.utils.S3EndpointSetter._get_partition_dns_suffix
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - region_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2547
    functionName: botocore.utils.S3EndpointSetter._get_dns_suffix
    functionSourceFile: botocore.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: 1
    functionLinenumber: -1
    functionName: botocore.utils.S3EndpointSetter
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - botocore.utils.CachedProperty
    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: botocore.utils.CachedProperty
    functionSourceFile: ''
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2575
    functionName: botocore.utils.S3EndpointSetter._use_accelerate_endpoint
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - urllib.parse.urlsplit.netloc.split
    - <builtin>.all
    - urllib.parse.urlsplit
    - <builtin>.len
    - urllib.parse.urlsplit.netloc.endswith
    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.urlsplit.netloc.endswith
    functionSourceFile: urllib
    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: urllib.parse.urlsplit.netloc.split
    functionSourceFile: urllib
    functionUses: 9
    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>.all
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2610
    functionName: botocore.utils.S3EndpointSetter._addressing_style
    functionSourceFile: botocore.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: 1
    functionLinenumber: -1
    functionName: botocore.utils.S3ControlEndpointSetter
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f98314b6b20>
    - <ast.Constant object at 0x7f98314b6b50>
    - <ast.Constant object at 0x7f98314b6b80>
    - <ast.Constant object at 0x7f98314b6bb0>
    - <ast.Constant object at 0x7f98314b6be0>
    argNames:
    - self
    - endpoint_resolver
    - region
    - s3_config
    - endpoint_url
    - partition
    - use_fips_endpoint
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2651
    functionName: botocore.utils.S3ControlEndpointSetter.__init__
    functionSourceFile: botocore.utils
    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
    - event_emitter
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2671
    functionName: botocore.utils.S3ControlEndpointSetter.register
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - event_emitter.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 2674
    functionName: botocore.utils.S3ControlEndpointSetter.set_endpoint
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - botocore.utils.S3ControlEndpointSetter._update_request_netloc
    - botocore.utils.S3ControlEndpointSetter._validate_host_labels
    - arn_details.get
    - botocore.utils.S3ControlEndpointSetter._construct_outpost_endpoint
    - logger.debug
    - botocore.utils.S3ControlEndpointSetter._override_signing_name
    - urllib.parse.urlunsplit
    - botocore.utils.S3ControlEndpointSetter._construct_s3_control_endpoint
    - botocore.utils.S3ControlEndpointSetter._resolve_signing_name_from_arn_details
    - botocore.utils.S3ControlEndpointSetter._validate_endpoint_from_arn_details_supported
    - netloc.extend
    - botocore.utils.S3ControlEndpointSetter._get_dns_suffix
    - botocore.utils.S3ControlEndpointSetter._add_fips
    - botocore.utils.S3ControlEndpointSetter._add_dualstack
    - urllib.parse.urlsplit
    - botocore.utils.S3ControlEndpointSetter._validate_outpost_redirection_valid
    - netloc.append
    - botocore.utils.S3ControlEndpointSetter._add_headers_from_arn_details
    - botocore.utils.S3ControlEndpointSetter._use_endpoint_from_arn_details
    - botocore.utils.S3ControlEndpointSetter._resolve_endpoint_from_arn_details
    - botocore.utils.S3ControlEndpointSetter._override_signing_region
    - request.context.get
    - botocore.utils.S3ControlEndpointSetter._add_outpost_id_header
    - botocore.utils.S3ControlEndpointSetter._construct_netloc
    - botocore.utils.S3ControlEndpointSetter._use_endpoint_from_outpost_id
    - botocore.utils.S3ControlEndpointSetter._resolve_netloc_from_arn_details
    - botocore.utils.S3ControlEndpointSetter._resolve_region_from_arn_details
    - botocore.utils.S3ControlEndpointSetter._is_valid_host_label
    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: 0
    functionLinenumber: 2687
    functionName: botocore.utils.S3ControlEndpointSetter._use_endpoint_from_arn_details
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2693
    functionName: botocore.utils.S3ControlEndpointSetter._validate_endpoint_from_arn_details_supported
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - botocore.utils.S3ControlEndpointSetter._validate_outpost_redirection_valid
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3ControlConfigurationError
    - UnsupportedS3ControlArnError
    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: 2
    functionLinenumber: 2733
    functionName: botocore.utils.S3ControlEndpointSetter._resolve_region_from_arn_details
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - botocore.utils.S3ControlEndpointSetter._override_signing_region
    - request.context.get
    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: 2742
    functionName: botocore.utils.S3ControlEndpointSetter._resolve_signing_name_from_arn_details
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - botocore.utils.S3ControlEndpointSetter._override_signing_name
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 2747
    functionName: botocore.utils.S3ControlEndpointSetter._resolve_endpoint_from_arn_details
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - botocore.utils.S3ControlEndpointSetter._update_request_netloc
    - botocore.utils.S3ControlEndpointSetter._add_dualstack
    - botocore.utils.S3ControlEndpointSetter._get_dns_suffix
    - logger.debug
    - botocore.utils.S3ControlEndpointSetter._add_fips
    - botocore.utils.S3ControlEndpointSetter._construct_s3_control_endpoint
    - urllib.parse.urlunsplit
    - urllib.parse.urlsplit
    - botocore.utils.S3ControlEndpointSetter._validate_host_labels
    - netloc.append
    - botocore.utils.S3ControlEndpointSetter._resolve_netloc_from_arn_details
    - botocore.utils.S3ControlEndpointSetter._construct_outpost_endpoint
    - netloc.extend
    - botocore.utils.S3ControlEndpointSetter._is_valid_host_label
    - botocore.utils.S3ControlEndpointSetter._construct_netloc
    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: 2850
    functionName: botocore.utils.S3ControlEndpointSetter._add_headers_from_arn_details
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - arn_details.get
    - botocore.utils.S3ControlEndpointSetter._add_outpost_id_header
    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: 0
    functionLinenumber: 2690
    functionName: botocore.utils.S3ControlEndpointSetter._use_endpoint_from_outpost_id
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    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: 0
    functionLinenumber: 2724
    functionName: botocore.utils.S3ControlEndpointSetter._validate_outpost_redirection_valid
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3ControlConfigurationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - signing_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2841
    functionName: botocore.utils.S3ControlEndpointSetter._override_signing_name
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - region_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2799
    functionName: botocore.utils.S3ControlEndpointSetter._construct_outpost_endpoint
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - botocore.utils.S3ControlEndpointSetter._get_dns_suffix
    - botocore.utils.S3ControlEndpointSetter._add_fips
    - urllib.parse.urlsplit
    - botocore.utils.S3ControlEndpointSetter._validate_host_labels
    - botocore.utils.S3ControlEndpointSetter._is_valid_host_label
    - botocore.utils.S3ControlEndpointSetter._construct_netloc
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - new_netloc
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2753
    functionName: botocore.utils.S3ControlEndpointSetter._update_request_netloc
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - urllib.parse.urlsplit
    - logger.debug
    - urllib.parse.urlunsplit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2832
    functionName: botocore.utils.S3ControlEndpointSetter._override_signing_region
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 2769
    functionName: botocore.utils.S3ControlEndpointSetter._resolve_netloc_from_arn_details
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - botocore.utils.S3ControlEndpointSetter._add_dualstack
    - botocore.utils.S3ControlEndpointSetter._add_fips
    - botocore.utils.S3ControlEndpointSetter._get_dns_suffix
    - botocore.utils.S3ControlEndpointSetter._construct_s3_control_endpoint
    - urllib.parse.urlsplit
    - botocore.utils.S3ControlEndpointSetter._validate_host_labels
    - netloc.append
    - botocore.utils.S3ControlEndpointSetter._construct_outpost_endpoint
    - netloc.extend
    - botocore.utils.S3ControlEndpointSetter._is_valid_host_label
    - botocore.utils.S3ControlEndpointSetter._construct_netloc
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - region_name
    - account
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2784
    functionName: botocore.utils.S3ControlEndpointSetter._construct_s3_control_endpoint
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - botocore.utils.S3ControlEndpointSetter._get_dns_suffix
    - botocore.utils.S3ControlEndpointSetter._add_dualstack
    - urllib.parse.urlsplit
    - botocore.utils.S3ControlEndpointSetter._validate_host_labels
    - netloc.append
    - netloc.extend
    - botocore.utils.S3ControlEndpointSetter._is_valid_host_label
    - botocore.utils.S3ControlEndpointSetter._construct_netloc
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - label
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2776
    functionName: botocore.utils.S3ControlEndpointSetter._is_valid_host_label
    functionSourceFile: botocore.utils
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - labels
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2779
    functionName: botocore.utils.S3ControlEndpointSetter._validate_host_labels
    functionSourceFile: botocore.utils
    functionUses: 5
    functionsReached:
    - botocore.utils.S3ControlEndpointSetter._is_valid_host_label
    linkageType: pythonLinkage
    raised:
    - InvalidHostLabelError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - netloc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2819
    functionName: botocore.utils.S3ControlEndpointSetter._add_dualstack
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - netloc.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - region_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2823
    functionName: botocore.utils.S3ControlEndpointSetter._get_dns_suffix
    functionSourceFile: ''
    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: netloc.extend
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - netloc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2812
    functionName: botocore.utils.S3ControlEndpointSetter._construct_netloc
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - netloc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2815
    functionName: botocore.utils.S3ControlEndpointSetter._add_fips
    functionSourceFile: ''
    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: netloc.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: arn_details.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - outpost_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2856
    functionName: botocore.utils.S3ControlEndpointSetter._add_outpost_id_header
    functionSourceFile: ''
    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: 1
    functionLinenumber: -1
    functionName: botocore.utils.S3ControlArnParamHandler
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f982c2a75b0>
    argNames:
    - self
    - arn_parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2867
    functionName: botocore.utils.S3ControlArnParamHandler.__init__
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event_emitter
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2878
    functionName: botocore.utils.S3ControlArnParamHandler.register
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - event_emitter.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - params
    - model
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 2884
    functionName: botocore.utils.S3ControlArnParamHandler.handle_arn
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - botocore.utils.S3ControlArnParamHandler._handle_bucket_param
    - botocore.utils.S3ControlArnParamHandlerv2._handle_bucket_param
    - botocore.utils.ArnParser.parse_arn
    - arn_region.startswith
    - botocore.utils.S3ControlArnParamHandler._handle_outpost_id_param
    - s3_config.get
    - botocore.utils.S3ControlArnParamHandler._is_outpost_accesspoint
    - botocore.utils.S3ControlArnParamHandler._get_arn_details_from_param
    - arn_region.endswith
    - botocore.utils.S3ControlArnParamHandler._handle_name_param
    - botocore.utils.S3ControlArnParamHandler._store_outpost_bucket
    - botocore.utils.S3ControlArnParamHandlerv2._store_outpost_accesspoint
    - botocore.utils.S3ControlArnParamHandler._is_outpost_bucket
    - urllib.parse.unquote.split
    - botocore.utils.S3ControlArnParamHandler._override_account_id_param
    - botocore.utils.S3ControlArnParamHandlerv2._handle_name_param
    - botocore.utils.S3ControlArnParamHandler._split_resource
    - botocore.utils.S3ControlArnParamHandlerv2._raise_for_accelerate_endpoint
    - botocore.utils.S3ControlArnParamHandlerv2._raise_for_fips_pseudo_region
    - <builtin>.len
    - botocore.utils.S3ControlArnParamHandlerv2._store_outpost_bucket
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - model
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2922
    functionName: botocore.utils.S3ControlArnParamHandler._handle_outpost_id_param
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - model
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 2927
    functionName: botocore.utils.S3ControlArnParamHandler._handle_name_param
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - botocore.utils.S3ControlArnParamHandlerv2._store_outpost_accesspoint
    - botocore.utils.S3ControlArnParamHandler._split_resource
    - <builtin>.len
    - botocore.utils.ArnParser.parse_arn
    - botocore.utils.S3ControlArnParamHandler._is_outpost_accesspoint
    - urllib.parse.unquote.split
    - botocore.utils.S3ControlArnParamHandler._get_arn_details_from_param
    - botocore.utils.S3ControlArnParamHandler._override_account_id_param
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3ControlArnError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - model
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 3012
    functionName: botocore.utils.S3ControlArnParamHandlerv2._handle_name_param
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - botocore.utils.S3ControlArnParamHandlerv2._store_outpost_accesspoint
    - botocore.utils.S3ControlArnParamHandler._split_resource
    - botocore.utils.ArnParser.parse_arn
    - botocore.utils.S3ControlArnParamHandlerv2._raise_for_accelerate_endpoint
    - arn_region.startswith
    - arn_region.endswith
    - botocore.utils.S3ControlArnParamHandler._is_outpost_accesspoint
    - s3_config.get
    - botocore.utils.S3ControlArnParamHandlerv2._raise_for_fips_pseudo_region
    - urllib.parse.unquote.split
    - <builtin>.len
    - botocore.utils.S3ControlArnParamHandler._override_account_id_param
    - botocore.utils.S3ControlArnParamHandler._get_arn_details_from_param
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3ControlArnError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - model
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 2960
    functionName: botocore.utils.S3ControlArnParamHandler._handle_bucket_param
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - botocore.utils.S3ControlArnParamHandler._store_outpost_bucket
    - botocore.utils.S3ControlArnParamHandler._split_resource
    - <builtin>.len
    - botocore.utils.ArnParser.parse_arn
    - botocore.utils.S3ControlArnParamHandler._override_account_id_param
    - botocore.utils.S3ControlArnParamHandler._is_outpost_bucket
    - urllib.parse.unquote.split
    - botocore.utils.S3ControlArnParamHandler._get_arn_details_from_param
    - botocore.utils.S3ControlArnParamHandlerv2._store_outpost_bucket
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3ControlArnError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - model
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 3033
    functionName: botocore.utils.S3ControlArnParamHandlerv2._handle_bucket_param
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - botocore.utils.S3ControlArnParamHandler._split_resource
    - urllib.parse.unquote.split
    - botocore.utils.ArnParser.parse_arn
    - botocore.utils.S3ControlArnParamHandlerv2._raise_for_accelerate_endpoint
    - arn_region.startswith
    - s3_config.get
    - botocore.utils.S3ControlArnParamHandler._override_account_id_param
    - botocore.utils.S3ControlArnParamHandler._is_outpost_bucket
    - botocore.utils.S3ControlArnParamHandlerv2._raise_for_fips_pseudo_region
    - botocore.utils.S3ControlArnParamHandler._get_arn_details_from_param
    - botocore.utils.S3ControlArnParamHandlerv2._store_outpost_bucket
    - arn_region.endswith
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3ControlArnError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - params
    - param_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2894
    functionName: botocore.utils.S3ControlArnParamHandler._get_arn_details_from_param
    functionSourceFile: botocore.utils
    functionUses: 5
    functionsReached:
    - botocore.utils.S3ControlArnParamHandler._split_resource
    - urllib.parse.unquote.split
    - botocore.utils.ArnParser.parse_arn
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - arn_details
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2906
    functionName: botocore.utils.S3ControlArnParamHandler._split_resource
    functionSourceFile: ''
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - params
    - arn_details
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2909
    functionName: botocore.utils.S3ControlArnParamHandler._override_account_id_param
    functionSourceFile: botocore.utils
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3ControlArnError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - arn_details
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2943
    functionName: botocore.utils.S3ControlArnParamHandler._is_outpost_accesspoint
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - arn_details
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3030
    functionName: botocore.utils.S3ControlArnParamHandlerv2._store_outpost_accesspoint
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - botocore.utils.S3ControlArnParamHandler._override_account_id_param
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - arn_details
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2952
    functionName: botocore.utils.S3ControlArnParamHandler._store_outpost_accesspoint
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - botocore.utils.S3ControlArnParamHandler._override_account_id_param
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - arn_details
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2975
    functionName: botocore.utils.S3ControlArnParamHandler._is_outpost_bucket
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - arn_details
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2984
    functionName: botocore.utils.S3ControlArnParamHandler._store_outpost_bucket
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - botocore.utils.S3ControlArnParamHandler._override_account_id_param
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - arn_details
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3050
    functionName: botocore.utils.S3ControlArnParamHandlerv2._store_outpost_bucket
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - botocore.utils.S3ControlArnParamHandler._override_account_id_param
    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 0x7f982c2bde80>
    argNames:
    - self
    - arn_parser
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 3001
    functionName: botocore.utils.S3ControlArnParamHandlerv2.__init__
    functionSourceFile: botocore.utils
    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:
    - self
    - event_emitter
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3006
    functionName: botocore.utils.S3ControlArnParamHandlerv2.register
    functionSourceFile: botocore.utils
    functionUses: 2
    functionsReached:
    - event_emitter.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - arn_details
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3053
    functionName: botocore.utils.S3ControlArnParamHandlerv2._raise_for_fips_pseudo_region
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - arn_region.startswith
    - arn_region.endswith
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3ControlArnError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3062
    functionName: botocore.utils.S3ControlArnParamHandlerv2._raise_for_accelerate_endpoint
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - s3_config.get
    linkageType: pythonLinkage
    raised:
    - UnsupportedS3ControlConfigurationError
    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: arn_region.startswith
    functionSourceFile: <builtin>
    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: arn_region.endswith
    functionSourceFile: <builtin>
    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: s3_config.get
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f982d3c0dc0>
    - <ast.Attribute object at 0x7f982d3c0df0>
    argNames:
    - self
    - session
    - sleep
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 3082
    functionName: botocore.utils.ContainerMetadataFetcher.__init__
    functionSourceFile: botocore.utils
    functionUses: 44
    functionsReached:
    - <builtin>.getattr
    - os.environ.get
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.util.ssl_.SSLContext
    - botocore.httpsession.create_urllib3_context
    - <builtin>.hasattr
    - urllib3.PoolManager
    - urllib3.Timeout
    - botocore.httpsession.ProxyConfiguration.__init__
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - pool_manager_kwargs.update
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    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 0x7f982d3b6370>
    argNames:
    - self
    - full_url
    - headers
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 3090
    functionName: botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    functionSourceFile: botocore.utils
    functionUses: 15
    functionsReached:
    - base64.b64encode
    - botocore.httpsession.URLLib3Session._path_url
    - urllib3.PoolManager.connection_from_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - base64.b64encode.strip
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - <builtin>.hasattr
    - headers.items
    - ipaddress.ip_address
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - headers.update
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - http.client.HTTPMessage.__init__
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - proxy_url.startswith
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - <builtin>.bool
    - response.content.decode
    - urllib3.proxy_from_url
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib.parse.unquote
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - proxy_manager_kwargs.update
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - <builtin>.getattr
    - urllib3.util.ssl_.is_ipaddress
    - botocore.compat.urlparse
    - json.loads
    - botocore.compat.ensure_bytes
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - url.lower
    - botocore.httpsession._is_ipaddress
    - url.startswith
    - val.lower
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - io.BytesIO.encode
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - certifi.where
    - auth_str.encode
    - botocore.httpsession.ensure_boolean
    - io.BytesIO.lower
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - os.environ.get
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.httpsession.URLLib3Session.send
    - urllib.parse.urlparse
    - botocore.httpsession.get_cert_path
    - proxies_kwargs.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - full_url
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3102
    functionName: botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    functionSourceFile: botocore.utils
    functionUses: 16
    functionsReached:
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.compat.urlparse
    - ipaddress.ip_address
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f982d3b1bb0>
    argNames:
    - self
    - full_url
    - extra_headers
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 3140
    functionName: botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    functionSourceFile: botocore.utils
    functionUses: 17
    functionsReached:
    - base64.b64encode
    - botocore.httpsession.URLLib3Session._path_url
    - urllib3.PoolManager.connection_from_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - base64.b64encode.strip
    - <builtin>.hasattr
    - headers.items
    - io.BytesIO.encode
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - headers.update
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - http.client.HTTPMessage.__init__
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - proxy_url.startswith
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - <builtin>.bool
    - response.content.decode
    - urllib3.proxy_from_url
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib.parse.unquote
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - proxy_manager_kwargs.update
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - <builtin>.getattr
    - urllib3.util.ssl_.is_ipaddress
    - botocore.compat.ensure_bytes
    - json.loads
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - url.lower
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.lower
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - url.startswith
    - val.lower
    - certifi.where
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - auth_str.encode
    - botocore.httpsession.ensure_boolean
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - os.environ.get
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.httpsession.URLLib3Session.send
    - urllib.parse.urlparse
    - botocore.httpsession.get_cert_path
    - proxies_kwargs.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: botocore.compat.urlparse
    functionSourceFile: botocore
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - hostname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3116
    functionName: botocore.utils.ContainerMetadataFetcher._is_loopback_address
    functionSourceFile: botocore.utils
    functionUses: 17
    functionsReached:
    - ipaddress.ip_address
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - host
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 3123
    functionName: botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    functionSourceFile: ''
    functionUses: 17
    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: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - relative_uri
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 3128
    functionName: botocore.utils.ContainerMetadataFetcher.retrieve_uri
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - botocore.httpsession.URLLib3Session._path_url
    - urllib3.PoolManager.connection_from_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - base64.b64encode.strip
    - <builtin>.hasattr
    - headers.items
    - io.BytesIO.encode
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - headers.update
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - http.client.HTTPMessage.__init__
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - proxy_url.startswith
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - <builtin>.bool
    - response.content.decode
    - urllib3.proxy_from_url
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib.parse.unquote
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - proxy_manager_kwargs.update
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - <builtin>.getattr
    - urllib3.util.ssl_.is_ipaddress
    - botocore.compat.ensure_bytes
    - json.loads
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - url.lower
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.lower
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - url.startswith
    - val.lower
    - certifi.where
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - auth_str.encode
    - botocore.httpsession.ensure_boolean
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - os.environ.get
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.httpsession.create_urllib3_context
    - botocore.utils.ContainerMetadataFetcher.full_url
    - headers.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.httpsession.URLLib3Session.send
    - urllib.parse.urlparse
    - botocore.httpsession.get_cert_path
    - proxies_kwargs.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - relative_uri
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 3188
    functionName: botocore.utils.ContainerMetadataFetcher.full_url
    functionSourceFile: ''
    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.update
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - full_url
    - headers
    - timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 3162
    functionName: botocore.utils.ContainerMetadataFetcher._get_response
    functionSourceFile: botocore.utils
    functionUses: 18
    functionsReached:
    - base64.b64encode
    - botocore.httpsession.URLLib3Session._path_url
    - urllib3.PoolManager.connection_from_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - base64.b64encode.strip
    - <builtin>.hasattr
    - headers.items
    - io.BytesIO.encode
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - http.client.HTTPMessage.__init__
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - proxy_url.startswith
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - <builtin>.bool
    - response.content.decode
    - urllib3.proxy_from_url
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib.parse.unquote
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - proxy_manager_kwargs.update
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - <builtin>.getattr
    - urllib3.util.ssl_.is_ipaddress
    - botocore.compat.ensure_bytes
    - json.loads
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - url.lower
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.lower
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - url.startswith
    - val.lower
    - certifi.where
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - auth_str.encode
    - botocore.httpsession.ensure_boolean
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - os.environ.get
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.httpsession.URLLib3Session.send
    - urllib.parse.urlparse
    - botocore.httpsession.get_cert_path
    - proxies_kwargs.items
    linkageType: pythonLinkage
    raised:
    - MetadataRetrievalError
    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.prepare
    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: response.content.decode
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - url
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3199
    functionName: botocore.utils.should_bypass_proxies
    functionSourceFile: botocore.utils
    functionUses: 50
    functionsReached:
    - urllib.parse.urlparse
    - urllib.request.proxy_bypass
    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.getproxies
    functionSourceFile: urllib
    functionUses: 50
    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.request.proxy_bypass
    functionSourceFile: urllib
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - body
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3220
    functionName: botocore.utils.determine_content_length
    functionSourceFile: botocore.utils
    functionUses: 41
    functionsReached:
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - <builtin>.hasattr
    - body.tell
    - <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: body.tell
    functionSourceFile: <builtin>
    functionUses: 43
    functionsReached: []
    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 0x7f9830990610>
    argNames:
    - self
    - offset
    - whence
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 178
    functionName: botocore.httpchecksum.AwsChunkedWrapper.seek
    functionSourceFile: botocore.httpchecksum
    functionUses: 46
    functionsReached:
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    linkageType: pythonLinkage
    raised:
    - AwsChunkedWrapperError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f982d3a0190>
    argNames:
    - headers
    - default
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3249
    functionName: botocore.utils.get_encoding_from_headers
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - email.message.Message
    - message.get_param
    - 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: email.message.Message
    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: message.get_param
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - body
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 3272
    functionName: botocore.utils.calculate_md5
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - base64.b64encode
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - <builtin>.iter
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - fileobj.tell
    - botocore.utils._calculate_md5_from_file
    - botocore.utils._calculate_md5_from_bytes
    - <builtin>.isinstance
    - md5.digest
    - botocore.compat.get_md5
    - hashlib.md5
    - md5.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - body_bytes
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3281
    functionName: botocore.utils._calculate_md5_from_bytes
    functionSourceFile: botocore.utils
    functionUses: 5
    functionsReached:
    - botocore.compat.get_md5
    - md5.digest
    - hashlib.md5
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - fileobj
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3287
    functionName: botocore.utils._calculate_md5_from_file
    functionSourceFile: botocore.utils
    functionUses: 5
    functionsReached:
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - <builtin>.iter
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - fileobj.tell
    - md5.digest
    - botocore.compat.get_md5
    - hashlib.md5
    - md5.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: md5.digest
    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: fileobj.tell
    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: 3
    functionLinenumber: -1
    functionName: botocore.utils._calculate_md5_from_file.<lambda1>
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - <builtin>.hex
    - <builtin>.len
    - botocore.httpchecksum.AwsChunkedWrapper._make_chunk
    - botocore.httpchecksum.AwsChunkedWrapper.read
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830da9d00>
    argNames:
    - self
    - size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 186
    functionName: botocore.httpchecksum.AwsChunkedWrapper.read
    functionSourceFile: botocore.httpchecksum
    functionUses: 3
    functionsReached:
    - <builtin>.hex
    - <builtin>.len
    - botocore.httpchecksum.AwsChunkedWrapper.read
    - botocore.httpchecksum.AwsChunkedWrapper._make_chunk
    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: md5.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: 1
    argDefaultValues: []
    argNames:
    - params
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3297
    functionName: botocore.utils._is_s3express_request
    functionSourceFile: botocore.utils
    functionUses: 5
    functionsReached:
    - params.get
    - endpoint_properties.get
    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: 3304
    functionName: botocore.utils.has_checksum_header
    functionSourceFile: botocore.utils
    functionUses: 6
    functionsReached:
    - CHECKSUM_HEADER_PATTERN.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: CHECKSUM_HEADER_PATTERN.match
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 3322
    functionName: botocore.utils.conditionally_calculate_checksum
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - checksum_context.get
    - botocore.utils.has_checksum_header
    - botocore.utils._calculate_md5_from_bytes
    - md5.digest
    - <builtin>.isinstance
    - params.get
    - endpoint_properties.get
    - hashlib.md5
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.utils.conditionally_enable_crc32
    - botocore.utils.calculate_md5
    - botocore.utils._calculate_md5_from_file
    - botocore.compat.get_md5
    - botocore.utils.conditionally_calculate_md5
    - botocore.utils._is_s3express_request
    - <builtin>.iter
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - fileobj.tell
    - CHECKSUM_HEADER_PATTERN.match
    - md5.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 3347
    functionName: botocore.utils.conditionally_calculate_md5
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - base64.b64encode
    - checksum_context.get
    - botocore.utils.has_checksum_header
    - botocore.utils._calculate_md5_from_bytes
    - md5.digest
    - <builtin>.isinstance
    - params.get
    - endpoint_properties.get
    - hashlib.md5
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.utils.calculate_md5
    - botocore.utils._calculate_md5_from_file
    - botocore.compat.get_md5
    - botocore.utils._is_s3express_request
    - <builtin>.iter
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - fileobj.tell
    - CHECKSUM_HEADER_PATTERN.match
    - md5.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3329
    functionName: botocore.utils.conditionally_enable_crc32
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - checksum_context.get
    - botocore.utils._is_s3express_request
    - params.get
    - endpoint_properties.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: checksum_context.get
    functionSourceFile: <builtin>
    functionUses: 26
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7f982d3853d0>
    argNames:
    - self
    - web_identity_token_path
    - _open
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 3373
    functionName: botocore.utils.FileWebIdentityTokenLoader.__init__
    functionSourceFile: botocore.utils
    functionUses: 16
    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: 3377
    functionName: botocore.utils.FileWebIdentityTokenLoader.__call__
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - token_file.read
    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_file.read
    functionSourceFile: <builtin>
    functionUses: 17
    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 0x7f982d3859a0>
    argNames:
    - self
    - cache
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 3383
    functionName: botocore.utils.SSOTokenLoader.__init__
    functionSourceFile: botocore.utils
    functionUses: 57
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - start_url
    - session_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3388
    functionName: botocore.utils.SSOTokenLoader._generate_cache_key
    functionSourceFile: botocore.utils
    functionUses: 6
    functionsReached:
    - hashlib.sha1
    - input_str.encode
    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: input_str.encode
    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: hashlib.sha1
    functionSourceFile: hashlib
    functionUses: 11
    functionsReached: []
    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 0x7f982eedcdf0>
    argNames:
    - self
    - start_url
    - token
    - session_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3394
    functionName: botocore.utils.SSOTokenLoader.save_token
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - botocore.utils.SSOTokenLoader._generate_cache_key
    - hashlib.sha1
    - input_str.encode
    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 0x7f982eedca60>
    argNames:
    - self
    - start_url
    - session_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3398
    functionName: botocore.utils.SSOTokenLoader.__call__
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - botocore.utils.SSOTokenLoader._generate_cache_key
    - hashlib.sha1
    - logger.debug
    - input_str.encode
    linkageType: pythonLinkage
    raised:
    - SSOTokenLoadError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f982eed79d0>
    - <ast.Constant object at 0x7f982eed79a0>
    argNames:
    - self
    - endpoint_resolver
    - region
    - endpoint_url
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 3419
    functionName: botocore.utils.EventbridgeSignerSetter.__init__
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event_emitter
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3424
    functionName: botocore.utils.EventbridgeSignerSetter.register
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - event_emitter.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3433
    functionName: botocore.utils.EventbridgeSignerSetter.set_endpoint_url
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - logger.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3441
    functionName: botocore.utils.EventbridgeSignerSetter.check_for_global_endpoint
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - botocore.utils.EventbridgeSignerSetter._get_global_endpoint
    - resolver.get_partition_dns_suffix
    - urllib.parse.urlparse
    - params.get
    - <builtin>.len
    - resolver.get_partition_for_region
    - context.get
    linkageType: pythonLinkage
    raised:
    - MissingDependencyException
    - InvalidEndpointConfigurationError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f982eecc790>
    argNames:
    - self
    - endpoint
    - endpoint_variant_tags
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3485
    functionName: botocore.utils.EventbridgeSignerSetter._get_global_endpoint
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - resolver.get_partition_dns_suffix
    - resolver.get_partition_for_region
    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: resolver.get_partition_for_region
    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: resolver.get_partition_dns_suffix
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - url
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3500
    functionName: botocore.utils.is_s3_accelerate_url
    functionSourceFile: botocore.utils
    functionUses: 5
    functionsReached:
    - <builtin>.set
    - urllib.parse.urlsplit.netloc.split
    - <builtin>.all
    - urllib.parse.urlsplit
    - <builtin>.len
    - urllib.parse.urlsplit.netloc.endswith
    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.path.join
    functionSourceFile: os
    functionUses: 83
    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: botocore.utils.JSONFileCache
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - os.path.expanduser
    - os.path.join
    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.path.expanduser
    functionSourceFile: os
    functionUses: 61
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7f982eec49d0>
    - <ast.Constant object at 0x7f982eec49a0>
    argNames:
    - self
    - working_dir
    - dumps_func
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 3543
    functionName: botocore.utils.JSONFileCache.__init__
    functionSourceFile: botocore.utils
    functionUses: 55
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - obj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3549
    functionName: botocore.utils.JSONFileCache._default_dumps
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - json.dumps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cache_key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3552
    functionName: botocore.utils.JSONFileCache.__contains__
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - os.path.join
    - os.path.isfile
    - botocore.utils.JSONFileCache._convert_cache_key
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cache_key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3594
    functionName: botocore.utils.JSONFileCache._convert_cache_key
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - os.path.join
    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.path.isfile
    functionSourceFile: os
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cache_key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3556
    functionName: botocore.utils.JSONFileCache.__getitem__
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - os.path.join
    - <builtin>.open
    - json.load
    - botocore.utils.JSONFileCache._convert_cache_key
    linkageType: pythonLinkage
    raised:
    - KeyError
    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>.open
    functionSourceFile: <builtin>
    functionUses: 30
    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.load
    functionSourceFile: json
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cache_key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3565
    functionName: botocore.utils.JSONFileCache.__delitem__
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - os.path.join
    - botocore.utils.JSONFileCache._convert_cache_key
    - pathlib.Path.unlink
    - pathlib.Path
    linkageType: pythonLinkage
    raised:
    - KeyError
    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: pathlib.Path
    functionSourceFile: pathlib
    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: pathlib.Path.unlink
    functionSourceFile: pathlib
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - cache_key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3573
    functionName: botocore.utils.JSONFileCache.__setitem__
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - f.flush
    - botocore.utils.JSONFileCache._default_dumps
    - tempfile.mkstemp
    - json.dumps
    - f.write
    - botocore.utils.JSONFileCache._convert_cache_key
    - os.fdopen
    - os.path.join
    - os.path.isdir
    - os.replace
    - botocore.tokens._sso_json_dumps
    - os.makedirs
    - f.fileno
    - os.fsync
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - obj
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: botocore.tokens._sso_json_dumps
    functionSourceFile: botocore.tokens
    functionUses: 1
    functionsReached:
    - json.dumps
    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.path.isdir
    functionSourceFile: os
    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: os.makedirs
    functionSourceFile: os
    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: tempfile.mkstemp
    functionSourceFile: tempfile
    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: os.fdopen
    functionSourceFile: os
    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: f.write
    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: f.flush
    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: f.fileno
    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: os.fsync
    functionSourceFile: os
    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: os.replace
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f982eeb7e50>
    argNames:
    - self
    - value
    - iso
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3598
    functionName: botocore.utils.JSONFileCache._serialize_if_needed
    functionSourceFile: botocore.utils
    functionUses: 0
    functionsReached:
    - value.isoformat
    - <builtin>.isinstance
    - value.strftime
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - sign_in_session_name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3606
    functionName: botocore.utils.generate_login_cache_key
    functionSourceFile: botocore.utils
    functionUses: 17
    functionsReached:
    - hashlib.sha256
    - sign_in_session_name.encode
    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_in_session_name.encode
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - bucket
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3610
    functionName: botocore.utils.is_s3express_bucket
    functionSourceFile: botocore.utils
    functionUses: 1
    functionsReached:
    - bucket.endswith
    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: bucket.endswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f982eeb73d0>
    argNames:
    - signing_name
    - environ
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3616
    functionName: botocore.utils.get_token_from_environment
    functionSourceFile: botocore.utils
    functionUses: 3
    functionsReached:
    - signing_name.strip
    - os.environ.get
    - signing_name.replace
    - botocore.utils._get_bearer_env_var_name
    - <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: signing_name.strip
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - signing_name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3626
    functionName: botocore.utils._get_bearer_env_var_name
    functionSourceFile: botocore.utils
    functionUses: 4
    functionsReached:
    - signing_name.replace
    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: signing_name.replace
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 3704
    functionName: botocore.utils.get_login_token_cache_directory
    functionSourceFile: botocore.utils
    functionUses: 50
    functionsReached:
    - os.path.expanduser
    - os.path.join
    - os.path.expandvars
    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.path.expandvars
    functionSourceFile: os
    functionUses: 56
    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 0x7f982ed8b790>
    argNames:
    - self
    - cache
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 3717
    functionName: botocore.utils.LoginTokenLoader.__init__
    functionSourceFile: botocore.utils
    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
    - session_name
    - token
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3722
    functionName: botocore.utils.LoginTokenLoader.save_token
    functionSourceFile: botocore.utils
    functionUses: 13
    functionsReached:
    - botocore.utils.generate_login_cache_key
    - hashlib.sha256
    - sign_in_session_name.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - session_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 3726
    functionName: botocore.utils.LoginTokenLoader.load_token
    functionSourceFile: botocore.utils
    functionUses: 15
    functionsReached:
    - botocore.utils.generate_login_cache_key
    - hashlib.sha256
    - sign_in_session_name.encode
    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: 2
    functionLinenumber: -1
    functionName: botocore.httpsession
    functionSourceFile: botocore.httpsession
    functionUses: 0
    functionsReached:
    - logging.getLogger
    - <builtin>.hasattr
    - warnings.simplefilter
    - warnings.catch_warnings
    - os.path.join
    - warnings.filterwarnings
    - botocore.compat.filter_ssl_warnings
    - os.path.dirname
    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.catch_warnings
    functionSourceFile: warnings
    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: warnings.simplefilter
    functionSourceFile: warnings
    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: 99
    functionName: botocore.httpsession.where
    functionSourceFile: botocore.httpsession
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - verify
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 103
    functionName: botocore.httpsession.get_cert_path
    functionSourceFile: botocore.httpsession
    functionUses: 38
    functionsReached:
    - logger.debug
    - certifi.where
    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: certifi.where
    functionSourceFile: certifi
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 5
    IfCount: 8
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f98303e2790>
    - <ast.Constant object at 0x7f98303e2220>
    - <ast.Constant object at 0x7f98303e2070>
    - <ast.Constant object at 0x7f98303e2a90>
    argNames:
    - ssl_version
    - cert_reqs
    - options
    - ciphers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 113
    functionName: botocore.httpsession.create_urllib3_context
    functionSourceFile: botocore.httpsession
    functionUses: 90
    functionsReached:
    - <builtin>.getattr
    - os.environ.get
    - urllib3.util.ssl_.SSLContext
    - <builtin>.hasattr
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    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: urllib3.contrib.pyopenssl.orig_util_SSLContext
    functionSourceFile: urllib3
    functionUses: 91
    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: urllib3.util.ssl_.SSLContext
    functionSourceFile: urllib3
    functionUses: 91
    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: urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    functionSourceFile: urllib3
    functionUses: 91
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 163
    functionName: botocore.httpsession.create_urllib3_context.disable_check_hostname
    functionSourceFile: botocore.httpsession
    functionUses: 91
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - val
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 193
    functionName: botocore.httpsession.ensure_boolean
    functionSourceFile: botocore.httpsession
    functionUses: 37
    functionsReached:
    - val.lower
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - proxy_url
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 204
    functionName: botocore.httpsession.mask_proxy_url
    functionSourceFile: botocore.httpsession
    functionUses: 0
    functionsReached:
    - urllib.parse.urlparse
    - proxy_url.replace
    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: proxy_url.replace
    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:
    - host
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 222
    functionName: botocore.httpsession._is_ipaddress
    functionSourceFile: botocore.httpsession
    functionUses: 40
    functionsReached:
    - IPV6_ADDRZ_RE.match
    - urllib3.util.ssl_.is_ipaddress
    - <builtin>.bool
    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: urllib3.util.ssl_.is_ipaddress
    functionSourceFile: urllib3
    functionUses: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9831544a90>
    - <ast.Constant object at 0x7f9831544e20>
    argNames:
    - self
    - proxies
    - proxies_settings
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 235
    functionName: botocore.httpsession.ProxyConfiguration.__init__
    functionSourceFile: botocore.httpsession
    functionUses: 52
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - url
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 244
    functionName: botocore.httpsession.ProxyConfiguration.proxy_url_for
    functionSourceFile: botocore.httpsession
    functionUses: 37
    functionsReached:
    - urllib.parse.urlparse
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - proxy_url.startswith
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    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: botocore.httpsession.ProxyConfiguration._proxies.get
    functionSourceFile: botocore
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - proxy_url
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 265
    functionName: botocore.httpsession.ProxyConfiguration._fix_proxy_url
    functionSourceFile: botocore.httpsession
    functionUses: 38
    functionsReached:
    - proxy_url.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - proxy_url
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 252
    functionName: botocore.httpsession.ProxyConfiguration.proxy_headers_for
    functionSourceFile: botocore.httpsession
    functionUses: 39
    functionsReached:
    - base64.b64encode
    - base64.b64encode.strip
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - urllib.parse.unquote
    - auth_str.encode
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - url
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 278
    functionName: botocore.httpsession.ProxyConfiguration._get_auth_from_url
    functionSourceFile: botocore.httpsession
    functionUses: 40
    functionsReached:
    - urllib.parse.urlparse
    - urllib.parse.unquote
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - username
    - password
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 273
    functionName: botocore.httpsession.ProxyConfiguration._construct_basic_auth
    functionSourceFile: botocore.httpsession
    functionUses: 40
    functionsReached:
    - auth_str.encode
    - base64.b64encode.strip
    - base64.b64encode
    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: 262
    functionName: botocore.httpsession.ProxyConfiguration.settings
    functionSourceFile: botocore.httpsession
    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: proxy_url.startswith
    functionSourceFile: <builtin>
    functionUses: 39
    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: auth_str.encode
    functionSourceFile: <builtin>
    functionUses: 41
    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.strip
    functionSourceFile: base64
    functionUses: 41
    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
    functionSourceFile: urllib
    functionUses: 50
    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: urllib3.Timeout
    functionSourceFile: urllib3
    functionUses: 52
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - extra_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 347
    functionName: botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    functionSourceFile: botocore.httpsession
    functionUses: 87
    functionsReached:
    - <builtin>.getattr
    - os.environ.get
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.util.ssl_.SSLContext
    - botocore.httpsession.create_urllib3_context
    - <builtin>.hasattr
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - pool_manager_kwargs.update
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    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: urllib3.PoolManager
    functionSourceFile: urllib3
    functionUses: 52
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 337
    functionName: botocore.httpsession.URLLib3Session._proxies_kwargs
    functionSourceFile: botocore.httpsession
    functionUses: 40
    functionsReached:
    - proxies_kwargs.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: proxies_kwargs.items
    functionSourceFile: <builtin>
    functionUses: 41
    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: 361
    functionName: botocore.httpsession.URLLib3Session._get_ssl_context
    functionSourceFile: botocore.httpsession
    functionUses: 89
    functionsReached:
    - <builtin>.getattr
    - os.environ.get
    - urllib3.util.ssl_.SSLContext
    - botocore.httpsession.create_urllib3_context
    - <builtin>.hasattr
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    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: pool_manager_kwargs.update
    functionSourceFile: <builtin>
    functionUses: 88
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - proxy_url
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 364
    functionName: botocore.httpsession.URLLib3Session._get_proxy_manager
    functionSourceFile: botocore.httpsession
    functionUses: 38
    functionsReached:
    - base64.b64encode
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - base64.b64encode.strip
    - <builtin>.hasattr
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - <builtin>.bool
    - urllib3.util.ssl_.SSLContext
    - urllib3.proxy_from_url
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - proxy_manager_kwargs.update
    - <builtin>.isinstance
    - urllib.parse.unquote
    - <builtin>.getattr
    - urllib3.util.ssl_.is_ipaddress
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - auth_str.encode
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - os.environ.get
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - urllib.parse.urlparse
    - proxies_kwargs.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - proxy_url
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 397
    functionName: botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    functionSourceFile: botocore.httpsession
    functionUses: 39
    functionsReached:
    - <builtin>.getattr
    - urllib3.util.ssl_.is_ipaddress
    - os.environ.get
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.httpsession.create_urllib3_context
    - <builtin>.hasattr
    - <builtin>.bool
    - urllib3.util.ssl_.SSLContext
    - botocore.httpsession._is_ipaddress
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - <builtin>.isinstance
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    linkageType: pythonLinkage
    raised:
    - InvalidProxiesConfigError
    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: proxy_manager_kwargs.update
    functionSourceFile: <builtin>
    functionUses: 39
    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: urllib3.proxy_from_url
    functionSourceFile: urllib3
    functionUses: 39
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - url
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 380
    functionName: botocore.httpsession.URLLib3Session._path_url
    functionSourceFile: botocore.httpsession
    functionUses: 38
    functionsReached:
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - conn
    - url
    - verify
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 389
    functionName: botocore.httpsession.URLLib3Session._setup_ssl_cert
    functionSourceFile: botocore.httpsession
    functionUses: 37
    functionsReached:
    - logger.debug
    - botocore.httpsession.get_cert_path
    - certifi.where
    - url.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: url.lower
    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: urllib3.util.url.parse_url
    functionSourceFile: urllib3
    functionUses: 40
    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: urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    functionSourceFile: urllib3
    functionUses: 40
    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: urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    functionSourceFile: urllib3
    functionUses: 40
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830b4b1c0>
    argNames:
    - self
    - url
    - proxy_url
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 423
    functionName: botocore.httpsession.URLLib3Session._get_connection_manager
    functionSourceFile: botocore.httpsession
    functionUses: 37
    functionsReached:
    - base64.b64encode
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - base64.b64encode.strip
    - <builtin>.hasattr
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - <builtin>.bool
    - urllib3.util.ssl_.SSLContext
    - urllib3.proxy_from_url
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - proxy_manager_kwargs.update
    - urllib.parse.unquote
    - <builtin>.isinstance
    - <builtin>.getattr
    - urllib3.util.ssl_.is_ipaddress
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - auth_str.encode
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - os.environ.get
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - urllib.parse.urlparse
    - proxies_kwargs.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - url
    - proxy_url
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 430
    functionName: botocore.httpsession.URLLib3Session._get_request_target
    functionSourceFile: botocore.httpsession
    functionUses: 37
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - url.startswith
    - urllib.parse.urlparse
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - proxies_kwargs.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: url.startswith
    functionSourceFile: <builtin>
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 450
    functionName: botocore.httpsession.URLLib3Session._chunked
    functionSourceFile: botocore.httpsession
    functionUses: 37
    functionsReached:
    - botocore.compat.ensure_bytes
    - headers.get
    - io.BytesIO.encode
    - io.BytesIO.lower
    - <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: io.BytesIO.lower
    functionSourceFile: io
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 455
    functionName: botocore.httpsession.URLLib3Session.close
    functionSourceFile: botocore.httpsession
    functionUses: 1
    functionsReached:
    - urllib3.PoolManager.clear
    - manager.clear
    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: urllib3.PoolManager.clear
    functionSourceFile: urllib3
    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: manager.clear
    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: urllib3.PoolManager.connection_from_url
    functionSourceFile: urllib3
    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: urllib3.util.retry.Retry
    functionSourceFile: urllib3
    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: conn.urlopen
    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: 0
    functionLinenumber: -1
    functionName: botocore.awsrequest.AWSResponse
    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: 1
    functionLinenumber: -1
    functionName: botocore.awsrequest
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - logging.getLogger
    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: 40
    functionName: botocore.awsrequest.AWSHTTPResponse.__init__
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - http.client.HTTPResponse.__init__
    - kwargs.pop
    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.client.HTTPResponse.__init__
    functionSourceFile: http
    functionUses: 1
    functionsReached: []
    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: 44
    functionName: botocore.awsrequest.AWSHTTPResponse._read_status
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - http.client.HTTPResponse._read_status
    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.client.HTTPResponse._read_status
    functionSourceFile: http
    functionUses: 1
    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: 1
    functionLinenumber: 66
    functionName: botocore.awsrequest.AWSConnection.__init__
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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: 1
    functionLinenumber: 79
    functionName: botocore.awsrequest.AWSConnection.close
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f982f9852e0>
    - <ast.Constant object at 0x7f982f9854f0>
    argNames:
    - self
    - method
    - url
    - body
    - headers
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 87
    functionName: botocore.awsrequest.AWSConnection.request
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - headers.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - mixed_buffer
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 100
    functionName: botocore.awsrequest.AWSConnection._convert_to_bytes
    functionSourceFile: botocore.awsrequest
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - chunk.encode
    - bytes_buffer.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: chunk.encode
    functionSourceFile: <builtin>
    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: bytes_buffer.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830afb490>
    argNames:
    - self
    - message_body
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 113
    functionName: botocore.awsrequest.AWSConnection._send_output
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - logger.debug
    - chunk.encode
    - botocore.awsrequest.AWSConnection._consume_headers
    - urllib3.util.wait_for_read
    - functools.partial
    - bytes_buffer.append
    - fp.readline
    - botocore.awsrequest.AWSConnection._is_100_continue_status
    - <builtin>.isinstance
    - <builtin>.int
    - botocore.awsrequest.AWSConnection._send_message_body
    - botocore.awsrequest.AWSConnection._handle_expect_response
    - botocore.awsrequest.AWSConnection._convert_to_bytes
    - fp.close
    - <builtin>.super
    - <builtin>.len
    - botocore.awsrequest.AWSConnection.send
    - maybe_status_line.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - str
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 211
    functionName: botocore.awsrequest.AWSConnection.send
    functionSourceFile: botocore.awsrequest
    functionUses: 3
    functionsReached:
    - <builtin>.super
    - logger.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: urllib3.util.wait_for_read
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - message_body
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 163
    functionName: botocore.awsrequest.AWSConnection._handle_expect_response
    functionSourceFile: botocore.awsrequest
    functionUses: 1
    functionsReached:
    - logger.debug
    - botocore.awsrequest.AWSConnection._consume_headers
    - functools.partial
    - fp.readline
    - botocore.awsrequest.AWSConnection._is_100_continue_status
    - <builtin>.int
    - botocore.awsrequest.AWSConnection._send_message_body
    - fp.close
    - <builtin>.super
    - <builtin>.len
    - botocore.awsrequest.AWSConnection.send
    - maybe_status_line.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 151
    functionName: botocore.awsrequest.AWSConnection._consume_headers
    functionSourceFile: botocore.awsrequest
    functionUses: 2
    functionsReached:
    - fp.readline
    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: fp.readline
    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: maybe_status_line.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: 2
    argDefaultValues: []
    argNames:
    - self
    - maybe_status_line
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 225
    functionName: botocore.awsrequest.AWSConnection._is_100_continue_status
    functionSourceFile: botocore.awsrequest
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - maybe_status_line.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - message_body
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 207
    functionName: botocore.awsrequest.AWSConnection._send_message_body
    functionSourceFile: botocore.awsrequest
    functionUses: 2
    functionsReached:
    - <builtin>.super
    - logger.debug
    - botocore.awsrequest.AWSConnection.send
    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: fp.close
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    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 0x7f9830944430>
    - <ast.Constant object at 0x7f98309440d0>
    argNames:
    - request_dict
    - endpoint_url
    - context
    - user_agent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 251
    functionName: botocore.awsrequest.prepare_request_dict
    functionSourceFile: botocore.awsrequest
    functionUses: 6
    functionsReached:
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - r.get
    - url_path.startswith
    - botocore.awsrequest._urljoin
    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: r.get
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - endpoint_url
    - url_path
    - host_prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 317
    functionName: botocore.awsrequest._urljoin
    functionSourceFile: botocore.awsrequest
    functionUses: 7
    functionsReached:
    - urllib.parse.urlsplit
    - url_path.startswith
    - urllib.parse.urlunsplit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - request_dict
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 292
    functionName: botocore.awsrequest.create_request_object
    functionSourceFile: botocore.awsrequest
    functionUses: 6
    functionsReached:
    - http.client.HTTPMessage.__init__
    - botocore.awsrequest.AWSRequest.__init__
    - headers.items
    - r.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: url_path.startswith
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - original
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 366
    functionName: botocore.awsrequest.AWSRequestPreparer.prepare
    functionSourceFile: botocore.awsrequest
    functionUses: 31
    functionsReached:
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - urllib.parse.urlencode
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.list
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - logger.debug
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - <builtin>.isinstance
    - delim.join
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - <builtin>.len
    - body.tell
    - collections.abc.MutableMapping.update
    - original.params.items
    - <builtin>.type
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - http.client.HTTPMessage.items
    - key.encode
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - original
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 375
    functionName: botocore.awsrequest.AWSRequestPreparer._prepare_url
    functionSourceFile: botocore.awsrequest
    functionUses: 32
    functionsReached:
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - delim.join
    - <builtin>.list
    - urllib.parse.urlparse
    - original.params.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - original
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 417
    functionName: botocore.awsrequest.AWSRequestPreparer._prepare_body
    functionSourceFile: botocore.awsrequest
    functionUses: 32
    functionsReached:
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - urllib.parse.urlencode.items
    - urllib.parse.urlencode
    - <builtin>.isinstance
    - value.encode
    - key.encode
    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 0x7f9830769250>
    argNames:
    - self
    - original
    - prepared_body
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 388
    functionName: botocore.awsrequest.AWSRequestPreparer._prepare_headers
    functionSourceFile: botocore.awsrequest
    functionUses: 32
    functionsReached:
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - logger.debug
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - <builtin>.hasattr
    - botocore.utils.determine_content_length
    - body.tell
    - collections.abc.MutableMapping.update
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - http.client.HTTPMessage.items
    - <builtin>.len
    - <builtin>.type
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - method
    - url
    - headers
    - body
    - stream_output
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 504
    functionName: botocore.awsrequest.AWSPreparedRequest.__init__
    functionSourceFile: ''
    functionUses: 32
    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: original.params.items
    functionSourceFile: <builtin>
    functionUses: 33
    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
    functionSourceFile: urllib
    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: delim.join
    functionSourceFile: <builtin>
    functionUses: 33
    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.client.HTTPMessage.items
    functionSourceFile: http
    functionUses: 34
    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: 1
    functionLinenumber: 612
    functionName: botocore.awsrequest.HeadersDict.__init__
    functionSourceFile: botocore.awsrequest
    functionUses: 38
    functionsReached:
    - collections.abc.MutableMapping.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - body
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 429
    functionName: botocore.awsrequest.AWSRequestPreparer._determine_content_length
    functionSourceFile: botocore.awsrequest
    functionUses: 33
    functionsReached:
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - <builtin>.hasattr
    - botocore.utils.determine_content_length
    - body.tell
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - item
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 409
    functionName: botocore.awsrequest.AWSRequestPreparer._to_utf8
    functionSourceFile: botocore.awsrequest
    functionUses: 33
    functionsReached:
    - key.encode
    - <builtin>.isinstance
    - value.encode
    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: 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: urllib.parse.urlencode.items
    functionSourceFile: urllib
    functionUses: 33
    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.client.HTTPMessage.__init__
    functionSourceFile: ''
    functionUses: 45
    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: 41
    functionsReached: []
    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: 7
    functionLinenumber: 484
    functionName: botocore.awsrequest.AWSRequest.body
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - botocore.awsrequest.AWSRequest.__init__.data.encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - urllib.parse.urlencode
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.list
    - botocore.awsrequest.AWSRequest.data.encode
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - logger.debug
    - botocore.awsrequest.AWSRequest.prepare
    - urllib.parse.urlencode.items
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - <builtin>.isinstance
    - delim.join
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - urllib.parse.urlencode.encode
    - <builtin>.len
    - body.tell
    - collections.abc.MutableMapping.update
    - original.params.items
    - <builtin>.type
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - http.client.HTTPMessage.items
    - key.encode
    - urllib.parse.urlparse
    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.encode
    functionSourceFile: urllib
    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: botocore.awsrequest.AWSRequest.data.encode
    functionSourceFile: botocore
    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: botocore.awsrequest.AWSRequest.__init__.data.encode
    functionSourceFile: botocore
    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: 0
    functionLinenumber: 511
    functionName: botocore.awsrequest.AWSPreparedRequest.__repr__
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 518
    functionName: botocore.awsrequest.AWSPreparedRequest.reset_stream
    functionSourceFile: botocore.awsrequest
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - logger.debug
    - urllib.parse.urlencode.seek
    linkageType: pythonLinkage
    raised:
    - UnseekableStreamError
    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.seek
    functionSourceFile: urllib
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - url
    - status_code
    - headers
    - raw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 555
    functionName: botocore.awsrequest.AWSResponse.__init__
    functionSourceFile: botocore.awsrequest
    functionUses: 3
    functionsReached:
    - collections.abc.MutableMapping.update
    - botocore.awsrequest.HeadersDict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 564
    functionName: botocore.awsrequest.AWSResponse.content
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 577
    functionName: botocore.awsrequest.AWSResponse.text
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - email.message.Message
    - message.get_param
    - botocore.utils.get_encoding_from_headers
    - headers.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 592
    functionName: botocore.awsrequest._HeaderKey.__init__
    functionSourceFile: botocore.awsrequest
    functionUses: 3
    functionsReached:
    - key.lower
    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: 596
    functionName: botocore.awsrequest._HeaderKey.__hash__
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    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>.hash
    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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 599
    functionName: botocore.awsrequest._HeaderKey.__eq__
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    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: 602
    functionName: botocore.awsrequest._HeaderKey.__str__
    functionSourceFile: botocore.awsrequest
    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: 605
    functionName: botocore.awsrequest._HeaderKey.__repr__
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - <builtin>.repr
    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: 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: collections.abc.MutableMapping.update
    functionSourceFile: collections
    functionUses: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 616
    functionName: botocore.awsrequest.HeadersDict.__setitem__
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - key.lower
    - botocore.awsrequest._HeaderKey.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 619
    functionName: botocore.awsrequest.HeadersDict.__getitem__
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - key.lower
    - botocore.awsrequest._HeaderKey.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 622
    functionName: botocore.awsrequest.HeadersDict.__delitem__
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - key.lower
    - botocore.awsrequest._HeaderKey.__init__
    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: 625
    functionName: botocore.awsrequest.HeadersDict.__iter__
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - <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: 628
    functionName: botocore.awsrequest.HeadersDict.__len__
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - <builtin>.len
    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: 631
    functionName: botocore.awsrequest.HeadersDict.__repr__
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - <builtin>.repr
    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: 634
    functionName: botocore.awsrequest.HeadersDict.copy
    functionSourceFile: botocore.awsrequest
    functionUses: 0
    functionsReached:
    - collections.abc.MutableMapping.update
    - collections.abc.MutableMapping.items
    - botocore.awsrequest.HeadersDict.__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: collections.abc.MutableMapping.items
    functionSourceFile: collections
    functionUses: 45
    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: botocore.plugin
    functionSourceFile: botocore.plugin
    functionUses: 0
    functionsReached:
    - contextvars.ContextVar
    - 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: 1
    functionLinenumber: 40
    functionName: botocore.plugin.get_plugin_context
    functionSourceFile: botocore.plugin
    functionUses: 3
    functionsReached:
    - contextvars.ContextVar.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 56
    functionName: botocore.plugin.get_botocore_plugins
    functionSourceFile: botocore.plugin
    functionUses: 2
    functionsReached:
    - os.environ.get
    - botocore.plugin.get_plugin_context
    - contextvars.ContextVar.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - client
    - plugins
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 67
    functionName: botocore.plugin.load_client_plugins
    functionSourceFile: botocore.plugin
    functionUses: 2
    functionsReached:
    - plugins.items
    - log.debug
    - module.initialize_client_plugin
    - importlib.import_module
    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: plugins.items
    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: log.debug
    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: importlib.import_module
    functionSourceFile: importlib
    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: module.initialize_client_plugin
    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: botocore.model
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - <builtin>.object
    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>.object
    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: 2
    functionLinenumber: 52
    functionName: botocore.model.ServiceId.hyphenize
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - service_id.replace
    - botocore.utils.hyphenize_service_id
    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 0x7f98303e2460>
    argNames:
    - self
    - shape_name
    - shape_model
    - shape_resolver
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 102
    functionName: botocore.model.Shape.__init__
    functionSourceFile: botocore.model
    functionUses: 1
    functionsReached:
    - shape_model.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: shape_model.get
    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: 1
    functionLinenumber: -1
    functionName: botocore.model.Shape
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.utils.CachedProperty
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 137
    functionName: botocore.model.Shape.serialization
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - serialization.pop
    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: serialization.pop
    functionSourceFile: <builtin>
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 170
    functionName: botocore.model.Shape.metadata
    functionSourceFile: botocore.model
    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: 200
    functionName: botocore.model.Shape.required_members
    functionSourceFile: botocore.model
    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
    - shape_ref
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 210
    functionName: botocore.model.Shape._resolve_shape_ref
    functionSourceFile: botocore.model
    functionUses: 4
    functionsReached:
    - botocore.model.UnresolvableShapeMap.resolve_shape_ref
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - shape_ref
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 812
    functionName: botocore.model.UnresolvableShapeMap.resolve_shape_ref
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    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: 0
    functionLinenumber: 213
    functionName: botocore.model.Shape.__repr__
    functionSourceFile: botocore.model
    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: 217
    functionName: botocore.model.Shape.event_stream_name
    functionSourceFile: botocore.model
    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: 1
    functionLinenumber: -1
    functionName: botocore.model.StructureShape
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.utils.CachedProperty
    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: 223
    functionName: botocore.model.StructureShape.members
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - collections.OrderedDict
    - members.items
    - botocore.model.UnresolvableShapeMap.resolve_shape_ref
    - botocore.model.Shape._resolve_shape_ref
    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: members.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    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: 237
    functionName: botocore.model.StructureShape.event_stream_name
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - member.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 244
    functionName: botocore.model.StructureShape.error_code
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - error_metadata.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: error_metadata.get
    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: 0
    functionLinenumber: 255
    functionName: botocore.model.StructureShape.is_document_type
    functionSourceFile: botocore.model
    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: 259
    functionName: botocore.model.StructureShape.is_tagged_union
    functionSourceFile: botocore.model
    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: 1
    functionLinenumber: -1
    functionName: botocore.model.ListShape
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.utils.CachedProperty
    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: 265
    functionName: botocore.model.ListShape.member
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.UnresolvableShapeMap.resolve_shape_ref
    - botocore.model.Shape._resolve_shape_ref
    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: botocore.model.MapShape
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.utils.CachedProperty
    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: 271
    functionName: botocore.model.MapShape.key
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.UnresolvableShapeMap.resolve_shape_ref
    - botocore.model.Shape._resolve_shape_ref
    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: 275
    functionName: botocore.model.MapShape.value
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.UnresolvableShapeMap.resolve_shape_ref
    - botocore.model.Shape._resolve_shape_ref
    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: botocore.model.StringShape
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.utils.CachedProperty
    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: 281
    functionName: botocore.model.StringShape.enum
    functionSourceFile: botocore.model
    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: service_description.get
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - shape_map
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 761
    functionName: botocore.model.ShapeResolver.__init__
    functionSourceFile: ''
    functionUses: 7
    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 0x7f98301077f0>
    argNames:
    - self
    - shape_name
    - member_traits
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 339
    functionName: botocore.model.ServiceModel.shape_for
    functionSourceFile: botocore.model
    functionUses: 1
    functionsReached:
    - botocore.model.ShapeResolver.get_shape_by_name
    - shape_model.copy
    - shape_model.update
    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 0x7f9830cf8490>
    argNames:
    - self
    - shape_name
    - member_traits
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 765
    functionName: botocore.model.ShapeResolver.get_shape_by_name
    functionSourceFile: botocore.model
    functionUses: 7
    functionsReached:
    - shape_model.copy
    - shape_model.update
    linkageType: pythonLinkage
    raised:
    - NoShapeFoundError
    - InvalidShapeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - error_code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 344
    functionName: botocore.model.ServiceModel.shape_for_error_code
    functionSourceFile: botocore.model
    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: botocore.model.ServiceModel
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.utils.instance_cache
    - botocore.utils.CachedProperty
    - functools.wraps
    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: 348
    functionName: botocore.model.ServiceModel._error_code_cache
    functionSourceFile: botocore.model
    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
    - shape_ref
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 355
    functionName: botocore.model.ServiceModel.resolve_shape_ref
    functionSourceFile: botocore.model
    functionUses: 3
    functionsReached:
    - botocore.model.ShapeResolver.resolve_shape_ref
    - shape_model.update
    - shape_ref.copy
    - <builtin>.len
    - botocore.model.ShapeResolver.get_shape_by_name
    - shape_model.copy
    - member_traits.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - shape_ref
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 782
    functionName: botocore.model.ShapeResolver.resolve_shape_ref
    functionSourceFile: botocore.model
    functionUses: 4
    functionsReached:
    - shape_model.update
    - shape_ref.copy
    - <builtin>.len
    - botocore.model.ShapeResolver.get_shape_by_name
    - shape_model.copy
    - member_traits.pop
    linkageType: pythonLinkage
    raised:
    - InvalidShapeReferenceError
    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: 359
    functionName: botocore.model.ServiceModel.shape_names
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 363
    functionName: botocore.model.ServiceModel.error_shapes
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - shape_model.update
    - error_shapes.append
    - error_shape.metadata.get
    - botocore.model.ServiceModel.shape_for
    - botocore.model.ShapeResolver.get_shape_by_name
    - shape_model.copy
    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_shape.metadata.get
    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: error_shapes.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:
    - <ast.Constant object at 0x7f9830ad5b50>
    argNames:
    - self
    - operation_model
    - service_model
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 518
    functionName: botocore.model.OperationModel.__init__
    functionSourceFile: botocore.model
    functionUses: 10
    functionsReached:
    - operation_model.get
    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: 380
    functionName: botocore.model.ServiceModel.documentation
    functionSourceFile: botocore.model
    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: 384
    functionName: botocore.model.ServiceModel.operation_names
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 388
    functionName: botocore.model.ServiceModel.service_name
    functionSourceFile: botocore.model
    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: 405
    functionName: botocore.model.ServiceModel.service_id
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.ServiceModel._get_metadata_property
    linkageType: pythonLinkage
    raised:
    - MissingServiceIdError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 487
    functionName: botocore.model.ServiceModel._get_metadata_property
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - UndefinedModelAttributeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 412
    functionName: botocore.model.ServiceModel.signing_name
    functionSourceFile: botocore.model
    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: 424
    functionName: botocore.model.ServiceModel.api_version
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.ServiceModel._get_metadata_property
    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: 428
    functionName: botocore.model.ServiceModel.protocol
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.ServiceModel._get_metadata_property
    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: 432
    functionName: botocore.model.ServiceModel.protocols
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.ServiceModel._get_metadata_property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 436
    functionName: botocore.model.ServiceModel.resolved_protocol
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - UnsupportedServiceProtocolsError
    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: 454
    functionName: botocore.model.ServiceModel.endpoint_prefix
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.ServiceModel._get_metadata_property
    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: 3
    functionLinenumber: 458
    functionName: botocore.model.ServiceModel.endpoint_discovery_operation
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - operation_model.get
    - botocore.model.OperationModel.__init__
    - botocore.model.ServiceModel.operation_model
    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: 3
    functionLinenumber: 465
    functionName: botocore.model.ServiceModel.endpoint_discovery_required
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - operation_model.get
    - botocore.model.OperationModel.__init__
    - botocore.model.ServiceModel.operation_model
    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: 476
    functionName: botocore.model.ServiceModel.client_context_parameters
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - params.items
    - typing.NamedTuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 506
    functionName: botocore.model.ServiceModel.signature_version
    functionSourceFile: botocore.model
    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: 510
    functionName: botocore.model.ServiceModel.is_query_compatible
    functionSourceFile: botocore.model
    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: 513
    functionName: botocore.model.ServiceModel.__repr__
    functionSourceFile: botocore.model
    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: operation_model.get
    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: 1
    functionLinenumber: -1
    functionName: botocore.model.OperationModel
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.utils.CachedProperty
    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: 0
    functionLinenumber: 556
    functionName: botocore.model.OperationModel.name
    functionSourceFile: botocore.model
    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: 563
    functionName: botocore.model.OperationModel.wire_name
    functionSourceFile: botocore.model
    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: 577
    functionName: botocore.model.OperationModel.service_model
    functionSourceFile: botocore.model
    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: 581
    functionName: botocore.model.OperationModel.documentation
    functionSourceFile: botocore.model
    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: 585
    functionName: botocore.model.OperationModel.deprecated
    functionSourceFile: botocore.model
    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: 589
    functionName: botocore.model.OperationModel.endpoint_discovery
    functionSourceFile: botocore.model
    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: 595
    functionName: botocore.model.OperationModel.is_endpoint_discovery_operation
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached: []
    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: 4
    functionLinenumber: 599
    functionName: botocore.model.OperationModel.input_shape
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.ShapeResolver.resolve_shape_ref
    - shape_model.update
    - shape_ref.copy
    - botocore.model.ServiceModel.resolve_shape_ref
    - <builtin>.len
    - botocore.model.ShapeResolver.get_shape_by_name
    - shape_model.copy
    - member_traits.pop
    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: 4
    functionLinenumber: 609
    functionName: botocore.model.OperationModel.output_shape
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.ShapeResolver.resolve_shape_ref
    - shape_model.update
    - shape_ref.copy
    - botocore.model.ServiceModel.resolve_shape_ref
    - <builtin>.len
    - botocore.model.ShapeResolver.get_shape_by_name
    - shape_model.copy
    - member_traits.pop
    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: 620
    functionName: botocore.model.OperationModel.idempotent_members
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - input_shape.members.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: input_shape.members.items
    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: 1
    functionLinenumber: 633
    functionName: botocore.model.OperationModel.static_context_parameters
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - params.items
    - props.get
    - typing.NamedTuple.__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: props.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    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: 641
    functionName: botocore.model.OperationModel.context_parameters
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - typing.NamedTuple.__init__
    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: 656
    functionName: botocore.model.OperationModel.operation_context_parameters
    functionSourceFile: botocore.model
    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: 660
    functionName: botocore.model.OperationModel.request_compression
    functionSourceFile: botocore.model
    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: 664
    functionName: botocore.model.OperationModel.auth
    functionSourceFile: botocore.model
    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: 668
    functionName: botocore.model.OperationModel.auth_type
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached: []
    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: 672
    functionName: botocore.model.OperationModel.resolved_auth_type
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.auth.resolve_auth_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - auth_trait
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1139
    functionName: botocore.auth.resolve_auth_type
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - UnsupportedSignatureVersionError
    - UnknownSignatureVersionError
    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: 678
    functionName: botocore.model.OperationModel.unsigned_payload
    functionSourceFile: botocore.model
    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: 4
    functionLinenumber: 682
    functionName: botocore.model.OperationModel.error_shapes
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.ShapeResolver.resolve_shape_ref
    - shape_model.update
    - shape_ref.copy
    - <builtin>.list
    - botocore.model.ServiceModel.resolve_shape_ref
    - <builtin>.len
    - botocore.model.ShapeResolver.get_shape_by_name
    - shape_model.copy
    - member_traits.pop
    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: 687
    functionName: botocore.model.OperationModel.endpoint
    functionSourceFile: botocore.model
    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: 691
    functionName: botocore.model.OperationModel.http_checksum_required
    functionSourceFile: botocore.model
    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: 695
    functionName: botocore.model.OperationModel.http_checksum
    functionSourceFile: botocore.model
    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: 699
    functionName: botocore.model.OperationModel.has_event_stream_input
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.OperationModel._get_event_stream
    - botocore.model.OperationModel.get_event_stream_input
    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: 706
    functionName: botocore.model.OperationModel.get_event_stream_input
    functionSourceFile: botocore.model
    functionUses: 1
    functionsReached:
    - botocore.model.OperationModel._get_event_stream
    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: 703
    functionName: botocore.model.OperationModel.has_event_stream_output
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.OperationModel._get_event_stream
    - botocore.model.OperationModel.get_event_stream_output
    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: 709
    functionName: botocore.model.OperationModel.get_event_stream_output
    functionSourceFile: botocore.model
    functionUses: 1
    functionsReached:
    - botocore.model.OperationModel._get_event_stream
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 712
    functionName: botocore.model.OperationModel._get_event_stream
    functionSourceFile: ''
    functionUses: 4
    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: 722
    functionName: botocore.model.OperationModel.has_streaming_input
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - shape.serialization.get
    - botocore.model.OperationModel.get_streaming_input
    - botocore.model.OperationModel._get_streaming_body
    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: 729
    functionName: botocore.model.OperationModel.get_streaming_input
    functionSourceFile: botocore.model
    functionUses: 1
    functionsReached:
    - shape.serialization.get
    - botocore.model.OperationModel._get_streaming_body
    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: 726
    functionName: botocore.model.OperationModel.has_streaming_output
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.OperationModel.get_streaming_output
    - shape.serialization.get
    - botocore.model.OperationModel._get_streaming_body
    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: 732
    functionName: botocore.model.OperationModel.get_streaming_output
    functionSourceFile: botocore.model
    functionUses: 1
    functionsReached:
    - shape.serialization.get
    - botocore.model.OperationModel._get_streaming_body
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 735
    functionName: botocore.model.OperationModel._get_streaming_body
    functionSourceFile: botocore.model
    functionUses: 4
    functionsReached:
    - shape.serialization.get
    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: 746
    functionName: botocore.model.OperationModel.__repr__
    functionSourceFile: botocore.model
    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: shape_model.copy
    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: shape_model.update
    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: shape_ref.copy
    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: member_traits.pop
    functionSourceFile: <builtin>
    functionUses: 5
    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 0x7f9830ce39d0>
    argNames:
    - self
    - shape_name
    - member_traits
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 807
    functionName: botocore.model.UnresolvableShapeMap.get_shape_by_name
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a33100>
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 868
    functionName: botocore.model.DenormalizedStructureBuilder.__init__
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.ShapeNameGenerator.new_shape_name
    - type_name.capitalize
    - botocore.model.ShapeNameGenerator.__init__
    - collections.OrderedDict
    - collections.defaultdict
    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: 975
    functionName: botocore.model.ShapeNameGenerator.__init__
    functionSourceFile: botocore.model
    functionUses: 1
    functionsReached:
    - collections.defaultdict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - type_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 978
    functionName: botocore.model.ShapeNameGenerator.new_shape_name
    functionSourceFile: botocore.model
    functionUses: 7
    functionsReached:
    - type_name.capitalize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - members
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 874
    functionName: botocore.model.DenormalizedStructureBuilder.with_members
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 886
    functionName: botocore.model.DenormalizedStructureBuilder.build_model
    functionSourceFile: botocore.model
    functionUses: 0
    functionsReached:
    - botocore.model.DenormalizedStructureBuilder._get_shape_name
    - botocore.model.ShapeNameGenerator.new_shape_name
    - botocore.model.DenormalizedStructureBuilder._build_list
    - botocore.model.DenormalizedStructureBuilder._build_initial_shape
    - type_name.capitalize
    - botocore.model.DenormalizedStructureBuilder._build_structure
    - model.get
    - botocore.model.ShapeResolver.__init__
    - collections.OrderedDict
    - botocore.model.DenormalizedStructureBuilder._build_model
    - botocore.model.Shape.__init__
    - botocore.model.DenormalizedStructureBuilder._build_map
    - botocore.model.DenormalizedStructureBuilder._build_scalar
    - shape_model.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - model
    - shapes
    - shape_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 906
    functionName: botocore.model.DenormalizedStructureBuilder._build_model
    functionSourceFile: botocore.model
    functionUses: 4
    functionsReached:
    - botocore.model.DenormalizedStructureBuilder._get_shape_name
    - botocore.model.ShapeNameGenerator.new_shape_name
    - botocore.model.DenormalizedStructureBuilder._build_list
    - botocore.model.DenormalizedStructureBuilder._build_initial_shape
    - type_name.capitalize
    - botocore.model.DenormalizedStructureBuilder._build_structure
    - model.get
    - collections.OrderedDict
    - botocore.model.DenormalizedStructureBuilder._build_model
    - botocore.model.DenormalizedStructureBuilder._build_map
    - botocore.model.DenormalizedStructureBuilder._build_scalar
    linkageType: pythonLinkage
    raised:
    - InvalidShapeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - model
    - shapes
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 918
    functionName: botocore.model.DenormalizedStructureBuilder._build_structure
    functionSourceFile: botocore.model
    functionUses: 4
    functionsReached:
    - botocore.model.DenormalizedStructureBuilder._get_shape_name
    - botocore.model.ShapeNameGenerator.new_shape_name
    - botocore.model.DenormalizedStructureBuilder._build_list
    - botocore.model.DenormalizedStructureBuilder._build_initial_shape
    - type_name.capitalize
    - model.get
    - botocore.model.DenormalizedStructureBuilder._build_structure
    - collections.OrderedDict
    - botocore.model.DenormalizedStructureBuilder._build_model
    - botocore.model.DenormalizedStructureBuilder._build_map
    - botocore.model.DenormalizedStructureBuilder._build_scalar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - model
    - shapes
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 929
    functionName: botocore.model.DenormalizedStructureBuilder._build_list
    functionSourceFile: botocore.model
    functionUses: 4
    functionsReached:
    - botocore.model.DenormalizedStructureBuilder._get_shape_name
    - botocore.model.ShapeNameGenerator.new_shape_name
    - botocore.model.DenormalizedStructureBuilder._build_list
    - botocore.model.DenormalizedStructureBuilder._build_initial_shape
    - type_name.capitalize
    - botocore.model.DenormalizedStructureBuilder._build_structure
    - model.get
    - collections.OrderedDict
    - botocore.model.DenormalizedStructureBuilder._build_model
    - botocore.model.DenormalizedStructureBuilder._build_map
    - botocore.model.DenormalizedStructureBuilder._build_scalar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - model
    - shapes
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 936
    functionName: botocore.model.DenormalizedStructureBuilder._build_map
    functionSourceFile: botocore.model
    functionUses: 4
    functionsReached:
    - botocore.model.DenormalizedStructureBuilder._get_shape_name
    - botocore.model.ShapeNameGenerator.new_shape_name
    - botocore.model.DenormalizedStructureBuilder._build_list
    - botocore.model.DenormalizedStructureBuilder._build_initial_shape
    - type_name.capitalize
    - botocore.model.DenormalizedStructureBuilder._build_structure
    - model.get
    - collections.OrderedDict
    - botocore.model.DenormalizedStructureBuilder._build_model
    - botocore.model.DenormalizedStructureBuilder._build_map
    - botocore.model.DenormalizedStructureBuilder._build_scalar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - model
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 957
    functionName: botocore.model.DenormalizedStructureBuilder._build_scalar
    functionSourceFile: botocore.model
    functionUses: 5
    functionsReached:
    - botocore.model.DenormalizedStructureBuilder._build_initial_shape
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - model
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 946
    functionName: botocore.model.DenormalizedStructureBuilder._build_initial_shape
    functionSourceFile: ''
    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: model.get
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - model
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 960
    functionName: botocore.model.DenormalizedStructureBuilder._get_shape_name
    functionSourceFile: botocore.model
    functionUses: 5
    functionsReached:
    - botocore.model.ShapeNameGenerator.new_shape_name
    - type_name.capitalize
    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: 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: type_name.capitalize
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: botocore.auth
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - AUTH_TYPE_TO_SIGNATURE_VERSION.items
    - auth_scheme.split
    - logging.getLogger
    - AUTH_TYPE_MAPS.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - url
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 74
    functionName: botocore.auth._host_from_url
    functionSourceFile: botocore.auth
    functionUses: 10
    functionsReached:
    - urllib.parse.urlsplit
    - IPV6_ADDRZ_RE.match
    - UNSAFE_URL_CHARS.intersection
    - botocore.utils.is_valid_ipv6_endpoint_url
    - urllib.parse.urlparse
    - default_ports.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: default_ports.get
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - request
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 93
    functionName: botocore.auth._get_body_as_dict
    functionSourceFile: botocore.auth
    functionUses: 4
    functionsReached:
    - <builtin>.isinstance
    - data.decode
    - json.loads
    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.decode
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    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: 0
    functionLinenumber: 110
    functionName: botocore.auth.BaseSigner.add_auth
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - auth_token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 120
    functionName: botocore.auth.TokenSigner.__init__
    functionSourceFile: botocore.auth
    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
    - credentials
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 129
    functionName: botocore.auth.SigV2Auth.__init__
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - params
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 132
    functionName: botocore.auth.SigV2Auth.calc_signature
    functionSourceFile: botocore.auth
    functionUses: 1
    functionsReached:
    - base64.b64encode
    - logger.debug
    - lhmac.update
    - pairs.append
    - urllib.parse.urlsplit
    - <builtin>.sorted
    - hmac.new
    - lhmac.digest
    - urllib.parse.quote
    - value.encode
    - key.encode
    - <builtin>.len
    - <builtin>.str
    - string_to_sign.encode
    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: 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: pairs.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: string_to_sign.encode
    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: lhmac.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: lhmac.digest
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 160
    functionName: botocore.auth.SigV2Auth.add_auth
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - logger.debug
    - lhmac.update
    - pairs.append
    - urllib.parse.urlsplit
    - time.gmtime
    - time.strftime
    - botocore.auth.SigV2Auth.calc_signature
    - <builtin>.sorted
    - hmac.new
    - lhmac.digest
    - urllib.parse.quote
    - value.encode
    - key.encode
    - <builtin>.len
    - <builtin>.str
    - string_to_sign.encode
    linkageType: pythonLinkage
    raised:
    - NoCredentialsError
    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.gmtime
    functionSourceFile: time
    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: time.strftime
    functionSourceFile: time
    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
    - credentials
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 186
    functionName: botocore.auth.SigV3Auth.__init__
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 189
    functionName: botocore.auth.SigV3Auth.add_auth
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - encoded_signature.decode
    - new_hmac.update
    - email.utils.formatdate
    - hmac.new
    - base64.encodebytes
    - base64.encodebytes.strip
    - new_hmac.digest
    linkageType: pythonLinkage
    raised:
    - NoCredentialsError
    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: new_hmac.update
    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: new_hmac.digest
    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: base64.encodebytes
    functionSourceFile: base64
    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: base64.encodebytes.strip
    functionSourceFile: base64
    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: encoded_signature.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: 4
    argDefaultValues: []
    argNames:
    - self
    - credentials
    - service_name
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 220
    functionName: botocore.auth.SigV4Auth.__init__
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830990700>
    argNames:
    - self
    - key
    - msg
    - hex
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 228
    functionName: botocore.auth.SigV4Auth._sign
    functionSourceFile: botocore.auth
    functionUses: 4
    functionsReached:
    - hmac.new
    - msg.encode
    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: msg.encode
    functionSourceFile: <builtin>
    functionUses: 5
    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: 3
    functionLinenumber: 235
    functionName: botocore.auth.SigV4Auth.headers_to_sign
    functionSourceFile: botocore.auth
    functionUses: 5
    functionsReached:
    - name.lower
    - urllib.parse.urlsplit
    - IPV6_ADDRZ_RE.match
    - request.headers.items
    - botocore.utils.is_valid_ipv6_endpoint_url
    - UNSAFE_URL_CHARS.intersection
    - http.client.HTTPMessage.__init__
    - urllib.parse.urlparse
    - botocore.auth._host_from_url
    - default_ports.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.items
    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: name.lower
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    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: 251
    functionName: botocore.auth.SigV4Auth.canonical_query_string
    functionSourceFile: botocore.auth
    functionUses: 2
    functionsReached:
    - sorted_key_vals.append
    - urllib.parse.urlsplit
    - <builtin>.str
    - <builtin>.sorted
    - botocore.auth.SigV4Auth._canonical_query_string_params
    - botocore.auth.SigV4Auth._canonical_query_string_url
    - <builtin>.isinstance
    - urllib.parse.urlsplit.query.split
    - params.items
    - key_val_pairs.append
    - urllib.parse.quote
    - pair.partition
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - params
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 261
    functionName: botocore.auth.SigV4Auth._canonical_query_string_params
    functionSourceFile: botocore.auth
    functionUses: 3
    functionsReached:
    - sorted_key_vals.append
    - <builtin>.str
    - <builtin>.sorted
    - <builtin>.isinstance
    - params.items
    - key_val_pairs.append
    - urllib.parse.quote
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parts
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 278
    functionName: botocore.auth.SigV4Auth._canonical_query_string_url
    functionSourceFile: botocore.auth
    functionUses: 3
    functionsReached:
    - sorted_key_vals.append
    - <builtin>.sorted
    - urllib.parse.urlsplit.query.split
    - key_val_pairs.append
    - pair.partition
    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_val_pairs.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: sorted_key_vals.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: urllib.parse.urlsplit.query.split
    functionSourceFile: urllib
    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: pair.partition
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - headers_to_sign
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 294
    functionName: botocore.auth.SigV4Auth.canonical_headers
    functionSourceFile: botocore.auth
    functionUses: 2
    functionsReached:
    - <builtin>.set
    - botocore.compat.ensure_unicode
    - headers.append
    - <builtin>.sorted
    - value.split
    - headers_to_sign.get_all
    - botocore.auth.SigV4Auth._header_value
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 310
    functionName: botocore.auth.SigV4Auth._header_value
    functionSourceFile: botocore.auth
    functionUses: 3
    functionsReached:
    - value.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: headers_to_sign.get_all
    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.append
    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: value.split
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - headers_to_sign
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 318
    functionName: botocore.auth.SigV4Auth.signed_headers
    functionSourceFile: botocore.auth
    functionUses: 5
    functionsReached:
    - n.lower
    - <builtin>.set
    - <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: n.lower
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    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: 1
    functionLinenumber: 322
    functionName: botocore.auth.SigV4Auth._is_streaming_checksum_payload
    functionSourceFile: botocore.auth
    functionUses: 4
    functionsReached:
    - <builtin>.isinstance
    - algorithm.get
    - checksum_context.get
    - request.context.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: algorithm.get
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    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: 327
    functionName: botocore.auth.SigV4Auth.payload
    functionSourceFile: botocore.auth
    functionUses: 3
    functionsReached:
    - botocore.auth.SigV4Auth._should_sha256_sign_payload
    - hashlib.sha256.update
    - request.url.startswith
    - <builtin>.iter
    - request_body.tell
    - <builtin>.hasattr
    - functools.partial
    - checksum_context.get
    - hashlib.sha256
    - <builtin>.isinstance
    - algorithm.get
    - botocore.auth.SigV4Auth._is_streaming_checksum_payload
    - hashlib.sha256.hexdigest
    - request_body.seek
    - request.context.get
    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: 353
    functionName: botocore.auth.SigV4Auth._should_sha256_sign_payload
    functionSourceFile: botocore.auth
    functionUses: 4
    functionsReached:
    - request.url.startswith
    - request.context.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_body.tell
    functionSourceFile: <builtin>
    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: hashlib.sha256.update
    functionSourceFile: hashlib
    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: hashlib.sha256.hexdigest
    functionSourceFile: hashlib
    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: request_body.seek
    functionSourceFile: <builtin>
    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: request.url.startswith
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 363
    functionName: botocore.auth.SigV4Auth.canonical_request
    functionSourceFile: botocore.auth
    functionUses: 1
    functionsReached:
    - botocore.utils.normalize_url_path
    - <builtin>.hasattr
    - checksum_context.get
    - botocore.utils.remove_dot_segments
    - hashlib.sha256
    - <builtin>.sorted
    - request.headers.items
    - UNSAFE_URL_CHARS.intersection
    - http.client.HTTPMessage.__init__
    - botocore.auth._host_from_url
    - default_ports.get
    - <builtin>.str
    - urllib.parse.quote
    - sorted_key_vals.append
    - hashlib.sha256.update
    - urllib.parse.urlparse.path.split
    - botocore.auth.SigV4Auth.canonical_query_string
    - name.lower
    - botocore.auth.SigV4Auth.headers_to_sign
    - botocore.auth.SigV4Auth.signed_headers
    - botocore.auth.SigV4Auth._canonical_query_string_params
    - <builtin>.isinstance
    - algorithm.get
    - urllib.parse.urlsplit.query.split
    - output_list.pop
    - botocore.auth.SigV4Auth._is_streaming_checksum_payload
    - botocore.auth.SigV4Auth._header_value
    - params.items
    - botocore.auth.SigV4Auth._normalize_url_path
    - botocore.auth.SigV4Auth.payload
    - request_body.seek
    - pair.partition
    - <builtin>.set
    - request.url.startswith
    - urllib.parse.urlsplit
    - headers.append
    - functools.partial
    - n.lower
    - botocore.auth.SigV4Auth.canonical_headers
    - value.split
    - request.method.upper
    - cr.append
    - hashlib.sha256.hexdigest
    - request.context.get
    - botocore.auth.SigV4Auth._should_sha256_sign_payload
    - request_body.tell
    - <builtin>.iter
    - botocore.compat.ensure_unicode
    - output_list.append
    - IPV6_ADDRZ_RE.match
    - botocore.auth.SigV4Auth._canonical_query_string_url
    - botocore.utils.is_valid_ipv6_endpoint_url
    - headers_to_sign.get_all
    - urllib.parse.urlparse
    - key_val_pairs.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: request.method.upper
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 378
    functionName: botocore.auth.SigV4Auth._normalize_url_path
    functionSourceFile: botocore.auth
    functionUses: 2
    functionsReached:
    - urllib.parse.urlparse.path.split
    - botocore.utils.normalize_url_path
    - output_list.append
    - botocore.utils.remove_dot_segments
    - output_list.pop
    - urllib.parse.quote
    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: cr.append
    functionSourceFile: <builtin>
    functionUses: 2
    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
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 382
    functionName: botocore.auth.SigV4Auth.scope
    functionSourceFile: botocore.auth
    functionUses: 6
    functionsReached:
    - scope.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: scope.append
    functionSourceFile: <builtin>
    functionUses: 9
    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
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 390
    functionName: botocore.auth.SigV4Auth.credential_scope
    functionSourceFile: botocore.auth
    functionUses: 2
    functionsReached:
    - scope.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - canonical_request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 398
    functionName: botocore.auth.SigV4Auth.string_to_sign
    functionSourceFile: botocore.auth
    functionUses: 1
    functionsReached:
    - sts.append
    - scope.append
    - hashlib.sha256
    - canonical_request.encode
    - hashlib.sha256.hexdigest
    - botocore.auth.SigV4Auth.credential_scope
    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: sts.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: canonical_request.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: 3
    argDefaultValues: []
    argNames:
    - self
    - string_to_sign
    - request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 410
    functionName: botocore.auth.SigV4Auth.signature
    functionSourceFile: botocore.auth
    functionUses: 3
    functionsReached:
    - hmac.new
    - botocore.auth.SigV4Auth._sign
    - msg.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 6
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 420
    functionName: botocore.auth.SigV4Auth.add_auth
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - botocore.auth.SigV4Auth._sign
    - botocore.utils.normalize_url_path
    - <builtin>.sorted
    - UNSAFE_URL_CHARS.intersection
    - botocore.auth._host_from_url
    - urllib.parse.quote
    - logger.debug
    - hashlib.sha256.update
    - botocore.auth.SigV4Auth.headers_to_sign
    - botocore.auth.SigV4Auth.canonical_request
    - botocore.auth.SigV4Auth._is_streaming_checksum_payload
    - botocore.auth.SigV4Auth._header_value
    - urllib.parse.urlsplit
    - headers.append
    - value.split
    - cr.append
    - request.method.upper
    - botocore.auth.SigV4Auth._should_sha256_sign_payload
    - request_body.tell
    - http.client.HTTPMessage.__init__
    - botocore.auth.SigV4Auth.credential_scope
    - name.lower
    - botocore.auth.SigV4Auth.signed_headers
    - botocore.auth.SigV4Auth._canonical_query_string_params
    - params.items
    - botocore.auth.SigV4Auth.scope
    - datetime_now.replace
    - sts.append
    - auth_str.append
    - botocore.auth.SigV4Auth.string_to_sign
    - <builtin>.hasattr
    - checksum_context.get
    - botocore.auth.SigV4Auth._set_necessary_date_headers
    - <builtin>.str
    - sorted_key_vals.append
    - <builtin>.int
    - <builtin>.isinstance
    - urllib.parse.urlsplit.query.split
    - output_list.pop
    - datetime.datetime.now
    - botocore.auth.SigV4Auth._normalize_url_path
    - datetime.datetime.strptime
    - datetime_timestamp.timetuple
    - canonical_request.encode
    - hmac.new
    - botocore.auth.SigV4Auth.canonical_headers
    - hashlib.sha256.hexdigest
    - datetime_now.strftime
    - botocore.auth.SigV4Auth.signature
    - botocore.auth.SigV4Auth._canonical_query_string_url
    - botocore.utils.is_valid_ipv6_endpoint_url
    - calendar.timegm
    - headers_to_sign.get_all
    - botocore.auth.SigV4Auth._modify_request_before_signing
    - botocore.auth.SigV4Auth._inject_signature_to_request
    - botocore.utils.remove_dot_segments
    - hashlib.sha256
    - request.headers.items
    - default_ports.get
    - urllib.parse.urlparse.path.split
    - botocore.auth.SigV4Auth.canonical_query_string
    - algorithm.get
    - botocore.auth.SigV4Auth.payload
    - request_body.seek
    - pair.partition
    - <builtin>.set
    - msg.encode
    - request.url.startswith
    - functools.partial
    - email.utils.formatdate
    - n.lower
    - scope.append
    - request.context.get
    - <builtin>.iter
    - botocore.compat.ensure_unicode
    - output_list.append
    - IPV6_ADDRZ_RE.match
    - urllib.parse.urlparse
    - key_val_pairs.append
    - botocore.compat.get_current_datetime
    linkageType: pythonLinkage
    raised:
    - NoCredentialsError
    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_now.strftime
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 448
    functionName: botocore.auth.SigV4Auth._modify_request_before_signing
    functionSourceFile: botocore.auth
    functionUses: 1
    functionsReached:
    - email.utils.formatdate
    - datetime_timestamp.timetuple
    - <builtin>.int
    - botocore.auth.SigV4Auth._set_necessary_date_headers
    - calendar.timegm
    - datetime.datetime.strptime
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - signature
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 438
    functionName: botocore.auth.SigV4Auth._inject_signature_to_request
    functionSourceFile: botocore.auth
    functionUses: 1
    functionsReached:
    - <builtin>.set
    - auth_str.append
    - name.lower
    - botocore.auth.SigV4Auth.headers_to_sign
    - urllib.parse.urlsplit
    - <builtin>.sorted
    - IPV6_ADDRZ_RE.match
    - botocore.auth.SigV4Auth.signed_headers
    - n.lower
    - request.headers.items
    - botocore.utils.is_valid_ipv6_endpoint_url
    - UNSAFE_URL_CHARS.intersection
    - http.client.HTTPMessage.__init__
    - urllib.parse.urlparse
    - botocore.auth._host_from_url
    - scope.append
    - default_ports.get
    - botocore.auth.SigV4Auth.scope
    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: auth_str.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 462
    functionName: botocore.auth.SigV4Auth._set_necessary_date_headers
    functionSourceFile: botocore.auth
    functionUses: 2
    functionsReached:
    - email.utils.formatdate
    - <builtin>.int
    - calendar.timegm
    - datetime.datetime.strptime
    - datetime_timestamp.timetuple
    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_timestamp.timetuple
    functionSourceFile: <builtin>
    functionUses: 3
    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: 3
    functionLinenumber: 483
    functionName: botocore.auth.S3SigV4Auth._modify_request_before_signing
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - botocore.auth.SigV4Auth._should_sha256_sign_payload
    - hashlib.sha256.update
    - request_body.tell
    - <builtin>.iter
    - request.url.startswith
    - <builtin>.hasattr
    - functools.partial
    - checksum_context.get
    - hashlib.sha256
    - <builtin>.isinstance
    - algorithm.get
    - botocore.auth.SigV4Auth._is_streaming_checksum_payload
    - <builtin>.super
    - hashlib.sha256.hexdigest
    - botocore.auth.SigV4Auth.payload
    - request_body.seek
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 490
    functionName: botocore.auth.S3SigV4Auth._should_sha256_sign_payload
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - request.url.startswith
    - checksum_context.get
    - <builtin>.isinstance
    - s3_config.get
    - algorithm.get
    - <builtin>.super
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 531
    functionName: botocore.auth.S3SigV4Auth._normalize_url_path
    functionSourceFile: botocore.auth
    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
    - credentials
    - service_name
    - region_name
    - identity_cache
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 539
    functionName: botocore.auth.S3ExpressAuth.__init__
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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: 545
    functionName: botocore.auth.S3ExpressAuth.add_auth
    functionSourceFile: botocore.auth
    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: 548
    functionName: botocore.auth.S3ExpressAuth._modify_request_before_signing
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 560
    functionName: botocore.auth.S3ExpressPostAuth.add_auth
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - datetime_now.replace
    - botocore.auth.SigV4Auth._sign
    - msg.encode
    - scope.append
    - json.dumps
    - datetime_now.strftime
    - botocore.auth.SigV4Auth.signature
    - policy.get
    - hmac.new
    - conditions.append
    - datetime.datetime.now
    - botocore.auth.SigV4Auth.scope
    - botocore.compat.get_current_datetime
    - request.context.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: policy.get
    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: conditions.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - credentials
    - service_name
    - region_name
    - identity_cache
    - expires
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 606
    functionName: botocore.auth.S3ExpressQueryAuth.__init__
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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: 4
    functionLinenumber: 623
    functionName: botocore.auth.S3ExpressQueryAuth._modify_request_before_signing
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - request.headers.get
    - botocore.utils.percent_encode_sequence
    - <builtin>.hasattr
    - urllib.parse.parse_qs
    - <builtin>.sorted
    - request.headers.items
    - UNSAFE_URL_CHARS.intersection
    - http.client.HTTPMessage.__init__
    - botocore.auth._host_from_url
    - <builtin>.str
    - urllib.parse.quote
    - default_ports.get
    - data.decode
    - urllib.parse.urlunsplit
    - botocore.auth.SigV4Auth.headers_to_sign
    - name.lower
    - botocore.auth.SigV4Auth.signed_headers
    - <builtin>.isinstance
    - query_dict.update
    - botocore.auth._get_body_as_dict
    - botocore.auth.SigV4Auth.scope
    - <builtin>.set
    - json.loads
    - urllib.parse.urlsplit
    - n.lower
    - urllib.parse.parse_qs.items
    - scope.append
    - botocore.utils.percent_encode
    - encoded_pairs.append
    - urllib.parse.quote.encode
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - botocore.utils.is_valid_ipv6_endpoint_url
    - urllib.parse.urlparse
    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_qs
    functionSourceFile: urllib
    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: urllib.parse.parse_qs.items
    functionSourceFile: urllib
    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: query_dict.update
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - signature
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 688
    functionName: botocore.auth.S3ExpressQueryAuth._inject_signature_to_request
    functionSourceFile: botocore.auth
    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
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 694
    functionName: botocore.auth.S3ExpressQueryAuth._normalize_url_path
    functionSourceFile: botocore.auth
    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
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 698
    functionName: botocore.auth.S3ExpressQueryAuth.payload
    functionSourceFile: botocore.auth
    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.Name object at 0x7f9830d599d0>
    argNames:
    - self
    - credentials
    - service_name
    - region_name
    - expires
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 709
    functionName: botocore.auth.SigV4QueryAuth.__init__
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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: 4
    functionLinenumber: 715
    functionName: botocore.auth.SigV4QueryAuth._modify_request_before_signing
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - request.headers.get
    - botocore.utils.percent_encode_sequence
    - <builtin>.hasattr
    - urllib.parse.parse_qs
    - <builtin>.sorted
    - request.headers.items
    - UNSAFE_URL_CHARS.intersection
    - http.client.HTTPMessage.__init__
    - botocore.auth._host_from_url
    - <builtin>.str
    - urllib.parse.quote
    - default_ports.get
    - data.decode
    - urllib.parse.urlunsplit
    - botocore.auth.SigV4Auth.headers_to_sign
    - name.lower
    - botocore.auth.SigV4Auth.signed_headers
    - <builtin>.isinstance
    - query_dict.update
    - botocore.auth._get_body_as_dict
    - botocore.auth.SigV4Auth.scope
    - <builtin>.set
    - json.loads
    - urllib.parse.urlsplit
    - n.lower
    - urllib.parse.parse_qs.items
    - scope.append
    - botocore.utils.percent_encode
    - encoded_pairs.append
    - urllib.parse.quote.encode
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - botocore.utils.is_valid_ipv6_endpoint_url
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - signature
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 780
    functionName: botocore.auth.SigV4QueryAuth._inject_signature_to_request
    functionSourceFile: botocore.auth
    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
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 799
    functionName: botocore.auth.S3SigV4QueryAuth._normalize_url_path
    functionSourceFile: botocore.auth
    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
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 803
    functionName: botocore.auth.S3SigV4QueryAuth.payload
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 819
    functionName: botocore.auth.S3SigV4PostAuth.add_auth
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - datetime_now.replace
    - botocore.auth.SigV4Auth._sign
    - msg.encode
    - scope.append
    - json.dumps
    - datetime_now.strftime
    - botocore.auth.SigV4Auth.signature
    - policy.get
    - hmac.new
    - conditions.append
    - datetime.datetime.now
    - botocore.auth.SigV4Auth.scope
    - botocore.compat.get_current_datetime
    - request.context.get
    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 0x7f9830d07220>
    - <ast.Constant object at 0x7f9830d07b20>
    argNames:
    - self
    - credentials
    - service_name
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 900
    functionName: botocore.auth.HmacV1Auth.__init__
    functionSourceFile: botocore.auth
    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
    - string_to_sign
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 903
    functionName: botocore.auth.HmacV1Auth.sign_string
    functionSourceFile: botocore.auth
    functionUses: 3
    functionsReached:
    - new_hmac.update
    - new_hmac.digest
    - hmac.new
    - base64.encodebytes
    - base64.encodebytes.strip
    - string_to_sign.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 910
    functionName: botocore.auth.HmacV1Auth.canonical_standard_headers
    functionSourceFile: botocore.auth
    functionUses: 3
    functionsReached:
    - key.lower
    - hoi.append
    - botocore.auth.HmacV1Auth._get_date
    - email.utils.formatdate
    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: 1011
    functionName: botocore.auth.HmacV1Auth._get_date
    functionSourceFile: botocore.auth
    functionUses: 4
    functionsReached:
    - email.utils.formatdate
    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: hoi.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 927
    functionName: botocore.auth.HmacV1Auth.canonical_custom_headers
    functionSourceFile: botocore.auth
    functionUses: 3
    functionsReached:
    - key.lower
    - lk.startswith
    - v.strip
    - <builtin>.sorted
    - custom_headers.keys
    - hoi.append
    - headers.get_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: lk.startswith
    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: v.strip
    functionSourceFile: <builtin>
    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: headers.get_all
    functionSourceFile: <builtin>
    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: custom_headers.keys
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - nv
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 942
    functionName: botocore.auth.HmacV1Auth.unquote_v
    functionSourceFile: botocore.auth
    functionUses: 4
    functionsReached:
    - <builtin>.len
    - urllib.parse.unquote
    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 0x7f98309b81c0>
    argNames:
    - self
    - split
    - auth_path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 951
    functionName: botocore.auth.HmacV1Auth.canonical_resource
    functionSourceFile: botocore.auth
    functionUses: 3
    functionsReached:
    - qsa.sort
    - botocore.auth.HmacV1Auth.unquote_v
    - urllib.parse.unquote
    - urllib.parse.urlsplit.query.split
    - operator.itemgetter
    - a.split
    - <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: a.split
    functionSourceFile: <builtin>
    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: qsa.sort
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9831378970>
    - <ast.Constant object at 0x7f9831378310>
    argNames:
    - self
    - method
    - split
    - headers
    - expires
    - auth_path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 977
    functionName: botocore.auth.HmacV1Auth.canonical_string
    functionSourceFile: botocore.auth
    functionUses: 2
    functionsReached:
    - <builtin>.sorted
    - botocore.auth.HmacV1Auth.canonical_standard_headers
    - operator.itemgetter
    - botocore.auth.HmacV1Auth._get_date
    - lk.startswith
    - urllib.parse.unquote
    - urllib.parse.urlsplit.query.split
    - headers.get_all
    - key.lower
    - botocore.auth.HmacV1Auth.canonical_custom_headers
    - qsa.sort
    - email.utils.formatdate
    - v.strip
    - custom_headers.keys
    - botocore.auth.HmacV1Auth.canonical_resource
    - botocore.auth.HmacV1Auth.unquote_v
    - method.upper
    - a.split
    - <builtin>.len
    - hoi.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: method.upper
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    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 0x7f9830cc9970>
    - <ast.Constant object at 0x7f9830cc9c10>
    argNames:
    - self
    - method
    - split
    - headers
    - expires
    - auth_path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 988
    functionName: botocore.auth.HmacV1Auth.get_signature
    functionSourceFile: botocore.auth
    functionUses: 1
    functionsReached:
    - botocore.auth.HmacV1Auth.sign_string
    - <builtin>.sorted
    - botocore.auth.HmacV1Auth.canonical_standard_headers
    - operator.itemgetter
    - base64.encodebytes
    - logger.debug
    - botocore.auth.HmacV1Auth._get_date
    - lk.startswith
    - urllib.parse.unquote
    - urllib.parse.urlsplit.query.split
    - headers.get_all
    - key.lower
    - botocore.auth.HmacV1Auth.canonical_custom_headers
    - qsa.sort
    - v.strip
    - email.utils.formatdate
    - hmac.new
    - custom_headers.keys
    - base64.encodebytes.strip
    - botocore.auth.HmacV1Auth.canonical_resource
    - new_hmac.digest
    - string_to_sign.encode
    - new_hmac.update
    - botocore.auth.HmacV1Auth.unquote_v
    - method.upper
    - a.split
    - <builtin>.len
    - hoi.append
    - botocore.auth.HmacV1Auth.canonical_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1000
    functionName: botocore.auth.HmacV1Auth.add_auth
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - botocore.auth.HmacV1Auth.sign_string
    - botocore.auth.HmacV1Auth._inject_signature
    - <builtin>.sorted
    - botocore.auth.HmacV1Auth.canonical_standard_headers
    - operator.itemgetter
    - base64.encodebytes
    - logger.debug
    - botocore.auth.HmacV1Auth._get_date
    - lk.startswith
    - urllib.parse.unquote
    - urllib.parse.urlsplit.query.split
    - headers.get_all
    - key.lower
    - botocore.auth.HmacV1Auth.canonical_custom_headers
    - urllib.parse.urlsplit
    - qsa.sort
    - v.strip
    - email.utils.formatdate
    - hmac.new
    - custom_headers.keys
    - base64.encodebytes.strip
    - botocore.auth.HmacV1Auth.canonical_resource
    - new_hmac.digest
    - string_to_sign.encode
    - botocore.auth.HmacV1Auth.get_signature
    - new_hmac.update
    - botocore.auth.HmacV1Auth.unquote_v
    - method.upper
    - a.split
    - <builtin>.len
    - hoi.append
    - botocore.auth.HmacV1Auth.canonical_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - signature
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1014
    functionName: botocore.auth.HmacV1Auth._inject_signature
    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.Name object at 0x7f983008bbb0>
    argNames:
    - self
    - credentials
    - expires
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1041
    functionName: botocore.auth.HmacV1QueryAuth.__init__
    functionSourceFile: botocore.auth
    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: 1045
    functionName: botocore.auth.HmacV1QueryAuth._get_date
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - time.time
    - <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: time.time
    functionSourceFile: time
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - signature
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1048
    functionName: botocore.auth.HmacV1QueryAuth._inject_signature
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - botocore.utils.percent_encode
    - encoded_pairs.append
    - botocore.utils.percent_encode_sequence
    - <builtin>.hasattr
    - urllib.parse.urlsplit
    - lk.startswith
    - urllib.parse.urlunsplit
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - header_key.lower
    - mapping.items
    - urllib.parse.quote
    - <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: header_key.lower
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1090
    functionName: botocore.auth.HmacV1PostAuth.add_auth
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - botocore.auth.HmacV1Auth.sign_string
    - json.dumps
    - new_hmac.update
    - new_hmac.digest
    - policy.get
    - hmac.new
    - conditions.append
    - base64.encodebytes
    - base64.encodebytes.strip
    - request.context.get
    - string_to_sign.encode
    linkageType: pythonLinkage
    raised: []
    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: 0
    functionLinenumber: 1129
    functionName: botocore.auth.BearerAuth.add_auth
    functionSourceFile: botocore.auth
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NoAuthTokenError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - preference_list
    - auth_options
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1152
    functionName: botocore.auth.resolve_auth_scheme_preference
    functionSourceFile: botocore.auth
    functionUses: 1
    functionsReached:
    - scheme.split
    - logger.debug
    - AUTH_PREF_TO_SIGNATURE_VERSION.get
    - dict.fromkeys
    linkageType: pythonLinkage
    raised:
    - UnsupportedSignatureVersionError
    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.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: dict.fromkeys
    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: AUTH_PREF_TO_SIGNATURE_VERSION.get
    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: AUTH_TYPE_MAPS.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: auth_scheme.split
    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: AUTH_TYPE_TO_SIGNATURE_VERSION.items
    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: botocore.crt
    functionSourceFile: botocore.crt
    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: botocore.crt.auth
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - credentials
    - service_name
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 49
    functionName: botocore.crt.auth.CrtSigV4Auth.__init__
    functionSourceFile: botocore.crt.auth
    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
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 55
    functionName: botocore.crt.auth.CrtSigV4Auth._is_streaming_checksum_payload
    functionSourceFile: botocore.crt.auth
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - algorithm.get
    - checksum_context.get
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 60
    functionName: botocore.crt.auth.CrtSigV4Auth.add_auth
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached:
    - request.headers.get
    - <builtin>.hasattr
    - checksum_context.get
    - io.BytesIO
    - <builtin>.list
    - UNSAFE_URL_CHARS.intersection
    - awscrt.http.HttpHeaders
    - botocore.auth._host_from_url
    - <builtin>.str
    - botocore.crt.auth.CrtSigV4Auth._should_add_content_sha256_header
    - default_ports.get
    - <builtin>.isinstance
    - algorithm.get
    - botocore.compat.from_pairs
    - botocore.crt.auth.CrtSigV4Auth._crt_request_from_aws_request
    - botocore.crt.auth.CrtSigV4Auth._get_existing_sha256
    - datetime.datetime.now
    - awscrt.auth.AwsCredentialsProvider.new_static
    - request.url.startswith
    - botocore.crt.auth.CrtSigV4Auth._modify_request_before_signing
    - future.result
    - botocore.crt.auth.CrtSigV4Auth._should_sha256_sign_payload
    - urllib.parse.urlsplit
    - awscrt.http.HttpRequest
    - awscrt.auth.AwsSigningConfig
    - aws_request.params.items
    - array.append
    - awscrt.auth.aws_sign_request
    - request.context.get
    - datetime_now.replace
    - IPV6_ADDRZ_RE.match
    - botocore.crt.auth.CrtSigV4Auth._apply_signing_changes
    - botocore.utils.is_valid_ipv6_endpoint_url
    - aws_request.headers.items
    - urllib.parse.urlparse
    - botocore.crt.auth.CrtSigV4Auth._is_streaming_checksum_payload
    - botocore.compat.get_current_datetime
    linkageType: pythonLinkage
    raised:
    - NoCredentialsError
    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: 1
    functionLinenumber: 162
    functionName: botocore.crt.auth.CrtSigV4Auth._get_existing_sha256
    functionSourceFile: botocore.crt.auth
    functionUses: 1
    functionsReached:
    - request.headers.get
    linkageType: pythonLinkage
    raised: []
    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: 3
    functionLinenumber: 152
    functionName: botocore.crt.auth.CrtSigV4Auth._modify_request_before_signing
    functionSourceFile: botocore.crt.auth
    functionUses: 1
    functionsReached:
    - urllib.parse.urlsplit
    - IPV6_ADDRZ_RE.match
    - botocore.utils.is_valid_ipv6_endpoint_url
    - UNSAFE_URL_CHARS.intersection
    - urllib.parse.urlparse
    - botocore.auth._host_from_url
    - default_ports.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: awscrt.auth.AwsCredentialsProvider.new_static
    functionSourceFile: awscrt
    functionUses: 2
    functionsReached: []
    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: 165
    functionName: botocore.crt.auth.CrtSigV4Auth._should_sha256_sign_payload
    functionSourceFile: botocore.crt.auth
    functionUses: 1
    functionsReached:
    - request.url.startswith
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - explicit_payload
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 175
    functionName: botocore.crt.auth.CrtSigV4Auth._should_add_content_sha256_header
    functionSourceFile: ''
    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: awscrt.auth.AwsSigningConfig
    functionSourceFile: awscrt
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - aws_request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 113
    functionName: botocore.crt.auth.CrtSigV4Auth._crt_request_from_aws_request
    functionSourceFile: botocore.crt.auth
    functionUses: 1
    functionsReached:
    - <builtin>.hasattr
    - urllib.parse.urlsplit
    - awscrt.http.HttpRequest
    - io.BytesIO
    - aws_request.params.items
    - aws_request.headers.items
    - awscrt.http.HttpHeaders
    - array.append
    - <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: awscrt.auth.aws_sign_request
    functionSourceFile: awscrt
    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: future.result
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - aws_request
    - signed_crt_request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 143
    functionName: botocore.crt.auth.CrtSigV4Auth._apply_signing_changes
    functionSourceFile: botocore.crt.auth
    functionUses: 1
    functionsReached:
    - botocore.compat.from_pairs
    - <builtin>.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: aws_request.params.items
    functionSourceFile: <builtin>
    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: array.append
    functionSourceFile: <builtin>
    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: aws_request.headers.items
    functionSourceFile: <builtin>
    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: awscrt.http.HttpHeaders
    functionSourceFile: awscrt
    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: awscrt.http.HttpRequest
    functionSourceFile: awscrt
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 149
    functionName: botocore.crt.auth.CrtSigV4Auth._should_sign_header
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached:
    - name.lower
    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: 0
    functionLinenumber: 185
    functionName: botocore.crt.auth.CrtS3SigV4Auth._get_existing_sha256
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 189
    functionName: botocore.crt.auth.CrtS3SigV4Auth._should_sha256_sign_payload
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - request.url.startswith
    - checksum_context.get
    - <builtin>.isinstance
    - s3_config.get
    - algorithm.get
    - <builtin>.super
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - explicit_payload
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 230
    functionName: botocore.crt.auth.CrtS3SigV4Auth._should_add_content_sha256_header
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - credentials
    - service_name
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 247
    functionName: botocore.crt.auth.CrtSigV4AsymAuth.__init__
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 253
    functionName: botocore.crt.auth.CrtSigV4AsymAuth.add_auth
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached:
    - request.headers.get
    - <builtin>.hasattr
    - botocore.context.get_context
    - checksum_context.get
    - contextvars.ContextVar.get
    - io.BytesIO
    - <builtin>.list
    - UNSAFE_URL_CHARS.intersection
    - ctx.features.add
    - botocore.crt.auth.CrtSigV4AsymAuth._should_add_content_sha256_header
    - awscrt.http.HttpHeaders
    - botocore.auth._host_from_url
    - <builtin>.str
    - default_ports.get
    - botocore.crt.auth.CrtSigV4AsymAuth._should_sha256_sign_payload
    - botocore.useragent.register_feature_id
    - <builtin>.isinstance
    - botocore.compat.from_pairs
    - algorithm.get
    - botocore.crt.auth.CrtSigV4AsymAuth._modify_request_before_signing
    - botocore.crt.auth.CrtSigV4AsymAuth._crt_request_from_aws_request
    - _USERAGENT_FEATURE_MAPPINGS.get
    - datetime.datetime.now
    - awscrt.auth.AwsCredentialsProvider.new_static
    - request.url.startswith
    - future.result
    - botocore.crt.auth.CrtSigV4AsymAuth._apply_signing_changes
    - urllib.parse.urlsplit
    - awscrt.http.HttpRequest
    - botocore.crt.auth.CrtSigV4AsymAuth._is_streaming_checksum_payload
    - awscrt.auth.AwsSigningConfig
    - aws_request.params.items
    - array.append
    - botocore.crt.auth.CrtSigV4AsymAuth._get_existing_sha256
    - awscrt.auth.aws_sign_request
    - request.context.get
    - datetime_now.replace
    - IPV6_ADDRZ_RE.match
    - botocore.utils.is_valid_ipv6_endpoint_url
    - aws_request.headers.items
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    linkageType: pythonLinkage
    raised:
    - NoCredentialsError
    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: 1
    functionLinenumber: 356
    functionName: botocore.crt.auth.CrtSigV4AsymAuth._get_existing_sha256
    functionSourceFile: botocore.crt.auth
    functionUses: 1
    functionsReached:
    - request.headers.get
    linkageType: pythonLinkage
    raised: []
    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: 3
    functionLinenumber: 346
    functionName: botocore.crt.auth.CrtSigV4AsymAuth._modify_request_before_signing
    functionSourceFile: botocore.crt.auth
    functionUses: 1
    functionsReached:
    - urllib.parse.urlsplit
    - IPV6_ADDRZ_RE.match
    - botocore.utils.is_valid_ipv6_endpoint_url
    - UNSAFE_URL_CHARS.intersection
    - urllib.parse.urlparse
    - botocore.auth._host_from_url
    - default_ports.get
    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: 1
    functionLinenumber: 359
    functionName: botocore.crt.auth.CrtSigV4AsymAuth._is_streaming_checksum_payload
    functionSourceFile: botocore.crt.auth
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - algorithm.get
    - checksum_context.get
    - request.context.get
    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: 364
    functionName: botocore.crt.auth.CrtSigV4AsymAuth._should_sha256_sign_payload
    functionSourceFile: botocore.crt.auth
    functionUses: 1
    functionsReached:
    - request.url.startswith
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - explicit_payload
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 374
    functionName: botocore.crt.auth.CrtSigV4AsymAuth._should_add_content_sha256_header
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - aws_request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 307
    functionName: botocore.crt.auth.CrtSigV4AsymAuth._crt_request_from_aws_request
    functionSourceFile: botocore.crt.auth
    functionUses: 1
    functionsReached:
    - <builtin>.hasattr
    - urllib.parse.urlsplit
    - awscrt.http.HttpRequest
    - io.BytesIO
    - aws_request.params.items
    - aws_request.headers.items
    - awscrt.http.HttpHeaders
    - array.append
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - aws_request
    - signed_crt_request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 337
    functionName: botocore.crt.auth.CrtSigV4AsymAuth._apply_signing_changes
    functionSourceFile: botocore.crt.auth
    functionUses: 1
    functionsReached:
    - botocore.compat.from_pairs
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 343
    functionName: botocore.crt.auth.CrtSigV4AsymAuth._should_sign_header
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached:
    - name.lower
    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: 0
    functionLinenumber: 384
    functionName: botocore.crt.auth.CrtS3SigV4AsymAuth._get_existing_sha256
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 388
    functionName: botocore.crt.auth.CrtS3SigV4AsymAuth._should_sha256_sign_payload
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - request.url.startswith
    - s3_config.get
    - <builtin>.super
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - explicit_payload
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 424
    functionName: botocore.crt.auth.CrtS3SigV4AsymAuth._should_add_content_sha256_header
    functionSourceFile: botocore.crt.auth
    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.Name object at 0x7f9830ce3850>
    argNames:
    - self
    - credentials
    - service_name
    - region_name
    - expires
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 433
    functionName: botocore.crt.auth.CrtSigV4AsymQueryAuth.__init__
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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: 3
    functionLinenumber: 439
    functionName: botocore.crt.auth.CrtSigV4AsymQueryAuth._modify_request_before_signing
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached:
    - request.headers.get
    - botocore.utils.percent_encode_sequence
    - <builtin>.hasattr
    - urllib.parse.parse_qs
    - urllib.parse.quote
    - <builtin>.str
    - data.decode
    - urllib.parse.urlunsplit
    - <builtin>.isinstance
    - query_dict.update
    - <builtin>.super
    - botocore.auth._get_body_as_dict
    - json.loads
    - urllib.parse.urlsplit
    - urllib.parse.parse_qs.items
    - botocore.utils.percent_encode
    - encoded_pairs.append
    - urllib.parse.quote.encode
    - mapping.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - aws_request
    - signed_crt_request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 481
    functionName: botocore.crt.auth.CrtSigV4AsymQueryAuth._apply_signing_changes
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    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: 0
    functionLinenumber: 508
    functionName: botocore.crt.auth.CrtS3SigV4AsymQueryAuth._should_sha256_sign_payload
    functionSourceFile: botocore.crt.auth
    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
    - explicit_payload
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 515
    functionName: botocore.crt.auth.CrtS3SigV4AsymQueryAuth._should_add_content_sha256_header
    functionSourceFile: botocore.crt.auth
    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.Name object at 0x7f98307e64c0>
    argNames:
    - self
    - credentials
    - service_name
    - region_name
    - expires
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 524
    functionName: botocore.crt.auth.CrtSigV4QueryAuth.__init__
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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: 3
    functionLinenumber: 530
    functionName: botocore.crt.auth.CrtSigV4QueryAuth._modify_request_before_signing
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached:
    - request.headers.get
    - botocore.utils.percent_encode_sequence
    - <builtin>.hasattr
    - urllib.parse.parse_qs
    - urllib.parse.quote
    - <builtin>.str
    - data.decode
    - urllib.parse.urlunsplit
    - <builtin>.isinstance
    - query_dict.update
    - <builtin>.super
    - botocore.auth._get_body_as_dict
    - json.loads
    - urllib.parse.urlsplit
    - urllib.parse.parse_qs.items
    - botocore.utils.percent_encode
    - encoded_pairs.append
    - urllib.parse.quote.encode
    - mapping.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - aws_request
    - signed_crt_request
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 578
    functionName: botocore.crt.auth.CrtSigV4QueryAuth._apply_signing_changes
    functionSourceFile: botocore.crt.auth
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    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: 0
    functionLinenumber: 607
    functionName: botocore.crt.auth.CrtS3SigV4QueryAuth._should_sha256_sign_payload
    functionSourceFile: botocore.crt.auth
    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
    - explicit_payload
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 614
    functionName: botocore.crt.auth.CrtS3SigV4QueryAuth._should_add_content_sha256_header
    functionSourceFile: botocore.crt.auth
    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: botocore.stub
    functionSourceFile: botocore.stub
    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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 33
    functionName: botocore.stub._ANY.__eq__
    functionSourceFile: botocore.stub
    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
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 36
    functionName: botocore.stub._ANY.__ne__
    functionSourceFile: botocore.stub
    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: 39
    functionName: botocore.stub._ANY.__repr__
    functionSourceFile: botocore.stub
    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
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 168
    functionName: botocore.stub.Stubber.__init__
    functionSourceFile: botocore.stub
    functionUses: 0
    functionsReached:
    - collections.deque
    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.deque
    functionSourceFile: collections
    functionUses: 12
    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: 1
    functionLinenumber: 178
    functionName: botocore.stub.Stubber.__enter__
    functionSourceFile: botocore.stub
    functionUses: 0
    functionsReached:
    - botocore.stub.Stubber.activate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 185
    functionName: botocore.stub.Stubber.activate
    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
    - exception_type
    - exception_value
    - traceback
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 182
    functionName: botocore.stub.Stubber.__exit__
    functionSourceFile: botocore.stub
    functionUses: 0
    functionsReached:
    - botocore.stub.Stubber.deactivate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 205
    functionName: botocore.stub.Stubber.deactivate
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    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 0x7f98309448e0>
    argNames:
    - self
    - method
    - service_response
    - expected_params
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 225
    functionName: botocore.stub.Stubber.add_response
    functionSourceFile: botocore.stub
    functionUses: 0
    functionsReached:
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - <builtin>.hasattr
    - botocore.validate.ParamValidator._check_special_validation_cases
    - collections.deque.append
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - shape.serialization.get
    - copy.copy
    - botocore.validate.ParamValidator._validate
    - <builtin>.isinstance
    - botocore.validate.ParamValidator._validate_document
    - botocore.awsrequest.AWSResponse.__init__
    - botocore.stub.Stubber._validate_operation_response
    - <builtin>.getattr
    - botocore.validate.ValidationErrors.has_errors
    - collections.abc.MutableMapping.update
    - botocore.stub.Stubber._add_response
    - <builtin>.type
    - botocore.validate.ValidationErrors.__init__
    - json.dumps
    - botocore.validate.validate_parameters
    - botocore.stub.Stubber._validate_response
    - botocore.validate.ValidationErrors.report
    - botocore.utils.is_json_value_header
    - botocore.validate.ParamValidator.validate
    - service_model.operation_model
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - method
    - service_response
    - expected_params
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 250
    functionName: botocore.stub.Stubber._add_response
    functionSourceFile: botocore.stub
    functionUses: 1
    functionsReached:
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - <builtin>.hasattr
    - botocore.validate.ParamValidator._check_special_validation_cases
    - collections.deque.append
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - shape.serialization.get
    - copy.copy
    - botocore.validate.ParamValidator._validate
    - <builtin>.isinstance
    - botocore.validate.ParamValidator._validate_document
    - botocore.awsrequest.AWSResponse.__init__
    - botocore.stub.Stubber._validate_operation_response
    - <builtin>.getattr
    - botocore.validate.ValidationErrors.has_errors
    - collections.abc.MutableMapping.update
    - <builtin>.type
    - botocore.validate.ValidationErrors.__init__
    - json.dumps
    - botocore.validate.validate_parameters
    - botocore.stub.Stubber._validate_response
    - botocore.validate.ValidationErrors.report
    - botocore.utils.is_json_value_header
    - botocore.validate.ParamValidator.validate
    - service_model.operation_model
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - operation_name
    - service_response
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 428
    functionName: botocore.stub.Stubber._validate_operation_response
    functionSourceFile: botocore.stub
    functionUses: 2
    functionsReached:
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - <builtin>.hasattr
    - botocore.validate.ParamValidator._check_special_validation_cases
    - <builtin>.enumerate
    - <builtin>.str
    - shape.serialization.get
    - copy.copy
    - botocore.validate.ParamValidator._validate
    - <builtin>.isinstance
    - botocore.validate.ParamValidator._validate_document
    - <builtin>.getattr
    - botocore.validate.ValidationErrors.has_errors
    - <builtin>.type
    - botocore.validate.ValidationErrors.__init__
    - json.dumps
    - botocore.validate.validate_parameters
    - botocore.stub.Stubber._validate_response
    - botocore.validate.ValidationErrors.report
    - botocore.utils.is_json_value_header
    - botocore.validate.ParamValidator.validate
    - service_model.operation_model
    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.deque.append
    functionSourceFile: collections
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7f9830879d60>
    - <ast.Constant object at 0x7f98308797c0>
    - <ast.Constant object at 0x7f9830879eb0>
    - <ast.Constant object at 0x7f9830879280>
    - <ast.Constant object at 0x7f9830879040>
    - <ast.Constant object at 0x7f98308790a0>
    - <ast.Constant object at 0x7f98308799d0>
    argNames:
    - self
    - method
    - service_error_code
    - service_message
    - http_status_code
    - service_error_meta
    - expected_params
    - response_meta
    - modeled_fields
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 271
    functionName: botocore.stub.Stubber.add_client_error
    functionSourceFile: botocore.stub
    functionUses: 0
    functionsReached:
    - parsed_response.update
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - <builtin>.hasattr
    - botocore.validate.ParamValidator._check_special_validation_cases
    - collections.deque.append
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - shape.serialization.get
    - botocore.validate.ParamValidator._validate
    - <builtin>.isinstance
    - botocore.validate.ParamValidator._validate_document
    - botocore.awsrequest.AWSResponse.__init__
    - <builtin>.getattr
    - botocore.validate.ValidationErrors.has_errors
    - collections.abc.MutableMapping.update
    - <builtin>.type
    - service_model.shape_for_error_code
    - botocore.validate.ValidationErrors.__init__
    - json.dumps
    - botocore.validate.validate_parameters
    - botocore.stub.Stubber._validate_response
    - botocore.validate.ValidationErrors.report
    - botocore.utils.is_json_value_header
    - botocore.validate.ParamValidator.validate
    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: service_model.shape_for_error_code
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - response
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 442
    functionName: botocore.stub.Stubber._validate_response
    functionSourceFile: botocore.stub
    functionUses: 4
    functionsReached:
    - <builtin>.getattr
    - botocore.validate.ParamValidator._validate_jsonvalue_string
    - botocore.validate.ValidationErrors.__init__
    - botocore.validate.ValidationErrors.has_errors
    - botocore.validate.ParamValidator._validate
    - botocore.validate.ParamValidator._check_special_validation_cases
    - json.dumps
    - <builtin>.hasattr
    - <builtin>.str
    - botocore.validate.validate_parameters
    - <builtin>.isinstance
    - botocore.validate.ValidationErrors.report
    - <builtin>.enumerate
    - botocore.validate.ParamValidator._validate_document
    - botocore.utils.is_json_value_header
    - <builtin>.type
    - botocore.validate.ParamValidator.validate
    - shape.serialization.get
    linkageType: pythonLinkage
    raised:
    - ParamValidationError
    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: parsed_response.update
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 353
    functionName: botocore.stub.Stubber.assert_no_pending_responses
    functionSourceFile: botocore.stub
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - AssertionError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - model
    - params
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 361
    functionName: botocore.stub.Stubber._assert_expected_call_order
    functionSourceFile: botocore.stub
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - UnStubbedResponseError
    - StubResponseError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - builtins
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 379
    functionName: botocore.stub.Stubber._set_account_id_for_endpoint_resolution
    functionSourceFile: botocore.stub
    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
    - model
    - params
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 387
    functionName: botocore.stub.Stubber._get_response_handler
    functionSourceFile: botocore.stub
    functionUses: 0
    functionsReached:
    - collections.deque.popleft
    - botocore.stub.Stubber._assert_expected_call_order
    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.deque.popleft
    functionSourceFile: collections
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - model
    - params
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 392
    functionName: botocore.stub.Stubber._assert_expected_params
    functionSourceFile: botocore.stub
    functionUses: 0
    functionsReached:
    - botocore.stub.Stubber._assert_expected_call_order
    - expected_params.items
    - botocore.stub.Stubber._should_not_stub
    - <builtin>.sorted
    - params.keys
    - expected_params.keys
    - context.get
    linkageType: pythonLinkage
    raised:
    - StubAssertionError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 421
    functionName: botocore.stub.Stubber._should_not_stub
    functionSourceFile: botocore.stub
    functionUses: 1
    functionsReached:
    - context.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: expected_params.items
    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: expected_params.keys
    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: params.keys
    functionSourceFile: <builtin>
    functionUses: 25
    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: service_model.operation_model
    functionSourceFile: <builtin>
    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: botocore.errorfactory
    functionSourceFile: botocore.errorfactory
    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
    - code_to_exception
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 20
    functionName: botocore.errorfactory.BaseClientExceptions.__init__
    functionSourceFile: botocore.errorfactory
    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
    - error_code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 30
    functionName: botocore.errorfactory.BaseClientExceptions.from_code
    functionSourceFile: botocore.errorfactory
    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
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 46
    functionName: botocore.errorfactory.BaseClientExceptions.__getattr__
    functionSourceFile: botocore.errorfactory
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - AttributeError
    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: botocore.errorfactory.ClientExceptionsFactory.__init__
    functionSourceFile: botocore.errorfactory
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - service_model
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 61
    functionName: botocore.errorfactory.ClientExceptionsFactory.create_client_exceptions
    functionSourceFile: botocore.errorfactory
    functionUses: 0
    functionsReached:
    - botocore.errorfactory.ClientExceptionsFactory._create_client_exceptions
    - botocore.utils.get_service_module_name
    - service_model.metadata.get
    - re.sub
    - name.replace
    - <builtin>.type
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - service_model
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 77
    functionName: botocore.errorfactory.ClientExceptionsFactory._create_client_exceptions
    functionSourceFile: botocore.errorfactory
    functionUses: 1
    functionsReached:
    - botocore.utils.get_service_module_name
    - service_model.metadata.get
    - re.sub
    - name.replace
    - <builtin>.type
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: botocore.httpchecksum
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - logging.getLogger
    - <builtin>.map
    - <builtin>.all
    - crt_version_str.split
    - _CHECKSUM_CLS.keys
    - <builtin>.tuple
    - botocore.compat.has_minimum_crt_version
    - <builtin>.list
    - _CRT_CHECKSUM_CLS.keys
    - _CHECKSUM_CLS.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - chunk
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 56
    functionName: botocore.httpchecksum.BaseChecksum.update
    functionSourceFile: botocore.httpchecksum
    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: 0
    functionLinenumber: 59
    functionName: botocore.httpchecksum.BaseChecksum.digest
    functionSourceFile: botocore.httpchecksum
    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: 1
    functionLinenumber: 62
    functionName: botocore.httpchecksum.BaseChecksum.b64digest
    functionSourceFile: botocore.httpchecksum
    functionUses: 1
    functionsReached:
    - base64.b64encode
    - botocore.httpchecksum.BaseChecksum.digest
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fileobj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 66
    functionName: botocore.httpchecksum.BaseChecksum._handle_fileobj
    functionSourceFile: botocore.httpchecksum
    functionUses: 1
    functionsReached:
    - fileobj.seek
    - fileobj.tell
    - botocore.httpchecksum.BaseChecksum.update
    - <builtin>.iter
    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: botocore.httpchecksum.BaseChecksum._handle_fileobj.<lambda1>
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - fileobj.read
    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: fileobj.read
    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: fileobj.seek
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - body
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 72
    functionName: botocore.httpchecksum.BaseChecksum.handle
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - <builtin>.iter
    - botocore.httpchecksum.BaseChecksum.b64digest
    - fileobj.seek
    - <builtin>.isinstance
    - botocore.httpchecksum.BaseChecksum._handle_fileobj
    - fileobj.tell
    - botocore.httpchecksum.BaseChecksum.update
    - botocore.httpchecksum.BaseChecksum.digest
    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: 81
    functionName: botocore.httpchecksum.Crc32Checksum.__init__
    functionSourceFile: botocore.httpchecksum
    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
    - chunk
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 84
    functionName: botocore.httpchecksum.Crc32Checksum.update
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - binascii.crc32
    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.crc32
    functionSourceFile: binascii
    functionUses: 10
    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: 87
    functionName: botocore.httpchecksum.Crc32Checksum.digest
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - binascii.crc32.to_bytes
    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.crc32.to_bytes
    functionSourceFile: binascii
    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: 0
    functionLinenumber: 93
    functionName: botocore.httpchecksum.CrtCrc32Checksum.__init__
    functionSourceFile: botocore.httpchecksum
    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
    - chunk
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 96
    functionName: botocore.httpchecksum.CrtCrc32Checksum.update
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - awscrt.checksums.crc32
    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: awscrt.checksums.crc32
    functionSourceFile: awscrt
    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: 0
    functionLinenumber: 100
    functionName: botocore.httpchecksum.CrtCrc32Checksum.digest
    functionSourceFile: botocore.httpchecksum
    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: 106
    functionName: botocore.httpchecksum.CrtCrc32cChecksum.__init__
    functionSourceFile: botocore.httpchecksum
    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
    - chunk
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 109
    functionName: botocore.httpchecksum.CrtCrc32cChecksum.update
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - awscrt.checksums.crc32c
    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: awscrt.checksums.crc32c
    functionSourceFile: awscrt
    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: 0
    functionLinenumber: 113
    functionName: botocore.httpchecksum.CrtCrc32cChecksum.digest
    functionSourceFile: botocore.httpchecksum
    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: 119
    functionName: botocore.httpchecksum.CrtCrc64NvmeChecksum.__init__
    functionSourceFile: botocore.httpchecksum
    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
    - chunk
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 122
    functionName: botocore.httpchecksum.CrtCrc64NvmeChecksum.update
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - awscrt.checksums.crc64nvme
    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: awscrt.checksums.crc64nvme
    functionSourceFile: awscrt
    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: 0
    functionLinenumber: 126
    functionName: botocore.httpchecksum.CrtCrc64NvmeChecksum.digest
    functionSourceFile: botocore.httpchecksum
    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: 131
    functionName: botocore.httpchecksum.Sha1Checksum.__init__
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - hashlib.sha1
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - chunk
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 134
    functionName: botocore.httpchecksum.Sha1Checksum.update
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - hashlib.sha1.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: hashlib.sha1.update
    functionSourceFile: hashlib
    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: 137
    functionName: botocore.httpchecksum.Sha1Checksum.digest
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - hashlib.sha1.digest
    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.digest
    functionSourceFile: hashlib
    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: 142
    functionName: botocore.httpchecksum.Sha256Checksum.__init__
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - hashlib.sha256
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - chunk
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 145
    functionName: botocore.httpchecksum.Sha256Checksum.update
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - hashlib.sha256.update
    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: 148
    functionName: botocore.httpchecksum.Sha256Checksum.digest
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - hashlib.sha256.digest
    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.digest
    functionSourceFile: hashlib
    functionUses: 3
    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 0x7f9830916a60>
    - <ast.Constant object at 0x7f9830916820>
    - <ast.Constant object at 0x7f9830916430>
    argNames:
    - self
    - raw
    - checksum_cls
    - checksum_name
    - chunk_size
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 155
    functionName: botocore.httpchecksum.AwsChunkedWrapper.__init__
    functionSourceFile: botocore.httpchecksum
    functionUses: 3
    functionsReached:
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    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: 0
    functionLinenumber: 171
    functionName: botocore.httpchecksum.AwsChunkedWrapper._reset
    functionSourceFile: ''
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 211
    functionName: botocore.httpchecksum.AwsChunkedWrapper._make_chunk
    functionSourceFile: botocore.httpchecksum
    functionUses: 3
    functionsReached:
    - <builtin>.hex
    - <builtin>.len
    - botocore.httpchecksum.AwsChunkedWrapper._make_chunk
    - botocore.httpchecksum.AwsChunkedWrapper.read
    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>.hex
    functionSourceFile: <builtin>
    functionUses: 4
    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: 3
    functionLinenumber: 229
    functionName: botocore.httpchecksum.AwsChunkedWrapper.__iter__
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - <builtin>.hex
    - botocore.httpchecksum.AwsChunkedWrapper._make_chunk
    - botocore.httpchecksum.AwsChunkedWrapper.read
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - raw_stream
    - content_length
    - checksum
    - expected
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 235
    functionName: botocore.httpchecksum.StreamingChecksumBody.__init__
    functionSourceFile: botocore.httpchecksum
    functionUses: 6
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e0c760>
    argNames:
    - self
    - amt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 240
    functionName: botocore.httpchecksum.StreamingChecksumBody.read
    functionSourceFile: botocore.httpchecksum
    functionUses: 4
    functionsReached:
    - <builtin>.super
    - botocore.httpchecksum.StreamingChecksumBody._validate_checksum
    - base64.b64decode
    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: 258
    functionName: botocore.httpchecksum.StreamingChecksumBody._validate_checksum
    functionSourceFile: botocore.httpchecksum
    functionUses: 6
    functionsReached:
    - base64.b64decode
    linkageType: pythonLinkage
    raised:
    - FlexibleChecksumError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - b
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 247
    functionName: botocore.httpchecksum.StreamingChecksumBody.readinto
    functionSourceFile: botocore.httpchecksum
    functionUses: 0
    functionsReached:
    - botocore.httpchecksum.StreamingChecksumBody._validate_checksum
    - base64.b64decode
    - <builtin>.memoryview
    - <builtin>.super
    - <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: <builtin>.memoryview
    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.b64decode
    functionSourceFile: base64
    functionUses: 41
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - request
    - operation_model
    - params
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 267
    functionName: botocore.httpchecksum.resolve_checksum_context
    functionSourceFile: botocore.httpchecksum
    functionUses: 1
    functionsReached:
    - http_checksum.get
    - botocore.httpchecksum.resolve_response_checksum_algorithms
    - operation_input_shape.members.get
    - botocore.utils.has_checksum_header
    - DEFAULT_CHECKSUM_ALGORITHM.lower
    - usable_algorithms.append
    - <builtin>.isinstance
    - a.lower
    - algorithm_member_shape.serialization.get
    - botocore.httpchecksum.resolve_request_checksum_algorithm
    - botocore.httpchecksum._get_request_algorithm_member_header
    - urllib.parse.urlparse
    - CHECKSUM_HEADER_PATTERN.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 0
    IfCount: 10
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830769070>
    argNames:
    - request
    - operation_model
    - params
    - supported_algorithms
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 272
    functionName: botocore.httpchecksum.resolve_request_checksum_algorithm
    functionSourceFile: botocore.httpchecksum
    functionUses: 2
    functionsReached:
    - http_checksum.get
    - operation_input_shape.members.get
    - urllib.parse.urlparse
    - botocore.utils.has_checksum_header
    - DEFAULT_CHECKSUM_ALGORITHM.lower
    - <builtin>.isinstance
    - botocore.httpchecksum._get_request_algorithm_member_header
    - algorithm_member_shape.serialization.get
    - CHECKSUM_HEADER_PATTERN.match
    linkageType: pythonLinkage
    raised:
    - MissingDependencyException
    - FlexibleChecksumError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f98309a7b80>
    argNames:
    - request
    - operation_model
    - params
    - supported_algorithms
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 459
    functionName: botocore.httpchecksum.resolve_response_checksum_algorithms
    functionSourceFile: botocore.httpchecksum
    functionUses: 2
    functionsReached:
    - usable_algorithms.append
    - a.lower
    - http_checksum.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: http_checksum.get
    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: DEFAULT_CHECKSUM_ALGORITHM.lower
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - operation_model
    - request
    - algorithm_member
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 350
    functionName: botocore.httpchecksum._get_request_algorithm_member_header
    functionSourceFile: botocore.httpchecksum
    functionUses: 3
    functionsReached:
    - algorithm_member_shape.serialization.get
    - <builtin>.isinstance
    - operation_input_shape.members.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: operation_input_shape.members.get
    functionSourceFile: <builtin>
    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: algorithm_member_shape.serialization.get
    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:
    - request
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 366
    functionName: botocore.httpchecksum.apply_request_checksum
    functionSourceFile: botocore.httpchecksum
    functionUses: 1
    functionsReached:
    - base64.b64encode
    - request.get
    - <builtin>.hasattr
    - botocore.context.get_context
    - checksum_context.get
    - botocore.utils.has_checksum_header
    - contextvars.ContextVar.get
    - botocore.utils._calculate_md5_from_bytes
    - io.BytesIO
    - md5.digest
    - ctx.features.add
    - <builtin>.str
    - logger.debug
    - botocore.httpchecksum.AwsChunkedWrapper.__init__
    - botocore.httpchecksum._apply_request_header_checksum
    - botocore.useragent.register_feature_id
    - <builtin>.isinstance
    - params.get
    - endpoint_properties.get
    - _USERAGENT_FEATURE_MAPPINGS.get
    - hashlib.md5
    - botocore.httpchecksum._register_checksum_algorithm_feature_id
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.utils.calculate_md5
    - botocore.utils._calculate_md5_from_file
    - body.tell
    - _CHECKSUM_CLS.get
    - botocore.compat.get_md5
    - botocore.utils.conditionally_calculate_md5
    - botocore.utils._is_s3express_request
    - <builtin>.iter
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpchecksum._apply_request_trailer_checksum
    - botocore.utils.determine_content_length
    - <builtin>.len
    - fileobj.tell
    - CHECKSUM_HEADER_PATTERN.match
    - md5.update
    linkageType: pythonLinkage
    raised:
    - FlexibleChecksumError
    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.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - request
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 391
    functionName: botocore.httpchecksum._apply_request_header_checksum
    functionSourceFile: botocore.httpchecksum
    functionUses: 2
    functionsReached:
    - request.get
    - botocore.context.get_context
    - checksum_context.get
    - botocore.useragent.register_feature_id
    - contextvars.ContextVar.get
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    - _CHECKSUM_CLS.get
    - botocore.httpchecksum._register_checksum_algorithm_feature_id
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - request
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 404
    functionName: botocore.httpchecksum._apply_request_trailer_checksum
    functionSourceFile: botocore.httpchecksum
    functionUses: 2
    functionsReached:
    - request.get
    - <builtin>.hasattr
    - botocore.context.get_context
    - checksum_context.get
    - contextvars.ContextVar.get
    - io.BytesIO
    - ctx.features.add
    - <builtin>.str
    - logger.debug
    - botocore.httpchecksum.AwsChunkedWrapper.__init__
    - botocore.useragent.register_feature_id
    - <builtin>.isinstance
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.httpchecksum._register_checksum_algorithm_feature_id
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - body.tell
    - _CHECKSUM_CLS.get
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.utils.determine_content_length
    - <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: _CHECKSUM_CLS.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:
    - algorithm
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 449
    functionName: botocore.httpchecksum._register_checksum_algorithm_feature_id
    functionSourceFile: botocore.httpchecksum
    functionUses: 4
    functionsReached:
    - botocore.context.get_context
    - contextvars.ContextVar.get
    - botocore.useragent.register_feature_id
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    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: a.lower
    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: usable_algorithms.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - http_response
    - response
    - context
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 483
    functionName: botocore.httpchecksum.handle_checksum_body
    functionSourceFile: botocore.httpchecksum
    functionUses: 4
    functionsReached:
    - checksum.update
    - logger.debug
    - botocore.httpchecksum._handle_streaming_response
    - checksum.b64digest
    - botocore.httpchecksum.StreamingChecksumBody.__init__
    - checksum_context.get
    - checksum.digest
    - base64.b64decode
    - _CHECKSUM_CLS.get
    - <builtin>.super
    - botocore.httpchecksum._handle_bytes_response
    - context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - http_response
    - response
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 524
    functionName: botocore.httpchecksum._handle_streaming_response
    functionSourceFile: botocore.httpchecksum
    functionUses: 5
    functionsReached:
    - <builtin>.super
    - botocore.httpchecksum.StreamingChecksumBody.__init__
    - _CHECKSUM_CLS.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - http_response
    - response
    - algorithm
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 535
    functionName: botocore.httpchecksum._handle_bytes_response
    functionSourceFile: botocore.httpchecksum
    functionUses: 5
    functionsReached:
    - checksum.update
    - checksum.b64digest
    - checksum.digest
    - base64.b64decode
    - _CHECKSUM_CLS.get
    linkageType: pythonLinkage
    raised:
    - FlexibleChecksumError
    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: checksum.b64digest
    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: _CHECKSUM_CLS.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: _CRT_CHECKSUM_CLS.keys
    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: _CHECKSUM_CLS.keys
    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: 1
    functionLinenumber: -1
    functionName: botocore.response
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - raw_stream
    - content_length
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 54
    functionName: botocore.response.StreamingBody.__init__
    functionSourceFile: botocore.response
    functionUses: 6
    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: 59
    functionName: botocore.response.StreamingBody.__del__
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - timeout
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 65
    functionName: botocore.response.StreamingBody.set_socket_timeout
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached:
    - botocore.response.StreamingBody.set_socket_timeout
    - logger.exception
    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: logger.exception
    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: 0
    functionLinenumber: 86
    functionName: botocore.response.StreamingBody.readable
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830769490>
    argNames:
    - self
    - amt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 92
    functionName: botocore.response.StreamingBody.read
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.int
    - botocore.response.StreamingBody._verify_content_length
    linkageType: pythonLinkage
    raised:
    - ResponseStreamingError
    - ReadTimeoutError
    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: 175
    functionName: botocore.response.StreamingBody._verify_content_length
    functionSourceFile: botocore.response
    functionUses: 2
    functionsReached:
    - <builtin>.int
    linkageType: pythonLinkage
    raised:
    - IncompleteReadError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - b
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 112
    functionName: botocore.response.StreamingBody.readinto
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.int
    - botocore.response.StreamingBody._verify_content_length
    linkageType: pythonLinkage
    raised:
    - ResponseStreamingError
    - ReadTimeoutError
    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: 128
    functionName: botocore.response.StreamingBody.readlines
    functionSourceFile: botocore.response
    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: 4
    functionLinenumber: 131
    functionName: botocore.response.StreamingBody.__iter__
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached:
    - botocore.response.StreamingBody.iter_chunks
    - botocore.httpchecksum.StreamingChecksumBody._validate_checksum
    - base64.b64decode
    - botocore.httpchecksum.StreamingChecksumBody.read
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Name object at 0x7f9830b06490>
    argNames:
    - self
    - chunk_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 165
    functionName: botocore.response.StreamingBody.iter_chunks
    functionSourceFile: botocore.response
    functionUses: 2
    functionsReached:
    - <builtin>.super
    - botocore.httpchecksum.StreamingChecksumBody._validate_checksum
    - base64.b64decode
    - botocore.httpchecksum.StreamingChecksumBody.read
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 135
    functionName: botocore.response.StreamingBody.__next__
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - botocore.httpchecksum.StreamingChecksumBody._validate_checksum
    - base64.b64decode
    - botocore.httpchecksum.StreamingChecksumBody.read
    linkageType: pythonLinkage
    raised:
    - StopIteration
    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: botocore.response.StreamingBody.__enter__
    functionSourceFile: botocore.response
    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
    - type
    - value
    - traceback
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 145
    functionName: botocore.response.StreamingBody.__exit__
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7f9830e7b2b0>
    - <ast.Constant object at 0x7f9830e7b7c0>
    argNames:
    - self
    - chunk_size
    - keepends
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 150
    functionName: botocore.response.StreamingBody.iter_lines
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached:
    - botocore.response.StreamingBody.iter_chunks
    - pending.splitlines
    - botocore.httpchecksum.StreamingChecksumBody._validate_checksum
    - base64.b64decode
    - botocore.httpchecksum.StreamingChecksumBody.read
    - <builtin>.super
    - line.splitlines
    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: line.splitlines
    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: pending.splitlines
    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: 0
    functionLinenumber: 187
    functionName: botocore.response.StreamingBody.tell
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 190
    functionName: botocore.response.StreamingBody.close
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - operation_model
    - http_response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 195
    functionName: botocore.response.get_response
    functionSourceFile: botocore.response
    functionUses: 0
    functionsReached:
    - botocore.response.StreamingBody.__init__
    - botocore.parsers.ResponseParserFactory.create_parser
    - botocore.parsers.create_parser
    - botocore.parsers.ResponseParserFactory.__init__
    - parser.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - protocol
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 168
    functionName: botocore.parsers.create_parser
    functionSourceFile: botocore.parsers
    functionUses: 4
    functionsReached:
    - botocore.parsers.ResponseParserFactory.create_parser
    - botocore.parsers.ResponseParserFactory.__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: parser.parse
    functionSourceFile: <builtin>
    functionUses: 6
    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: botocore.parsers
    functionSourceFile: botocore.parsers
    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: 148
    functionName: botocore.parsers.ResponseParserFactory.__init__
    functionSourceFile: botocore.parsers
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 151
    functionName: botocore.parsers.ResponseParserFactory.set_parser_defaults
    functionSourceFile: botocore.parsers
    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
    - protocol_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 163
    functionName: botocore.parsers.ResponseParserFactory.create_parser
    functionSourceFile: botocore.parsers
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 172
    functionName: botocore.parsers._text_content
    functionSourceFile: botocore.parsers
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - node_or_string
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 178
    functionName: botocore.parsers._text_content._get_text_content
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.ResponseParser._default_blob_parser
    - <builtin>.hasattr
    - botocore.parsers.BaseXMLResponseParser._handle_boolean
    - botocore.parsers.BaseXMLResponseParser._handle_blob
    - base64.b64decode
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - <builtin>.isinstance
    - <builtin>.int
    - botocore.utils._parse_timestamp_with_tzinfo
    - <builtin>.super
    - <builtin>.float
    - botocore.utils.parse_timestamp
    - botocore.parsers.BaseXMLResponseParser._handle_float
    - dateutil.parser.parse
    - botocore.parsers.BaseXMLResponseParser._handle_timestamp
    - botocore.parsers.BaseXMLResponseParser._handle_integer
    - botocore.parsers.BaseXMLResponseParser._handle_string
    - datetime.datetime.fromtimestamp
    - botocore.parsers.RestXMLParser._handle_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 580
    functionName: botocore.parsers.BaseXMLResponseParser._handle_string
    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
    - shape
    - text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 584
    functionName: botocore.parsers.BaseXMLResponseParser._handle_blob
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - botocore.parsers.ResponseParser._default_blob_parser
    - base64.b64decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 576
    functionName: botocore.parsers.BaseXMLResponseParser._handle_integer
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1472
    functionName: botocore.parsers.RestXMLParser._handle_string
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 568
    functionName: botocore.parsers.BaseXMLResponseParser._handle_float
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - <builtin>.float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 572
    functionName: botocore.parsers.BaseXMLResponseParser._handle_timestamp
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - <builtin>.float
    - epoch_zero.astimezone
    - logger.debug
    - datetime.datetime.fromtimestamp
    - dateutil.tz.tzutc
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.utils._parse_timestamp_with_tzinfo
    - <builtin>.isinstance
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - datetime.timedelta
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 561
    functionName: botocore.parsers.BaseXMLResponseParser._handle_boolean
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f98303e2af0>
    - <ast.Constant object at 0x7f98303e2ac0>
    argNames:
    - self
    - timestamp_parser
    - blob_parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 219
    functionName: botocore.parsers.ResponseParser.__init__
    functionSourceFile: botocore.parsers
    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
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 232
    functionName: botocore.parsers.ResponseParser._default_blob_parser
    functionSourceFile: botocore.parsers
    functionUses: 3
    functionsReached:
    - base64.b64decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 238
    functionName: botocore.parsers.ResponseParser.parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.ResponseParser._do_parse
    - checksum_context.get
    - botocore.parsers.ResponseParser._do_generic_error_parse
    - <builtin>.str
    - shape.serialization.get
    - botocore.parsers.ResponseParser._is_modeled_error_shape
    - botocore.parsers.ResponseParser._do_error_parse
    - <builtin>.isinstance
    - parsed.get
    - key.lower
    - botocore.parsers.ResponseParser._add_checksum_response_metadata
    - botocore.parsers.ResponseParser._do_modeled_error_parse
    - botocore.utils.lowercase_dict
    - LOG.debug
    - response.get
    - body.startswith
    - shape.metadata.get
    - http.client.responses.get
    - botocore.parsers.ResponseParser._is_generic_error_response
    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: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 296
    functionName: botocore.parsers.ResponseParser._is_generic_error_response
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - body.startswith
    linkageType: pythonLinkage
    raised: []
    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: 1
    functionLinenumber: 315
    functionName: botocore.parsers.ResponseParser._do_generic_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - http.client.responses.get
    - LOG.debug
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 293
    functionName: botocore.parsers.ResponseParser._is_modeled_error_shape
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - shape.metadata.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    - parsed
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 338
    functionName: botocore.parsers.ResponseParser._do_modeled_error_parse
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 335
    functionName: botocore.parsers.ResponseParser._do_error_parse
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 332
    functionName: botocore.parsers.ResponseParser._do_parse
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    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: parsed.get
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - response_metadata
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 287
    functionName: botocore.parsers.ResponseParser._add_checksum_response_metadata
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - response.get
    - checksum_context.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: 29
    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.startswith
    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: http.client.responses.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - node
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 343
    functionName: botocore.parsers.ResponseParser._parse_shape
    functionSourceFile: botocore.parsers
    functionUses: 25
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - node
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 349
    functionName: botocore.parsers.ResponseParser._handle_list
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.parsers.ResponseParser._parse_shape
    - parsed.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: parsed.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: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 358
    functionName: botocore.parsers.ResponseParser._default_handle
    functionSourceFile: botocore.parsers
    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:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 361
    functionName: botocore.parsers.ResponseParser._create_event_stream
    functionSourceFile: botocore.parsers
    functionUses: 7
    functionsReached:
    - botocore.eventstream.EventStreamBuffer.add_data
    - botocore.eventstream.EventStream.__init__
    - botocore.eventstream.EventStream._create_raw_event_generator
    - botocore.eventstream.EventStreamHeaderParser.__init__
    - botocore.eventstream.EventStreamBuffer.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - raw_stream
    - output_shape
    - parser
    - operation_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 583
    functionName: botocore.eventstream.EventStream.__init__
    functionSourceFile: botocore.eventstream
    functionUses: 8
    functionsReached:
    - botocore.eventstream.EventStream._create_raw_event_generator
    - botocore.eventstream.EventStreamBuffer.__init__
    - botocore.eventstream.EventStreamBuffer.add_data
    - botocore.eventstream.EventStreamHeaderParser.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 366
    functionName: botocore.parsers.ResponseParser._get_first_key
    functionSourceFile: botocore.parsers
    functionUses: 3
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 369
    functionName: botocore.parsers.ResponseParser._has_unknown_tagged_union_member
    functionSourceFile: botocore.parsers
    functionUses: 2
    functionsReached:
    - cleaned_value.pop
    - cleaned_value.items
    - value.copy
    - <builtin>.list
    - botocore.parsers.ResponseParser._get_first_key
    - <builtin>.len
    - LOG.info
    linkageType: pythonLinkage
    raised:
    - ResponseParserError
    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.copy
    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: cleaned_value.pop
    functionSourceFile: <builtin>
    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: cleaned_value.items
    functionSourceFile: <builtin>
    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: LOG.info
    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
    - tag
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 396
    functionName: botocore.parsers.ResponseParser._handle_unknown_tagged_union_member
    functionSourceFile: botocore.parsers
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - code
    - headers
    - error
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 399
    functionName: botocore.parsers.ResponseParser._do_query_compatible_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - query_error.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: query_error.split
    functionSourceFile: <builtin>
    functionUses: 3
    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 0x7f9830b4b430>
    - <ast.Constant object at 0x7f9830b4b3a0>
    argNames:
    - self
    - timestamp_parser
    - blob_parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 416
    functionName: botocore.parsers.BaseXMLResponseParser.__init__
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - node
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 420
    functionName: botocore.parsers.BaseXMLResponseParser._handle_map
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.parsers.BaseXMLResponseParser._node_tag
    - value_shape.serialization.get
    - key_shape.serialization.get
    - <builtin>.isinstance
    - botocore.parsers.ResponseParser._parse_shape
    - shape.serialization.get
    linkageType: pythonLinkage
    raised:
    - ResponseParserError
    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_shape.serialization.get
    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: value_shape.serialization.get
    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
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 441
    functionName: botocore.parsers.BaseXMLResponseParser._node_tag
    functionSourceFile: ''
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - node
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 444
    functionName: botocore.parsers.BaseXMLResponseParser._handle_list
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - <builtin>.isinstance
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - node
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 454
    functionName: botocore.parsers.BaseXMLResponseParser._handle_structure
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - location_name.split
    - shape.member.serialization.get
    - botocore.parsers.BaseXMLResponseParser._node_tag
    - value.copy
    - <builtin>.list
    - botocore.parsers.ResponseParser._get_first_key
    - cleaned_value.pop
    - shape.serialization.get
    - <builtin>.isinstance
    - botocore.parsers.ResponseParser._handle_unknown_tagged_union_member
    - <builtin>.getattr
    - botocore.parsers.BaseXMLResponseParser._get_error_root
    - cleaned_value.items
    - botocore.parsers.ResponseParser._parse_shape
    - botocore.parsers.ResponseParser._has_unknown_tagged_union_member
    - botocore.parsers.BaseXMLResponseParser._member_key_name
    - xml_dict.get
    - botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    - node.attrib.items
    - shape.metadata.get
    - <builtin>.len
    - member_shape.serialization.get
    - LOG.info
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - original_root
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 491
    functionName: botocore.parsers.BaseXMLResponseParser._get_error_root
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - botocore.parsers.BaseXMLResponseParser._node_tag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parent_node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 514
    functionName: botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    functionSourceFile: botocore.parsers
    functionUses: 11
    functionsReached:
    - <builtin>.isinstance
    - botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    - botocore.parsers.BaseXMLResponseParser._node_tag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - member_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 498
    functionName: botocore.parsers.BaseXMLResponseParser._member_key_name
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - shape.member.serialization.get
    - shape.serialization.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: xml_dict.get
    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: node.attrib.items
    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: location_name.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - xml_string
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 537
    functionName: botocore.parsers.BaseXMLResponseParser._parse_xml_string_to_dom
    functionSourceFile: botocore.parsers
    functionUses: 8
    functionsReached:
    - parser.close
    - xml.etree.ElementTree.TreeBuilder
    - parser.feed
    - xml.etree.ElementTree.XMLParser
    linkageType: pythonLinkage
    raised:
    - ResponseParserError
    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: xml.etree.ElementTree.TreeBuilder
    functionSourceFile: xml
    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: xml.etree.ElementTree.XMLParser
    functionSourceFile: xml
    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: parser.feed
    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: parser.close
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parsed
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 551
    functionName: botocore.parsers.BaseXMLResponseParser._replace_nodes
    functionSourceFile: botocore.parsers
    functionUses: 3
    functionsReached:
    - botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    - botocore.parsers.BaseXMLResponseParser._node_tag
    - botocore.parsers.BaseXMLResponseParser._replace_nodes
    - <builtin>.isinstance
    - <builtin>.list
    - parsed.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: parsed.items
    functionSourceFile: <builtin>
    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: 1
    functionLinenumber: -1
    functionName: botocore.parsers.BaseXMLResponseParser
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers._text_content
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 593
    functionName: botocore.parsers.QueryParser._do_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - parser.feed
    - parsed.update
    - botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    - botocore.parsers.BaseXMLResponseParser._node_tag
    - botocore.parsers.BaseXMLResponseParser._replace_nodes
    - parser.close
    - <builtin>.isinstance
    - <builtin>.list
    - xml.etree.ElementTree.XMLParser
    - botocore.parsers.BaseXMLResponseParser._parse_xml_string_to_dom
    - parsed.items
    - xml.etree.ElementTree.TreeBuilder
    - parsed.pop
    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: parsed.pop
    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: parsed.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: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 609
    functionName: botocore.parsers.QueryParser._do_modeled_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - sub_mapping.items
    - botocore.parsers.QueryParser._parse_body_as_xml
    - parser.feed
    - botocore.parsers.QueryParser._find_result_wrapped_shape
    - botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    - botocore.parsers.QueryParser._inject_response_metadata
    - botocore.parsers.BaseXMLResponseParser._node_tag
    - parser.close
    - <builtin>.isinstance
    - botocore.parsers.ResponseParser._parse_shape
    - mapping.get
    - xml.etree.ElementTree.XMLParser
    - botocore.parsers.BaseXMLResponseParser._parse_xml_string_to_dom
    - xml.etree.ElementTree.TreeBuilder
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830720d60>
    argNames:
    - self
    - response
    - shape
    - inject_metadata
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 615
    functionName: botocore.parsers.QueryParser._parse_body_as_xml
    functionSourceFile: botocore.parsers
    functionUses: 2
    functionsReached:
    - <builtin>.getattr
    - sub_mapping.items
    - parser.feed
    - botocore.parsers.QueryParser._find_result_wrapped_shape
    - botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    - botocore.parsers.QueryParser._inject_response_metadata
    - botocore.parsers.BaseXMLResponseParser._node_tag
    - parser.close
    - <builtin>.isinstance
    - botocore.parsers.ResponseParser._parse_shape
    - mapping.get
    - xml.etree.ElementTree.XMLParser
    - botocore.parsers.BaseXMLResponseParser._parse_xml_string_to_dom
    - xml.etree.ElementTree.TreeBuilder
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 612
    functionName: botocore.parsers.QueryParser._do_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - sub_mapping.items
    - botocore.parsers.QueryParser._parse_body_as_xml
    - parser.feed
    - botocore.parsers.QueryParser._find_result_wrapped_shape
    - botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    - botocore.parsers.QueryParser._inject_response_metadata
    - botocore.parsers.BaseXMLResponseParser._node_tag
    - parser.close
    - <builtin>.isinstance
    - botocore.parsers.ResponseParser._parse_shape
    - mapping.get
    - xml.etree.ElementTree.XMLParser
    - botocore.parsers.BaseXMLResponseParser._parse_xml_string_to_dom
    - xml.etree.ElementTree.TreeBuilder
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - element_name
    - xml_root_node
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 630
    functionName: botocore.parsers.QueryParser._find_result_wrapped_shape
    functionSourceFile: botocore.parsers
    functionUses: 3
    functionsReached:
    - botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    - <builtin>.isinstance
    - botocore.parsers.BaseXMLResponseParser._node_tag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - node
    - inject_into
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 634
    functionName: botocore.parsers.QueryParser._inject_response_metadata
    functionSourceFile: botocore.parsers
    functionUses: 3
    functionsReached:
    - sub_mapping.items
    - botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    - botocore.parsers.BaseXMLResponseParser._node_tag
    - mapping.get
    - <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: mapping.get
    functionSourceFile: <builtin>
    functionUses: 50
    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: sub_mapping.items
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - node
    - inject_into
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 645
    functionName: botocore.parsers.EC2QueryParser._inject_response_metadata
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - mapping.get
    - <builtin>.isinstance
    - botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    - botocore.parsers.BaseXMLResponseParser._node_tag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 651
    functionName: botocore.parsers.EC2QueryParser._do_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - original.pop
    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: original.pop
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - original_root
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 671
    functionName: botocore.parsers.EC2QueryParser._get_error_root
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseXMLResponseParser._node_tag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 681
    functionName: botocore.parsers.BaseJSONParser._handle_structure
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - value.get
    - <builtin>.len
    - cleaned_value.items
    - member_shape.serialization.get
    - botocore.parsers.ResponseParser._parse_shape
    - value.copy
    - botocore.parsers.ResponseParser._handle_unknown_tagged_union_member
    - botocore.parsers.ResponseParser._get_first_key
    - <builtin>.list
    - cleaned_value.pop
    - botocore.parsers.ResponseParser._has_unknown_tagged_union_member
    - LOG.info
    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.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 706
    functionName: botocore.parsers.BaseJSONParser._handle_map
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.parsers.ResponseParser._parse_shape
    - value.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 716
    functionName: botocore.parsers.BaseJSONParser._handle_blob
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.ResponseParser._default_blob_parser
    - base64.b64decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 719
    functionName: botocore.parsers.BaseJSONParser._handle_timestamp
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.float
    - epoch_zero.astimezone
    - logger.debug
    - datetime.datetime.fromtimestamp
    - dateutil.tz.tzutc
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.utils._parse_timestamp_with_tzinfo
    - <builtin>.isinstance
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - datetime.timedelta
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 722
    functionName: botocore.parsers.BaseJSONParser._do_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseJSONParser._parse_body_as_json
    - code.rsplit
    - response.get
    - json.loads
    - code.split
    - botocore.parsers.BaseJSONParser._inject_response_metadata
    - body.get
    - parsed.setdefault
    - query_error.split
    - body_contents.decode
    - <builtin>.len
    - <builtin>.str
    - botocore.parsers.ResponseParser._do_query_compatible_error_parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - body_contents
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 764
    functionName: botocore.parsers.BaseJSONParser._parse_body_as_json
    functionSourceFile: botocore.parsers
    functionUses: 9
    functionsReached:
    - json.loads
    - body_contents.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: body.get
    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: code.split
    functionSourceFile: <builtin>
    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: code.rsplit
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parsed
    - headers
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 758
    functionName: botocore.parsers.BaseJSONParser._inject_response_metadata
    functionSourceFile: botocore.parsers
    functionUses: 2
    functionsReached:
    - parsed.setdefault
    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: parsed.setdefault
    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: body_contents.decode
    functionSourceFile: <builtin>
    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: 1
    functionLinenumber: -1
    functionName: botocore.parsers.BaseCBORParser
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.utils.CachedProperty
    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: 782
    functionName: botocore.parsers.BaseCBORParser.major_type_to_parsing_method_map
    functionSourceFile: botocore.parsers
    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
    - bytes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 794
    functionName: botocore.parsers.BaseCBORParser.get_peekable_stream_from_bytes
    functionSourceFile: botocore.parsers
    functionUses: 4
    functionsReached:
    - io.BytesIO
    - io.BufferedReader
    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: io.BufferedReader
    functionSourceFile: io
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 797
    functionName: botocore.parsers.BaseCBORParser.parse_data_item
    functionSourceFile: botocore.parsers
    functionUses: 8
    functionsReached:
    - stream.read
    - botocore.parsers.BaseCBORParser._read_from_stream
    - int.from_bytes
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ResponseParserError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - stream
    - num_bytes
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 955
    functionName: botocore.parsers.BaseCBORParser._read_bytes_as_int
    functionSourceFile: botocore.parsers
    functionUses: 13
    functionsReached:
    - int.from_bytes
    - stream.read
    - <builtin>.len
    - botocore.parsers.BaseCBORParser._read_from_stream
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - stream
    - additional_info
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 818
    functionName: botocore.parsers.BaseCBORParser._parse_unsigned_integer
    functionSourceFile: botocore.parsers
    functionUses: 6
    functionsReached:
    - stream.read
    - botocore.parsers.BaseCBORParser._read_from_stream
    - int.from_bytes
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ResponseParserError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - stream
    - additional_info
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 839
    functionName: botocore.parsers.BaseCBORParser._parse_negative_integer
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseCBORParser._read_from_stream
    - stream.read
    - botocore.parsers.BaseCBORParser._parse_unsigned_integer
    - int.from_bytes
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - stream
    - additional_info
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 843
    functionName: botocore.parsers.BaseCBORParser._parse_byte_string
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - botocore.parsers.BaseCBORParser._handle_break_code
    - botocore.parsers.BaseCBORParser._read_from_stream
    - stream.read
    - stream.peek
    - chunks.append
    - botocore.parsers.BaseCBORParser._parse_unsigned_integer
    - int.from_bytes
    - stream.seek
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - stream
    - num_bytes
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 959
    functionName: botocore.parsers.BaseCBORParser._read_from_stream
    functionSourceFile: botocore.parsers
    functionUses: 15
    functionsReached:
    - <builtin>.len
    - stream.read
    linkageType: pythonLinkage
    raised:
    - ResponseParserError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - stream
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 950
    functionName: botocore.parsers.BaseCBORParser._handle_break_code
    functionSourceFile: botocore.parsers
    functionUses: 4
    functionsReached:
    - int.from_bytes
    - stream.peek
    - stream.seek
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - stream
    - additional_info
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 859
    functionName: botocore.parsers.BaseCBORParser._parse_text_string
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseCBORParser._handle_break_code
    - botocore.parsers.BaseCBORParser._parse_byte_string
    - botocore.parsers.BaseCBORParser._read_from_stream
    - stream.read
    - stream.peek
    - chunks.append
    - botocore.parsers.BaseCBORParser._parse_unsigned_integer
    - int.from_bytes
    - stream.seek
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - stream
    - additional_info
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 863
    functionName: botocore.parsers.BaseCBORParser._parse_array
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseCBORParser._handle_break_code
    - botocore.parsers.BaseCBORParser._read_from_stream
    - botocore.parsers.BaseCBORParser.parse_data_item
    - <builtin>.len
    - stream.read
    - stream.peek
    - <builtin>.range
    - botocore.parsers.BaseCBORParser._parse_unsigned_integer
    - int.from_bytes
    - stream.seek
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - items.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: items.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - stream
    - additional_info
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 874
    functionName: botocore.parsers.BaseCBORParser._parse_map
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseCBORParser._handle_break_code
    - botocore.parsers.BaseCBORParser._parse_key_value_pair
    - botocore.parsers.BaseCBORParser._read_from_stream
    - botocore.parsers.BaseCBORParser.parse_data_item
    - stream.read
    - stream.peek
    - <builtin>.range
    - botocore.parsers.BaseCBORParser._parse_unsigned_integer
    - int.from_bytes
    - stream.seek
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - stream
    - items
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 887
    functionName: botocore.parsers.BaseCBORParser._parse_key_value_pair
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - botocore.parsers.BaseCBORParser._read_from_stream
    - botocore.parsers.BaseCBORParser.parse_data_item
    - stream.read
    - int.from_bytes
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - stream
    - additional_info
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 895
    functionName: botocore.parsers.BaseCBORParser._parse_tag
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseCBORParser._parse_datetime
    - botocore.parsers.BaseCBORParser.parse_data_item
    - int.from_bytes
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - <builtin>.isinstance
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - botocore.utils._parse_timestamp_with_tzinfo
    - <builtin>.float
    - botocore.utils.parse_timestamp
    - botocore.parsers.BaseCBORParser._read_from_stream
    - stream.read
    - dateutil.parser.parse
    - botocore.parsers.BaseCBORParser._parse_unsigned_integer
    - datetime.datetime.fromtimestamp
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ResponseParserError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 905
    functionName: botocore.parsers.BaseCBORParser._parse_datetime
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - <builtin>.float
    - logger.debug
    - epoch_zero.astimezone
    - datetime.datetime.fromtimestamp
    - dateutil.tz.tzutc
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.utils._parse_timestamp_with_tzinfo
    - <builtin>.isinstance
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - datetime.timedelta
    linkageType: pythonLinkage
    raised:
    - ResponseParserError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - stream
    - additional_info
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 916
    functionName: botocore.parsers.BaseCBORParser._parse_simple_and_float
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - struct.unpack
    - <builtin>.len
    - stream.read
    - botocore.parsers.BaseCBORParser._read_from_stream
    linkageType: pythonLinkage
    raised:
    - ResponseParserError
    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: struct.unpack
    functionSourceFile: struct
    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: stream.peek
    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: int.from_bytes
    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: stream.seek
    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: stream.read
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 971
    functionName: botocore.parsers.BaseEventStreamParser._do_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseEventStreamParser._parse_payload
    - botocore.parsers.BaseEventStreamParser._parse_non_payload_attrs
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - shape.serialization.get
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - <builtin>.isinstance
    - botocore.utils._parse_timestamp_with_tzinfo
    - <builtin>.getattr
    - <builtin>.float
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.parsers.ResponseParser._parse_shape
    - body.decode
    - shape.members.get
    - botocore.parsers.BaseEventStreamParser._do_parse
    - datetime.datetime.fromtimestamp
    - final_parsed.update
    - member_shape.serialization.get
    - botocore.parsers.BaseEventStreamParser._initial_body_parse
    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: shape.members.get
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    - member_shapes
    - final_parsed
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1030
    functionName: botocore.parsers.BaseEventStreamParser._parse_non_payload_attrs
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - <builtin>.float
    - logger.debug
    - epoch_zero.astimezone
    - datetime.datetime.fromtimestamp
    - dateutil.tz.tzutc
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.utils._parse_timestamp_with_tzinfo
    - <builtin>.isinstance
    - datetime.datetime
    - member_shape.serialization.get
    - botocore.compat.get_tzinfo_options
    - datetime.timedelta
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    - member_shapes
    - final_parsed
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1008
    functionName: botocore.parsers.BaseEventStreamParser._parse_payload
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    - final_parsed.update
    - botocore.parsers.ResponseParser._parse_shape
    - body.decode
    - member_shape.serialization.get
    - botocore.parsers.BaseEventStreamParser._initial_body_parse
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 987
    functionName: botocore.parsers.BaseEventStreamParser._do_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - body.get
    - botocore.parsers.ResponseParser._parse_shape
    - botocore.parsers.BaseEventStreamParser._initial_body_parse
    - shape.members.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - body_contents
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1045
    functionName: botocore.parsers.BaseEventStreamParser._initial_body_parse
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    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: body.decode
    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: final_parsed.update
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - body_contents
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1054
    functionName: botocore.parsers.EventStreamJSONParser._initial_body_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseJSONParser._parse_body_as_json
    - json.loads
    - body_contents.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - xml_string
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1059
    functionName: botocore.parsers.EventStreamXMLParser._initial_body_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - parser.feed
    - parser.close
    - xml.etree.ElementTree.XMLParser
    - botocore.parsers.BaseXMLResponseParser._parse_xml_string_to_dom
    - xml.etree.ElementTree.TreeBuilder
    - xml.etree.ElementTree.Element
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - body_contents
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1066
    functionName: botocore.parsers.EventStreamCBORParser._initial_body_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseCBORParser._read_from_stream
    - botocore.parsers.BaseCBORParser.parse_data_item
    - stream.read
    - int.from_bytes
    - io.BytesIO
    - botocore.parsers.BaseCBORParser.get_peekable_stream_from_bytes
    - io.BufferedReader
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1079
    functionName: botocore.parsers.JSONParser._do_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.parsers.BaseJSONParser._parse_body_as_json
    - <builtin>.next
    - botocore.parsers.ResponseParser._create_event_stream
    - botocore.eventstream.EventStreamBuffer.add_data
    - json.loads
    - botocore.parsers.JSONParser._handle_event_stream
    - botocore.parsers.BaseJSONParser._inject_response_metadata
    - botocore.eventstream.EventStream.__init__
    - botocore.eventstream.EventStream._create_raw_event_generator
    - botocore.eventstream.EventStream.get_initial_response
    - initial_event.headers.get
    - parsed.setdefault
    - botocore.parsers.ResponseParser._parse_shape
    - botocore.eventstream.EventStreamHeaderParser.__init__
    - body_contents.decode
    - botocore.eventstream.EventStreamBuffer.__init__
    - botocore.parsers.JSONParser._handle_json_body
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    - event_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1093
    functionName: botocore.parsers.JSONParser._handle_event_stream
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - <builtin>.next
    - botocore.parsers.BaseJSONParser._parse_body_as_json
    - <builtin>.getattr
    - botocore.parsers.ResponseParser._create_event_stream
    - botocore.eventstream.EventStreamBuffer.add_data
    - botocore.eventstream.EventStream.get_initial_response
    - botocore.eventstream.EventStream.__init__
    - botocore.eventstream.EventStream._create_raw_event_generator
    - json.loads
    - initial_event.headers.get
    - botocore.parsers.ResponseParser._parse_shape
    - botocore.eventstream.EventStreamHeaderParser.__init__
    - body_contents.decode
    - botocore.eventstream.EventStreamBuffer.__init__
    - botocore.parsers.JSONParser._handle_json_body
    linkageType: pythonLinkage
    raised:
    - ResponseParserError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - raw_body
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1105
    functionName: botocore.parsers.JSONParser._handle_json_body
    functionSourceFile: botocore.parsers
    functionUses: 3
    functionsReached:
    - <builtin>.getattr
    - botocore.parsers.BaseJSONParser._parse_body_as_json
    - json.loads
    - botocore.parsers.ResponseParser._parse_shape
    - body_contents.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1090
    functionName: botocore.parsers.JSONParser._do_modeled_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.parsers.BaseJSONParser._parse_body_as_json
    - json.loads
    - botocore.parsers.ResponseParser._parse_shape
    - body_contents.decode
    - botocore.parsers.JSONParser._handle_json_body
    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: 610
    functionName: botocore.eventstream.EventStream.get_initial_response
    functionSourceFile: botocore.eventstream
    functionUses: 3
    functionsReached:
    - <builtin>.next
    - initial_event.headers.get
    linkageType: pythonLinkage
    raised:
    - NoInitialResponseError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1114
    functionName: botocore.parsers.BaseRestParser._do_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.eventstream.EventStream._create_raw_event_generator
    - header_name.lower
    - body_shape.serialization.get
    - botocore.parsers.BaseRestParser._parse_header_map
    - botocore.eventstream.EventStreamBuffer.__init__
    - shape.serialization.get
    - botocore.parsers.BaseRestParser._parse_payload
    - botocore.parsers.ResponseParser._create_event_stream
    - <builtin>.isinstance
    - botocore.eventstream.EventStreamHeaderParser.__init__
    - botocore.parsers.BaseRestParser._parse_non_payload_attrs
    - <builtin>.getattr
    - botocore.parsers.BaseRestParser._populate_response_metadata
    - botocore.parsers.ResponseParser._parse_shape
    - body.decode
    - botocore.eventstream.EventStreamBuffer.add_data
    - botocore.eventstream.EventStream.__init__
    - botocore.parsers.BaseRestParser._add_modeled_parse
    - final_parsed.update
    - headers.get
    - botocore.parsers.BaseRestParser._initial_body_parse
    - <builtin>.len
    - member_shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1136
    functionName: botocore.parsers.BaseRestParser._populate_response_metadata
    functionSourceFile: botocore.parsers
    functionUses: 3
    functionsReached:
    - headers.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    - final_parsed
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1122
    functionName: botocore.parsers.BaseRestParser._add_modeled_parse
    functionSourceFile: botocore.parsers
    functionUses: 2
    functionsReached:
    - botocore.eventstream.EventStream._create_raw_event_generator
    - header_name.lower
    - body_shape.serialization.get
    - botocore.parsers.BaseRestParser._parse_header_map
    - botocore.eventstream.EventStreamBuffer.__init__
    - shape.serialization.get
    - botocore.parsers.BaseRestParser._parse_payload
    - botocore.parsers.ResponseParser._create_event_stream
    - <builtin>.isinstance
    - botocore.eventstream.EventStreamHeaderParser.__init__
    - botocore.parsers.BaseRestParser._parse_non_payload_attrs
    - <builtin>.getattr
    - botocore.parsers.ResponseParser._parse_shape
    - body.decode
    - botocore.eventstream.EventStreamBuffer.add_data
    - botocore.eventstream.EventStream.__init__
    - final_parsed.update
    - botocore.parsers.BaseRestParser._initial_body_parse
    - <builtin>.len
    - member_shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    - member_shapes
    - final_parsed
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1174
    functionName: botocore.parsers.BaseRestParser._parse_non_payload_attrs
    functionSourceFile: botocore.parsers
    functionUses: 3
    functionsReached:
    - <builtin>.getattr
    - header_name.lower
    - botocore.parsers.ResponseParser._parse_shape
    - botocore.parsers.BaseRestParser._parse_header_map
    - <builtin>.len
    - member_shape.serialization.get
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    - member_shapes
    - final_parsed
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1149
    functionName: botocore.parsers.BaseRestParser._parse_payload
    functionSourceFile: botocore.parsers
    functionUses: 3
    functionsReached:
    - <builtin>.getattr
    - botocore.parsers.ResponseParser._create_event_stream
    - botocore.eventstream.EventStreamBuffer.add_data
    - botocore.eventstream.EventStream.__init__
    - botocore.eventstream.EventStream._create_raw_event_generator
    - final_parsed.update
    - <builtin>.isinstance
    - botocore.parsers.BaseRestParser._initial_body_parse
    - botocore.parsers.ResponseParser._parse_shape
    - body_shape.serialization.get
    - botocore.eventstream.EventStreamHeaderParser.__init__
    - body.decode
    - botocore.eventstream.EventStreamBuffer.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1131
    functionName: botocore.parsers.BaseRestParser._do_modeled_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.eventstream.EventStream._create_raw_event_generator
    - header_name.lower
    - body_shape.serialization.get
    - botocore.parsers.BaseRestParser._parse_header_map
    - botocore.eventstream.EventStreamBuffer.__init__
    - shape.serialization.get
    - botocore.parsers.BaseRestParser._parse_payload
    - botocore.parsers.ResponseParser._create_event_stream
    - <builtin>.isinstance
    - botocore.eventstream.EventStreamHeaderParser.__init__
    - botocore.parsers.BaseRestParser._parse_non_payload_attrs
    - <builtin>.getattr
    - botocore.parsers.ResponseParser._parse_shape
    - body.decode
    - botocore.eventstream.EventStreamBuffer.add_data
    - botocore.eventstream.EventStream.__init__
    - botocore.parsers.BaseRestParser._add_modeled_parse
    - final_parsed.update
    - botocore.parsers.BaseRestParser._initial_body_parse
    - <builtin>.len
    - member_shape.serialization.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: body_shape.serialization.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - body_contents
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1211
    functionName: botocore.parsers.BaseRestParser._initial_body_parse
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - headers
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1198
    functionName: botocore.parsers.BaseRestParser._parse_header_map
    functionSourceFile: botocore.parsers
    functionUses: 4
    functionsReached:
    - <builtin>.len
    - header_name.lower
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1218
    functionName: botocore.parsers.BaseRestParser._handle_string
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - json.loads
    - <builtin>.hasattr
    - base64.b64decode
    - botocore.utils.is_json_value_header
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - node
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1225
    functionName: botocore.parsers.BaseRestParser._handle_list
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - e.strip
    - <builtin>.isinstance
    - node.split
    - <builtin>.super
    - shape.serialization.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: e.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: node.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1234
    functionName: botocore.parsers.BaseRpcV2Parser._do_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseRpcV2Parser._parse_payload
    - <builtin>.getattr
    - botocore.parsers.BaseRpcV2Parser._populate_response_metadata
    - final_parsed.update
    - botocore.parsers.BaseRpcV2Parser._initial_body_parse
    - botocore.parsers.ResponseParser._parse_shape
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    - final_parsed
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1291
    functionName: botocore.parsers.BaseRpcV2Parser._parse_payload
    functionSourceFile: botocore.parsers
    functionUses: 3
    functionsReached:
    - <builtin>.getattr
    - final_parsed.update
    - botocore.parsers.ResponseParser._parse_shape
    - botocore.parsers.BaseRpcV2Parser._initial_body_parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1260
    functionName: botocore.parsers.BaseRpcV2Parser._populate_response_metadata
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    - final_parsed
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1250
    functionName: botocore.parsers.BaseRpcV2Parser._add_modeled_parse
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - botocore.parsers.BaseRpcV2Parser._parse_payload
    - <builtin>.getattr
    - final_parsed.update
    - botocore.parsers.BaseRpcV2Parser._initial_body_parse
    - botocore.parsers.ResponseParser._parse_shape
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1255
    functionName: botocore.parsers.BaseRpcV2Parser._do_modeled_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseRpcV2Parser._parse_payload
    - <builtin>.getattr
    - botocore.parsers.BaseRpcV2Parser._add_modeled_parse
    - final_parsed.update
    - botocore.parsers.BaseRpcV2Parser._initial_body_parse
    - botocore.parsers.ResponseParser._parse_shape
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - node
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1267
    functionName: botocore.parsers.BaseRpcV2Parser._handle_structure
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - node.copy
    - cleaned_value.pop
    - cleaned_value.items
    - node.get
    - botocore.parsers.ResponseParser._parse_shape
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ResponseParserError
    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: node.copy
    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: node.get
    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
    - body_contents
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1296
    functionName: botocore.parsers.BaseRpcV2Parser._initial_body_parse
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - body_contents
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1307
    functionName: botocore.parsers.RestJSONParser._initial_body_parse
    functionSourceFile: botocore.parsers
    functionUses: 2
    functionsReached:
    - botocore.parsers.BaseJSONParser._parse_body_as_json
    - json.loads
    - body_contents.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1310
    functionName: botocore.parsers.RestJSONParser._do_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.BaseJSONParser._parse_body_as_json
    - json.loads
    - code.split
    - body.get
    - botocore.parsers.RestJSONParser._inject_error_code
    - <builtin>.isinstance
    - body_contents.decode
    - <builtin>.super
    - botocore.parsers.RestJSONParser._initial_body_parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - error
    - response
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1315
    functionName: botocore.parsers.RestJSONParser._inject_error_code
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - botocore.parsers.BaseJSONParser._parse_body_as_json
    - json.loads
    - code.split
    - body.get
    - <builtin>.isinstance
    - body_contents.decode
    - botocore.parsers.RestJSONParser._initial_body_parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1330
    functionName: botocore.parsers.RestJSONParser._handle_boolean
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.utils.ensure_boolean
    - val.lower
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1333
    functionName: botocore.parsers.RestJSONParser._handle_integer
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1336
    functionName: botocore.parsers.RestJSONParser._handle_float
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.float
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - body_contents
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1346
    functionName: botocore.parsers.RpcV2CBORParser._initial_body_parse
    functionSourceFile: botocore.parsers
    functionUses: 2
    functionsReached:
    - botocore.parsers.BaseCBORParser._read_from_stream
    - botocore.parsers.BaseCBORParser.parse_data_item
    - stream.read
    - int.from_bytes
    - io.BytesIO
    - botocore.parsers.BaseCBORParser.get_peekable_stream_from_bytes
    - io.BufferedReader
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 0
    IfCount: 7
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1354
    functionName: botocore.parsers.RpcV2CBORParser._do_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - code.rsplit
    - response.get
    - error.setdefault
    - botocore.parsers.BaseCBORParser._read_from_stream
    - botocore.parsers.RpcV2CBORParser._initial_body_parse
    - botocore.parsers.BaseCBORParser.parse_data_item
    - stream.read
    - code.split
    - body.get
    - int.from_bytes
    - io.BytesIO
    - botocore.parsers.BaseCBORParser.get_peekable_stream_from_bytes
    - io.BufferedReader
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - query_error.split
    - <builtin>.len
    - <builtin>.str
    - botocore.parsers.ResponseParser._do_query_compatible_error_parse
    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.setdefault
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    - event_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1386
    functionName: botocore.parsers.RpcV2CBORParser._handle_event_stream
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - <builtin>.next
    - initial_event.headers.get
    - botocore.parsers.RpcV2CBORParser._initial_body_parse
    - botocore.parsers.BaseCBORParser.parse_data_item
    - botocore.eventstream.EventStream._create_raw_event_generator
    - int.from_bytes
    - io.BytesIO
    - io.BufferedReader
    - botocore.eventstream.EventStreamBuffer.__init__
    - botocore.parsers.ResponseParser._create_event_stream
    - botocore.eventstream.EventStream.get_initial_response
    - botocore.parsers.BaseCBORParser.get_peekable_stream_from_bytes
    - botocore.parsers.BaseCBORParser._read_bytes_as_int
    - botocore.eventstream.EventStreamHeaderParser.__init__
    - botocore.parsers.BaseCBORParser._read_from_stream
    - stream.read
    - botocore.eventstream.EventStreamBuffer.add_data
    - botocore.eventstream.EventStream.__init__
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ResponseParserError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - xml_string
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1402
    functionName: botocore.parsers.RestXMLParser._initial_body_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - parser.feed
    - parser.close
    - xml.etree.ElementTree.XMLParser
    - botocore.parsers.BaseXMLResponseParser._parse_xml_string_to_dom
    - xml.etree.ElementTree.TreeBuilder
    - xml.etree.ElementTree.Element
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - response
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1407
    functionName: botocore.parsers.RestXMLParser._do_error_parse
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers.RestXMLParser._parse_error_from_http_status
    - botocore.parsers.BaseXMLResponseParser._node_tag
    - botocore.parsers.BaseXMLResponseParser._replace_nodes
    - parser.close
    - <builtin>.list
    - xml.etree.ElementTree.XMLParser
    - botocore.parsers.BaseXMLResponseParser._parse_xml_string_to_dom
    - <builtin>.str
    - xml.etree.ElementTree.TreeBuilder
    - botocore.utils.merge_dicts
    - <builtin>.isinstance
    - parsed.items
    - parsed.pop
    - parser.feed
    - botocore.parsers.BaseRestParser._populate_response_metadata
    - botocore.parsers.RestXMLParser._parse_error_from_body
    - LOG.debug
    - botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    - headers.get
    - http.client.responses.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1448
    functionName: botocore.parsers.RestXMLParser._parse_error_from_body
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - botocore.utils.merge_dicts
    - parser.feed
    - botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node
    - botocore.parsers.BaseRestParser._populate_response_metadata
    - headers.get
    - botocore.parsers.BaseXMLResponseParser._node_tag
    - botocore.parsers.BaseXMLResponseParser._replace_nodes
    - <builtin>.isinstance
    - parser.close
    - <builtin>.list
    - xml.etree.ElementTree.XMLParser
    - botocore.parsers.BaseXMLResponseParser._parse_xml_string_to_dom
    - parsed.items
    - xml.etree.ElementTree.TreeBuilder
    - parsed.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1434
    functionName: botocore.parsers.RestXMLParser._parse_error_from_http_status
    functionSourceFile: botocore.parsers
    functionUses: 1
    functionsReached:
    - http.client.responses.get
    - <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: 1
    functionLinenumber: -1
    functionName: botocore.parsers.RestXMLParser
    functionSourceFile: botocore.parsers
    functionUses: 0
    functionsReached:
    - botocore.parsers._text_content
    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: botocore.eventstream
    functionSourceFile: botocore.eventstream
    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
    - header
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 35
    functionName: botocore.eventstream.DuplicateHeader.__init__
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - length
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 43
    functionName: botocore.eventstream.InvalidHeadersLength.__init__
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - length
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: botocore.eventstream.InvalidPayloadLength.__init__
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - expected
    - calculated
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 59
    functionName: botocore.eventstream.ChecksumMismatch.__init__
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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: 1
    functionLinenumber: 71
    functionName: botocore.eventstream.NoInitialResponseError.__init__
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 101
    functionName: botocore.eventstream.DecodeUtils.unpack_true
    functionSourceFile: botocore.eventstream
    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:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 114
    functionName: botocore.eventstream.DecodeUtils.unpack_false
    functionSourceFile: botocore.eventstream
    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:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 127
    functionName: botocore.eventstream.DecodeUtils.unpack_uint8
    functionSourceFile: botocore.eventstream
    functionUses: 9
    functionsReached:
    - struct.unpack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 140
    functionName: botocore.eventstream.DecodeUtils.unpack_uint32
    functionSourceFile: botocore.eventstream
    functionUses: 5
    functionsReached:
    - struct.unpack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 153
    functionName: botocore.eventstream.DecodeUtils.unpack_int8
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached:
    - struct.unpack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 166
    functionName: botocore.eventstream.DecodeUtils.unpack_int16
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached:
    - struct.unpack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 180
    functionName: botocore.eventstream.DecodeUtils.unpack_int32
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached:
    - struct.unpack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 194
    functionName: botocore.eventstream.DecodeUtils.unpack_int64
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached:
    - struct.unpack
    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 0x7f9830d1ff10>
    argNames:
    - data
    - length_byte_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 208
    functionName: botocore.eventstream.DecodeUtils.unpack_byte_array
    functionSourceFile: botocore.eventstream
    functionUses: 9
    functionsReached:
    - struct.unpack
    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 0x7f983076e490>
    argNames:
    - data
    - length_byte_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 233
    functionName: botocore.eventstream.DecodeUtils.unpack_utf8_string
    functionSourceFile: botocore.eventstream
    functionUses: 8
    functionsReached:
    - struct.unpack
    - array_bytes.decode
    - botocore.eventstream.DecodeUtils.unpack_byte_array
    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: array_bytes.decode
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 258
    functionName: botocore.eventstream.DecodeUtils.unpack_uuid
    functionSourceFile: botocore.eventstream
    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:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 270
    functionName: botocore.eventstream.DecodeUtils.unpack_prelude
    functionSourceFile: botocore.eventstream
    functionUses: 3
    functionsReached:
    - struct.unpack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f983076ef70>
    argNames:
    - data
    - checksum
    - crc
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 284
    functionName: botocore.eventstream._validate_checksum
    functionSourceFile: botocore.eventstream
    functionUses: 5
    functionsReached:
    - binascii.crc32
    linkageType: pythonLinkage
    raised:
    - ChecksumMismatch
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - total_length
    - headers_length
    - crc
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 295
    functionName: botocore.eventstream.MessagePrelude.__init__
    functionSourceFile: botocore.eventstream
    functionUses: 3
    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: 301
    functionName: botocore.eventstream.MessagePrelude.payload_length
    functionSourceFile: botocore.eventstream
    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: 312
    functionName: botocore.eventstream.MessagePrelude.payload_end
    functionSourceFile: botocore.eventstream
    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: 324
    functionName: botocore.eventstream.MessagePrelude.headers_end
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - prelude
    - headers
    - payload
    - crc
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 337
    functionName: botocore.eventstream.EventStreamMessage.__init__
    functionSourceFile: botocore.eventstream
    functionUses: 3
    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 0x7f9830a33d00>
    argNames:
    - self
    - status_code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 343
    functionName: botocore.eventstream.EventStreamMessage.to_response_dict
    functionSourceFile: botocore.eventstream
    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: 387
    functionName: botocore.eventstream.EventStreamHeaderParser.__init__
    functionSourceFile: botocore.eventstream
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 390
    functionName: botocore.eventstream.EventStreamHeaderParser.parse
    functionSourceFile: botocore.eventstream
    functionUses: 4
    functionsReached:
    - botocore.eventstream.EventStreamHeaderParser._parse_name
    - array_bytes.decode
    - botocore.eventstream.EventStreamHeaderParser._parse_headers
    - botocore.eventstream.EventStreamHeaderParser._parse_header
    - botocore.eventstream.EventStreamHeaderParser._advance_data
    - struct.unpack
    - botocore.eventstream.EventStreamHeaderParser._parse_value
    - botocore.eventstream.DecodeUtils.unpack_utf8_string
    - botocore.eventstream.DecodeUtils.unpack_uint8
    - botocore.eventstream.DecodeUtils.unpack_byte_array
    - botocore.eventstream.EventStreamHeaderParser._parse_type
    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: 5
    functionLinenumber: 403
    functionName: botocore.eventstream.EventStreamHeaderParser._parse_headers
    functionSourceFile: botocore.eventstream
    functionUses: 5
    functionsReached:
    - botocore.eventstream.EventStreamHeaderParser._parse_name
    - array_bytes.decode
    - botocore.eventstream.EventStreamHeaderParser._parse_value
    - botocore.eventstream.EventStreamHeaderParser._parse_header
    - botocore.eventstream.EventStreamHeaderParser._advance_data
    - struct.unpack
    - botocore.eventstream.DecodeUtils.unpack_utf8_string
    - botocore.eventstream.DecodeUtils.unpack_uint8
    - botocore.eventstream.DecodeUtils.unpack_byte_array
    - botocore.eventstream.EventStreamHeaderParser._parse_type
    linkageType: pythonLinkage
    raised:
    - DuplicateHeader
    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: 4
    functionLinenumber: 412
    functionName: botocore.eventstream.EventStreamHeaderParser._parse_header
    functionSourceFile: botocore.eventstream
    functionUses: 6
    functionsReached:
    - botocore.eventstream.EventStreamHeaderParser._parse_name
    - array_bytes.decode
    - botocore.eventstream.EventStreamHeaderParser._parse_value
    - botocore.eventstream.EventStreamHeaderParser._advance_data
    - struct.unpack
    - botocore.eventstream.DecodeUtils.unpack_utf8_string
    - botocore.eventstream.DecodeUtils.unpack_uint8
    - botocore.eventstream.DecodeUtils.unpack_byte_array
    - botocore.eventstream.EventStreamHeaderParser._parse_type
    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: 3
    functionLinenumber: 417
    functionName: botocore.eventstream.EventStreamHeaderParser._parse_name
    functionSourceFile: botocore.eventstream
    functionUses: 7
    functionsReached:
    - array_bytes.decode
    - botocore.eventstream.EventStreamHeaderParser._advance_data
    - struct.unpack
    - botocore.eventstream.DecodeUtils.unpack_utf8_string
    - botocore.eventstream.DecodeUtils.unpack_byte_array
    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: 3
    functionLinenumber: 427
    functionName: botocore.eventstream.EventStreamHeaderParser._parse_value
    functionSourceFile: botocore.eventstream
    functionUses: 7
    functionsReached:
    - botocore.eventstream.EventStreamHeaderParser._advance_data
    - botocore.eventstream.EventStreamHeaderParser._parse_type
    - botocore.eventstream.DecodeUtils.unpack_uint8
    - struct.unpack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - consumed
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 434
    functionName: botocore.eventstream.EventStreamHeaderParser._advance_data
    functionSourceFile: ''
    functionUses: 10
    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: 2
    functionLinenumber: 422
    functionName: botocore.eventstream.EventStreamHeaderParser._parse_type
    functionSourceFile: botocore.eventstream
    functionUses: 8
    functionsReached:
    - botocore.eventstream.EventStreamHeaderParser._advance_data
    - botocore.eventstream.DecodeUtils.unpack_uint8
    - struct.unpack
    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: 445
    functionName: botocore.eventstream.EventStreamBuffer.__init__
    functionSourceFile: botocore.eventstream
    functionUses: 10
    functionsReached:
    - botocore.eventstream.EventStreamHeaderParser.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 450
    functionName: botocore.eventstream.EventStreamBuffer.add_data
    functionSourceFile: botocore.eventstream
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - prelude
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 458
    functionName: botocore.eventstream.EventStreamBuffer._validate_prelude
    functionSourceFile: botocore.eventstream
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - InvalidPayloadLength
    - InvalidHeadersLength
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 465
    functionName: botocore.eventstream.EventStreamBuffer._parse_prelude
    functionSourceFile: botocore.eventstream
    functionUses: 2
    functionsReached:
    - botocore.eventstream._validate_checksum
    - struct.unpack
    - botocore.eventstream.DecodeUtils.unpack_prelude
    - botocore.eventstream.MessagePrelude.__init__
    - botocore.eventstream.EventStreamBuffer._validate_prelude
    - binascii.crc32
    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: 7
    functionLinenumber: 474
    functionName: botocore.eventstream.EventStreamBuffer._parse_headers
    functionSourceFile: botocore.eventstream
    functionUses: 3
    functionsReached:
    - botocore.eventstream.EventStreamHeaderParser._parse_name
    - array_bytes.decode
    - botocore.eventstream.EventStreamHeaderParser._parse_headers
    - botocore.eventstream.EventStreamHeaderParser._parse_header
    - botocore.eventstream.EventStreamHeaderParser._advance_data
    - struct.unpack
    - botocore.eventstream.EventStreamHeaderParser._parse_value
    - botocore.eventstream.DecodeUtils.unpack_utf8_string
    - botocore.eventstream.EventStreamHeaderParser.parse
    - botocore.eventstream.DecodeUtils.unpack_uint8
    - botocore.eventstream.DecodeUtils.unpack_byte_array
    - botocore.eventstream.EventStreamHeaderParser._parse_type
    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: 478
    functionName: botocore.eventstream.EventStreamBuffer._parse_payload
    functionSourceFile: botocore.eventstream
    functionUses: 3
    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: 483
    functionName: botocore.eventstream.EventStreamBuffer._parse_message_crc
    functionSourceFile: botocore.eventstream
    functionUses: 4
    functionsReached:
    - struct.unpack
    - botocore.eventstream.DecodeUtils.unpack_uint32
    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: 489
    functionName: botocore.eventstream.EventStreamBuffer._parse_message_bytes
    functionSourceFile: botocore.eventstream
    functionUses: 4
    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: 3
    functionLinenumber: 496
    functionName: botocore.eventstream.EventStreamBuffer._validate_message_crc
    functionSourceFile: botocore.eventstream
    functionUses: 3
    functionsReached:
    - botocore.eventstream.EventStreamBuffer._parse_message_crc
    - botocore.eventstream.EventStreamBuffer._parse_message_bytes
    - botocore.eventstream._validate_checksum
    - struct.unpack
    - botocore.eventstream.DecodeUtils.unpack_uint32
    - binascii.crc32
    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: 8
    functionLinenumber: 502
    functionName: botocore.eventstream.EventStreamBuffer._parse_message
    functionSourceFile: botocore.eventstream
    functionUses: 2
    functionsReached:
    - botocore.eventstream.EventStreamHeaderParser._parse_name
    - botocore.eventstream._validate_checksum
    - botocore.eventstream.EventStreamHeaderParser._parse_value
    - botocore.eventstream.EventStreamBuffer._validate_message_crc
    - botocore.eventstream.DecodeUtils.unpack_uint32
    - binascii.crc32
    - botocore.eventstream.EventStreamBuffer._parse_payload
    - botocore.eventstream.EventStreamBuffer._parse_message_crc
    - struct.unpack
    - botocore.eventstream.DecodeUtils.unpack_uint8
    - botocore.eventstream.EventStreamBuffer._parse_headers
    - botocore.eventstream.EventStreamBuffer._prepare_for_next_message
    - array_bytes.decode
    - botocore.eventstream.EventStreamBuffer._parse_message_bytes
    - botocore.eventstream.EventStreamHeaderParser._advance_data
    - botocore.eventstream.EventStreamHeaderParser.parse
    - botocore.eventstream.DecodeUtils.unpack_byte_array
    - botocore.eventstream.EventStreamHeaderParser._parse_headers
    - botocore.eventstream.EventStreamHeaderParser._parse_header
    - botocore.eventstream.DecodeUtils.unpack_utf8_string
    - botocore.eventstream.EventStreamMessage.__init__
    - botocore.eventstream.EventStreamHeaderParser._parse_type
    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: 510
    functionName: botocore.eventstream.EventStreamBuffer._prepare_for_next_message
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 515
    functionName: botocore.eventstream.EventStreamBuffer.next
    functionSourceFile: botocore.eventstream
    functionUses: 1
    functionsReached:
    - botocore.eventstream.EventStreamHeaderParser._parse_name
    - botocore.eventstream._validate_checksum
    - botocore.eventstream.EventStreamHeaderParser._parse_value
    - botocore.eventstream.EventStreamBuffer._validate_message_crc
    - botocore.eventstream.DecodeUtils.unpack_uint32
    - binascii.crc32
    - botocore.eventstream.EventStreamBuffer._parse_payload
    - botocore.eventstream.EventStreamBuffer._parse_message_crc
    - struct.unpack
    - botocore.eventstream.DecodeUtils.unpack_uint8
    - botocore.eventstream.EventStreamBuffer._parse_headers
    - botocore.eventstream.EventStreamBuffer._prepare_for_next_message
    - botocore.eventstream.EventStreamBuffer._parse_prelude
    - array_bytes.decode
    - botocore.eventstream.EventStreamBuffer._parse_message_bytes
    - botocore.eventstream.EventStreamHeaderParser._advance_data
    - botocore.eventstream.EventStreamHeaderParser.parse
    - botocore.eventstream.DecodeUtils.unpack_byte_array
    - botocore.eventstream.MessagePrelude.__init__
    - botocore.eventstream.EventStreamBuffer._validate_prelude
    - botocore.eventstream.EventStreamBuffer._parse_message
    - botocore.eventstream.EventStreamHeaderParser._parse_headers
    - botocore.eventstream.EventStreamHeaderParser._parse_header
    - botocore.eventstream.DecodeUtils.unpack_utf8_string
    - botocore.eventstream.DecodeUtils.unpack_prelude
    - <builtin>.len
    - botocore.eventstream.EventStreamMessage.__init__
    - botocore.eventstream.EventStreamHeaderParser._parse_type
    linkageType: pythonLinkage
    raised:
    - StopIteration
    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: 10
    functionLinenumber: 532
    functionName: botocore.eventstream.EventStreamBuffer.__next__
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached:
    - botocore.eventstream.EventStreamHeaderParser._parse_name
    - botocore.eventstream._validate_checksum
    - botocore.eventstream.EventStreamHeaderParser._parse_value
    - botocore.eventstream.EventStreamBuffer._validate_message_crc
    - botocore.eventstream.DecodeUtils.unpack_uint32
    - binascii.crc32
    - botocore.eventstream.EventStreamBuffer._parse_payload
    - botocore.eventstream.EventStreamBuffer._parse_message_crc
    - struct.unpack
    - botocore.eventstream.DecodeUtils.unpack_uint8
    - botocore.eventstream.EventStreamBuffer._parse_headers
    - botocore.eventstream.EventStreamBuffer._prepare_for_next_message
    - botocore.eventstream.EventStreamBuffer._parse_prelude
    - array_bytes.decode
    - botocore.eventstream.EventStreamBuffer._parse_message_bytes
    - botocore.eventstream.EventStreamHeaderParser._advance_data
    - botocore.eventstream.EventStreamHeaderParser.parse
    - botocore.eventstream.DecodeUtils.unpack_byte_array
    - botocore.eventstream.MessagePrelude.__init__
    - botocore.eventstream.EventStreamBuffer._validate_prelude
    - botocore.eventstream.EventStreamBuffer.next
    - botocore.eventstream.EventStreamBuffer._parse_message
    - botocore.eventstream.EventStreamHeaderParser._parse_headers
    - botocore.eventstream.EventStreamHeaderParser._parse_header
    - botocore.eventstream.DecodeUtils.unpack_utf8_string
    - botocore.eventstream.DecodeUtils.unpack_prelude
    - <builtin>.len
    - botocore.eventstream.EventStreamMessage.__init__
    - botocore.eventstream.EventStreamHeaderParser._parse_type
    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: 535
    functionName: botocore.eventstream.EventStreamBuffer.__iter__
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 596
    functionName: botocore.eventstream.EventStream._create_raw_event_generator
    functionSourceFile: botocore.eventstream
    functionUses: 9
    functionsReached:
    - botocore.eventstream.EventStreamBuffer.__init__
    - botocore.eventstream.EventStreamBuffer.add_data
    - botocore.eventstream.EventStreamHeaderParser.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 590
    functionName: botocore.eventstream.EventStream.__iter__
    functionSourceFile: botocore.eventstream
    functionUses: 0
    functionsReached:
    - botocore.eventstream.EventStream._parse_event
    - event.to_response_dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 602
    functionName: botocore.eventstream.EventStream._parse_event
    functionSourceFile: botocore.eventstream
    functionUses: 1
    functionsReached:
    - event.to_response_dict
    linkageType: pythonLinkage
    raised:
    - EventStreamError
    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: event.to_response_dict
    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: <builtin>.next
    functionSourceFile: <builtin>
    functionUses: 17
    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: initial_event.headers.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 620
    functionName: botocore.eventstream.EventStream.close
    functionSourceFile: botocore.eventstream
    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: 1
    functionLinenumber: -1
    functionName: botocore.hooks
    functionSourceFile: botocore.hooks
    functionUses: 0
    functionsReached:
    - collections.namedtuple
    - 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: collections.namedtuple
    functionSourceFile: collections
    functionUses: 27
    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: 30
    functionName: botocore.hooks.NodeList.__copy__
    functionSourceFile: botocore.hooks
    functionUses: 0
    functionsReached:
    - collections.namedtuple.__init__
    - copy.copy
    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.namedtuple.__init__
    functionSourceFile: ''
    functionUses: 34
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f98301a6c10>
    argNames:
    - responses
    - default
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 38
    functionName: botocore.hooks.first_non_none_response
    functionSourceFile: botocore.hooks
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 67
    functionName: botocore.hooks.BaseEventHooks.emit
    functionSourceFile: botocore.hooks
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f98303e28e0>
    - <ast.Constant object at 0x7f98303e2490>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 84
    functionName: botocore.hooks.BaseEventHooks.register
    functionSourceFile: botocore.hooks
    functionUses: 6
    functionsReached:
    - key.split
    - botocore.hooks._PrefixTrie.append_item
    - botocore.compat.accepts_kwargs
    - botocore.hooks.BaseEventHooks._verify_and_register
    - <builtin>.callable
    - botocore.hooks.BaseEventHooks._verify_is_callable
    - collections.namedtuple.__init__
    - botocore.hooks.HierarchicalEmitter._register_last
    - botocore.hooks.HierarchicalEmitter._register
    - botocore.hooks.HierarchicalEmitter._register_section
    - botocore.hooks.BaseEventHooks._verify_accept_kwargs
    - botocore.hooks.HierarchicalEmitter._register_first
    - inspect.getfullargspec
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - register_method
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 143
    functionName: botocore.hooks.BaseEventHooks._verify_and_register
    functionSourceFile: botocore.hooks
    functionUses: 10
    functionsReached:
    - key.split
    - botocore.hooks._PrefixTrie.append_item
    - <builtin>.callable
    - botocore.hooks.BaseEventHooks._verify_is_callable
    - collections.namedtuple.__init__
    - botocore.hooks.HierarchicalEmitter._register_last
    - botocore.hooks.HierarchicalEmitter._register_first
    - botocore.hooks.HierarchicalEmitter._register
    - botocore.hooks.HierarchicalEmitter._register_section
    - botocore.compat.accepts_kwargs
    - botocore.hooks.BaseEventHooks._verify_accept_kwargs
    - inspect.getfullargspec
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f98303e2580>
    - <ast.Constant object at 0x7f98303e2700>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 108
    functionName: botocore.hooks.BaseEventHooks.register_first
    functionSourceFile: botocore.hooks
    functionUses: 0
    functionsReached:
    - key.split
    - botocore.hooks._PrefixTrie.append_item
    - botocore.compat.accepts_kwargs
    - botocore.hooks.BaseEventHooks._verify_and_register
    - <builtin>.callable
    - botocore.hooks.BaseEventHooks._verify_is_callable
    - collections.namedtuple.__init__
    - botocore.hooks.HierarchicalEmitter._register_last
    - botocore.hooks.HierarchicalEmitter._register
    - botocore.hooks.HierarchicalEmitter._register_section
    - botocore.hooks.BaseEventHooks._verify_accept_kwargs
    - botocore.hooks.HierarchicalEmitter._register_first
    - inspect.getfullargspec
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f98303e2ee0>
    - <ast.Constant object at 0x7f98303e2a90>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 126
    functionName: botocore.hooks.BaseEventHooks.register_last
    functionSourceFile: botocore.hooks
    functionUses: 4
    functionsReached:
    - key.split
    - botocore.hooks._PrefixTrie.append_item
    - botocore.compat.accepts_kwargs
    - botocore.hooks.BaseEventHooks._verify_and_register
    - <builtin>.callable
    - botocore.hooks.BaseEventHooks._verify_is_callable
    - collections.namedtuple.__init__
    - botocore.hooks.HierarchicalEmitter._register_last
    - botocore.hooks.HierarchicalEmitter._register
    - botocore.hooks.HierarchicalEmitter._register_section
    - botocore.hooks.BaseEventHooks._verify_accept_kwargs
    - botocore.hooks.HierarchicalEmitter._register_first
    - inspect.getfullargspec
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - func
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 171
    functionName: botocore.hooks.BaseEventHooks._verify_is_callable
    functionSourceFile: botocore.hooks
    functionUses: 11
    functionsReached:
    - <builtin>.callable
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - func
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 175
    functionName: botocore.hooks.BaseEventHooks._verify_accept_kwargs
    functionSourceFile: botocore.hooks
    functionUses: 11
    functionsReached:
    - botocore.compat.accepts_kwargs
    - inspect.getfullargspec
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830825eb0>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 299
    functionName: botocore.hooks.HierarchicalEmitter._register_last
    functionSourceFile: botocore.hooks
    functionUses: 11
    functionsReached:
    - botocore.hooks.HierarchicalEmitter._register_section
    - botocore.hooks._PrefixTrie.append_item
    - collections.namedtuple.__init__
    - key.split
    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 0x7f9830d870a0>
    - <ast.Constant object at 0x7f9830d873d0>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 277
    functionName: botocore.hooks.HierarchicalEmitter._register
    functionSourceFile: botocore.hooks
    functionUses: 11
    functionsReached:
    - botocore.hooks.HierarchicalEmitter._register_section
    - botocore.hooks._PrefixTrie.append_item
    - collections.namedtuple.__init__
    - key.split
    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 0x7f9830d87400>
    - <ast.Constant object at 0x7f9830825580>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 288
    functionName: botocore.hooks.HierarchicalEmitter._register_first
    functionSourceFile: botocore.hooks
    functionUses: 11
    functionsReached:
    - botocore.hooks.HierarchicalEmitter._register_section
    - botocore.hooks._PrefixTrie.append_item
    - collections.namedtuple.__init__
    - key.split
    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 0x7f9830ca46d0>
    - <ast.Constant object at 0x7f9830ca4970>
    - <ast.Constant object at 0x7f9830ca42b0>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 155
    functionName: botocore.hooks.BaseEventHooks.unregister
    functionSourceFile: botocore.hooks
    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>.callable
    functionSourceFile: <builtin>
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 195
    functionName: botocore.hooks.HierarchicalEmitter.__init__
    functionSourceFile: botocore.hooks
    functionUses: 2
    functionsReached:
    - botocore.hooks._PrefixTrie.__init__
    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: 529
    functionName: botocore.hooks._PrefixTrie.__init__
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a80c70>
    argNames:
    - self
    - event_name
    - kwargs
    - stop_on_response
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 205
    functionName: botocore.hooks.HierarchicalEmitter._emit
    functionSourceFile: botocore.hooks
    functionUses: 9
    functionsReached:
    - responses.append
    - key.split
    - logger.debug
    - botocore.hooks._PrefixTrie.prefix_search
    - <builtin>.reversed
    - collections.deque.extendleft
    - stack.pop
    - <builtin>.len
    - botocore.hooks._PrefixTrie._get_items
    - collections.deque
    - children.get
    - stack.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 556
    functionName: botocore.hooks._PrefixTrie.prefix_search
    functionSourceFile: botocore.hooks
    functionUses: 10
    functionsReached:
    - key.split
    - <builtin>.reversed
    - collections.deque.extendleft
    - stack.pop
    - <builtin>.len
    - botocore.hooks._PrefixTrie._get_items
    - collections.deque
    - children.get
    - stack.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: responses.append
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 245
    functionName: botocore.hooks.HierarchicalEmitter.emit
    functionSourceFile: botocore.hooks
    functionUses: 6
    functionsReached:
    - responses.append
    - key.split
    - logger.debug
    - botocore.hooks._PrefixTrie.prefix_search
    - <builtin>.reversed
    - collections.deque.extendleft
    - collections.deque
    - stack.pop
    - <builtin>.len
    - botocore.hooks._PrefixTrie._get_items
    - botocore.hooks.HierarchicalEmitter._emit
    - children.get
    - stack.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 258
    functionName: botocore.hooks.HierarchicalEmitter.emit_until_response
    functionSourceFile: botocore.hooks
    functionUses: 1
    functionsReached:
    - responses.append
    - key.split
    - logger.debug
    - botocore.hooks._PrefixTrie.prefix_search
    - <builtin>.reversed
    - collections.deque.extendleft
    - collections.deque
    - stack.pop
    - <builtin>.len
    - botocore.hooks._PrefixTrie._get_items
    - botocore.hooks.HierarchicalEmitter._emit
    - children.get
    - stack.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    - section
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 306
    functionName: botocore.hooks.HierarchicalEmitter._register_section
    functionSourceFile: botocore.hooks
    functionUses: 14
    functionsReached:
    - key.split
    - botocore.hooks._PrefixTrie.append_item
    - collections.namedtuple.__init__
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f983081c8b0>
    argNames:
    - self
    - key
    - value
    - section
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 537
    functionName: botocore.hooks._PrefixTrie.append_item
    functionSourceFile: botocore.hooks
    functionUses: 15
    functionsReached:
    - key.split
    - collections.namedtuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f98313e9ac0>
    - <ast.Constant object at 0x7f98313e9a90>
    - <ast.Constant object at 0x7f98313e9ee0>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 350
    functionName: botocore.hooks.HierarchicalEmitter.unregister
    functionSourceFile: botocore.hooks
    functionUses: 2
    functionsReached:
    - key.split
    - botocore.hooks._PrefixTrie._remove_item
    - node_list.last.remove
    - node_list.middle.remove
    - node_list.first.remove
    - <builtin>.len
    - botocore.hooks._PrefixTrie.remove_item
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 602
    functionName: botocore.hooks._PrefixTrie.remove_item
    functionSourceFile: botocore.hooks
    functionUses: 3
    functionsReached:
    - key.split
    - botocore.hooks._PrefixTrie._remove_item
    - node_list.last.remove
    - node_list.middle.remove
    - node_list.first.remove
    - <builtin>.len
    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: 393
    functionName: botocore.hooks.HierarchicalEmitter.__copy__
    functionSourceFile: botocore.hooks
    functionUses: 0
    functionsReached:
    - copy.copy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830aa8eb0>
    argNames:
    - self
    - event_emitter
    - event_aliases
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 403
    functionName: botocore.hooks.EventAliaser.__init__
    functionSourceFile: botocore.hooks
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 410
    functionName: botocore.hooks.EventAliaser.emit
    functionSourceFile: botocore.hooks
    functionUses: 5
    functionsReached:
    - botocore.hooks.EventAliaser._replace_subsection
    - botocore.hooks.HierarchicalEmitter.emit
    - botocore.hooks.HierarchicalEmitter._emit
    - event_name.split
    - responses.append
    - key.split
    - logger.debug
    - event_parts.index
    - collections.deque.extendleft
    - botocore.hooks.EventAliaser._alias_event_name
    - botocore.hooks._PrefixTrie._get_items
    - stack.pop
    - children.get
    - stack.append
    - <builtin>.reversed
    - botocore.hooks._PrefixTrie.prefix_search
    - <builtin>.range
    - <builtin>.len
    - collections.deque
    - old_part.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 454
    functionName: botocore.hooks.EventAliaser._alias_event_name
    functionSourceFile: botocore.hooks
    functionUses: 17
    functionsReached:
    - logger.debug
    - event_parts.index
    - <builtin>.range
    - botocore.hooks.EventAliaser._replace_subsection
    - <builtin>.len
    - event_name.split
    - old_part.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 414
    functionName: botocore.hooks.EventAliaser.emit_until_response
    functionSourceFile: botocore.hooks
    functionUses: 0
    functionsReached:
    - botocore.hooks.EventAliaser._replace_subsection
    - botocore.hooks.HierarchicalEmitter._emit
    - event_name.split
    - responses.append
    - key.split
    - logger.debug
    - event_parts.index
    - collections.deque.extendleft
    - botocore.hooks.EventAliaser._alias_event_name
    - botocore.hooks._PrefixTrie._get_items
    - stack.pop
    - botocore.hooks.HierarchicalEmitter.emit_until_response
    - children.get
    - stack.append
    - <builtin>.reversed
    - botocore.hooks._PrefixTrie.prefix_search
    - <builtin>.range
    - <builtin>.len
    - collections.deque
    - old_part.split
    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 0x7f9830e2b610>
    - <ast.Constant object at 0x7f9830b47e80>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 418
    functionName: botocore.hooks.EventAliaser.register
    functionSourceFile: botocore.hooks
    functionUses: 5
    functionsReached:
    - botocore.hooks._PrefixTrie.append_item
    - <builtin>.callable
    - botocore.hooks.EventAliaser.register
    - botocore.hooks.EventAliaser._replace_subsection
    - botocore.hooks.HierarchicalEmitter._register_section
    - event_name.split
    - botocore.hooks.HierarchicalEmitter._register_first
    - key.split
    - logger.debug
    - event_parts.index
    - botocore.hooks.EventAliaser._alias_event_name
    - botocore.compat.accepts_kwargs
    - collections.namedtuple.__init__
    - inspect.getfullargspec
    - botocore.hooks.BaseEventHooks._verify_and_register
    - <builtin>.range
    - botocore.hooks.BaseEventHooks._verify_is_callable
    - botocore.hooks.HierarchicalEmitter._register_last
    - botocore.hooks.HierarchicalEmitter._register
    - botocore.hooks.BaseEventHooks.register
    - <builtin>.len
    - botocore.hooks.BaseEventHooks._verify_accept_kwargs
    - old_part.split
    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 0x7f9830b473a0>
    - <ast.Constant object at 0x7f9830b47610>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 426
    functionName: botocore.hooks.EventAliaser.register_first
    functionSourceFile: botocore.hooks
    functionUses: 3
    functionsReached:
    - logger.debug
    - event_parts.index
    - botocore.hooks.EventAliaser.register_first
    - <builtin>.range
    - botocore.hooks.EventAliaser._alias_event_name
    - botocore.hooks.EventAliaser._replace_subsection
    - <builtin>.len
    - event_name.split
    - old_part.split
    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 0x7f9830afa160>
    - <ast.Constant object at 0x7f9830afae50>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 434
    functionName: botocore.hooks.EventAliaser.register_last
    functionSourceFile: botocore.hooks
    functionUses: 3
    functionsReached:
    - botocore.hooks._PrefixTrie.append_item
    - <builtin>.callable
    - botocore.hooks.EventAliaser._replace_subsection
    - botocore.hooks.BaseEventHooks.register_last
    - botocore.hooks.HierarchicalEmitter._register_section
    - event_name.split
    - botocore.hooks.HierarchicalEmitter._register_first
    - key.split
    - logger.debug
    - event_parts.index
    - botocore.hooks.EventAliaser.register_last
    - botocore.hooks.EventAliaser._alias_event_name
    - botocore.compat.accepts_kwargs
    - collections.namedtuple.__init__
    - inspect.getfullargspec
    - botocore.hooks.BaseEventHooks._verify_and_register
    - <builtin>.range
    - botocore.hooks.BaseEventHooks._verify_is_callable
    - botocore.hooks.HierarchicalEmitter._register_last
    - botocore.hooks.HierarchicalEmitter._register
    - <builtin>.len
    - botocore.hooks.BaseEventHooks._verify_accept_kwargs
    - old_part.split
    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 0x7f9830afabe0>
    - <ast.Constant object at 0x7f9830afacd0>
    - <ast.Constant object at 0x7f9830afa250>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 442
    functionName: botocore.hooks.EventAliaser.unregister
    functionSourceFile: botocore.hooks
    functionUses: 1
    functionsReached:
    - key.split
    - node_list.last.remove
    - botocore.hooks._PrefixTrie._remove_item
    - logger.debug
    - event_parts.index
    - node_list.middle.remove
    - <builtin>.range
    - node_list.first.remove
    - botocore.hooks.EventAliaser._alias_event_name
    - botocore.hooks.EventAliaser._replace_subsection
    - botocore.hooks.HierarchicalEmitter.unregister
    - <builtin>.len
    - botocore.hooks._PrefixTrie.remove_item
    - event_name.split
    - old_part.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: event_name.split
    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: event_parts.index
    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: old_part.split
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - sections
    - old_parts
    - new_part
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 491
    functionName: botocore.hooks.EventAliaser._replace_subsection
    functionSourceFile: botocore.hooks
    functionUses: 18
    functionsReached:
    - <builtin>.len
    - <builtin>.range
    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: 500
    functionName: botocore.hooks.EventAliaser.__copy__
    functionSourceFile: botocore.hooks
    functionUses: 0
    functionsReached:
    - copy.copy
    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.split
    functionSourceFile: <builtin>
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - starting_node
    - key_parts
    - collected
    - starting_index
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 570
    functionName: botocore.hooks._PrefixTrie._get_items
    functionSourceFile: botocore.hooks
    functionUses: 11
    functionsReached:
    - <builtin>.reversed
    - collections.deque.extendleft
    - <builtin>.len
    - children.get
    - stack.pop
    - stack.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: <builtin>.reversed
    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: collections.deque.extendleft
    functionSourceFile: collections
    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: children.get
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 4
    IfCount: 8
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - current_node
    - key_parts
    - value
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 614
    functionName: botocore.hooks._PrefixTrie._remove_item
    functionSourceFile: botocore.hooks
    functionUses: 4
    functionsReached:
    - node_list.last.remove
    - botocore.hooks._PrefixTrie._remove_item
    - node_list.middle.remove
    - node_list.first.remove
    - <builtin>.len
    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: node_list.first.remove
    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: node_list.middle.remove
    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: node_list.last.remove
    functionSourceFile: <builtin>
    functionUses: 5
    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: 638
    functionName: botocore.hooks._PrefixTrie.__copy__
    functionSourceFile: botocore.hooks
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - node.items
    - copy.copy
    - botocore.hooks._PrefixTrie._recursive_copy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 648
    functionName: botocore.hooks._PrefixTrie._recursive_copy
    functionSourceFile: botocore.hooks
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - node.items
    - copy.copy
    - botocore.hooks._PrefixTrie._recursive_copy
    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: node.items
    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: 1
    functionLinenumber: -1
    functionName: botocore.credentials
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - collections.namedtuple
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830769310>
    - <ast.Constant object at 0x7f9830769970>
    argNames:
    - session
    - cache
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 84
    functionName: botocore.credentials.create_credential_resolver
    functionSourceFile: botocore.credentials
    functionUses: 42
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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: session.get_config_variable
    functionSourceFile: <builtin>
    functionUses: 43
    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: session.instance_variables
    functionSourceFile: <builtin>
    functionUses: 43
    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 0x7f98312e1e80>
    - <ast.Constant object at 0x7f98312e1df0>
    argNames:
    - self
    - environ
    - mapping
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1196
    functionName: botocore.credentials.EnvProvider.__init__
    functionSourceFile: botocore.credentials
    functionUses: 43
    functionsReached:
    - botocore.credentials.EnvProvider._build_mapping
    - mapping.get
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f98315447c0>
    - <ast.Constant object at 0x7f9831544370>
    argNames:
    - self
    - environ
    - fetcher
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 2076
    functionName: botocore.credentials.ContainerProvider.__init__
    functionSourceFile: botocore.credentials
    functionUses: 43
    functionsReached:
    - <builtin>.getattr
    - os.environ.get
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.util.ssl_.SSLContext
    - botocore.httpsession.create_urllib3_context
    - <builtin>.hasattr
    - urllib3.PoolManager
    - urllib3.Timeout
    - botocore.httpsession.ProxyConfiguration.__init__
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.utils.ContainerMetadataFetcher.__init__
    - pool_manager_kwargs.update
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    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: session.user_agent
    functionSourceFile: <builtin>
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - iam_role_fetcher
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1159
    functionName: botocore.credentials.InstanceMetadataProvider.__init__
    functionSourceFile: ''
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e7b880>
    - <ast.Constant object at 0x7f9830e7bf70>
    - <ast.Constant object at 0x7f9830e7be20>
    - <ast.Constant object at 0x7f9830e7b700>
    argNames:
    - self
    - session
    - cache
    - region_name
    - sso_token_cache
    - login_token_cache
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 191
    functionName: botocore.credentials.ProfileProviderBuilder.__init__
    functionSourceFile: ''
    functionUses: 43
    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: botocore.credentials.create_credential_resolver.<lambda1>
    functionSourceFile: botocore.credentials
    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:
    - session
    - region_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 295
    functionName: botocore.credentials._get_client_creator
    functionSourceFile: ''
    functionUses: 49
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - providers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1981
    functionName: botocore.credentials.CanonicalNameCredentialSourcer.__init__
    functionSourceFile: ''
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Attribute object at 0x7f9830f314f0>
    - <ast.Constant object at 0x7f9830f311f0>
    - <ast.Constant object at 0x7f9830f31c10>
    argNames:
    - self
    - load_config
    - client_creator
    - cache
    - profile_name
    - prompter
    - credential_sourcer
    - profile_provider_builder
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1555
    functionName: botocore.credentials.AssumeRoleProvider.__init__
    functionSourceFile: botocore.credentials
    functionUses: 43
    functionsReached:
    - <builtin>.set
    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 0x7f9830b067c0>
    argNames:
    - self
    - profile_name
    - disable_env_vars
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 205
    functionName: botocore.credentials.ProfileProviderBuilder.providers
    functionSourceFile: botocore.credentials
    functionUses: 47
    functionsReached:
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - os.path.expanduser
    - botocore.credentials.LoginProvider.__init__
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - os.path.join
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.credentials.SharedCredentialProvider.__init__
    - <builtin>.set
    - botocore.utils.get_login_token_cache_directory
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - os.path.expandvars
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - botocore.credentials.SSOProvider.__init__
    - botocore.utils.JSONFileCache.__init__
    - botocore.credentials.ConfigProvider.__init__
    - botocore.credentials.ProcessProvider.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830ee9f10>
    - <ast.Constant object at 0x7f9830ee9220>
    argNames:
    - self
    - environ
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1336
    functionName: botocore.credentials.OriginalEC2Provider.__init__
    functionSourceFile: ''
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830dfb730>
    - <ast.Constant object at 0x7f9830dfbe80>
    argNames:
    - self
    - environ
    - ini_parser
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1498
    functionName: botocore.credentials.BotoProvider.__init__
    functionSourceFile: ''
    functionUses: 43
    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: providers.remove
    functionSourceFile: <builtin>
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - providers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2153
    functionName: botocore.credentials.CredentialResolver.__init__
    functionSourceFile: ''
    functionUses: 50
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - profile_name
    - disable_env_vars
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 238
    functionName: botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    functionSourceFile: botocore.credentials
    functionUses: 48
    functionsReached:
    - botocore.credentials._get_client_creator
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 249
    functionName: botocore.credentials.ProfileProviderBuilder._create_sso_provider
    functionSourceFile: botocore.credentials
    functionUses: 48
    functionsReached:
    - <builtin>.set
    - botocore.credentials.SSOProvider.__init__
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.utils.JSONFileCache.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 224
    functionName: botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    functionSourceFile: botocore.credentials
    functionUses: 48
    functionsReached:
    - botocore.credentials.SharedCredentialProvider.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 263
    functionName: botocore.credentials.ProfileProviderBuilder._create_login_provider
    functionSourceFile: botocore.credentials
    functionUses: 48
    functionsReached:
    - botocore.credentials.LoginProvider.__init__
    - botocore.utils.get_login_token_cache_directory
    - botocore.utils.JSONFileCache.__init__
    - os.path.join
    - os.path.expandvars
    - <builtin>.super
    - os.path.expanduser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 218
    functionName: botocore.credentials.ProfileProviderBuilder._create_process_provider
    functionSourceFile: botocore.credentials
    functionUses: 48
    functionsReached:
    - botocore.credentials.ProcessProvider.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 231
    functionName: botocore.credentials.ProfileProviderBuilder._create_config_provider
    functionSourceFile: botocore.credentials
    functionUses: 48
    functionsReached:
    - botocore.credentials.ConfigProvider.__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: botocore.credentials.ProfileProviderBuilder._create_process_provider.<lambda1>
    functionSourceFile: botocore.credentials
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Attribute object at 0x7f9830c19310>
    argNames:
    - self
    - profile_name
    - load_config
    - popen
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1072
    functionName: botocore.credentials.ProcessProvider.__init__
    functionSourceFile: ''
    functionUses: 49
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f983090f280>
    - <ast.Constant object at 0x7f983090f850>
    argNames:
    - self
    - creds_filename
    - profile_name
    - ini_parser
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1375
    functionName: botocore.credentials.SharedCredentialProvider.__init__
    functionSourceFile: ''
    functionUses: 49
    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 0x7f9830d07b20>
    argNames:
    - self
    - config_filename
    - profile_name
    - config_parser
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1433
    functionName: botocore.credentials.ConfigProvider.__init__
    functionSourceFile: ''
    functionUses: 49
    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: botocore.credentials.ProfileProviderBuilder._create_web_identity_provider.<lambda1>
    functionSourceFile: botocore.credentials
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f9830b47b50>
    - <ast.Constant object at 0x7f9830b475b0>
    - <ast.Constant object at 0x7f9830b47eb0>
    argNames:
    - self
    - load_config
    - client_creator
    - profile_name
    - cache
    - disable_env_vars
    - token_loader_cls
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1888
    functionName: botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    functionSourceFile: botocore.credentials
    functionUses: 49
    functionsReached:
    - <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: botocore.credentials.ProfileProviderBuilder._create_sso_provider.<lambda1>
    functionSourceFile: botocore.credentials
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830858550>
    - <ast.Name object at 0x7f9830858f10>
    - <ast.Constant object at 0x7f98308585e0>
    argNames:
    - self
    - session
    - cache
    - time_fetcher
    - profile_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 193
    functionName: botocore.tokens.SSOTokenProvider.__init__
    functionSourceFile: botocore.tokens
    functionUses: 51
    functionsReached:
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.utils.JSONFileCache.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f982c38d220>
    - <ast.Constant object at 0x7f982c38d250>
    - <ast.Constant object at 0x7f982c38d280>
    argNames:
    - self
    - load_config
    - client_creator
    - profile_name
    - cache
    - token_cache
    - token_provider
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2373
    functionName: botocore.credentials.SSOProvider.__init__
    functionSourceFile: botocore.credentials
    functionUses: 49
    functionsReached:
    - <builtin>.set
    - botocore.utils.JSONFileCache.__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: botocore.credentials.ProfileProviderBuilder._create_login_provider.<lambda1>
    functionSourceFile: botocore.credentials
    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 0x7f982f5619d0>
    argNames:
    - self
    - load_config
    - client_creator
    - profile_name
    - token_cache
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2724
    functionName: botocore.credentials.LoginProvider.__init__
    functionSourceFile: botocore.credentials
    functionUses: 49
    functionsReached:
    - botocore.utils.get_login_token_cache_directory
    - botocore.utils.JSONFileCache.__init__
    - os.path.join
    - os.path.expandvars
    - <builtin>.super
    - os.path.expanduser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - session
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 272
    functionName: botocore.credentials.get_credentials
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - warnings.warn
    - botocore.credentials.CredentialResolver.load_credentials
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - provider.load
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2231
    functionName: botocore.credentials.CredentialResolver.load_credentials
    functionSourceFile: botocore.credentials
    functionUses: 7
    functionsReached:
    - logger.debug
    - provider.load
    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: 277
    functionName: botocore.credentials._local_now
    functionSourceFile: botocore.credentials
    functionUses: 19
    functionsReached:
    - datetime.datetime.now
    - dateutil.tz.tzlocal
    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: dateutil.tz.tzlocal
    functionSourceFile: dateutil
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 281
    functionName: botocore.credentials._parse_if_needed
    functionSourceFile: botocore.credentials
    functionUses: 18
    functionsReached:
    - dateutil.parser.parse
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e0c820>
    argNames:
    - value
    - iso
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 287
    functionName: botocore.credentials._serialize_if_needed
    functionSourceFile: botocore.credentials
    functionUses: 13
    functionsReached:
    - value.isoformat
    - <builtin>.isinstance
    - value.strftime
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - service_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 296
    functionName: botocore.credentials._get_client_creator.client_creator
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - botocore.utils.create_nested_client
    - contextvars.ContextVar.set
    - contextvars.ContextVar.reset
    - botocore.plugin.reset_plugin_context
    - create_client_kwargs.update
    - botocore.plugin.set_plugin_context
    - session.create_client
    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: create_client_kwargs.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: 2
    argDefaultValues: []
    argNames:
    - client
    - params
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 306
    functionName: botocore.credentials.create_assume_role_refresher
    functionSourceFile: botocore.credentials
    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: 307
    functionName: botocore.credentials.create_assume_role_refresher.refresh
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - value.strftime
    - client.assume_role
    - value.isoformat
    - <builtin>.isinstance
    - botocore.credentials._serialize_if_needed
    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: client.assume_role
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - actual_refresh
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 322
    functionName: botocore.credentials.create_mfa_serial_refresher
    functionSourceFile: botocore.credentials
    functionUses: 4
    functionsReached:
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - refresh
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 324
    functionName: botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    functionSourceFile: botocore.credentials
    functionUses: 17
    functionsReached: []
    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: 17
    functionLinenumber: 328
    functionName: botocore.credentials.create_mfa_serial_refresher._Refresher.__call__
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - new_time.strftime
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.context.get_context
    - botocore.utils.ArnParser.parse_arn
    - collections.OrderedDict
    - token_file.read
    - urllib.parse.urlencode
    - botocore.credentials._serialize_if_needed
    - dateutil.parser.parse.total_seconds
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.useragent.register_feature_ids
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - botocore.utils.IMDSFetcher._assert_enabled
    - proxy_url.startswith
    - response.content.decode
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.credentials.CachedCredentialFetcher._get_credentials
    - proxy_manager_kwargs.update
    - delim.join
    - botocore.credentials._build_add_dpop_header_handler
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.CachedCredentialFetcher._load_from_cache
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.ContainerProvider._build_headers
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - config_vars.update
    - datetime.datetime.fromtimestamp
    - os.environ.get
    - botocore.credentials.CachedCredentialFetcher.fetch_credentials
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - client.assume_role_with_web_identity
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.config.Config._validate_s3_configuration
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    - http.client.HTTPMessage.__init__
    - botocore.credentials.RefreshableCredentials._refresh
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - dateutil.tz.tzutc
    - copy.copy
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - initial_token_data.get_frozen_token
    - botocore.credentials.LoginCredentialFetcher.refresh_credentials
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - botocore.utils.LoginTokenLoader.save_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - <builtin>.getattr
    - urllib.parse.unquote.startswith
    - creds.get
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - <builtin>.setattr
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - kwargs.items
    - urllib.parse.unquote.split
    - botocore.credentials.Credentials.get_frozen_credentials
    - botocore.credentials.RefreshableCredentials.get_frozen_credentials
    - botocore.config.Config
    - auth_str.encode
    - botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    - datetime_now.replace
    - response.get
    - token.update
    - timestamp.strftime
    - botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    - config_vars.items
    - value.encode
    - botocore.utils.determine_content_length
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.credentials.AssumeRoleCredentialFetcher._create_client
    - botocore.credentials.RefreshableCredentials._is_expired
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.open
    - base64.b64decode
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - data.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.compat.urlparse
    - json.loads
    - botocore.config.Config._validate_retry_configuration
    - botocore.utils.LoginTokenLoader.load_token
    - url.lower
    - s3.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - copy.deepcopy.get
    - botocore.awsrequest.AWSResponse
    - copy.deepcopy
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - value.isoformat
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - value.strftime
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.generate_login_cache_key
    - botocore.credentials.RefreshableCredentials._protected_refresh
    - retries.items
    - hashlib.sha256
    - contextvars.ContextVar.get
    - headers.update
    - client.get_role_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - client.create_o_auth2_token
    - <builtin>.super
    - random.randint
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - typing.NamedTuple.expiration.total_seconds
    - line.startswith
    - botocore.compat.ensure_bytes
    - sign_in_session_name.encode
    - botocore.credentials.RefreshableCredentials._set_from_data
    - io.BytesIO.encode
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.credentials.SSOCredentialFetcher._get_credentials
    - botocore.compat.ensure_unicode
    - botocore.credentials.CachedCredentialFetcher._write_to_cache
    - botocore.config.Config._record_user_provided_options
    - client.assume_role
    - collections.namedtuple
    - <builtin>.range
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - IPV6_ADDRZ_RE.match
    - botocore.credentials._local_now
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - dateutil.tz.tzlocal
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    - botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    linkageType: pythonLinkage
    raised:
    - RefreshWithMFAUnsupportedError
    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: 16
    functionLinenumber: 749
    functionName: botocore.credentials.CachedCredentialFetcher.fetch_credentials
    functionSourceFile: botocore.credentials
    functionUses: 11
    functionsReached:
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - new_time.strftime
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.context.get_context
    - botocore.utils.ArnParser.parse_arn
    - collections.OrderedDict
    - token_file.read
    - urllib.parse.urlencode
    - botocore.credentials._serialize_if_needed
    - dateutil.parser.parse.total_seconds
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.useragent.register_feature_ids
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - response.content.decode
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.credentials.CachedCredentialFetcher._get_credentials
    - proxy_manager_kwargs.update
    - delim.join
    - botocore.credentials._build_add_dpop_header_handler
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.CachedCredentialFetcher._load_from_cache
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.ContainerProvider._build_headers
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - config_vars.update
    - datetime.datetime.fromtimestamp
    - os.environ.get
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.credentials.CachedCredentialFetcher.fetch_credentials
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - client.assume_role_with_web_identity
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.config.Config._validate_s3_configuration
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    - http.client.HTTPMessage.__init__
    - botocore.credentials.RefreshableCredentials._refresh
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - dateutil.tz.tzutc
    - copy.copy
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - urllib3.proxy_from_url
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - initial_token_data.get_frozen_token
    - botocore.credentials.LoginCredentialFetcher.refresh_credentials
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - botocore.utils.LoginTokenLoader.save_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - <builtin>.getattr
    - urllib.parse.unquote.startswith
    - creds.get
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - <builtin>.setattr
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - kwargs.items
    - urllib.parse.unquote.split
    - botocore.credentials.Credentials.get_frozen_credentials
    - botocore.credentials.RefreshableCredentials.get_frozen_credentials
    - botocore.config.Config
    - auth_str.encode
    - botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    - datetime_now.replace
    - response.get
    - token.update
    - timestamp.strftime
    - botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    - config_vars.items
    - value.encode
    - botocore.utils.determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.credentials.AssumeRoleCredentialFetcher._create_client
    - botocore.credentials.RefreshableCredentials._is_expired
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.open
    - base64.b64decode
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - data.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.compat.urlparse
    - json.loads
    - botocore.config.Config._validate_retry_configuration
    - botocore.utils.LoginTokenLoader.load_token
    - url.lower
    - s3.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - copy.deepcopy.get
    - botocore.awsrequest.AWSResponse
    - copy.deepcopy
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - value.isoformat
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - value.strftime
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - botocore.utils.generate_login_cache_key
    - botocore.credentials.RefreshableCredentials._protected_refresh
    - retries.items
    - hashlib.sha256
    - contextvars.ContextVar.get
    - headers.update
    - client.get_role_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - client.create_o_auth2_token
    - <builtin>.super
    - random.randint
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - typing.NamedTuple.expiration.total_seconds
    - line.startswith
    - botocore.compat.ensure_bytes
    - sign_in_session_name.encode
    - botocore.credentials.RefreshableCredentials._set_from_data
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - io.BytesIO.encode
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.credentials.SSOCredentialFetcher._get_credentials
    - botocore.compat.ensure_unicode
    - botocore.credentials.CachedCredentialFetcher._write_to_cache
    - botocore.config.Config._record_user_provided_options
    - client.assume_role
    - collections.namedtuple
    - <builtin>.range
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - IPV6_ADDRZ_RE.match
    - botocore.credentials._local_now
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - dateutil.tz.tzlocal
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    - botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    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 0x7f9830c58100>
    - <ast.Constant object at 0x7f9830c581c0>
    - <ast.Constant object at 0x7f9830c58430>
    argNames:
    - self
    - access_key
    - secret_key
    - token
    - method
    - account_id
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 352
    functionName: botocore.credentials.Credentials.__init__
    functionSourceFile: botocore.credentials
    functionUses: 11
    functionsReached:
    - botocore.compat.ensure_unicode
    - botocore.credentials.Credentials._normalize
    - botocore.credentials.RefreshableCredentials._normalize
    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: 366
    functionName: botocore.credentials.Credentials._normalize
    functionSourceFile: botocore.credentials
    functionUses: 12
    functionsReached:
    - botocore.compat.ensure_unicode
    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: 441
    functionName: botocore.credentials.RefreshableCredentials._normalize
    functionSourceFile: botocore.credentials
    functionUses: 32
    functionsReached:
    - botocore.compat.ensure_unicode
    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: 376
    functionName: botocore.credentials.Credentials.get_frozen_credentials
    functionSourceFile: botocore.credentials
    functionUses: 12
    functionsReached:
    - collections.namedtuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - property_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 381
    functionName: botocore.credentials.Credentials.get_deferred_property
    functionSourceFile: botocore.credentials
    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: 1
    functionLinenumber: 382
    functionName: botocore.credentials.Credentials.get_deferred_property.get_property
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 11
    argDefaultValues:
    - <ast.Name object at 0x7f9830990df0>
    - <ast.Constant object at 0x7f98309902e0>
    - <ast.Constant object at 0x7f98309905b0>
    - <ast.Constant object at 0x7f9830990e50>
    argNames:
    - self
    - access_key
    - secret_key
    - token
    - expiry_time
    - refresh_using
    - method
    - time_fetcher
    - advisory_timeout
    - mandatory_timeout
    - account_id
    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: 2
    functionLinenumber: 410
    functionName: botocore.credentials.RefreshableCredentials.__init__
    functionSourceFile: botocore.credentials
    functionUses: 8
    functionsReached:
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - threading.Lock
    - botocore.credentials.RefreshableCredentials._normalize
    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: threading.Lock
    functionSourceFile: threading
    functionUses: 33
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - time_str
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 636
    functionName: botocore.credentials.RefreshableCredentials._expiry_datetime
    functionSourceFile: botocore.credentials
    functionUses: 4
    functionsReached:
    - dateutil.parser.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 482
    functionName: botocore.credentials.RefreshableCredentials.access_key
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - new_time.strftime
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.context.get_context
    - botocore.utils.ArnParser.parse_arn
    - collections.OrderedDict
    - token_file.read
    - urllib.parse.urlencode
    - botocore.credentials._serialize_if_needed
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - dateutil.parser.parse.total_seconds
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.useragent.register_feature_ids
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - response.content.decode
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.credentials.CachedCredentialFetcher._get_credentials
    - proxy_manager_kwargs.update
    - delim.join
    - botocore.credentials._build_add_dpop_header_handler
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.CachedCredentialFetcher._load_from_cache
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.ContainerProvider._build_headers
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - datetime.datetime.fromtimestamp
    - config_vars.update
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.credentials.CachedCredentialFetcher.fetch_credentials
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - client.assume_role_with_web_identity
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.config.Config._validate_s3_configuration
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    - botocore.credentials.RefreshableCredentials._refresh
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - dateutil.tz.tzutc
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - copy.copy
    - urllib3.proxy_from_url
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - initial_token_data.get_frozen_token
    - botocore.credentials.LoginCredentialFetcher.refresh_credentials
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - botocore.utils.LoginTokenLoader.save_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - <builtin>.getattr
    - urllib.parse.unquote.startswith
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - creds.get
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - <builtin>.setattr
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - kwargs.items
    - urllib.parse.unquote.split
    - botocore.config.Config
    - auth_str.encode
    - botocore.credentials.RefreshableCredentials.get_frozen_credentials
    - botocore.credentials.Credentials.get_frozen_credentials
    - botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    - datetime_now.replace
    - response.get
    - token.update
    - timestamp.strftime
    - botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    - config_vars.items
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.credentials.AssumeRoleCredentialFetcher._create_client
    - botocore.credentials.RefreshableCredentials._is_expired
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.open
    - base64.b64decode
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - data.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.compat.urlparse
    - json.loads
    - botocore.utils.LoginTokenLoader.load_token
    - botocore.config.Config._validate_retry_configuration
    - url.lower
    - s3.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - copy.deepcopy.get
    - copy.deepcopy
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - value.isoformat
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - value.strftime
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.generate_login_cache_key
    - botocore.credentials.RefreshableCredentials._protected_refresh
    - retries.items
    - hashlib.sha256
    - contextvars.ContextVar.get
    - headers.update
    - client.get_role_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - client.create_o_auth2_token
    - <builtin>.super
    - random.randint
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - typing.NamedTuple.expiration.total_seconds
    - line.startswith
    - botocore.compat.ensure_bytes
    - sign_in_session_name.encode
    - botocore.credentials.RefreshableCredentials._set_from_data
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - io.BytesIO.encode
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.credentials.SSOCredentialFetcher._get_credentials
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.credentials.CachedCredentialFetcher._write_to_cache
    - <builtin>.range
    - botocore.config.Config._record_user_provided_options
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - client.assume_role
    - IPV6_ADDRZ_RE.match
    - botocore.credentials._local_now
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - dateutil.tz.tzlocal
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    - botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 566
    functionName: botocore.credentials.RefreshableCredentials._refresh
    functionSourceFile: botocore.credentials
    functionUses: 11
    functionsReached:
    - new_time.strftime
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.context.get_context
    - botocore.utils.ArnParser.parse_arn
    - collections.OrderedDict
    - token_file.read
    - urllib.parse.urlencode
    - botocore.credentials._serialize_if_needed
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - dateutil.parser.parse.total_seconds
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.useragent.register_feature_ids
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - response.content.decode
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.credentials.CachedCredentialFetcher._get_credentials
    - proxy_manager_kwargs.update
    - delim.join
    - botocore.credentials._build_add_dpop_header_handler
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.CachedCredentialFetcher._load_from_cache
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.ContainerProvider._build_headers
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - datetime.datetime.fromtimestamp
    - config_vars.update
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.credentials.CachedCredentialFetcher.fetch_credentials
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - client.assume_role_with_web_identity
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.config.Config._validate_s3_configuration
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    - botocore.credentials.RefreshableCredentials._refresh
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - dateutil.tz.tzutc
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - copy.copy
    - urllib3.proxy_from_url
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - initial_token_data.get_frozen_token
    - botocore.credentials.LoginCredentialFetcher.refresh_credentials
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - botocore.utils.LoginTokenLoader.save_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - <builtin>.getattr
    - urllib.parse.unquote.startswith
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - creds.get
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - <builtin>.setattr
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - kwargs.items
    - urllib.parse.unquote.split
    - botocore.config.Config
    - auth_str.encode
    - botocore.credentials.RefreshableCredentials.get_frozen_credentials
    - botocore.credentials.Credentials.get_frozen_credentials
    - botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    - datetime_now.replace
    - response.get
    - token.update
    - timestamp.strftime
    - botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    - config_vars.items
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.credentials.AssumeRoleCredentialFetcher._create_client
    - botocore.credentials.RefreshableCredentials._is_expired
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.open
    - base64.b64decode
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - data.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.compat.urlparse
    - json.loads
    - botocore.utils.LoginTokenLoader.load_token
    - botocore.config.Config._validate_retry_configuration
    - url.lower
    - s3.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - copy.deepcopy.get
    - copy.deepcopy
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - value.isoformat
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - value.strftime
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.generate_login_cache_key
    - botocore.credentials.RefreshableCredentials._protected_refresh
    - retries.items
    - hashlib.sha256
    - contextvars.ContextVar.get
    - headers.update
    - client.get_role_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - client.create_o_auth2_token
    - <builtin>.super
    - random.randint
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - typing.NamedTuple.expiration.total_seconds
    - line.startswith
    - botocore.compat.ensure_bytes
    - sign_in_session_name.encode
    - botocore.credentials.RefreshableCredentials._set_from_data
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - io.BytesIO.encode
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.credentials.SSOCredentialFetcher._get_credentials
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.credentials.CachedCredentialFetcher._write_to_cache
    - <builtin>.range
    - botocore.config.Config._record_user_provided_options
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - client.assume_role
    - IPV6_ADDRZ_RE.match
    - botocore.credentials._local_now
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - dateutil.tz.tzlocal
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    - botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 495
    functionName: botocore.credentials.RefreshableCredentials.secret_key
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - new_time.strftime
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.context.get_context
    - botocore.utils.ArnParser.parse_arn
    - collections.OrderedDict
    - token_file.read
    - urllib.parse.urlencode
    - botocore.credentials._serialize_if_needed
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - dateutil.parser.parse.total_seconds
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.useragent.register_feature_ids
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - response.content.decode
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.credentials.CachedCredentialFetcher._get_credentials
    - proxy_manager_kwargs.update
    - delim.join
    - botocore.credentials._build_add_dpop_header_handler
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.CachedCredentialFetcher._load_from_cache
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.ContainerProvider._build_headers
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - datetime.datetime.fromtimestamp
    - config_vars.update
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.credentials.CachedCredentialFetcher.fetch_credentials
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - client.assume_role_with_web_identity
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.config.Config._validate_s3_configuration
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    - botocore.credentials.RefreshableCredentials._refresh
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - dateutil.tz.tzutc
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - copy.copy
    - urllib3.proxy_from_url
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - initial_token_data.get_frozen_token
    - botocore.credentials.LoginCredentialFetcher.refresh_credentials
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - botocore.utils.LoginTokenLoader.save_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - <builtin>.getattr
    - urllib.parse.unquote.startswith
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - creds.get
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - <builtin>.setattr
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - kwargs.items
    - urllib.parse.unquote.split
    - botocore.config.Config
    - auth_str.encode
    - botocore.credentials.RefreshableCredentials.get_frozen_credentials
    - botocore.credentials.Credentials.get_frozen_credentials
    - botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    - datetime_now.replace
    - response.get
    - token.update
    - timestamp.strftime
    - botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    - config_vars.items
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.credentials.AssumeRoleCredentialFetcher._create_client
    - botocore.credentials.RefreshableCredentials._is_expired
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.open
    - base64.b64decode
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - data.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.compat.urlparse
    - json.loads
    - botocore.utils.LoginTokenLoader.load_token
    - botocore.config.Config._validate_retry_configuration
    - url.lower
    - s3.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - copy.deepcopy.get
    - copy.deepcopy
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - value.isoformat
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - value.strftime
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.generate_login_cache_key
    - botocore.credentials.RefreshableCredentials._protected_refresh
    - retries.items
    - hashlib.sha256
    - contextvars.ContextVar.get
    - headers.update
    - client.get_role_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - client.create_o_auth2_token
    - <builtin>.super
    - random.randint
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - typing.NamedTuple.expiration.total_seconds
    - line.startswith
    - botocore.compat.ensure_bytes
    - sign_in_session_name.encode
    - botocore.credentials.RefreshableCredentials._set_from_data
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - io.BytesIO.encode
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.credentials.SSOCredentialFetcher._get_credentials
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.credentials.CachedCredentialFetcher._write_to_cache
    - <builtin>.range
    - botocore.config.Config._record_user_provided_options
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - client.assume_role
    - IPV6_ADDRZ_RE.match
    - botocore.credentials._local_now
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - dateutil.tz.tzlocal
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    - botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 508
    functionName: botocore.credentials.RefreshableCredentials.token
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - new_time.strftime
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.context.get_context
    - botocore.utils.ArnParser.parse_arn
    - collections.OrderedDict
    - token_file.read
    - urllib.parse.urlencode
    - botocore.credentials._serialize_if_needed
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - dateutil.parser.parse.total_seconds
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.useragent.register_feature_ids
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - response.content.decode
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.credentials.CachedCredentialFetcher._get_credentials
    - proxy_manager_kwargs.update
    - delim.join
    - botocore.credentials._build_add_dpop_header_handler
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.CachedCredentialFetcher._load_from_cache
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.ContainerProvider._build_headers
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - datetime.datetime.fromtimestamp
    - config_vars.update
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.credentials.CachedCredentialFetcher.fetch_credentials
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - client.assume_role_with_web_identity
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.config.Config._validate_s3_configuration
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    - botocore.credentials.RefreshableCredentials._refresh
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - dateutil.tz.tzutc
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - copy.copy
    - urllib3.proxy_from_url
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - initial_token_data.get_frozen_token
    - botocore.credentials.LoginCredentialFetcher.refresh_credentials
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - botocore.utils.LoginTokenLoader.save_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - <builtin>.getattr
    - urllib.parse.unquote.startswith
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - creds.get
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - <builtin>.setattr
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - kwargs.items
    - urllib.parse.unquote.split
    - botocore.config.Config
    - auth_str.encode
    - botocore.credentials.RefreshableCredentials.get_frozen_credentials
    - botocore.credentials.Credentials.get_frozen_credentials
    - botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    - datetime_now.replace
    - response.get
    - token.update
    - timestamp.strftime
    - botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    - config_vars.items
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.credentials.AssumeRoleCredentialFetcher._create_client
    - botocore.credentials.RefreshableCredentials._is_expired
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.open
    - base64.b64decode
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - data.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.compat.urlparse
    - json.loads
    - botocore.utils.LoginTokenLoader.load_token
    - botocore.config.Config._validate_retry_configuration
    - url.lower
    - s3.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - copy.deepcopy.get
    - copy.deepcopy
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - value.isoformat
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - value.strftime
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.generate_login_cache_key
    - botocore.credentials.RefreshableCredentials._protected_refresh
    - retries.items
    - hashlib.sha256
    - contextvars.ContextVar.get
    - headers.update
    - client.get_role_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - client.create_o_auth2_token
    - <builtin>.super
    - random.randint
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - typing.NamedTuple.expiration.total_seconds
    - line.startswith
    - botocore.compat.ensure_bytes
    - sign_in_session_name.encode
    - botocore.credentials.RefreshableCredentials._set_from_data
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - io.BytesIO.encode
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.credentials.SSOCredentialFetcher._get_credentials
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.credentials.CachedCredentialFetcher._write_to_cache
    - <builtin>.range
    - botocore.config.Config._record_user_provided_options
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - client.assume_role
    - IPV6_ADDRZ_RE.match
    - botocore.credentials._local_now
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - dateutil.tz.tzlocal
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    - botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 521
    functionName: botocore.credentials.RefreshableCredentials.account_id
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - new_time.strftime
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.context.get_context
    - botocore.utils.ArnParser.parse_arn
    - collections.OrderedDict
    - token_file.read
    - urllib.parse.urlencode
    - botocore.credentials._serialize_if_needed
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - dateutil.parser.parse.total_seconds
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.useragent.register_feature_ids
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - response.content.decode
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.credentials.CachedCredentialFetcher._get_credentials
    - proxy_manager_kwargs.update
    - delim.join
    - botocore.credentials._build_add_dpop_header_handler
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.CachedCredentialFetcher._load_from_cache
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.ContainerProvider._build_headers
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - datetime.datetime.fromtimestamp
    - config_vars.update
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.credentials.CachedCredentialFetcher.fetch_credentials
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - client.assume_role_with_web_identity
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.config.Config._validate_s3_configuration
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    - botocore.credentials.RefreshableCredentials._refresh
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - dateutil.tz.tzutc
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - copy.copy
    - urllib3.proxy_from_url
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - initial_token_data.get_frozen_token
    - botocore.credentials.LoginCredentialFetcher.refresh_credentials
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - botocore.utils.LoginTokenLoader.save_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - <builtin>.getattr
    - urllib.parse.unquote.startswith
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - creds.get
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - <builtin>.setattr
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - kwargs.items
    - urllib.parse.unquote.split
    - botocore.config.Config
    - auth_str.encode
    - botocore.credentials.RefreshableCredentials.get_frozen_credentials
    - botocore.credentials.Credentials.get_frozen_credentials
    - botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    - datetime_now.replace
    - response.get
    - token.update
    - timestamp.strftime
    - botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    - config_vars.items
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.credentials.AssumeRoleCredentialFetcher._create_client
    - botocore.credentials.RefreshableCredentials._is_expired
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.open
    - base64.b64decode
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - data.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.compat.urlparse
    - json.loads
    - botocore.utils.LoginTokenLoader.load_token
    - botocore.config.Config._validate_retry_configuration
    - url.lower
    - s3.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - copy.deepcopy.get
    - copy.deepcopy
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - value.isoformat
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - value.strftime
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.generate_login_cache_key
    - botocore.credentials.RefreshableCredentials._protected_refresh
    - retries.items
    - hashlib.sha256
    - contextvars.ContextVar.get
    - headers.update
    - client.get_role_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - client.create_o_auth2_token
    - <builtin>.super
    - random.randint
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - typing.NamedTuple.expiration.total_seconds
    - line.startswith
    - botocore.compat.ensure_bytes
    - sign_in_session_name.encode
    - botocore.credentials.RefreshableCredentials._set_from_data
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - io.BytesIO.encode
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.credentials.SSOCredentialFetcher._get_credentials
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.credentials.CachedCredentialFetcher._write_to_cache
    - <builtin>.range
    - botocore.config.Config._record_user_provided_options
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - client.assume_role
    - IPV6_ADDRZ_RE.match
    - botocore.credentials._local_now
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - dateutil.tz.tzlocal
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    - botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    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: 524
    functionName: botocore.credentials.RefreshableCredentials._seconds_remaining
    functionSourceFile: botocore.credentials
    functionUses: 14
    functionsReached:
    - typing.NamedTuple.expiration.total_seconds
    - botocore.compat.total_seconds
    - botocore.credentials._local_now
    - dateutil.parser.parse.total_seconds
    - dateutil.tz.tzlocal
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830762370>
    argNames:
    - self
    - refresh_in
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 528
    functionName: botocore.credentials.RefreshableCredentials.refresh_needed
    functionSourceFile: botocore.credentials
    functionUses: 13
    functionsReached:
    - logger.debug
    - typing.NamedTuple.expiration.total_seconds
    - botocore.compat.total_seconds
    - botocore.credentials._local_now
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - dateutil.parser.parse.total_seconds
    - dateutil.tz.tzlocal
    - datetime.datetime.now
    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: 4
    functionLinenumber: 562
    functionName: botocore.credentials.RefreshableCredentials._is_expired
    functionSourceFile: botocore.credentials
    functionUses: 12
    functionsReached:
    - logger.debug
    - typing.NamedTuple.expiration.total_seconds
    - <builtin>.super
    - botocore.compat.total_seconds
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - botocore.credentials._local_now
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - dateutil.parser.parse.total_seconds
    - dateutil.tz.tzlocal
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - datetime.datetime.now
    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 0x7f982f895d90>
    argNames:
    - self
    - refresh_in
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 719
    functionName: botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    functionSourceFile: botocore.credentials
    functionUses: 13
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - is_mandatory
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 596
    functionName: botocore.credentials.RefreshableCredentials._protected_refresh
    functionSourceFile: botocore.credentials
    functionUses: 11
    functionsReached:
    - new_time.strftime
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.context.get_context
    - botocore.utils.ArnParser.parse_arn
    - collections.OrderedDict
    - token_file.read
    - urllib.parse.urlencode
    - botocore.credentials._serialize_if_needed
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - dateutil.parser.parse.total_seconds
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.useragent.register_feature_ids
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - proxy_url.startswith
    - response.content.decode
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.credentials.CachedCredentialFetcher._get_credentials
    - proxy_manager_kwargs.update
    - delim.join
    - botocore.credentials._build_add_dpop_header_handler
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.CachedCredentialFetcher._load_from_cache
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.ContainerProvider._build_headers
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - datetime.datetime.fromtimestamp
    - config_vars.update
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.credentials.CachedCredentialFetcher.fetch_credentials
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - client.assume_role_with_web_identity
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.config.Config._validate_s3_configuration
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    - botocore.credentials.RefreshableCredentials._refresh
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - dateutil.tz.tzutc
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - copy.copy
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - initial_token_data.get_frozen_token
    - botocore.credentials.LoginCredentialFetcher.refresh_credentials
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - botocore.utils.LoginTokenLoader.save_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - <builtin>.getattr
    - urllib.parse.unquote.startswith
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - creds.get
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - <builtin>.setattr
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - kwargs.items
    - urllib.parse.unquote.split
    - botocore.config.Config
    - auth_str.encode
    - botocore.credentials.Credentials.get_frozen_credentials
    - botocore.credentials.RefreshableCredentials.get_frozen_credentials
    - botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    - datetime_now.replace
    - response.get
    - token.update
    - timestamp.strftime
    - botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    - config_vars.items
    - value.encode
    - botocore.utils.determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.credentials.AssumeRoleCredentialFetcher._create_client
    - botocore.credentials.RefreshableCredentials._is_expired
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.open
    - base64.b64decode
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - data.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.compat.urlparse
    - json.loads
    - botocore.utils.LoginTokenLoader.load_token
    - botocore.config.Config._validate_retry_configuration
    - url.lower
    - s3.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - copy.deepcopy.get
    - botocore.awsrequest.AWSResponse
    - copy.deepcopy
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - value.isoformat
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - value.strftime
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.generate_login_cache_key
    - botocore.credentials.RefreshableCredentials._protected_refresh
    - retries.items
    - hashlib.sha256
    - contextvars.ContextVar.get
    - headers.update
    - client.get_role_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - client.create_o_auth2_token
    - <builtin>.super
    - random.randint
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - typing.NamedTuple.expiration.total_seconds
    - line.startswith
    - botocore.compat.ensure_bytes
    - sign_in_session_name.encode
    - botocore.credentials.RefreshableCredentials._set_from_data
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.credentials.SSOCredentialFetcher._get_credentials
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.credentials.CachedCredentialFetcher._write_to_cache
    - <builtin>.range
    - client.assume_role
    - botocore.config.Config._record_user_provided_options
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - IPV6_ADDRZ_RE.match
    - botocore.credentials._local_now
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - dateutil.tz.tzlocal
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    - botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 5
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 2600
    functionName: botocore.credentials.LoginCredentialFetcher.refresh_credentials
    functionSourceFile: botocore.credentials
    functionUses: 12
    functionsReached:
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - botocore.utils.generate_login_cache_key
    - botocore.context.get_context
    - hashlib.sha256
    - contextvars.ContextVar.get
    - collections.OrderedDict
    - base64.b64decode
    - dateutil.parser.parse.total_seconds
    - ctx.features.add
    - botocore.useragent.register_feature_ids
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - dateutil.tz.tzutc
    - botocore.useragent.register_feature_id
    - <builtin>.isinstance
    - botocore.utils.LoginTokenLoader.save_token
    - client.create_o_auth2_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - datetime.datetime.now
    - botocore.credentials._build_add_dpop_header_handler
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - line.startswith
    - typing.NamedTuple.expiration.total_seconds
    - dateutil.parser.parse
    - botocore.utils.LoginTokenLoader.load_token
    - sign_in_session_name.encode
    - botocore.config.Config
    - response.get
    - token.update
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.credentials._local_now
    - dateutil.tz.tzlocal
    linkageType: pythonLinkage
    raised:
    - LoginTokenLoadError
    - LoginInsufficientPermissions
    - LoginRefreshRequired
    - LoginError
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f98312f6ca0>
    argNames:
    - require_expiry
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1285
    functionName: botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    functionSourceFile: botocore.credentials
    functionUses: 13
    functionsReached:
    - os.environ.get
    linkageType: pythonLinkage
    raised:
    - PartialCredentialsError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 2124
    functionName: botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    functionSourceFile: botocore.credentials
    functionUses: 14
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.context.get_context
    - token_file.read
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - proxy_url.startswith
    - response.content.decode
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - proxy_manager_kwargs.update
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.ContainerProvider._build_headers
    - url.startswith
    - io.BytesIO.lower
    - os.environ.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - urllib3.PoolManager.connection_from_url
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - _USERAGENT_FEATURE_MAPPINGS.get
    - <builtin>.getattr
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - val.lower
    - auth_str.encode
    - response.get
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.httpsession.get_cert_path
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - <builtin>.hasattr
    - <builtin>.open
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - urllib3.util.ssl_.is_ipaddress
    - botocore.compat.urlparse
    - json.loads
    - url.lower
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.ensure_boolean
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - contextvars.ContextVar.get
    - headers.update
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - certifi.where
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised:
    - CredentialRetrievalError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 639
    functionName: botocore.credentials.RefreshableCredentials._set_from_data
    functionSourceFile: botocore.credentials
    functionUses: 12
    functionsReached:
    - logger.debug
    - dateutil.parser.parse
    - data.get
    - botocore.compat.ensure_unicode
    - botocore.credentials.RefreshableCredentials._normalize
    linkageType: pythonLinkage
    raised:
    - CredentialRetrievalError
    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.get
    functionSourceFile: <builtin>
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 663
    functionName: botocore.credentials.RefreshableCredentials.get_frozen_credentials
    functionSourceFile: botocore.credentials
    functionUses: 11
    functionsReached:
    - new_time.strftime
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.context.get_context
    - botocore.utils.ArnParser.parse_arn
    - collections.OrderedDict
    - token_file.read
    - urllib.parse.urlencode
    - botocore.credentials._serialize_if_needed
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - dateutil.parser.parse.total_seconds
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.useragent.register_feature_ids
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - response.content.decode
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.credentials.CachedCredentialFetcher._get_credentials
    - proxy_manager_kwargs.update
    - delim.join
    - botocore.credentials._build_add_dpop_header_handler
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.CachedCredentialFetcher._load_from_cache
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.ContainerProvider._build_headers
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - datetime.datetime.fromtimestamp
    - config_vars.update
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.credentials.CachedCredentialFetcher.fetch_credentials
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - client.assume_role_with_web_identity
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.config.Config._validate_s3_configuration
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    - botocore.credentials.RefreshableCredentials._refresh
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - dateutil.tz.tzutc
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - copy.copy
    - urllib3.proxy_from_url
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - initial_token_data.get_frozen_token
    - botocore.credentials.LoginCredentialFetcher.refresh_credentials
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - botocore.utils.LoginTokenLoader.save_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - <builtin>.getattr
    - urllib.parse.unquote.startswith
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - creds.get
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - <builtin>.setattr
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - kwargs.items
    - urllib.parse.unquote.split
    - botocore.config.Config
    - auth_str.encode
    - botocore.credentials.RefreshableCredentials.get_frozen_credentials
    - botocore.credentials.Credentials.get_frozen_credentials
    - botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    - datetime_now.replace
    - response.get
    - token.update
    - timestamp.strftime
    - botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    - config_vars.items
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.credentials.AssumeRoleCredentialFetcher._create_client
    - botocore.credentials.RefreshableCredentials._is_expired
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.open
    - base64.b64decode
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - data.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.compat.urlparse
    - json.loads
    - botocore.utils.LoginTokenLoader.load_token
    - botocore.config.Config._validate_retry_configuration
    - url.lower
    - s3.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - copy.deepcopy.get
    - copy.deepcopy
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - value.isoformat
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - value.strftime
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.generate_login_cache_key
    - botocore.credentials.RefreshableCredentials._protected_refresh
    - retries.items
    - hashlib.sha256
    - contextvars.ContextVar.get
    - headers.update
    - client.get_role_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - client.create_o_auth2_token
    - <builtin>.super
    - random.randint
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - typing.NamedTuple.expiration.total_seconds
    - line.startswith
    - botocore.compat.ensure_bytes
    - sign_in_session_name.encode
    - botocore.credentials.RefreshableCredentials._set_from_data
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - io.BytesIO.encode
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.credentials.SSOCredentialFetcher._get_credentials
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.credentials.CachedCredentialFetcher._write_to_cache
    - <builtin>.range
    - botocore.config.Config._record_user_provided_options
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - client.assume_role
    - IPV6_ADDRZ_RE.match
    - botocore.credentials._local_now
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - dateutil.tz.tzlocal
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    - botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f983082cb50>
    argNames:
    - self
    - refresh_using
    - method
    - time_fetcher
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 707
    functionName: botocore.credentials.DeferredRefreshableCredentials.__init__
    functionSourceFile: botocore.credentials
    functionUses: 7
    functionsReached:
    - threading.Lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f982f895c40>
    - <ast.Constant object at 0x7f982f895190>
    argNames:
    - self
    - cache
    - expiry_window_seconds
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 728
    functionName: botocore.credentials.CachedCredentialFetcher.__init__
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - json.dumps
    - botocore.credentials.SSOCredentialFetcher._create_cache_key
    - filename.replace
    - hashlib.sha1
    - args.encode
    - botocore.credentials.CachedCredentialFetcher._create_cache_key
    - hashlib.sha1.hexdigest
    - botocore.credentials.CachedCredentialFetcher._make_file_safe
    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: 738
    functionName: botocore.credentials.CachedCredentialFetcher._create_cache_key
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2280
    functionName: botocore.credentials.SSOCredentialFetcher._create_cache_key
    functionSourceFile: botocore.credentials
    functionUses: 1
    functionsReached:
    - json.dumps
    - filename.replace
    - hashlib.sha1
    - args.encode
    - hashlib.sha1.hexdigest
    - botocore.credentials.CachedCredentialFetcher._make_file_safe
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - filename
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 741
    functionName: botocore.credentials.CachedCredentialFetcher._make_file_safe
    functionSourceFile: botocore.credentials
    functionUses: 3
    functionsReached:
    - filename.replace
    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: filename.replace
    functionSourceFile: <builtin>
    functionUses: 4
    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: 746
    functionName: botocore.credentials.CachedCredentialFetcher._get_credentials
    functionSourceFile: botocore.credentials
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 752
    functionName: botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    functionSourceFile: botocore.credentials
    functionUses: 11
    functionsReached:
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - new_time.strftime
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.context.get_context
    - botocore.utils.ArnParser.parse_arn
    - collections.OrderedDict
    - token_file.read
    - urllib.parse.urlencode
    - botocore.credentials._serialize_if_needed
    - dateutil.parser.parse.total_seconds
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.useragent.register_feature_ids
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - botocore.utils.IMDSFetcher._assert_enabled
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - response.content.decode
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.credentials.CachedCredentialFetcher._get_credentials
    - proxy_manager_kwargs.update
    - delim.join
    - botocore.credentials._build_add_dpop_header_handler
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.CachedCredentialFetcher._load_from_cache
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.ContainerProvider._build_headers
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - config_vars.update
    - datetime.datetime.fromtimestamp
    - os.environ.get
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.credentials.CachedCredentialFetcher.fetch_credentials
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - client.assume_role_with_web_identity
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.config.Config._validate_s3_configuration
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    - http.client.HTTPMessage.__init__
    - botocore.credentials.RefreshableCredentials._refresh
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - dateutil.tz.tzutc
    - copy.copy
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - urllib3.proxy_from_url
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - initial_token_data.get_frozen_token
    - botocore.credentials.LoginCredentialFetcher.refresh_credentials
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - botocore.utils.LoginTokenLoader.save_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - <builtin>.getattr
    - urllib.parse.unquote.startswith
    - creds.get
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - <builtin>.setattr
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - kwargs.items
    - urllib.parse.unquote.split
    - botocore.credentials.Credentials.get_frozen_credentials
    - botocore.credentials.RefreshableCredentials.get_frozen_credentials
    - botocore.config.Config
    - auth_str.encode
    - botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    - datetime_now.replace
    - response.get
    - token.update
    - timestamp.strftime
    - config_vars.items
    - botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    - value.encode
    - botocore.utils.determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.credentials.AssumeRoleCredentialFetcher._create_client
    - botocore.credentials.RefreshableCredentials._is_expired
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.open
    - base64.b64decode
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - data.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.compat.urlparse
    - json.loads
    - botocore.config.Config._validate_retry_configuration
    - botocore.utils.LoginTokenLoader.load_token
    - url.lower
    - s3.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - copy.deepcopy.get
    - botocore.awsrequest.AWSResponse
    - copy.deepcopy
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - value.isoformat
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - value.strftime
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.generate_login_cache_key
    - botocore.credentials.RefreshableCredentials._protected_refresh
    - retries.items
    - hashlib.sha256
    - contextvars.ContextVar.get
    - headers.update
    - client.get_role_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - client.create_o_auth2_token
    - <builtin>.super
    - random.randint
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - typing.NamedTuple.expiration.total_seconds
    - line.startswith
    - botocore.compat.ensure_bytes
    - sign_in_session_name.encode
    - botocore.credentials.RefreshableCredentials._set_from_data
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - io.BytesIO.encode
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.credentials.SSOCredentialFetcher._get_credentials
    - botocore.compat.ensure_unicode
    - botocore.credentials.CachedCredentialFetcher._write_to_cache
    - botocore.config.Config._record_user_provided_options
    - client.assume_role
    - collections.namedtuple
    - <builtin>.range
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - IPV6_ADDRZ_RE.match
    - botocore.credentials._local_now
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - dateutil.tz.tzlocal
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    - botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 777
    functionName: botocore.credentials.CachedCredentialFetcher._load_from_cache
    functionSourceFile: botocore.credentials
    functionUses: 12
    functionsReached:
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - logger.debug
    - typing.NamedTuple.expiration.total_seconds
    - dateutil.parser.parse
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.credentials._local_now
    - <builtin>.isinstance
    - dateutil.parser.parse.total_seconds
    - dateutil.tz.tzlocal
    - copy.deepcopy
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1002
    functionName: botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    functionSourceFile: botocore.credentials
    functionUses: 12
    functionsReached:
    - botocore.context.get_context
    - retries.items
    - botocore.utils.ArnParser.parse_arn
    - contextvars.ContextVar.get
    - botocore.config.Config._validate_s3_configuration
    - <builtin>.list
    - ctx.features.add
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - botocore.useragent.register_feature_ids
    - logger.debug
    - copy.copy
    - botocore.useragent.register_feature_id
    - <builtin>.isinstance
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - urllib.parse.unquote.startswith
    - <builtin>.setattr
    - botocore.config.Config._validate_retry_configuration
    - s3.get
    - kwargs.items
    - urllib.parse.unquote.split
    - copy.deepcopy
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - config_vars.update
    - response.get
    - botocore.config.Config._record_user_provided_options
    - botocore.config.Config.__init__
    - config_vars.items
    - client.assume_role_with_web_identity
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 14
    functionLinenumber: 915
    functionName: botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    functionSourceFile: botocore.credentials
    functionUses: 11
    functionsReached:
    - new_time.strftime
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.context.get_context
    - botocore.utils.ArnParser.parse_arn
    - collections.OrderedDict
    - token_file.read
    - urllib.parse.urlencode
    - botocore.credentials._serialize_if_needed
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - dateutil.parser.parse.total_seconds
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.useragent.register_feature_ids
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - proxy_url.startswith
    - response.content.decode
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.credentials.CachedCredentialFetcher._get_credentials
    - proxy_manager_kwargs.update
    - delim.join
    - botocore.credentials._build_add_dpop_header_handler
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.CachedCredentialFetcher._load_from_cache
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.ContainerProvider._build_headers
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - datetime.datetime.fromtimestamp
    - config_vars.update
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.credentials.CachedCredentialFetcher.fetch_credentials
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - client.assume_role_with_web_identity
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.config.Config._validate_s3_configuration
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    - botocore.credentials.RefreshableCredentials._refresh
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - dateutil.tz.tzutc
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - copy.copy
    - urllib3.proxy_from_url
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - initial_token_data.get_frozen_token
    - botocore.credentials.LoginCredentialFetcher.refresh_credentials
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - botocore.utils.LoginTokenLoader.save_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - <builtin>.getattr
    - urllib.parse.unquote.startswith
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - creds.get
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - <builtin>.setattr
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - kwargs.items
    - urllib.parse.unquote.split
    - botocore.credentials.Credentials.get_frozen_credentials
    - botocore.credentials.RefreshableCredentials.get_frozen_credentials
    - botocore.config.Config
    - auth_str.encode
    - botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    - datetime_now.replace
    - response.get
    - token.update
    - timestamp.strftime
    - botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    - config_vars.items
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.httpsession.get_cert_path
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.credentials.AssumeRoleCredentialFetcher._create_client
    - botocore.credentials.RefreshableCredentials._is_expired
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.open
    - base64.b64decode
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - data.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.compat.urlparse
    - json.loads
    - botocore.utils.LoginTokenLoader.load_token
    - botocore.config.Config._validate_retry_configuration
    - url.lower
    - s3.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - copy.deepcopy.get
    - botocore.awsrequest.AWSResponse
    - copy.deepcopy
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - value.isoformat
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - value.strftime
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.generate_login_cache_key
    - botocore.credentials.RefreshableCredentials._protected_refresh
    - retries.items
    - hashlib.sha256
    - contextvars.ContextVar.get
    - headers.update
    - client.get_role_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - client.create_o_auth2_token
    - <builtin>.super
    - random.randint
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - typing.NamedTuple.expiration.total_seconds
    - line.startswith
    - botocore.compat.ensure_bytes
    - sign_in_session_name.encode
    - botocore.credentials.RefreshableCredentials._set_from_data
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.credentials.SSOCredentialFetcher._get_credentials
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.credentials.CachedCredentialFetcher._write_to_cache
    - client.assume_role
    - <builtin>.range
    - botocore.config.Config._record_user_provided_options
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - IPV6_ADDRZ_RE.match
    - botocore.credentials._local_now
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - dateutil.tz.tzlocal
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    - botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    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: 4
    functionLinenumber: 2308
    functionName: botocore.credentials.SSOCredentialFetcher._get_credentials
    functionSourceFile: botocore.credentials
    functionUses: 12
    functionsReached:
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - botocore.context.get_context
    - retries.items
    - contextvars.ContextVar.get
    - botocore.config.Config._validate_s3_configuration
    - client.get_role_credentials
    - <builtin>.list
    - dateutil.parser.parse.total_seconds
    - ctx.features.add
    - <builtin>.enumerate
    - botocore.useragent.register_feature_ids
    - dateutil.tz.tzutc
    - copy.copy
    - initial_token_data.get_frozen_token
    - botocore.useragent.register_feature_id
    - _USERAGENT_FEATURE_MAPPINGS.get
    - datetime.datetime.now
    - typing.NamedTuple.expiration.total_seconds
    - dateutil.parser.parse
    - <builtin>.setattr
    - botocore.config.Config._validate_retry_configuration
    - s3.get
    - kwargs.items
    - config_vars.update
    - datetime.datetime.fromtimestamp
    - botocore.config.Config._record_user_provided_options
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - timestamp.strftime
    - botocore.credentials._local_now
    - config_vars.items
    - dateutil.tz.tzlocal
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - UnauthorizedSSOTokenError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 788
    functionName: botocore.credentials.CachedCredentialFetcher._write_to_cache
    functionSourceFile: botocore.credentials
    functionUses: 12
    functionsReached:
    - copy.deepcopy
    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: creds.get
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - credentials
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 791
    functionName: botocore.credentials.CachedCredentialFetcher._is_expired
    functionSourceFile: botocore.credentials
    functionUses: 13
    functionsReached:
    - typing.NamedTuple.expiration.total_seconds
    - dateutil.parser.parse
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.credentials._local_now
    - <builtin>.isinstance
    - dateutil.parser.parse.total_seconds
    - dateutil.tz.tzlocal
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9830bb1c10>
    - <ast.Constant object at 0x7f9830bb1400>
    - <ast.Constant object at 0x7f9830bb1b20>
    argNames:
    - self
    - client_creator
    - role_arn
    - extra_args
    - cache
    - expiry_window_seconds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 799
    functionName: botocore.credentials.BaseAssumeRoleCredentialFetcher.__init__
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._generate_assume_role_name
    - time.time
    - <builtin>.int
    - copy.deepcopy.get
    - copy.deepcopy
    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.get
    functionSourceFile: copy
    functionUses: 14
    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: 823
    functionName: botocore.credentials.BaseAssumeRoleCredentialFetcher._generate_assume_role_name
    functionSourceFile: botocore.credentials
    functionUses: 1
    functionsReached:
    - <builtin>.int
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 828
    functionName: botocore.credentials.BaseAssumeRoleCredentialFetcher._create_cache_key
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - json.loads
    - json.dumps
    - filename.replace
    - copy.deepcopy.encode
    - copy.deepcopy
    - hashlib.sha1
    - hashlib.sha1.hexdigest
    - botocore.credentials.CachedCredentialFetcher._make_file_safe
    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.encode
    functionSourceFile: copy
    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: hashlib.sha1.hexdigest
    functionSourceFile: hashlib
    functionUses: 3
    functionsReached: []
    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: 3
    functionLinenumber: 850
    functionName: botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    functionSourceFile: botocore.credentials
    functionUses: 13
    functionsReached:
    - urllib.parse.unquote.startswith
    - logger.debug
    - response.get
    - botocore.utils.ArnParser.parse_arn
    - <builtin>.isinstance
    - urllib.parse.unquote.split
    - <builtin>.len
    - botocore.utils.ArnParser.is_arn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f9830327460>
    - <ast.Constant object at 0x7f9830327040>
    - <ast.Constant object at 0x7f98303270a0>
    - <ast.Constant object at 0x7f9830327ca0>
    argNames:
    - self
    - client_creator
    - source_credentials
    - role_arn
    - extra_args
    - mfa_prompter
    - cache
    - expiry_window_seconds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 861
    functionName: botocore.credentials.AssumeRoleCredentialFetcher.__init__
    functionSourceFile: botocore.credentials
    functionUses: 4
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 924
    functionName: botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    functionSourceFile: botocore.credentials
    functionUses: 12
    functionsReached:
    - copy.deepcopy
    - copy.deepcopy.get
    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: 13
    functionLinenumber: 942
    functionName: botocore.credentials.AssumeRoleCredentialFetcher._create_client
    functionSourceFile: botocore.credentials
    functionUses: 11
    functionsReached:
    - new_time.strftime
    - botocore.credentials.SSOCredentialFetcher._parse_timestamp
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.context.get_context
    - botocore.utils.ArnParser.parse_arn
    - collections.OrderedDict
    - token_file.read
    - urllib.parse.urlencode
    - botocore.credentials._serialize_if_needed
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - dateutil.parser.parse.total_seconds
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.useragent.register_feature_ids
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.CachedCredentialFetcher._is_expired
    - proxy_url.startswith
    - response.content.decode
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.credentials.CachedCredentialFetcher._get_credentials
    - proxy_manager_kwargs.update
    - delim.join
    - botocore.credentials._build_add_dpop_header_handler
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.CachedCredentialFetcher._load_from_cache
    - awscrt.crypto.EC.new_key_from_der_data
    - botocore.credentials.ContainerProvider._build_headers
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - datetime.datetime.fromtimestamp
    - config_vars.update
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.credentials.CachedCredentialFetcher.fetch_credentials
    - botocore.config.Config.__init__
    - botocore.compat.total_seconds
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials.RefreshableCredentials._seconds_remaining
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - client.assume_role_with_web_identity
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - botocore.config.Config._validate_s3_configuration
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials
    - botocore.credentials.RefreshableCredentials._refresh
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - dateutil.tz.tzutc
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - copy.copy
    - urllib3.proxy_from_url
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - initial_token_data.get_frozen_token
    - botocore.credentials.LoginCredentialFetcher.refresh_credentials
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - botocore.utils.LoginTokenLoader.save_token
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.DeferredRefreshableCredentials.refresh_needed
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response
    - <builtin>.getattr
    - urllib.parse.unquote.startswith
    - botocore.credentials.LoginCredentialFetcher._load_private_key
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - creds.get
    - dateutil.parser.parse
    - botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher
    - <builtin>.setattr
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - kwargs.items
    - urllib.parse.unquote.split
    - botocore.credentials.RefreshableCredentials.get_frozen_credentials
    - botocore.credentials.Credentials.get_frozen_credentials
    - botocore.config.Config
    - auth_str.encode
    - botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs
    - datetime_now.replace
    - response.get
    - token.update
    - timestamp.strftime
    - botocore.credentials.CachedCredentialFetcher._get_cached_credentials
    - config_vars.items
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.get_cert_path
    - botocore.credentials.AssumeRoleCredentialFetcher._create_client
    - botocore.credentials.RefreshableCredentials._is_expired
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.open
    - base64.b64decode
    - botocore.utils.ArnParser.is_arn
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - client.meta.events.register
    - e.response.get
    - data.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.credentials.RefreshableCredentials.refresh_needed
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.compat.urlparse
    - json.loads
    - botocore.utils.LoginTokenLoader.load_token
    - botocore.config.Config._validate_retry_configuration
    - url.lower
    - s3.get
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - copy.deepcopy.get
    - copy.deepcopy
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - value.isoformat
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - botocore.utils.S3ExpressIdentityCache._serialize_if_needed
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - value.strftime
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.generate_login_cache_key
    - botocore.credentials.RefreshableCredentials._protected_refresh
    - retries.items
    - hashlib.sha256
    - contextvars.ContextVar.get
    - headers.update
    - client.get_role_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - client.create_o_auth2_token
    - <builtin>.super
    - random.randint
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - typing.NamedTuple.expiration.total_seconds
    - line.startswith
    - botocore.compat.ensure_bytes
    - sign_in_session_name.encode
    - botocore.credentials.RefreshableCredentials._set_from_data
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.credentials.SSOCredentialFetcher._get_credentials
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.credentials.CachedCredentialFetcher._write_to_cache
    - <builtin>.range
    - botocore.config.Config._record_user_provided_options
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - client.assume_role
    - IPV6_ADDRZ_RE.match
    - botocore.credentials._local_now
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - dateutil.tz.tzlocal
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    - botocore.credentials.AssumeRoleCredentialFetcher._get_credentials
    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 0x7f9830afb0a0>
    - <ast.Constant object at 0x7f9830afb8e0>
    - <ast.Constant object at 0x7f9830afbe50>
    argNames:
    - self
    - client_creator
    - web_identity_token_loader
    - role_arn
    - extra_args
    - cache
    - expiry_window_seconds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 956
    functionName: botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher.__init__
    functionSourceFile: botocore.credentials
    functionUses: 2
    functionsReached:
    - <builtin>.super
    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: 1
    functionLinenumber: 1014
    functionName: botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs
    functionSourceFile: botocore.credentials
    functionUses: 13
    functionsReached:
    - copy.deepcopy
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 353
    functionName: botocore.config.Config.__init__
    functionSourceFile: botocore.config
    functionUses: 20
    functionsReached:
    - config_vars.update
    - copy.copy
    - botocore.config.Config._record_user_provided_options
    - retries.items
    - <builtin>.setattr
    - botocore.config.Config._validate_retry_configuration
    - botocore.config.Config._validate_s3_configuration
    - config_vars.items
    - s3.get
    - <builtin>.list
    - kwargs.items
    - <builtin>.len
    - <builtin>.enumerate
    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: client.assume_role_with_web_identity
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f982f985cd0>
    argNames:
    - self
    - session
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1035
    functionName: botocore.credentials.CredentialProvider.__init__
    functionSourceFile: botocore.credentials
    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: 1038
    functionName: botocore.credentials.CredentialProvider.load
    functionSourceFile: botocore.credentials
    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
    - mapping
    - key_names
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1057
    functionName: botocore.credentials.CredentialProvider._extract_creds_from_mapping
    functionSourceFile: botocore.credentials
    functionUses: 3
    functionsReached:
    - found.append
    linkageType: pythonLinkage
    raised:
    - PartialCredentialsError
    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: found.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    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: 4
    functionLinenumber: 1078
    functionName: botocore.credentials.ProcessProvider.load
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - threading.Lock
    - shlex.split
    - botocore.context.get_context
    - contextvars.ContextVar.get
    - botocore.credentials.RefreshableCredentials._normalize
    - math.floor
    - botocore.compat._windows_shell_split
    - ctx.features.add
    - botocore.credentials.Credentials._normalize
    - botocore.credentials.ProcessProvider._retrieve_credentials_using
    - metadata.get
    - creds_dict.get
    - botocore.credentials.ProcessProvider._get_account_id
    - botocore.compat.json.loads
    - botocore.useragent.register_feature_id
    - <builtin>.int
    - botocore.credentials.Credentials.__init__
    - _USERAGENT_FEATURE_MAPPINGS.get
    - components.append
    - parsed.get
    - dateutil.parser.parse
    - stdout.decode
    - buff.append
    - p.communicate
    - botocore.compat.compat_shell_split
    - botocore.credentials.RefreshableCredentials._expiry_datetime
    - collections.namedtuple
    - botocore.compat.ensure_unicode
    - botocore.credentials.RefreshableCredentials.__init__
    - botocore.credentials.RefreshableCredentials.create_from_metadata
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - credential_process
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1101
    functionName: botocore.credentials.ProcessProvider._retrieve_credentials_using
    functionSourceFile: botocore.credentials
    functionUses: 2
    functionsReached:
    - botocore.compat.compat_shell_split
    - shlex.split
    - botocore.credentials.ProcessProvider._get_account_id
    - stdout.decode
    - botocore.compat.json.loads
    - <builtin>.int
    - p.communicate
    - math.floor
    - botocore.compat._windows_shell_split
    - components.append
    - buff.append
    - parsed.get
    linkageType: pythonLinkage
    raised:
    - CredentialRetrievalError
    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: creds_dict.get
    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: 4
    functionLinenumber: -1
    functionName: botocore.credentials.ProcessProvider.load.<lambda1>
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - botocore.compat.compat_shell_split
    - shlex.split
    - botocore.credentials.ProcessProvider._get_account_id
    - stdout.decode
    - botocore.compat.json.loads
    - <builtin>.int
    - p.communicate
    - math.floor
    - botocore.compat._windows_shell_split
    - components.append
    - buff.append
    - parsed.get
    - botocore.credentials.ProcessProvider._retrieve_credentials_using
    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: p.communicate
    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: stdout.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: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: botocore.compat.json.loads
    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
    - parsed
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1150
    functionName: botocore.credentials.ProcessProvider._get_account_id
    functionSourceFile: botocore.credentials
    functionUses: 3
    functionsReached:
    - parsed.get
    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: 1138
    functionName: botocore.credentials.ProcessProvider._credential_process
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached: []
    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: 1142
    functionName: botocore.credentials.ProcessProvider.profile_config
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - botocore.credentials.ProfileProviderBuilder._create_process_provider.<lambda1>
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1162
    functionName: botocore.credentials.InstanceMetadataProvider.load
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - new_time.strftime
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.context.get_context
    - urllib.parse.urlencode
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - metadata.get
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - proxy_manager_kwargs.update
    - delim.join
    - credentials.get
    - url.startswith
    - io.BytesIO.lower
    - botocore.utils.IMDSFetcher._log_imds_response
    - os.environ.get
    - botocore.credentials.RefreshableCredentials._expiry_datetime
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.utils.IMDSFetcher._get_request
    - urllib3.PoolManager.connection_from_url
    - threading.Lock
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.utils.IMDSFetcher._add_user_agent
    - <builtin>.list
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials
    - urllib3.proxy_from_url
    - botocore.utils.InstanceMetadataFetcher._get_credentials
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - _USERAGENT_FEATURE_MAPPINGS.get
    - <builtin>.getattr
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - dateutil.parser.parse
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - logger.info
    - auth_str.encode
    - datetime_now.replace
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.httpsession.get_cert_path
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.utils.InstanceMetadataFetcher._get_iam_role
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - botocore.utils.InstanceMetadataFetcher._evaluate_expiration
    - datetime.datetime.strptime
    - botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - json.loads
    - url.lower
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - botocore.credentials.RefreshableCredentials.__init__
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.ensure_boolean
    - <builtin>.len
    - proxies_kwargs.items
    - botocore.credentials.RefreshableCredentials.create_from_metadata
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - contextvars.ContextVar.get
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - random.randint
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - mapping
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1216
    functionName: botocore.credentials.EnvProvider._build_mapping
    functionSourceFile: botocore.credentials
    functionUses: 44
    functionsReached:
    - mapping.get
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1244
    functionName: botocore.credentials.EnvProvider.load
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - os.environ.get
    - threading.Lock
    - botocore.credentials.EnvProvider._create_credentials_fetcher
    - dateutil.parser.parse
    - collections.namedtuple
    - botocore.compat.ensure_unicode
    - botocore.context.get_context
    - botocore.useragent.register_feature_id
    - contextvars.ContextVar.get
    - botocore.credentials.RefreshableCredentials.__init__
    - logger.info
    - botocore.credentials.Credentials.__init__
    - botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials
    - botocore.credentials.RefreshableCredentials._normalize
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    - botocore.credentials.Credentials._normalize
    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: 1280
    functionName: botocore.credentials.EnvProvider._create_credentials_fetcher
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    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: 3
    functionLinenumber: 1344
    functionName: botocore.credentials.OriginalEC2Provider.load
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - botocore.utils.parse_key_val_file_contents
    - botocore.compat.ensure_unicode
    - contents.splitlines
    - val.strip
    - botocore.utils.parse_key_val_file
    - logger.info
    - botocore.credentials.Credentials.__init__
    - botocore.credentials.RefreshableCredentials._normalize
    - line.split
    - os.path.expanduser
    - key.strip
    - botocore.credentials.Credentials._normalize
    - f.read
    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: 3
    functionLinenumber: 1384
    functionName: botocore.credentials.SharedCredentialProvider.load
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - botocore.credentials.SharedCredentialProvider._get_account_id
    - config.get
    - botocore.compat.ensure_unicode
    - botocore.context.get_context
    - botocore.credentials.CredentialProvider._extract_creds_from_mapping
    - found.append
    - botocore.useragent.register_feature_id
    - contextvars.ContextVar.get
    - logger.info
    - botocore.credentials.Credentials.__init__
    - botocore.credentials.SharedCredentialProvider._get_session_token
    - botocore.credentials.RefreshableCredentials._normalize
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    - botocore.credentials.Credentials._normalize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1410
    functionName: botocore.credentials.SharedCredentialProvider._get_session_token
    functionSourceFile: ''
    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
    - config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1415
    functionName: botocore.credentials.SharedCredentialProvider._get_account_id
    functionSourceFile: botocore.credentials
    functionUses: 1
    functionsReached:
    - config.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1448
    functionName: botocore.credentials.ConfigProvider.load
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - botocore.credentials.ConfigProvider._get_account_id
    - config.get
    - botocore.compat.ensure_unicode
    - botocore.credentials.ConfigProvider._get_session_token
    - botocore.context.get_context
    - botocore.credentials.CredentialProvider._extract_creds_from_mapping
    - found.append
    - botocore.useragent.register_feature_id
    - contextvars.ContextVar.get
    - logger.info
    - botocore.credentials.Credentials.__init__
    - botocore.credentials.RefreshableCredentials._normalize
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    - botocore.credentials.Credentials._normalize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile_config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1480
    functionName: botocore.credentials.ConfigProvider._get_session_token
    functionSourceFile: ''
    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
    - config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1485
    functionName: botocore.credentials.ConfigProvider._get_account_id
    functionSourceFile: botocore.credentials
    functionUses: 1
    functionsReached:
    - config.get
    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: 3
    functionLinenumber: 1506
    functionName: botocore.credentials.BotoProvider.load
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - botocore.compat.ensure_unicode
    - botocore.context.get_context
    - botocore.credentials.CredentialProvider._extract_creds_from_mapping
    - found.append
    - botocore.useragent.register_feature_id
    - contextvars.ContextVar.get
    - logger.info
    - botocore.credentials.Credentials.__init__
    - botocore.credentials.RefreshableCredentials._normalize
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    - botocore.credentials.Credentials._normalize
    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: 8
    functionLinenumber: 1618
    functionName: botocore.credentials.AssumeRoleProvider.load
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - threading.Lock
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.AssumeRoleProvider._get_role_config
    - botocore.context.get_context
    - botocore.credentials.CredentialResolver.load_credentials
    - botocore.credentials.AssumeRoleProvider._resolve_static_credentials_from_profile
    - contextvars.ContextVar.get
    - botocore.tokens.SSOTokenProvider.__init__
    - <builtin>.any
    - profiles.get
    - botocore.credentials.RefreshableCredentials._normalize
    - ctx.features.add
    - os.path.expanduser
    - botocore.credentials.AssumeRoleProvider._validate_source_profile
    - botocore.credentials.Credentials._normalize
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_canonical_name
    - botocore.useragent.register_feature_ids
    - botocore.credentials.AssumeRoleProvider._resolve_credentials_from_source
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - name.lower
    - role_config.get
    - canonical_name.lower
    - botocore.useragent.register_feature_id
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - <builtin>.int
    - os.path.join
    - botocore.credentials.Credentials.__init__
    - <builtin>.isinstance
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.credentials.AssumeRoleProvider._resolve_source_credentials
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.credentials.AssumeRoleProvider._load_creds_via_assume_role
    - botocore.credentials.SharedCredentialProvider.__init__
    - <builtin>.set
    - botocore.credentials.AssumeRoleCredentialFetcher.__init__
    - profile.get
    - botocore.credentials.AssumeRoleProvider._validate_credential_source
    - botocore.utils.get_login_token_cache_directory
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.credentials.AssumeRoleProvider._has_assume_role_config_vars
    - source.load
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.AssumeRoleProvider._has_static_credentials
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - os.path.expandvars
    - botocore.credentials.DeferredRefreshableCredentials.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_method
    - botocore.credentials.AssumeRoleProvider._resolve_credentials_from_profile
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - botocore.credentials.SSOProvider.__init__
    - provider.load
    - botocore.credentials.create_credential_resolver.<lambda1>
    - botocore.credentials.CanonicalNameCredentialSourcer.is_supported
    - botocore.compat.ensure_unicode
    - botocore.credentials.CanonicalNameCredentialSourcer.source_credentials
    - botocore.utils.JSONFileCache.__init__
    - botocore.credentials.ConfigProvider.__init__
    - botocore.credentials.create_mfa_serial_refresher
    - botocore.credentials.CredentialResolver.__init__
    - botocore.credentials.ProcessProvider.__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: profiles.get
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1625
    functionName: botocore.credentials.AssumeRoleProvider._has_assume_role_config_vars
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1636
    functionName: botocore.credentials.AssumeRoleProvider._load_creds_via_assume_role
    functionSourceFile: botocore.credentials
    functionUses: 3
    functionsReached:
    - botocore.credentials.ProcessProvider.__init__
    - threading.Lock
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.AssumeRoleProvider._get_role_config
    - botocore.context.get_context
    - botocore.credentials.CredentialResolver.load_credentials
    - botocore.credentials.AssumeRoleProvider._resolve_static_credentials_from_profile
    - contextvars.ContextVar.get
    - botocore.tokens.SSOTokenProvider.__init__
    - <builtin>.any
    - botocore.credentials.RefreshableCredentials._normalize
    - ctx.features.add
    - os.path.expanduser
    - botocore.credentials.AssumeRoleProvider._validate_source_profile
    - botocore.credentials.Credentials._normalize
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_canonical_name
    - botocore.useragent.register_feature_ids
    - botocore.credentials.AssumeRoleProvider._resolve_credentials_from_source
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider
    - name.lower
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - role_config.get
    - botocore.useragent.register_feature_id
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - <builtin>.int
    - <builtin>.isinstance
    - os.path.join
    - botocore.credentials.Credentials.__init__
    - _USERAGENT_FEATURE_MAPPINGS.get
    - <builtin>.super
    - botocore.credentials.AssumeRoleProvider._resolve_source_credentials
    - botocore.credentials._get_client_creator
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.credentials.AssumeRoleProvider._load_creds_via_assume_role
    - <builtin>.set
    - botocore.credentials.AssumeRoleCredentialFetcher.__init__
    - profile.get
    - botocore.credentials.AssumeRoleProvider._validate_credential_source
    - botocore.utils.get_login_token_cache_directory
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - source.load
    - botocore.credentials.AssumeRoleProvider._has_assume_role_config_vars
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.AssumeRoleProvider._has_static_credentials
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - os.path.expandvars
    - botocore.credentials.DeferredRefreshableCredentials.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_method
    - botocore.credentials.AssumeRoleProvider._resolve_credentials_from_profile
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - botocore.credentials.SSOProvider.__init__
    - provider.load
    - botocore.credentials.CanonicalNameCredentialSourcer.is_supported
    - botocore.credentials.CanonicalNameCredentialSourcer.source_credentials
    - botocore.compat.ensure_unicode
    - botocore.utils.JSONFileCache.__init__
    - botocore.credentials.ConfigProvider.__init__
    - botocore.credentials.create_mfa_serial_refresher
    - botocore.credentials.CredentialResolver.__init__
    - canonical_name.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1683
    functionName: botocore.credentials.AssumeRoleProvider._get_role_config
    functionSourceFile: botocore.credentials
    functionUses: 4
    functionsReached:
    - profile.get
    - botocore.credentials.CanonicalNameCredentialSourcer.is_supported
    - botocore.credentials.AssumeRoleProvider._validate_credential_source
    - botocore.credentials.AssumeRoleProvider._has_static_credentials
    - <builtin>.int
    - <builtin>.any
    - botocore.credentials.AssumeRoleProvider._validate_source_profile
    linkageType: pythonLinkage
    raised:
    - PartialCredentialsError
    - InvalidConfigError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - role_config
    - profile_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1799
    functionName: botocore.credentials.AssumeRoleProvider._resolve_source_credentials
    functionSourceFile: botocore.credentials
    functionUses: 3
    functionsReached:
    - threading.Lock
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.AssumeRoleProvider._get_role_config
    - botocore.credentials.CredentialResolver.load_credentials
    - botocore.context.get_context
    - botocore.credentials.AssumeRoleProvider._resolve_static_credentials_from_profile
    - botocore.tokens.SSOTokenProvider.__init__
    - contextvars.ContextVar.get
    - <builtin>.any
    - botocore.credentials.RefreshableCredentials._normalize
    - ctx.features.add
    - os.path.expanduser
    - botocore.credentials.AssumeRoleProvider._validate_source_profile
    - botocore.credentials.Credentials._normalize
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_canonical_name
    - botocore.useragent.register_feature_ids
    - botocore.credentials.AssumeRoleProvider._resolve_credentials_from_source
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - name.lower
    - role_config.get
    - canonical_name.lower
    - botocore.useragent.register_feature_id
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - os.path.join
    - <builtin>.int
    - botocore.credentials.Credentials.__init__
    - <builtin>.isinstance
    - _USERAGENT_FEATURE_MAPPINGS.get
    - <builtin>.super
    - botocore.credentials.AssumeRoleProvider._resolve_source_credentials
    - botocore.credentials._get_client_creator
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.credentials.AssumeRoleProvider._load_creds_via_assume_role
    - <builtin>.set
    - botocore.credentials.AssumeRoleCredentialFetcher.__init__
    - profile.get
    - botocore.credentials.AssumeRoleProvider._validate_credential_source
    - botocore.utils.get_login_token_cache_directory
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.credentials.AssumeRoleProvider._has_assume_role_config_vars
    - source.load
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.AssumeRoleProvider._has_static_credentials
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - os.path.expandvars
    - botocore.credentials.DeferredRefreshableCredentials.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_method
    - botocore.credentials.AssumeRoleProvider._resolve_credentials_from_profile
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - botocore.credentials.SSOProvider.__init__
    - provider.load
    - botocore.credentials.CanonicalNameCredentialSourcer.is_supported
    - botocore.credentials.CanonicalNameCredentialSourcer.source_credentials
    - botocore.compat.ensure_unicode
    - botocore.utils.JSONFileCache.__init__
    - botocore.credentials.ConfigProvider.__init__
    - botocore.credentials.create_mfa_serial_refresher
    - botocore.credentials.CredentialResolver.__init__
    - botocore.credentials.ProcessProvider.__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: role_config.get
    functionSourceFile: <builtin>
    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: profile.get
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parent_profile
    - credential_source
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1732
    functionName: botocore.credentials.AssumeRoleProvider._validate_credential_source
    functionSourceFile: botocore.credentials
    functionUses: 5
    functionsReached:
    - botocore.credentials.CanonicalNameCredentialSourcer.is_supported
    linkageType: pythonLinkage
    raised:
    - InvalidConfigError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parent_profile_name
    - source_profile_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1757
    functionName: botocore.credentials.AssumeRoleProvider._validate_source_profile
    functionSourceFile: botocore.credentials
    functionUses: 5
    functionsReached:
    - botocore.credentials.AssumeRoleProvider._has_static_credentials
    - <builtin>.any
    linkageType: pythonLinkage
    raised:
    - InfiniteLoopConfigError
    - InvalidConfigError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - source_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1984
    functionName: botocore.credentials.CanonicalNameCredentialSourcer.is_supported
    functionSourceFile: ''
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1749
    functionName: botocore.credentials.AssumeRoleProvider._source_profile_has_credentials
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1795
    functionName: botocore.credentials.AssumeRoleProvider._has_static_credentials
    functionSourceFile: botocore.credentials
    functionUses: 6
    functionsReached:
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - credential_source
    - profile_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1857
    functionName: botocore.credentials.AssumeRoleProvider._resolve_credentials_from_source
    functionSourceFile: botocore.credentials
    functionUses: 4
    functionsReached:
    - logger.debug
    - provider.load
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider
    - botocore.credentials.CanonicalNameCredentialSourcer.source_credentials
    - name.lower
    - botocore.credentials.CredentialResolver.load_credentials
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_method
    - source.load
    - <builtin>.isinstance
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_canonical_name
    - botocore.credentials.CredentialResolver.__init__
    - canonical_name.lower
    linkageType: pythonLinkage
    raised:
    - CredentialRetrievalError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1812
    functionName: botocore.credentials.AssumeRoleProvider._resolve_credentials_from_profile
    functionSourceFile: botocore.credentials
    functionUses: 3
    functionsReached:
    - threading.Lock
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.AssumeRoleProvider._get_role_config
    - botocore.credentials.CredentialResolver.load_credentials
    - botocore.context.get_context
    - botocore.credentials.AssumeRoleProvider._resolve_static_credentials_from_profile
    - botocore.tokens.SSOTokenProvider.__init__
    - contextvars.ContextVar.get
    - <builtin>.any
    - botocore.credentials.RefreshableCredentials._normalize
    - ctx.features.add
    - os.path.expanduser
    - botocore.credentials.AssumeRoleProvider._validate_source_profile
    - botocore.credentials.Credentials._normalize
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_canonical_name
    - botocore.useragent.register_feature_ids
    - botocore.credentials.AssumeRoleProvider._resolve_credentials_from_source
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - name.lower
    - role_config.get
    - canonical_name.lower
    - botocore.useragent.register_feature_id
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - os.path.join
    - <builtin>.int
    - botocore.credentials.Credentials.__init__
    - <builtin>.isinstance
    - _USERAGENT_FEATURE_MAPPINGS.get
    - <builtin>.super
    - botocore.credentials.AssumeRoleProvider._resolve_source_credentials
    - botocore.credentials._get_client_creator
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.credentials.AssumeRoleProvider._load_creds_via_assume_role
    - <builtin>.set
    - botocore.credentials.AssumeRoleCredentialFetcher.__init__
    - profile.get
    - botocore.credentials.AssumeRoleProvider._validate_credential_source
    - botocore.utils.get_login_token_cache_directory
    - botocore.credentials.create_mfa_serial_refresher._Refresher.__init__
    - botocore.credentials.AssumeRoleProvider._has_assume_role_config_vars
    - source.load
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.AssumeRoleProvider._has_static_credentials
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - os.path.expandvars
    - botocore.credentials.DeferredRefreshableCredentials.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_method
    - botocore.credentials.AssumeRoleProvider._resolve_credentials_from_profile
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - botocore.credentials.SSOProvider.__init__
    - provider.load
    - botocore.credentials.CanonicalNameCredentialSourcer.is_supported
    - botocore.credentials.CanonicalNameCredentialSourcer.source_credentials
    - botocore.compat.ensure_unicode
    - botocore.utils.JSONFileCache.__init__
    - botocore.credentials.ConfigProvider.__init__
    - botocore.credentials.create_mfa_serial_refresher
    - botocore.credentials.CredentialResolver.__init__
    - botocore.credentials.ProcessProvider.__init__
    linkageType: pythonLinkage
    raised:
    - InvalidConfigError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - profile
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1845
    functionName: botocore.credentials.AssumeRoleProvider._resolve_static_credentials_from_profile
    functionSourceFile: botocore.credentials
    functionUses: 4
    functionsReached:
    - profile.get
    - botocore.compat.ensure_unicode
    - botocore.credentials.Credentials.__init__
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.credentials.Credentials._normalize
    linkageType: pythonLinkage
    raised:
    - PartialCredentialsError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - source_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1997
    functionName: botocore.credentials.CanonicalNameCredentialSourcer.source_credentials
    functionSourceFile: botocore.credentials
    functionUses: 5
    functionsReached:
    - logger.debug
    - provider.load
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider
    - name.lower
    - botocore.credentials.CredentialResolver.load_credentials
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_method
    - source.load
    - <builtin>.isinstance
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_canonical_name
    - botocore.credentials.CredentialResolver.__init__
    - canonical_name.lower
    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: 5
    functionLinenumber: 1908
    functionName: botocore.credentials.AssumeRoleWithWebIdentityProvider.load
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - loaded_config.get
    - threading.Lock
    - <builtin>.super
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider.<lambda1>
    - botocore.context.get_context
    - botocore.credentials.AssumeRoleWithWebIdentityProvider._get_profile_config
    - botocore.useragent.register_feature_id
    - contextvars.ContextVar.get
    - ctx.features.add
    - botocore.credentials.AssumeRoleWithWebIdentityProvider._get_env_config
    - profiles.get
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.useragent.register_feature_ids
    - botocore.credentials.AssumeRoleWithWebIdentityProvider._assume_role_with_web_identity
    - botocore.credentials.DeferredRefreshableCredentials.__init__
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher.__init__
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.credentials.AssumeRoleWithWebIdentityProvider._get_config
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1939
    functionName: botocore.credentials.AssumeRoleWithWebIdentityProvider._assume_role_with_web_identity
    functionSourceFile: botocore.credentials
    functionUses: 1
    functionsReached:
    - botocore.credentials.AssumeRoleWithWebIdentityProvider._get_config
    - loaded_config.get
    - threading.Lock
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider.<lambda1>
    - botocore.context.get_context
    - botocore.credentials.AssumeRoleWithWebIdentityProvider._get_profile_config
    - botocore.useragent.register_feature_id
    - contextvars.ContextVar.get
    - botocore.credentials.AssumeRoleWithWebIdentityProvider._get_env_config
    - profiles.get
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    - <builtin>.super
    - botocore.credentials.DeferredRefreshableCredentials.__init__
    - botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher.__init__
    - botocore.utils.FileWebIdentityTokenLoader.__init__
    - botocore.useragent.register_feature_ids
    linkageType: pythonLinkage
    raised:
    - InvalidConfigError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1911
    functionName: botocore.credentials.AssumeRoleWithWebIdentityProvider._get_profile_config
    functionSourceFile: botocore.credentials
    functionUses: 3
    functionsReached:
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider.<lambda1>
    - loaded_config.get
    - profiles.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: loaded_config.get
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1918
    functionName: botocore.credentials.AssumeRoleWithWebIdentityProvider._get_env_config
    functionSourceFile: botocore.credentials
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1926
    functionName: botocore.credentials.AssumeRoleWithWebIdentityProvider._get_config
    functionSourceFile: botocore.credentials
    functionUses: 2
    functionsReached:
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider.<lambda1>
    - botocore.credentials.AssumeRoleWithWebIdentityProvider._get_profile_config
    - profiles.get
    - botocore.credentials.AssumeRoleWithWebIdentityProvider._get_env_config
    - loaded_config.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - canonical_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2011
    functionName: botocore.credentials.CanonicalNameCredentialSourcer._get_provider
    functionSourceFile: botocore.credentials
    functionUses: 6
    functionsReached:
    - name.lower
    - canonical_name.lower
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_canonical_name
    - botocore.credentials.CredentialResolver.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_method
    linkageType: pythonLinkage
    raised:
    - UnknownCredentialError
    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: source.load
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - canonical_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2049
    functionName: botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_canonical_name
    functionSourceFile: botocore.credentials
    functionUses: 7
    functionsReached:
    - name.lower
    - canonical_name.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: canonical_name.lower
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - method
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2061
    functionName: botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_method
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    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: 13
    functionLinenumber: 2084
    functionName: botocore.credentials.ContainerProvider.load
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.context.get_context
    - token_file.read
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - proxy_url.startswith
    - response.content.decode
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - proxy_manager_kwargs.update
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.ContainerProvider._build_headers
    - url.startswith
    - io.BytesIO.lower
    - os.environ.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - botocore.credentials.ContainerProvider._retrieve_or_fail
    - urllib3.PoolManager.connection_from_url
    - threading.Lock
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - _USERAGENT_FEATURE_MAPPINGS.get
    - <builtin>.getattr
    - creds.get
    - botocore.credentials.ContainerProvider._create_fetcher
    - dateutil.parser.parse
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - val.lower
    - auth_str.encode
    - response.get
    - botocore.utils.ContainerMetadataFetcher.full_url
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.httpsession.get_cert_path
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - <builtin>.hasattr
    - <builtin>.open
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - urllib3.util.ssl_.is_ipaddress
    - botocore.compat.urlparse
    - json.loads
    - url.lower
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - botocore.credentials.ContainerProvider._provided_relative_uri
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.credentials.RefreshableCredentials.__init__
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.ensure_boolean
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - contextvars.ContextVar.get
    - headers.update
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - certifi.where
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - 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: 12
    functionLinenumber: 2090
    functionName: botocore.credentials.ContainerProvider._retrieve_or_fail
    functionSourceFile: botocore.credentials
    functionUses: 1
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.context.get_context
    - token_file.read
    - botocore.utils.ContainerMetadataFetcher.retrieve_full_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - proxy_url.startswith
    - response.content.decode
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - proxy_manager_kwargs.update
    - botocore.utils.ContainerMetadataFetcher._retrieve_credentials
    - botocore.credentials.ContainerProvider._build_headers
    - url.startswith
    - io.BytesIO.lower
    - os.environ.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.credentials._parse_if_needed
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - urllib3.PoolManager.connection_from_url
    - threading.Lock
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - request.prepare
    - ctx.features.add
    - http.client.HTTPMessage.__init__
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - botocore.useragent.register_feature_id
    - urllib.parse.unquote
    - _USERAGENT_FEATURE_MAPPINGS.get
    - <builtin>.getattr
    - creds.get
    - botocore.credentials.ContainerProvider._create_fetcher
    - dateutil.parser.parse
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - val.lower
    - auth_str.encode
    - response.get
    - botocore.utils.ContainerMetadataFetcher.full_url
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.httpsession.get_cert_path
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - ipaddress.ip_address
    - <builtin>.hasattr
    - <builtin>.open
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - botocore.utils.ContainerMetadataFetcher._validate_allowed_url
    - urllib3.util.ssl_.is_ipaddress
    - botocore.compat.urlparse
    - json.loads
    - url.lower
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - botocore.credentials.ContainerProvider._provided_relative_uri
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.credentials.RefreshableCredentials.__init__
    - botocore.credentials.ContainerProvider._create_fetcher.fetch_creds
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.ensure_boolean
    - proxies_kwargs.items
    - botocore.credentials.ContainerProvider._validate_auth_token
    - base64.b64encode
    - botocore.utils.ContainerMetadataFetcher._is_loopback_address
    - contextvars.ContextVar.get
    - headers.update
    - botocore.credentials.RefreshableCredentials._normalize
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - botocore.utils.ContainerMetadataFetcher._get_response
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - certifi.where
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    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: 2148
    functionName: botocore.credentials.ContainerProvider._provided_relative_uri
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - full_uri
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2123
    functionName: botocore.credentials.ContainerProvider._create_fetcher
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2107
    functionName: botocore.credentials.ContainerProvider._build_headers
    functionSourceFile: botocore.credentials
    functionUses: 15
    functionsReached:
    - token_file.read
    - <builtin>.open
    - botocore.credentials.ContainerProvider._validate_auth_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - auth_token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2119
    functionName: botocore.credentials.ContainerProvider._validate_auth_token
    functionSourceFile: ''
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - credential_provider
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2161
    functionName: botocore.credentials.CredentialResolver.insert_before
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - UnknownCredentialError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - credential_provider
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2181
    functionName: botocore.credentials.CredentialResolver.insert_after
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - botocore.credentials.CredentialResolver._get_provider_offset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2225
    functionName: botocore.credentials.CredentialResolver._get_provider_offset
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - UnknownCredentialError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2198
    functionName: botocore.credentials.CredentialResolver.remove
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - available_methods.index
    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: available_methods.index
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2213
    functionName: botocore.credentials.CredentialResolver.get_provider
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - botocore.credentials.CredentialResolver._get_provider_offset
    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: provider.load
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7f982c2b8460>
    - <ast.Constant object at 0x7f982c2b8490>
    - <ast.Constant object at 0x7f982c2b84c0>
    - <ast.Constant object at 0x7f982c2b84f0>
    - <ast.Constant object at 0x7f982c2b8520>
    - <ast.Name object at 0x7f982c2b8550>
    argNames:
    - self
    - start_url
    - sso_region
    - role_name
    - account_id
    - client_creator
    - token_loader
    - cache
    - expiry_window_seconds
    - token_provider
    - sso_session_name
    - time_fetcher
    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: 1
    functionLinenumber: 2255
    functionName: botocore.credentials.SSOCredentialFetcher.__init__
    functionSourceFile: botocore.credentials
    functionUses: 1
    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: 0
    functionLinenumber: -1
    functionName: args.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: 2
    argDefaultValues: []
    argNames:
    - self
    - timestamp_ms
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2302
    functionName: botocore.credentials.SSOCredentialFetcher._parse_timestamp
    functionSourceFile: botocore.credentials
    functionUses: 13
    functionsReached:
    - timestamp.strftime
    - datetime.datetime.fromtimestamp
    - dateutil.tz.tzutc
    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: timestamp.strftime
    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: initial_token_data.get_frozen_token
    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: client.get_role_credentials
    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: 1
    functionLinenumber: -1
    functionName: botocore.credentials.SSOProvider
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - os.path.expanduser
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2394
    functionName: botocore.credentials.SSOProvider._load_sso_config
    functionSourceFile: botocore.credentials
    functionUses: 1
    functionsReached:
    - profile_config.get
    - <builtin>.all
    - config.get
    - session.items
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider.<lambda1>
    - botocore.credentials.SSOProvider._resolve_sso_session_reference
    - profile_config.copy
    - missing_config_vars.append
    - profiles.get
    - loaded_config.get
    linkageType: pythonLinkage
    raised:
    - InvalidConfigError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - profile_config
    - sso_sessions
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2430
    functionName: botocore.credentials.SSOProvider._resolve_sso_session_reference
    functionSourceFile: botocore.credentials
    functionUses: 2
    functionsReached:
    - profile_config.get
    - config.get
    - profile_config.copy
    - session.items
    linkageType: pythonLinkage
    raised:
    - InvalidConfigError
    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: missing_config_vars.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: profile_config.get
    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: profile_config.copy
    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: session.items
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 2453
    functionName: botocore.credentials.SSOProvider.load
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - profile_config.get
    - threading.Lock
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.context.get_context
    - profile_config.copy
    - contextvars.ContextVar.get
    - missing_config_vars.append
    - profiles.get
    - ctx.features.add
    - botocore.useragent.register_feature_ids
    - <builtin>.all
    - botocore.credentials.SSOCredentialFetcher.__init__
    - botocore.useragent.register_feature_id
    - botocore.credentials.SSOProvider._load_sso_config
    - _USERAGENT_FEATURE_MAPPINGS.get
    - <builtin>.super
    - config.get
    - session.items
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider.<lambda1>
    - botocore.credentials.SSOProvider._resolve_sso_session_reference
    - loaded_config.get
    - botocore.credentials.DeferredRefreshableCredentials.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2490
    functionName: botocore.credentials._base64_url_encode_no_padding
    functionSourceFile: botocore.credentials
    functionUses: 2
    functionsReached:
    - 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: base64.urlsafe_b64encode
    functionSourceFile: base64
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f982efd6e50>
    - <ast.Constant object at 0x7f982efd6e80>
    argNames:
    - private_key
    - uri
    - uid
    - ts
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 2494
    functionName: botocore.credentials._build_dpop_header
    functionSourceFile: botocore.credentials
    functionUses: 1
    functionsReached:
    - private_key.sign
    - hashlib.sha256.digest
    - awscrt.crypto.EC.decode_der_signature_to_padded_pair
    - uuid.uuid4
    - private_key.get_public_coords
    - json.dumps
    - time.time
    - hashlib.sha256
    - <builtin>.int
    - base64.urlsafe_b64encode
    - botocore.credentials._base64_url_encode_no_padding
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - MissingDependencyException
    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: private_key.get_public_coords
    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: uuid.uuid4
    functionSourceFile: uuid
    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: private_key.sign
    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: awscrt.crypto.EC.decode_der_signature_to_padded_pair
    functionSourceFile: awscrt
    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:
    - private_key
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2538
    functionName: botocore.credentials._build_add_dpop_header_handler
    functionSourceFile: botocore.credentials
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - kwargs
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 2541
    functionName: botocore.credentials._build_add_dpop_header_handler._add_dpop_header_handler
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - private_key.sign
    - hashlib.sha256.digest
    - awscrt.crypto.EC.decode_der_signature_to_padded_pair
    - uuid.uuid4
    - private_key.get_public_coords
    - json.dumps
    - <builtin>.str
    - time.time
    - hashlib.sha256
    - <builtin>.int
    - base64.urlsafe_b64encode
    - botocore.credentials._base64_url_encode_no_padding
    - botocore.credentials._build_dpop_header
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Name object at 0x7f982ce01340>
    - <ast.Constant object at 0x7f982ce01370>
    argNames:
    - self
    - session_name
    - token_loader
    - client_creator
    - time_fetcher
    - feature_ids
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2563
    functionName: botocore.credentials.LoginCredentialFetcher.__init__
    functionSourceFile: botocore.credentials
    functionUses: 1
    functionsReached:
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 2579
    functionName: botocore.credentials.LoginCredentialFetcher.load_cached_credentials
    functionSourceFile: botocore.credentials
    functionUses: 1
    functionsReached:
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - botocore.utils.generate_login_cache_key
    - hashlib.sha256
    - botocore.utils.LoginTokenLoader.load_token
    - sign_in_session_name.encode
    linkageType: pythonLinkage
    raised:
    - LoginTokenLoadError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - token
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2685
    functionName: botocore.credentials.LoginCredentialFetcher._token_to_credentials
    functionSourceFile: ''
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - token
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 2695
    functionName: botocore.credentials.LoginCredentialFetcher._load_private_key
    functionSourceFile: botocore.credentials
    functionUses: 13
    functionsReached:
    - line.startswith
    - awscrt.crypto.EC.new_key_from_der_data
    - base64.b64decode
    linkageType: pythonLinkage
    raised:
    - LoginTokenLoadError
    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: botocore.config.Config
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached:
    - collections.OrderedDict
    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: client.meta.events.register
    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: client.create_o_auth2_token
    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: e.response.get
    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: token.update
    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: line.startswith
    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: awscrt.crypto.EC.new_key_from_der_data
    functionSourceFile: awscrt
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 2741
    functionName: botocore.credentials.LoginProvider.load
    functionSourceFile: botocore.credentials
    functionUses: 0
    functionsReached:
    - botocore.credentials.LoginCredentialFetcher._token_to_credentials
    - threading.Lock
    - botocore.utils.generate_login_cache_key
    - botocore.context.get_context
    - hashlib.sha256
    - contextvars.ContextVar.get
    - profiles.get
    - botocore.credentials.RefreshableCredentials._normalize
    - ctx.features.add
    - botocore.credentials.LoginCredentialFetcher.__init__
    - botocore.useragent.register_feature_ids
    - botocore.useragent.register_feature_id
    - <builtin>.isinstance
    - botocore.credentials.LoginCredentialFetcher.load_cached_credentials
    - _USERAGENT_FEATURE_MAPPINGS.get
    - <builtin>.set
    - dateutil.parser.parse
    - botocore.utils.LoginTokenLoader.load_token
    - sign_in_session_name.encode
    - botocore.utils.LoginTokenLoader.__init__
    - loaded_config.get
    - botocore.compat.ensure_unicode
    - collections.namedtuple
    - botocore.credentials._parse_if_needed
    - botocore.credentials.RefreshableCredentials.__init__
    - botocore.credentials.ProfileProviderBuilder._create_login_provider.<lambda1>
    linkageType: pythonLinkage
    raised:
    - MissingDependencyException
    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: botocore.tokens
    functionSourceFile: botocore.tokens
    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: 1
    functionLinenumber: 42
    functionName: botocore.tokens._utc_now
    functionSourceFile: botocore.tokens
    functionUses: 8
    functionsReached:
    - datetime.datetime.now
    - dateutil.tz.tzutc
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - session
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 46
    functionName: botocore.tokens.create_token_resolver
    functionSourceFile: botocore.tokens
    functionUses: 44
    functionsReached:
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.utils.JSONFileCache.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830bb1640>
    argNames:
    - self
    - session
    - environ
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 348
    functionName: botocore.tokens.ScopedEnvTokenProvider.__init__
    functionSourceFile: ''
    functionUses: 45
    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 0x7f9830d92130>
    argNames:
    - self
    - providers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 167
    functionName: botocore.tokens.TokenProviderChain.__init__
    functionSourceFile: ''
    functionUses: 45
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - obj
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: botocore.tokens._serialize_utc_timestamp
    functionSourceFile: botocore.tokens
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - obj.strftime
    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: obj.strftime
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f98309b83a0>
    argNames:
    - self
    - method
    - refresh_using
    - time_fetcher
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 78
    functionName: botocore.tokens.DeferredRefreshableToken.__init__
    functionSourceFile: botocore.tokens
    functionUses: 1
    functionsReached:
    - threading.Lock
    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: 6
    functionLinenumber: 88
    functionName: botocore.tokens.DeferredRefreshableToken.get_frozen_token
    functionSourceFile: botocore.tokens
    functionUses: 0
    functionsReached:
    - botocore.utils.SSOTokenLoader.save_token
    - botocore.utils.SSOTokenLoader.__init__
    - dateutil.parser.parse.total_seconds
    - hashlib.sha1
    - botocore.tokens.SSOTokenProvider._refresher
    - datetime.timedelta
    - logger.debug
    - dateutil.tz.tzutc
    - logger.warning
    - botocore.tokens.SSOTokenProvider._refresh_access_token
    - datetime.datetime.now
    - input_str.encode
    - typing.NamedTuple.expiration.total_seconds
    - dateutil.parser.parse
    - botocore.tokens.SSOTokenProvider._attempt_create_token
    - botocore.utils.SSOTokenLoader._generate_cache_key
    - botocore.tokens.DeferredRefreshableToken._refresh
    - logger.info
    - botocore.tokens.DeferredRefreshableToken._protected_refresh
    - botocore.tokens.DeferredRefreshableToken._is_expired
    - botocore.tokens.DeferredRefreshableToken._should_refresh
    - botocore.compat.total_seconds
    - typing.NamedTuple.__init__
    - botocore.tokens._utc_now
    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: 5
    functionLinenumber: 92
    functionName: botocore.tokens.DeferredRefreshableToken._refresh
    functionSourceFile: botocore.tokens
    functionUses: 1
    functionsReached:
    - botocore.utils.SSOTokenLoader.save_token
    - botocore.utils.SSOTokenLoader.__init__
    - dateutil.parser.parse.total_seconds
    - hashlib.sha1
    - botocore.tokens.SSOTokenProvider._refresher
    - datetime.timedelta
    - logger.debug
    - dateutil.tz.tzutc
    - logger.warning
    - botocore.tokens.SSOTokenProvider._refresh_access_token
    - datetime.datetime.now
    - input_str.encode
    - typing.NamedTuple.expiration.total_seconds
    - dateutil.parser.parse
    - botocore.tokens.SSOTokenProvider._attempt_create_token
    - botocore.utils.SSOTokenLoader._generate_cache_key
    - logger.info
    - botocore.tokens.DeferredRefreshableToken._protected_refresh
    - botocore.tokens.DeferredRefreshableToken._is_expired
    - botocore.tokens.DeferredRefreshableToken._should_refresh
    - botocore.compat.total_seconds
    - typing.NamedTuple.__init__
    - botocore.tokens._utc_now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 142
    functionName: botocore.tokens.DeferredRefreshableToken._should_refresh
    functionSourceFile: botocore.tokens
    functionUses: 3
    functionsReached:
    - typing.NamedTuple.expiration.total_seconds
    - dateutil.tz.tzutc
    - botocore.compat.total_seconds
    - dateutil.parser.parse.total_seconds
    - botocore.tokens._utc_now
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 106
    functionName: botocore.tokens.DeferredRefreshableToken._protected_refresh
    functionSourceFile: botocore.tokens
    functionUses: 2
    functionsReached:
    - botocore.utils.SSOTokenLoader.save_token
    - botocore.utils.SSOTokenLoader.__init__
    - dateutil.parser.parse.total_seconds
    - hashlib.sha1
    - botocore.tokens.SSOTokenProvider._refresher
    - datetime.timedelta
    - logger.debug
    - dateutil.tz.tzutc
    - logger.warning
    - botocore.tokens.SSOTokenProvider._refresh_access_token
    - datetime.datetime.now
    - input_str.encode
    - typing.NamedTuple.expiration.total_seconds
    - dateutil.parser.parse
    - botocore.tokens.SSOTokenProvider._attempt_create_token
    - botocore.utils.SSOTokenLoader._generate_cache_key
    - logger.info
    - botocore.tokens.DeferredRefreshableToken._is_expired
    - botocore.tokens.DeferredRefreshableToken._should_refresh
    - botocore.compat.total_seconds
    - typing.NamedTuple.__init__
    - botocore.tokens._utc_now
    linkageType: pythonLinkage
    raised:
    - TokenRetrievalError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 309
    functionName: botocore.tokens.SSOTokenProvider._refresher
    functionSourceFile: botocore.tokens
    functionUses: 3
    functionsReached:
    - botocore.utils.SSOTokenLoader.save_token
    - botocore.utils.SSOTokenLoader.__init__
    - dateutil.parser.parse.total_seconds
    - hashlib.sha1
    - datetime.timedelta
    - logger.debug
    - dateutil.tz.tzutc
    - logger.warning
    - botocore.tokens.SSOTokenProvider._refresh_access_token
    - datetime.datetime.now
    - input_str.encode
    - typing.NamedTuple.expiration.total_seconds
    - dateutil.parser.parse
    - botocore.tokens.SSOTokenProvider._attempt_create_token
    - botocore.utils.SSOTokenLoader._generate_cache_key
    - logger.info
    - botocore.compat.total_seconds
    - typing.NamedTuple.__init__
    - botocore.tokens._utc_now
    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: 2
    functionLinenumber: 134
    functionName: botocore.tokens.DeferredRefreshableToken._is_expired
    functionSourceFile: botocore.tokens
    functionUses: 3
    functionsReached:
    - typing.NamedTuple.expiration.total_seconds
    - dateutil.tz.tzutc
    - botocore.compat.total_seconds
    - dateutil.parser.parse.total_seconds
    - botocore.tokens._utc_now
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 172
    functionName: botocore.tokens.TokenProviderChain.load_token
    functionSourceFile: botocore.tokens
    functionUses: 0
    functionsReached:
    - provider.load_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: 0
    functionLinenumber: -1
    functionName: provider.load_token
    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: 1
    functionLinenumber: -1
    functionName: botocore.tokens.SSOTokenProvider
    functionSourceFile: botocore.tokens
    functionUses: 0
    functionsReached:
    - os.path.expanduser
    - os.path.join
    - botocore.utils.CachedProperty
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 211
    functionName: botocore.tokens.SSOTokenProvider._load_sso_config
    functionSourceFile: botocore.tokens
    functionUses: 1
    functionsReached:
    - loaded_config.get
    - missing_configs.append
    - sso_sessions.get
    - profiles.get
    linkageType: pythonLinkage
    raised:
    - InvalidConfigError
    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: sso_sessions.get
    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: missing_configs.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: 2
    functionLinenumber: 251
    functionName: botocore.tokens.SSOTokenProvider._sso_config
    functionSourceFile: botocore.tokens
    functionUses: 0
    functionsReached:
    - sso_sessions.get
    - profiles.get
    - botocore.tokens.SSOTokenProvider._load_sso_config
    - loaded_config.get
    - missing_configs.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: 255
    functionName: botocore.tokens.SSOTokenProvider._client
    functionSourceFile: botocore.tokens
    functionUses: 0
    functionsReached:
    - contextvars.ContextVar.set
    - retries.items
    - botocore.config.Config._validate_s3_configuration
    - <builtin>.list
    - <builtin>.enumerate
    - copy.copy
    - contextvars.ContextVar.reset
    - botocore.utils.create_nested_client
    - <builtin>.setattr
    - botocore.config.Config._validate_retry_configuration
    - botocore.plugin.reset_plugin_context
    - s3.get
    - kwargs.items
    - botocore.plugin.set_plugin_context
    - config_vars.update
    - botocore.config.Config._record_user_provided_options
    - botocore.config.Config.__init__
    - config_vars.items
    - session.create_client
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 262
    functionName: botocore.tokens.SSOTokenProvider._attempt_create_token
    functionSourceFile: botocore.tokens
    functionUses: 5
    functionsReached:
    - dateutil.tz.tzutc
    - logger.info
    - botocore.tokens._utc_now
    - datetime.datetime.now
    - datetime.timedelta
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 285
    functionName: botocore.tokens.SSOTokenProvider._refresh_access_token
    functionSourceFile: botocore.tokens
    functionUses: 4
    functionsReached:
    - typing.NamedTuple.expiration.total_seconds
    - dateutil.tz.tzutc
    - dateutil.parser.parse
    - logger.warning
    - botocore.tokens.SSOTokenProvider._attempt_create_token
    - botocore.compat.total_seconds
    - logger.info
    - dateutil.parser.parse.total_seconds
    - botocore.tokens._utc_now
    - datetime.datetime.now
    - datetime.timedelta
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 331
    functionName: botocore.tokens.SSOTokenProvider.load_token
    functionSourceFile: botocore.tokens
    functionUses: 0
    functionsReached:
    - threading.Lock
    - botocore.tokens.DeferredRefreshableToken.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 354
    functionName: botocore.tokens.ScopedEnvTokenProvider.load_token
    functionSourceFile: botocore.tokens
    functionUses: 0
    functionsReached:
    - signing_name.strip
    - os.environ.get
    - botocore.utils.get_token_from_environment
    - signing_name.replace
    - botocore.utils._get_bearer_env_var_name
    - kwargs.get
    - <builtin>.isinstance
    - logger.info
    - typing.NamedTuple.__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: botocore.config
    functionSourceFile: botocore.config
    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
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 350
    functionName: botocore.config.Config.inject_host_prefix
    functionSourceFile: botocore.config
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 391
    functionName: botocore.config.Config._record_user_provided_options
    functionSourceFile: botocore.config
    functionUses: 21
    functionsReached:
    - <builtin>.len
    - <builtin>.enumerate
    - <builtin>.list
    - kwargs.items
    linkageType: pythonLinkage
    raised:
    - TypeError
    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: config_vars.update
    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: config_vars.items
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s3
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 423
    functionName: botocore.config.Config._validate_s3_configuration
    functionSourceFile: botocore.config
    functionUses: 21
    functionsReached:
    - s3.get
    linkageType: pythonLinkage
    raised:
    - InvalidS3AddressingStyleError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - retries
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 431
    functionName: botocore.config.Config._validate_retry_configuration
    functionSourceFile: botocore.config
    functionUses: 21
    functionsReached:
    - retries.items
    linkageType: pythonLinkage
    raised:
    - InvalidRetryModeError
    - InvalidMaxRetryAttemptsError
    - InvalidRetryConfigurationError
    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: s3.get
    functionSourceFile: <builtin>
    functionUses: 22
    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: retries.items
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other_config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 457
    functionName: botocore.config.Config.merge
    functionSourceFile: botocore.config
    functionUses: 2
    functionsReached:
    - config_options.update
    - config_vars.update
    - copy.copy
    - botocore.config.Config._record_user_provided_options
    - retries.items
    - botocore.config.Config.__init__
    - botocore.config.Config._validate_retry_configuration
    - <builtin>.setattr
    - botocore.config.Config._validate_s3_configuration
    - config_vars.items
    - s3.get
    - <builtin>.list
    - kwargs.items
    - <builtin>.len
    - <builtin>.enumerate
    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: config_options.update
    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: 2
    functionLinenumber: -1
    functionName: botocore.endpoint
    functionSourceFile: botocore.endpoint
    functionUses: 0
    functionsReached:
    - botocore.history.HistoryRecorder.__init__
    - botocore.history.get_global_history_recorder
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 51
    functionName: botocore.history.get_global_history_recorder
    functionSourceFile: botocore.history
    functionUses: 2
    functionsReached:
    - botocore.history.HistoryRecorder.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - http_response
    - operation_model
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 43
    functionName: botocore.endpoint.convert_to_response_dict
    functionSourceFile: botocore.endpoint
    functionUses: 4
    functionsReached:
    - botocore.response.StreamingBody.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9830ba55e0>
    - <ast.Constant object at 0x7f9830ba5cd0>
    argNames:
    - self
    - host
    - endpoint_prefix
    - event_emitter
    - response_parser_factory
    - http_session
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 88
    functionName: botocore.endpoint.Endpoint.__init__
    functionSourceFile: botocore.endpoint
    functionUses: 4
    functionsReached:
    - <builtin>.getattr
    - os.environ.get
    - threading.Lock
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.util.ssl_.SSLContext
    - botocore.httpsession.create_urllib3_context
    - <builtin>.hasattr
    - urllib3.PoolManager
    - urllib3.Timeout
    - botocore.httpsession.ProxyConfiguration.__init__
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.parsers.ResponseParserFactory.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - pool_manager_kwargs.update
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    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: 107
    functionName: botocore.endpoint.Endpoint.__repr__
    functionSourceFile: botocore.endpoint
    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: 2
    functionLinenumber: 110
    functionName: botocore.endpoint.Endpoint.close
    functionSourceFile: botocore.endpoint
    functionUses: 0
    functionsReached:
    - botocore.httpsession.URLLib3Session.close
    - urllib3.PoolManager.clear
    - manager.clear
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - operation_model
    - request_dict
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 113
    functionName: botocore.endpoint.Endpoint.make_request
    functionSourceFile: botocore.endpoint
    functionUses: 0
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.endpoint.Endpoint._calculate_ttl
    - botocore.hooks.first_non_none_response
    - urllib.parse.urlencode
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - checksum.digest
    - proxy_manager_kwargs.update
    - delim.join
    - context.setdefault
    - botocore.endpoint.convert_to_response_dict
    - time.sleep
    - url.startswith
    - io.BytesIO.lower
    - botocore.endpoint.Endpoint._add_modeled_error_fields
    - _CHECKSUM_CLS.get
    - botocore.endpoint.Endpoint._do_get_response
    - os.environ.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - urllib3.PoolManager.connection_from_url
    - botocore.httpchecksum._handle_streaming_response
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.endpoint.Endpoint._send
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.httpchecksum._handle_bytes_response
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - botocore.endpoint.Endpoint.create_request
    - urllib.parse.unquote
    - <builtin>.getattr
    - botocore.httpchecksum.StreamingChecksumBody.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - botocore.endpoint.Endpoint._send_request
    - body.tell
    - val.lower
    - operation_model.service_model.service_id.hyphenize
    - handler.emit
    - auth_str.encode
    - datetime_now.replace
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - key.encode
    - botocore.httpsession.get_cert_path
    - retries_context.get
    - parsed_response.update
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - checksum_context.get
    - <builtin>.any
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - base64.b64decode
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - botocore.parsers.ResponseParserFactory.create_parser
    - context.get
    - checksum.update
    - urllib.parse.urlencode.seek
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - botocore.endpoint.Endpoint._get_response
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - datetime.datetime.strptime
    - parser.parse
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.endpoint.Endpoint._update_retries_context
    - parsed_response.get
    - url.lower
    - botocore.history.HistoryRecorder.record
    - botocore.endpoint.Endpoint._needs_retry
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - botocore.endpoint.Endpoint._set_ttl
    - botocore.endpoint.Endpoint.prepare_request
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - <builtin>.type
    - pool_manager_kwargs.update
    - botocore.endpoint.Endpoint._encode_headers
    - botocore.response.StreamingBody.__init__
    - response_dict.copy
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - <builtin>.len
    - botocore.httpsession.ensure_boolean
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - ttl.strftime
    - <builtin>.bool
    - checksum.b64digest
    - botocore.awsrequest.create_request_object
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.httpchecksum.handle_checksum_body
    - <builtin>.super
    - botocore.awsrequest.AWSPreparedRequest.reset_stream
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - uuid.uuid4
    - botocore.compat.ensure_bytes
    - r.get
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - service_model.shape_for_error_code
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request_dict
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 192
    functionName: botocore.endpoint.Endpoint._send_request
    functionSourceFile: botocore.endpoint
    functionUses: 1
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.endpoint.Endpoint._calculate_ttl
    - botocore.hooks.first_non_none_response
    - urllib.parse.urlencode
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - checksum.digest
    - proxy_manager_kwargs.update
    - delim.join
    - context.setdefault
    - botocore.endpoint.convert_to_response_dict
    - time.sleep
    - url.startswith
    - io.BytesIO.lower
    - botocore.endpoint.Endpoint._add_modeled_error_fields
    - _CHECKSUM_CLS.get
    - botocore.endpoint.Endpoint._do_get_response
    - os.environ.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - urllib3.PoolManager.connection_from_url
    - botocore.httpchecksum._handle_streaming_response
    - base64.b64encode.strip
    - headers.items
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.endpoint.Endpoint._send
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.httpchecksum._handle_bytes_response
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - botocore.endpoint.Endpoint.create_request
    - urllib.parse.unquote
    - <builtin>.getattr
    - botocore.httpchecksum.StreamingChecksumBody.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - operation_model.service_model.service_id.hyphenize
    - handler.emit
    - auth_str.encode
    - datetime_now.replace
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.URLLib3Session._get_request_target
    - key.encode
    - botocore.httpsession.get_cert_path
    - retries_context.get
    - parsed_response.update
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - checksum_context.get
    - <builtin>.any
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - base64.b64decode
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - datetime.timedelta
    - botocore.parsers.ResponseParserFactory.create_parser
    - context.get
    - checksum.update
    - urllib.parse.urlencode.seek
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - botocore.endpoint.Endpoint._get_response
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - datetime.datetime.now
    - datetime.datetime.strptime
    - parser.parse
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.endpoint.Endpoint._update_retries_context
    - parsed_response.get
    - url.lower
    - botocore.history.HistoryRecorder.record
    - botocore.endpoint.Endpoint._needs_retry
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - botocore.endpoint.Endpoint._set_ttl
    - botocore.endpoint.Endpoint.prepare_request
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - <builtin>.type
    - pool_manager_kwargs.update
    - botocore.endpoint.Endpoint._encode_headers
    - botocore.response.StreamingBody.__init__
    - response_dict.copy
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.ensure_boolean
    - <builtin>.len
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - ttl.strftime
    - <builtin>.bool
    - checksum.b64digest
    - botocore.awsrequest.create_request_object
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.httpchecksum.handle_checksum_body
    - <builtin>.super
    - botocore.awsrequest.AWSPreparedRequest.reset_stream
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - uuid.uuid4
    - botocore.compat.ensure_bytes
    - r.get
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - certifi.where
    - original.params.items
    - service_model.shape_for_error_code
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    - botocore.compat.get_current_datetime
    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 0x7f9830a63880>
    argNames:
    - self
    - params
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 121
    functionName: botocore.endpoint.Endpoint.create_request
    functionSourceFile: botocore.endpoint
    functionUses: 2
    functionsReached:
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - <builtin>.hasattr
    - headers.items
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - urllib.parse.urlencode
    - <builtin>.any
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.awsrequest.create_request_object
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - <builtin>.isinstance
    - delim.join
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - <builtin>.len
    - r.get
    - body.tell
    - collections.abc.MutableMapping.update
    - operation_model.service_model.service_id.hyphenize
    - botocore.endpoint.Endpoint.prepare_request
    - original.params.items
    - <builtin>.type
    - botocore.endpoint.Endpoint._encode_headers
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - http.client.HTTPMessage.items
    - key.encode
    - urllib.parse.urlparse
    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: operation_model.service_model.service_id.hyphenize
    functionSourceFile: <builtin>
    functionUses: 6
    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: 7
    functionLinenumber: 146
    functionName: botocore.endpoint.Endpoint.prepare_request
    functionSourceFile: botocore.endpoint
    functionUses: 3
    functionsReached:
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - <builtin>.hasattr
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - urllib.parse.urlencode
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.list
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - logger.debug
    - botocore.awsrequest.AWSRequest.prepare
    - urllib.parse.urlencode.items
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - <builtin>.isinstance
    - delim.join
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - <builtin>.len
    - body.tell
    - collections.abc.MutableMapping.update
    - original.params.items
    - <builtin>.type
    - botocore.endpoint.Endpoint._encode_headers
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - http.client.HTTPMessage.items
    - key.encode
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 140
    functionName: botocore.endpoint.Endpoint._encode_headers
    functionSourceFile: botocore.endpoint
    functionUses: 4
    functionsReached:
    - <builtin>.isinstance
    - value.encode
    - http.client.HTTPMessage.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - response_received_timestamp
    - date_header
    - read_timeout
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 150
    functionName: botocore.endpoint.Endpoint._calculate_ttl
    functionSourceFile: botocore.endpoint
    functionUses: 4
    functionsReached:
    - datetime_now.replace
    - ttl.strftime
    - botocore.compat.get_current_datetime
    - datetime.datetime.now
    - datetime.datetime.strptime
    - datetime.timedelta
    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: ttl.strftime
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - retries_context
    - read_timeout
    - success_response
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 165
    functionName: botocore.endpoint.Endpoint._set_ttl
    functionSourceFile: botocore.endpoint
    functionUses: 3
    functionsReached:
    - datetime_now.replace
    - logger.debug
    - ttl.strftime
    - botocore.endpoint.Endpoint._calculate_ttl
    - datetime.datetime.strptime
    - botocore.compat.get_current_datetime
    - datetime.datetime.now
    - retries_context.get
    - datetime.timedelta
    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: retries_context.get
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a17970>
    argNames:
    - self
    - context
    - attempt
    - success_response
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 182
    functionName: botocore.endpoint.Endpoint._update_retries_context
    functionSourceFile: botocore.endpoint
    functionUses: 2
    functionsReached:
    - datetime_now.replace
    - logger.debug
    - ttl.strftime
    - uuid.uuid4
    - botocore.endpoint.Endpoint._calculate_ttl
    - <builtin>.str
    - datetime.datetime.strptime
    - botocore.endpoint.Endpoint._set_ttl
    - retries_context.get
    - context.setdefault
    - datetime.datetime.now
    - botocore.compat.get_current_datetime
    - datetime.timedelta
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - request
    - operation_model
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 233
    functionName: botocore.endpoint.Endpoint._get_response
    functionSourceFile: botocore.endpoint
    functionUses: 2
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.hooks.first_non_none_response
    - logger.debug
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - urllib3.util.retry.Retry
    - checksum.digest
    - proxy_manager_kwargs.update
    - botocore.endpoint.convert_to_response_dict
    - url.startswith
    - io.BytesIO.lower
    - botocore.endpoint.Endpoint._add_modeled_error_fields
    - _CHECKSUM_CLS.get
    - botocore.endpoint.Endpoint._do_get_response
    - os.environ.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - urllib3.PoolManager.connection_from_url
    - base64.b64encode.strip
    - botocore.httpchecksum._handle_streaming_response
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.endpoint.Endpoint._send
    - botocore.httpchecksum._handle_bytes_response
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - urllib.parse.unquote
    - <builtin>.getattr
    - botocore.httpchecksum.StreamingChecksumBody.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - val.lower
    - operation_model.service_model.service_id.hyphenize
    - handler.emit
    - auth_str.encode
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.httpsession.get_cert_path
    - parsed_response.update
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - <builtin>.hasattr
    - checksum_context.get
    - base64.b64decode
    - context.get
    - botocore.parsers.ResponseParserFactory.create_parser
    - checksum.update
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - parser.parse
    - urllib3.util.ssl_.is_ipaddress
    - parsed_response.get
    - url.lower
    - botocore.history.HistoryRecorder.record
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - response_dict.copy
    - botocore.response.StreamingBody.__init__
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.ensure_boolean
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - checksum.b64digest
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.httpchecksum.handle_checksum_body
    - <builtin>.super
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - certifi.where
    - service_model.shape_for_error_code
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    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 0x7f982f8952e0>
    - <ast.Constant object at 0x7f982f895700>
    argNames:
    - self
    - attempts
    - operation_model
    - request_dict
    - response
    - caught_exception
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 350
    functionName: botocore.endpoint.Endpoint._needs_retry
    functionSourceFile: botocore.endpoint
    functionUses: 2
    functionsReached:
    - botocore.hooks.first_non_none_response
    - logger.debug
    - time.sleep
    - operation_model.service_model.service_id.hyphenize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - request
    - operation_model
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 261
    functionName: botocore.endpoint.Endpoint._do_get_response
    functionSourceFile: botocore.endpoint
    functionUses: 3
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.hooks.first_non_none_response
    - logger.debug
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - checksum.digest
    - urllib3.util.retry.Retry
    - proxy_manager_kwargs.update
    - botocore.endpoint.convert_to_response_dict
    - url.startswith
    - io.BytesIO.lower
    - botocore.endpoint.Endpoint._add_modeled_error_fields
    - _CHECKSUM_CLS.get
    - os.environ.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - urllib3.PoolManager.connection_from_url
    - botocore.httpchecksum._handle_streaming_response
    - base64.b64encode.strip
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.endpoint.Endpoint._send
    - botocore.httpchecksum._handle_bytes_response
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.proxy_from_url
    - urllib.parse.unquote
    - <builtin>.getattr
    - botocore.httpchecksum.StreamingChecksumBody.__init__
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - val.lower
    - operation_model.service_model.service_id.hyphenize
    - handler.emit
    - auth_str.encode
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.httpsession.get_cert_path
    - parsed_response.update
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - <builtin>.hasattr
    - checksum_context.get
    - base64.b64decode
    - context.get
    - botocore.parsers.ResponseParserFactory.create_parser
    - checksum.update
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - parser.parse
    - urllib3.util.ssl_.is_ipaddress
    - parsed_response.get
    - url.lower
    - botocore.history.HistoryRecorder.record
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - response_dict.copy
    - botocore.response.StreamingBody.__init__
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.ensure_boolean
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - checksum.b64digest
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.httpchecksum.handle_checksum_body
    - <builtin>.super
    - botocore.compat.ensure_bytes
    - botocore.httpsession._is_ipaddress
    - io.BytesIO.encode
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - certifi.where
    - service_model.shape_for_error_code
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - urllib.parse.urlparse
    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 0x7f9830ba5a30>
    argNames:
    - self
    - event_type
    - payload
    - source
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: botocore.history.HistoryRecorder.record
    functionSourceFile: botocore.history
    functionUses: 5
    functionsReached:
    - logger.debug
    - handler.emit
    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: 8
    functionLinenumber: 382
    functionName: botocore.endpoint.Endpoint._send
    functionSourceFile: botocore.endpoint
    functionUses: 4
    functionsReached:
    - base64.b64encode
    - botocore.httpsession.URLLib3Session._path_url
    - urllib3.PoolManager.connection_from_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - base64.b64encode.strip
    - <builtin>.hasattr
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - urllib.parse.urlparse
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - logger.debug
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - proxy_url.startswith
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - <builtin>.bool
    - urllib3.util.ssl_.SSLContext
    - urllib3.proxy_from_url
    - urllib3.util.retry.Retry
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib.parse.unquote
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - proxy_manager_kwargs.update
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - conn.urlopen
    - <builtin>.getattr
    - urllib3.util.ssl_.is_ipaddress
    - botocore.compat.ensure_bytes
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - url.lower
    - botocore.httpsession._is_ipaddress
    - url.startswith
    - val.lower
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - io.BytesIO.encode
    - certifi.where
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.awsrequest.AWSResponse
    - io.BytesIO.lower
    - auth_str.encode
    - pool_manager_kwargs.update
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - os.environ.get
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - botocore.httpsession.create_urllib3_context
    - headers.get
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.httpsession.URLLib3Session.send
    - botocore.httpsession.ensure_boolean
    - botocore.httpsession.get_cert_path
    - proxies_kwargs.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: response_dict.copy
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - response_dict
    - parsed_response
    - operation_model
    - parser
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 332
    functionName: botocore.endpoint.Endpoint._add_modeled_error_fields
    functionSourceFile: botocore.endpoint
    functionUses: 4
    functionsReached:
    - parsed_response.get
    - parsed_response.update
    - service_model.shape_for_error_code
    - parser.parse
    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: parsed_response.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: time.sleep
    functionSourceFile: time
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event_emitter
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 387
    functionName: botocore.endpoint.EndpointCreator.__init__
    functionSourceFile: botocore.endpoint
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 13
    argDefaultValues:
    - <ast.Constant object at 0x7f9830cbf3a0>
    - <ast.Constant object at 0x7f9830cbff40>
    - <ast.Name object at 0x7f9830cbfe80>
    - <ast.Name object at 0x7f9830cbfcd0>
    - <ast.Name object at 0x7f9830cbf430>
    - <ast.Constant object at 0x7f9830cbfbb0>
    - <ast.Constant object at 0x7f9830cbfbe0>
    - <ast.Constant object at 0x7f9830cbfac0>
    - <ast.Constant object at 0x7f9830cbfc10>
    argNames:
    - self
    - service_model
    - region_name
    - endpoint_url
    - verify
    - response_parser_factory
    - timeout
    - max_pool_connections
    - http_session_cls
    - proxies
    - socket_options
    - client_cert
    - proxies_config
    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
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 390
    functionName: botocore.endpoint.EndpointCreator.create_endpoint
    functionSourceFile: botocore.endpoint
    functionUses: 3
    functionsReached:
    - botocore.utils.get_environ_proxies
    - threading.Lock
    - <builtin>.hasattr
    - urllib.parse.urlparse
    - allowed.match
    - botocore.parsers.ResponseParserFactory.__init__
    - UNSAFE_URL_CHARS.intersection
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - logger.debug
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - urllib3.util.ssl_.SSLContext
    - botocore.utils.should_bypass_proxies
    - urllib3.Timeout
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.endpoint.EndpointCreator._get_verify_value
    - urllib.request.proxy_bypass
    - <builtin>.getattr
    - botocore.utils.is_valid_endpoint_url
    - urllib.parse.urlsplit
    - botocore.endpoint.Endpoint.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - pool_manager_kwargs.update
    - os.environ.get
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.create_urllib3_context
    - botocore.endpoint.EndpointCreator._get_proxies
    - urllib3.PoolManager
    - botocore.httpsession.ProxyConfiguration.__init__
    - urllib.request.getproxies
    - IPV6_ADDRZ_RE.match
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - url
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 433
    functionName: botocore.endpoint.EndpointCreator._get_proxies
    functionSourceFile: botocore.endpoint
    functionUses: 4
    functionsReached:
    - botocore.utils.get_environ_proxies
    - botocore.utils.should_bypass_proxies
    - urllib.request.getproxies
    - urllib.parse.urlparse
    - urllib.request.proxy_bypass
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - verify
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 438
    functionName: botocore.endpoint.EndpointCreator._get_verify_value
    functionSourceFile: botocore.endpoint
    functionUses: 4
    functionsReached:
    - 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: 1
    functionLinenumber: -1
    functionName: botocore.history
    functionSourceFile: botocore.history
    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
    - event_type
    - payload
    - source
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 20
    functionName: botocore.history.BaseHistoryHandler.emit
    functionSourceFile: botocore.history
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    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: 25
    functionName: botocore.history.HistoryRecorder.__init__
    functionSourceFile: botocore.history
    functionUses: 3
    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: 29
    functionName: botocore.history.HistoryRecorder.enable
    functionSourceFile: botocore.history
    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: 32
    functionName: botocore.history.HistoryRecorder.disable
    functionSourceFile: botocore.history
    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
    - handler
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 35
    functionName: botocore.history.HistoryRecorder.add_handler
    functionSourceFile: botocore.history
    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: handler.emit
    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: botocore.configloader
    functionSourceFile: botocore.configloader
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - filenames
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 23
    functionName: botocore.configloader.multi_file_load_config
    functionSourceFile: botocore.configloader
    functionUses: 0
    functionsReached:
    - line.strip
    - key.startswith
    - cp.options
    - shlex.split
    - botocore.configloader.raw_config_parse
    - cp.sections
    - botocore.configloader._parse_section
    - os.path.expanduser
    - key.strip
    - config_value.startswith
    - os.path.isfile
    - botocore.configloader._merge_list_of_dicts
    - botocore.configloader.build_profile_map
    - sso_sessions.update
    - line.split
    - cp.read
    - botocore.configloader._parse_nested
    - profiles.append
    - parsed_config.items
    - configs.append
    - loaded.pop
    - os.path.expandvars
    - copy.deepcopy
    - configparser.RawConfigParser
    - services.update
    - botocore.configloader.load_config
    - config_value.splitlines
    - cp.get
    - single_dict.items
    - profiles.update
    - <builtin>.len
    - value.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - config_filename
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 95
    functionName: botocore.configloader.load_config
    functionSourceFile: botocore.configloader
    functionUses: 2
    functionsReached:
    - line.strip
    - key.startswith
    - cp.options
    - shlex.split
    - botocore.configloader.raw_config_parse
    - cp.sections
    - botocore.configloader._parse_section
    - os.path.expanduser
    - key.strip
    - config_value.startswith
    - os.path.isfile
    - botocore.configloader.build_profile_map
    - sso_sessions.update
    - line.split
    - cp.read
    - botocore.configloader._parse_nested
    - parsed_config.items
    - os.path.expandvars
    - copy.deepcopy
    - configparser.RawConfigParser
    - services.update
    - config_value.splitlines
    - cp.get
    - profiles.update
    - <builtin>.len
    - value.strip
    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: loaded.pop
    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: profiles.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: configs.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - list_of_dicts
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 86
    functionName: botocore.configloader._merge_list_of_dicts
    functionSourceFile: botocore.configloader
    functionUses: 1
    functionsReached:
    - single_dict.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: single_dict.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f98309b8d30>
    argNames:
    - config_filename
    - parse_subsections
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 109
    functionName: botocore.configloader.raw_config_parse
    functionSourceFile: botocore.configloader
    functionUses: 3
    functionsReached:
    - line.strip
    - cp.options
    - config_value.startswith
    - value.strip
    - os.path.isfile
    - config_value.splitlines
    - key.strip
    - cp.sections
    - line.split
    - cp.get
    - os.path.expandvars
    - os.path.expanduser
    - configparser.RawConfigParser
    - cp.read
    - botocore.configloader._parse_nested
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - parsed_ini_config
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 214
    functionName: botocore.configloader.build_profile_map
    functionSourceFile: botocore.configloader
    functionUses: 3
    functionsReached:
    - key.startswith
    - services.update
    - shlex.split
    - parsed_config.items
    - sso_sessions.update
    - profiles.update
    - botocore.configloader._parse_section
    - copy.deepcopy
    - <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: configparser.RawConfigParser
    functionSourceFile: configparser
    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: cp.read
    functionSourceFile: <builtin>
    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: cp.sections
    functionSourceFile: <builtin>
    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: cp.options
    functionSourceFile: <builtin>
    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: cp.get
    functionSourceFile: <builtin>
    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: config_value.startswith
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - config_value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 183
    functionName: botocore.configloader._parse_nested
    functionSourceFile: botocore.configloader
    functionUses: 4
    functionsReached:
    - line.strip
    - config_value.splitlines
    - line.split
    - key.strip
    - value.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 172
    functionName: botocore.configloader._unicode_path
    functionSourceFile: botocore.configloader
    functionUses: 0
    functionsReached:
    - sys.getfilesystemencoding
    - <builtin>.isinstance
    - path.decode
    - sys.getdefaultencoding
    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: sys.getfilesystemencoding
    functionSourceFile: sys
    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: sys.getdefaultencoding
    functionSourceFile: sys
    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: path.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: config_value.splitlines
    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: line.strip
    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: value.strip
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - key
    - values
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 203
    functionName: botocore.configloader._parse_section
    functionSourceFile: botocore.configloader
    functionUses: 4
    functionsReached:
    - <builtin>.len
    - shlex.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: parsed_config.items
    functionSourceFile: <builtin>
    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: key.startswith
    functionSourceFile: <builtin>
    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: profiles.update
    functionSourceFile: <builtin>
    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: sso_sessions.update
    functionSourceFile: <builtin>
    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: services.update
    functionSourceFile: <builtin>
    functionUses: 4
    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: botocore.compress
    functionSourceFile: botocore.compress
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - config
    - request_dict
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 31
    functionName: botocore.compress.maybe_compress_request
    functionSourceFile: botocore.compress
    functionUses: 1
    functionsReached:
    - botocore.compress._is_compressible_type
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - logger.debug
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - <builtin>.hasattr
    - botocore.compress._set_compression_header
    - botocore.compress._should_compress_request
    - COMPRESSION_MAPPING.get
    - headers.get
    - urllib.parse.urlencode
    - botocore.utils.determine_content_length
    - <builtin>.isinstance
    - body.tell
    - operation_model.get_streaming_input
    - <builtin>.type
    - <builtin>.len
    - botocore.compress._get_body_size
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - config
    - request_dict
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 45
    functionName: botocore.compress._should_compress_request
    functionSourceFile: botocore.compress
    functionUses: 2
    functionsReached:
    - botocore.compress._is_compressible_type
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - logger.debug
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - <builtin>.hasattr
    - urllib.parse.urlencode
    - botocore.utils.determine_content_length
    - <builtin>.isinstance
    - body.tell
    - operation_model.get_streaming_input
    - <builtin>.type
    - <builtin>.len
    - botocore.compress._get_body_size
    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: COMPRESSION_MAPPING.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - headers
    - encoding
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 120
    functionName: botocore.compress._set_compression_header
    functionSourceFile: botocore.compress
    functionUses: 2
    functionsReached:
    - headers.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - request_dict
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 69
    functionName: botocore.compress._is_compressible_type
    functionSourceFile: botocore.compress
    functionUses: 3
    functionsReached:
    - urllib.parse.urlencode
    - <builtin>.hasattr
    - <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: operation_model.get_streaming_input
    functionSourceFile: <builtin>
    functionUses: 26
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - body
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 79
    functionName: botocore.compress._get_body_size
    functionSourceFile: botocore.compress
    functionUses: 3
    functionsReached:
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - logger.debug
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - <builtin>.hasattr
    - botocore.utils.determine_content_length
    - body.tell
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - body
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 91
    functionName: botocore.compress._gzip_compress_body
    functionSourceFile: botocore.compress
    functionUses: 0
    functionsReached:
    - body.read
    - gzip.GzipFile
    - botocore.compress._gzip_compress_fileobj
    - gzip.compress
    - chunk.encode
    - body.seek
    - <builtin>.hasattr
    - body.encode
    - botocore.context.get_context
    - botocore.useragent.register_feature_id
    - contextvars.ContextVar.get
    - body.tell
    - <builtin>.isinstance
    - io.BytesIO
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    - compressed_obj.seek
    - gz.write
    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: gzip.compress
    functionSourceFile: gzip
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - body
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 106
    functionName: botocore.compress._gzip_compress_fileobj
    functionSourceFile: botocore.compress
    functionUses: 1
    functionsReached:
    - body.read
    - gzip.GzipFile
    - chunk.encode
    - io.BytesIO
    - <builtin>.isinstance
    - compressed_obj.seek
    - gz.write
    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.seek
    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: gzip.GzipFile
    functionSourceFile: gzip
    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: body.read
    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: gz.write
    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: compressed_obj.seek
    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: 1
    functionLinenumber: -1
    functionName: botocore.paginate
    functionSourceFile: botocore.paginate
    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:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 41
    functionName: botocore.paginate.TokenEncoder.encode
    functionSourceFile: botocore.paginate
    functionUses: 1
    functionsReached:
    - botocore.paginate.TokenEncoder._encode_bytes
    - base64.b64encode
    - botocore.paginate.TokenEncoder._encode_list
    - data.items
    - botocore.paginate.TokenEncoder._encode_dict
    - json.dumps
    - encoded.extend
    - <builtin>.isinstance
    - json_string.encode
    - botocore.paginate.TokenEncoder._encode
    - new_data.append
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 70
    functionName: botocore.paginate.TokenEncoder._encode
    functionSourceFile: botocore.paginate
    functionUses: 4
    functionsReached:
    - botocore.paginate.TokenEncoder._encode_bytes
    - botocore.paginate.TokenEncoder._encode_list
    - base64.b64encode
    - data.items
    - botocore.paginate.TokenEncoder._encode_dict
    - encoded.extend
    - <builtin>.isinstance
    - botocore.paginate.TokenEncoder._encode
    - new_data.append
    - <builtin>.enumerate
    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_string.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 92
    functionName: botocore.paginate.TokenEncoder._encode_dict
    functionSourceFile: botocore.paginate
    functionUses: 4
    functionsReached:
    - botocore.paginate.TokenEncoder._encode_bytes
    - base64.b64encode
    - botocore.paginate.TokenEncoder._encode_list
    - data.items
    - botocore.paginate.TokenEncoder._encode_dict
    - encoded.extend
    - <builtin>.isinstance
    - botocore.paginate.TokenEncoder._encode
    - new_data.append
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 81
    functionName: botocore.paginate.TokenEncoder._encode_list
    functionSourceFile: botocore.paginate
    functionUses: 4
    functionsReached:
    - base64.b64encode
    - botocore.paginate.TokenEncoder._encode_bytes
    - botocore.paginate.TokenEncoder._encode_list
    - data.items
    - botocore.paginate.TokenEncoder._encode_dict
    - encoded.extend
    - <builtin>.isinstance
    - botocore.paginate.TokenEncoder._encode
    - new_data.append
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 103
    functionName: botocore.paginate.TokenEncoder._encode_bytes
    functionSourceFile: botocore.paginate
    functionUses: 5
    functionsReached:
    - base64.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: new_data.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: encoded.extend
    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: data.items
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 115
    functionName: botocore.paginate.TokenDecoder.decode
    functionSourceFile: botocore.paginate
    functionUses: 6
    functionsReached:
    - botocore.paginate.TokenDecoder._decode
    - json.loads
    - encoded.encode
    - token.encode
    - botocore.paginate.TokenDecoder._path_get
    - base64.b64decode
    - botocore.paginate.TokenDecoder._path_set
    - decoded_token.pop
    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.encode
    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: decoded_token.pop
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - token
    - encoded_keys
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 138
    functionName: botocore.paginate.TokenDecoder._decode
    functionSourceFile: botocore.paginate
    functionUses: 7
    functionsReached:
    - botocore.paginate.TokenDecoder._path_set
    - botocore.paginate.TokenDecoder._path_get
    - base64.b64decode
    - encoded.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - data
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 146
    functionName: botocore.paginate.TokenDecoder._path_get
    functionSourceFile: ''
    functionUses: 9
    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.encode
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - data
    - path
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 163
    functionName: botocore.paginate.TokenDecoder._path_set
    functionSourceFile: botocore.paginate
    functionUses: 8
    functionsReached:
    - botocore.paginate.TokenDecoder._path_get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - paginator_config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 177
    functionName: botocore.paginate.PaginatorModel.__init__
    functionSourceFile: botocore.paginate
    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
    - operation_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 180
    functionName: botocore.paginate.PaginatorModel.get_paginator
    functionSourceFile: botocore.paginate
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 12
    argDefaultValues: []
    argNames:
    - self
    - method
    - input_token
    - output_token
    - more_results
    - result_keys
    - non_aggregate_keys
    - limit_key
    - max_items
    - starting_token
    - page_size
    - op_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: 0
    functionLinenumber: 196
    functionName: botocore.paginate.PageIterator.__init__
    functionSourceFile: botocore.paginate
    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: 0
    functionLinenumber: 227
    functionName: botocore.paginate.PageIterator.result_keys
    functionSourceFile: botocore.paginate
    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
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 236
    functionName: botocore.paginate.PageIterator.resume_token
    functionSourceFile: botocore.paginate
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - botocore.paginate.TokenEncoder._encode_bytes
    - botocore.paginate.TokenEncoder._encode_list
    - botocore.paginate.TokenEncoder.encode
    - data.items
    - botocore.paginate.TokenEncoder._encode_dict
    - json.dumps
    - <builtin>.sorted
    - encoded.extend
    - <builtin>.isinstance
    - value.keys
    - json_string.encode
    - botocore.paginate.TokenEncoder._encode
    - new_data.append
    - <builtin>.enumerate
    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: value.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: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 252
    functionName: botocore.paginate.PageIterator.non_aggregate_part
    functionSourceFile: botocore.paginate
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 6
    IfCount: 9
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 255
    functionName: botocore.paginate.PageIterator.__iter__
    functionSourceFile: botocore.paginate
    functionUses: 2
    functionsReached:
    - log.debug
    - botocore.paginate.PageIterator._inject_token_into_kwargs
    - botocore.paginate.PageIterator._record_non_aggregate_key_values
    - encoded.encode
    - token.encode
    - botocore.paginate.TokenDecoder._path_get
    - output_token.search
    - base64.b64decode
    - botocore.utils.validate_jmespath_for_set
    - <builtin>.zip
    - expression.search
    - <builtin>.all
    - botocore.paginate.PageIterator._truncate_response
    - expression.split
    - deprecated_token.append
    - <builtin>.isinstance
    - <builtin>.int
    - primary_result_key.search
    - botocore.paginate.PageIterator._make_request
    - botocore.paginate.PageIterator._get_next_token
    - <builtin>.dict
    - next_token.values
    - botocore.paginate.TokenDecoder._decode
    - json.loads
    - botocore.paginate.PageIterator._convert_deprecated_starting_token
    - botocore.paginate.PageIterator._extract_parsed_response
    - next_token.append
    - botocore.utils.set_value_from_jmespath
    - botocore.paginate.TokenDecoder.decode
    - next_token.get
    - botocore.paginate.PageIterator._parse_starting_token_deprecated
    - botocore.paginate.PageIterator._handle_first_request
    - next_token.items
    - parts.pop
    - <builtin>.range
    - botocore.paginate.PageIterator._parse_starting_token
    - botocore.paginate.PageIterator._inject_starting_params
    - <builtin>.len
    - botocore.paginate.TokenDecoder._path_set
    - decoded_token.pop
    linkageType: pythonLinkage
    raised:
    - PaginationError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 534
    functionName: botocore.paginate.PageIterator._parse_starting_token
    functionSourceFile: botocore.paginate
    functionUses: 5
    functionsReached:
    - log.debug
    - encoded.encode
    - token.encode
    - botocore.paginate.TokenDecoder._path_get
    - base64.b64decode
    - <builtin>.zip
    - deprecated_token.append
    - <builtin>.int
    - <builtin>.dict
    - botocore.paginate.TokenDecoder._decode
    - json.loads
    - botocore.paginate.PageIterator._convert_deprecated_starting_token
    - next_token.append
    - botocore.paginate.TokenDecoder.decode
    - next_token.get
    - botocore.paginate.PageIterator._parse_starting_token_deprecated
    - parts.pop
    - <builtin>.range
    - <builtin>.len
    - botocore.paginate.TokenDecoder._path_set
    - decoded_token.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - op_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 374
    functionName: botocore.paginate.PageIterator._inject_starting_params
    functionSourceFile: botocore.paginate
    functionUses: 3
    functionsReached:
    - log.debug
    - botocore.paginate.PageIterator._inject_token_into_kwargs
    - encoded.encode
    - token.encode
    - botocore.paginate.TokenDecoder._path_get
    - base64.b64decode
    - <builtin>.zip
    - deprecated_token.append
    - <builtin>.int
    - <builtin>.dict
    - botocore.paginate.TokenDecoder._decode
    - json.loads
    - botocore.paginate.PageIterator._convert_deprecated_starting_token
    - next_token.append
    - botocore.paginate.TokenDecoder.decode
    - next_token.get
    - botocore.paginate.PageIterator._parse_starting_token_deprecated
    - next_token.items
    - parts.pop
    - <builtin>.range
    - botocore.paginate.PageIterator._parse_starting_token
    - <builtin>.len
    - botocore.paginate.TokenDecoder._path_set
    - decoded_token.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - current_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 359
    functionName: botocore.paginate.PageIterator._make_request
    functionSourceFile: ''
    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
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 362
    functionName: botocore.paginate.PageIterator._extract_parsed_response
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - parsed
    - primary_result_key
    - starting_truncation
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 394
    functionName: botocore.paginate.PageIterator._handle_first_request
    functionSourceFile: botocore.paginate
    functionUses: 3
    functionsReached:
    - log.debug
    - encoded.encode
    - token.encode
    - botocore.paginate.TokenDecoder._path_get
    - base64.b64decode
    - botocore.utils.validate_jmespath_for_set
    - <builtin>.zip
    - expression.split
    - deprecated_token.append
    - <builtin>.isinstance
    - <builtin>.int
    - primary_result_key.search
    - <builtin>.dict
    - botocore.paginate.TokenDecoder._decode
    - json.loads
    - botocore.paginate.PageIterator._convert_deprecated_starting_token
    - next_token.append
    - botocore.paginate.TokenDecoder.decode
    - botocore.utils.set_value_from_jmespath
    - next_token.get
    - botocore.paginate.PageIterator._parse_starting_token_deprecated
    - parts.pop
    - <builtin>.range
    - botocore.paginate.PageIterator._parse_starting_token
    - <builtin>.len
    - botocore.paginate.TokenDecoder._path_set
    - decoded_token.pop
    linkageType: pythonLinkage
    raised: []
    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: 2
    functionLinenumber: 365
    functionName: botocore.paginate.PageIterator._record_non_aggregate_key_values
    functionSourceFile: botocore.paginate
    functionUses: 3
    functionsReached:
    - botocore.utils.set_value_from_jmespath
    - expression.split
    - botocore.utils.validate_jmespath_for_set
    - <builtin>.len
    - expression.search
    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: primary_result_key.search
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - parsed
    - primary_result_key
    - truncate_amount
    - starting_truncation
    - next_token
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 429
    functionName: botocore.paginate.PageIterator._truncate_response
    functionSourceFile: botocore.paginate
    functionUses: 3
    functionsReached:
    - <builtin>.len
    - expression.split
    - botocore.utils.validate_jmespath_for_set
    - primary_result_key.search
    - botocore.utils.set_value_from_jmespath
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parsed
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 461
    functionName: botocore.paginate.PageIterator._get_next_token
    functionSourceFile: botocore.paginate
    functionUses: 3
    functionsReached:
    - <builtin>.zip
    - output_token.search
    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: next_token.values
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - op_kwargs
    - next_token
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 387
    functionName: botocore.paginate.PageIterator._inject_token_into_kwargs
    functionSourceFile: botocore.paginate
    functionUses: 4
    functionsReached:
    - next_token.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - expression
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 333
    functionName: botocore.paginate.PageIterator.search
    functionSourceFile: botocore.paginate
    functionUses: 0
    functionsReached:
    - log.debug
    - botocore.paginate.PageIterator._inject_token_into_kwargs
    - botocore.paginate.PageIterator._record_non_aggregate_key_values
    - encoded.encode
    - token.encode
    - botocore.paginate.TokenDecoder._path_get
    - output_token.search
    - base64.b64decode
    - botocore.utils.validate_jmespath_for_set
    - <builtin>.zip
    - expression.search
    - jmespath.compile
    - <builtin>.all
    - botocore.paginate.PageIterator._truncate_response
    - expression.split
    - deprecated_token.append
    - compiled.search
    - <builtin>.isinstance
    - <builtin>.int
    - primary_result_key.search
    - botocore.paginate.PageIterator._make_request
    - botocore.paginate.PageIterator._get_next_token
    - next_token.values
    - <builtin>.dict
    - botocore.paginate.TokenDecoder._decode
    - json.loads
    - botocore.paginate.PageIterator._convert_deprecated_starting_token
    - botocore.paginate.PageIterator._extract_parsed_response
    - next_token.append
    - botocore.utils.set_value_from_jmespath
    - botocore.paginate.PageIterator.__iter__
    - botocore.paginate.TokenDecoder.decode
    - next_token.get
    - botocore.paginate.PageIterator._parse_starting_token_deprecated
    - botocore.paginate.PageIterator._handle_first_request
    - next_token.items
    - parts.pop
    - <builtin>.range
    - botocore.paginate.PageIterator._parse_starting_token
    - botocore.paginate.PageIterator._inject_starting_params
    - <builtin>.len
    - botocore.paginate.TokenDecoder._path_set
    - decoded_token.pop
    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: jmespath.compile
    functionSourceFile: jmespath
    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: compiled.search
    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: 2
    functionLinenumber: -1
    functionName: botocore.paginate.PageIterator
    functionSourceFile: botocore.paginate
    functionUses: 0
    functionsReached:
    - botocore.context.with_current_context.decorator
    - functools.partial
    - functools.wraps
    - botocore.context.with_current_context
    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: expression.search
    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: next_token.items
    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>.zip
    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: output_token.search
    functionSourceFile: <builtin>
    functionUses: 4
    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: 478
    functionName: botocore.paginate.PageIterator.result_key_iters
    functionSourceFile: botocore.paginate
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - itertools.tee
    - botocore.paginate.ResultKeyIterator.__init__
    - <builtin>.zip
    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.tee
    functionSourceFile: itertools
    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
    - pages_iterator
    - result_key
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 719
    functionName: botocore.paginate.ResultKeyIterator.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 4
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 485
    functionName: botocore.paginate.PageIterator.build_full_result
    functionSourceFile: botocore.paginate
    functionUses: 0
    functionsReached:
    - log.debug
    - botocore.paginate.PageIterator._inject_token_into_kwargs
    - botocore.paginate.PageIterator._record_non_aggregate_key_values
    - encoded.encode
    - token.encode
    - botocore.paginate.TokenDecoder._path_get
    - existing_value.extend
    - botocore.utils.validate_jmespath_for_set
    - output_token.search
    - base64.b64decode
    - <builtin>.zip
    - expression.search
    - botocore.utils.merge_dicts
    - <builtin>.all
    - botocore.paginate.PageIterator._truncate_response
    - expression.split
    - deprecated_token.append
    - <builtin>.isinstance
    - <builtin>.int
    - primary_result_key.search
    - botocore.paginate.PageIterator._make_request
    - botocore.paginate.PageIterator._get_next_token
    - next_token.values
    - <builtin>.dict
    - botocore.paginate.TokenDecoder._decode
    - json.loads
    - botocore.paginate.PageIterator._convert_deprecated_starting_token
    - botocore.paginate.PageIterator._extract_parsed_response
    - next_token.append
    - botocore.utils.set_value_from_jmespath
    - botocore.paginate.PageIterator.__iter__
    - botocore.paginate.TokenDecoder.decode
    - next_token.get
    - botocore.paginate.PageIterator._parse_starting_token_deprecated
    - botocore.paginate.PageIterator._handle_first_request
    - next_token.items
    - parts.pop
    - <builtin>.range
    - botocore.paginate.PageIterator._parse_starting_token
    - botocore.paginate.PageIterator._inject_starting_params
    - <builtin>.len
    - botocore.paginate.TokenDecoder._path_set
    - decoded_token.pop
    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: existing_value.extend
    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: next_token.get
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 550
    functionName: botocore.paginate.PageIterator._parse_starting_token_deprecated
    functionSourceFile: botocore.paginate
    functionUses: 6
    functionsReached:
    - <builtin>.dict
    - log.debug
    - botocore.paginate.PageIterator._convert_deprecated_starting_token
    - parts.pop
    - <builtin>.range
    - deprecated_token.append
    - <builtin>.int
    - <builtin>.zip
    - <builtin>.len
    - next_token.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: next_token.append
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - deprecated_token
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 580
    functionName: botocore.paginate.PageIterator._convert_deprecated_starting_token
    functionSourceFile: botocore.paginate
    functionUses: 7
    functionsReached:
    - <builtin>.dict
    - log.debug
    - <builtin>.range
    - deprecated_token.append
    - <builtin>.zip
    - <builtin>.len
    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: deprecated_token.append
    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>.dict
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - method
    - pagination_config
    - model
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 602
    functionName: botocore.paginate.Paginator.__init__
    functionSourceFile: botocore.paginate
    functionUses: 0
    functionsReached:
    - keys.append
    - output.append
    - jmespath.compile
    - config.get
    - botocore.paginate.Paginator._get_input_tokens
    - <builtin>.isinstance
    - botocore.paginate.Paginator._get_output_tokens
    - botocore.paginate.Paginator._get_more_results_token
    - botocore.paginate.Paginator._get_result_keys
    - botocore.paginate.Paginator._get_limit_key
    - botocore.paginate.Paginator._get_non_aggregate_keys
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 625
    functionName: botocore.paginate.Paginator._get_output_tokens
    functionSourceFile: botocore.paginate
    functionUses: 1
    functionsReached:
    - output.append
    - <builtin>.isinstance
    - jmespath.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 634
    functionName: botocore.paginate.Paginator._get_input_tokens
    functionSourceFile: botocore.paginate
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 640
    functionName: botocore.paginate.Paginator._get_more_results_token
    functionSourceFile: botocore.paginate
    functionUses: 1
    functionsReached:
    - jmespath.compile
    - config.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 619
    functionName: botocore.paginate.Paginator._get_non_aggregate_keys
    functionSourceFile: botocore.paginate
    functionUses: 1
    functionsReached:
    - keys.append
    - jmespath.compile
    - config.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 645
    functionName: botocore.paginate.Paginator._get_result_keys
    functionSourceFile: botocore.paginate
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - jmespath.compile
    - config.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 653
    functionName: botocore.paginate.Paginator._get_limit_key
    functionSourceFile: botocore.paginate
    functionUses: 1
    functionsReached:
    - config.get
    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: 616
    functionName: botocore.paginate.Paginator.result_keys
    functionSourceFile: botocore.paginate
    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: keys.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: output.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:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 656
    functionName: botocore.paginate.Paginator.paginate
    functionSourceFile: botocore.paginate
    functionUses: 1
    functionsReached:
    - pagination_config.get
    - botocore.paginate.PageIterator.__init__
    - kwargs.pop
    - botocore.paginate.Paginator._extract_paging_params
    - <builtin>.int
    - <builtin>.isinstance
    - input_members.get
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 679
    functionName: botocore.paginate.Paginator._extract_paging_params
    functionSourceFile: botocore.paginate
    functionUses: 2
    functionsReached:
    - pagination_config.get
    - kwargs.pop
    - <builtin>.int
    - <builtin>.isinstance
    - input_members.get
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - PaginationError
    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: pagination_config.get
    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: input_members.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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 723
    functionName: botocore.paginate.ResultKeyIterator.__iter__
    functionSourceFile: botocore.paginate
    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: botocore.args
    functionSourceFile: botocore.args
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f983076e3d0>
    argNames:
    - self
    - event_emitter
    - user_agent
    - response_parser_factory
    - loader
    - exceptions_factory
    - config_store
    - user_agent_creator
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 86
    functionName: botocore.args.ClientArgsCreator.__init__
    functionSourceFile: botocore.args
    functionUses: 2
    functionsReached:
    - os.environ.get
    - botocore.useragent._get_crt_version
    - platform.system
    - platform.python_implementation
    - botocore.useragent.UserAgentString.from_environment
    - platform.machine
    - platform.python_version
    - botocore.useragent.UserAgentString.__init__
    - platform.release
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 13
    argDefaultValues:
    - <ast.Constant object at 0x7f9830d22880>
    - <ast.Constant object at 0x7f9830d228e0>
    - <ast.Constant object at 0x7f9830d22700>
    argNames:
    - self
    - service_model
    - region_name
    - is_secure
    - endpoint_url
    - verify
    - credentials
    - scoped_config
    - client_config
    - endpoint_bridge
    - auth_token
    - endpoints_ruleset_data
    - partition_data
    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
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 106
    functionName: botocore.args.ClientArgsCreator.get_client_args
    functionSourceFile: botocore.args
    functionUses: 2
    functionsReached:
    - botocore.args.ClientArgsCreator._compute_sigv4a_signing_region_set_config
    - botocore.context.get_context
    - botocore.validate.ParamValidationDecorator.__init__
    - botocore.args.ClientArgsCreator._set_region_if_custom_s3_endpoint
    - UNSAFE_URL_CHARS.intersection
    - botocore.args.ClientArgsCreator._build_endpoint_resolver
    - botocore.args.ClientArgsCreator._compute_configured_endpoint_url
    - logger.debug
    - <builtin>.all
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - config_kwargs.update
    - botocore.args.ClientArgsCreator._compute_account_id_endpoint_mode_config
    - botocore.endpoint_provider.RuleCreator.create
    - botocore.args.ClientArgsCreator._compute_signature_version_config
    - botocore.args.ClientArgsCreator._handle_checksum_config
    - botocore.utils.is_s3_accelerate_url
    - client_context.update
    - scoped_config.get
    - urllib.parse.urlsplit
    - account_id_endpoint_mode.lower
    - botocore.args.ClientArgsCreator._compute_socket_options
    - value.split
    - botocore.args.ClientArgsCreator._resolve_endpoint
    - parameter_type.lower
    - botocore.endpoint_provider.RuleSet._ingest_parameter_spec
    - os.environ.get
    - config_vars.update
    - botocore.client.ClientEndpointBridge._resolve_endpoint_variant_config_var
    - item.replace
    - botocore.endpoint.EndpointCreator.__init__
    - botocore.endpoint.EndpointCreator._get_proxies
    - botocore.config.Config.__init__
    - urllib.request.getproxies
    - botocore.args.ClientArgsCreator._is_s3_service
    - botocore.args.ClientArgsCreator._compute_retry_max_attempts
    - value.lower
    - threading.Lock
    - botocore.parsers.create_parser
    - botocore.config.Config._validate_s3_configuration
    - allowed.match
    - botocore.parsers.ResponseParserFactory.__init__
    - <builtin>.list
    - botocore.endpoint_provider.EndpointProvider.__init__
    - ctx.features.add
    - credentials.get_deferred_property
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - copy.copy
    - botocore.client.ClientEndpointBridge._resolve_use_dualstack_endpoint
    - botocore.args.ClientArgsCreator._compute_user_agent_appid_config
    - botocore.useragent.register_feature_id
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.args.ClientArgsCreator._compute_sts_endpoint_config
    - endpoint_bridge.resolve
    - <builtin>.getattr
    - <builtin>.dict
    - <builtin>.setattr
    - endpoint_config.get
    - val.lower
    - botocore.args.ClientArgsCreator._should_force_s3_global
    - kwargs.items
    - retries.pop
    - value.upper
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.endpoint.EndpointCreator.create_endpoint
    - spec.get
    - botocore.httpsession.ProxyConfiguration.__init__
    - config_vars.items
    - botocore.args.ClientArgsCreator._compute_inject_host_prefix
    - botocore.utils.ensure_boolean
    - botocore.args.ClientArgsCreator._validate_min_compression_size
    - botocore.args.ClientArgsCreator.compute_client_args
    - botocore.utils.get_environ_proxies
    - botocore.args.ClientArgsCreator.compute_s3_config
    - kwargs.pop
    - <builtin>.hasattr
    - s3_config.get
    - <builtin>.enumerate
    - botocore.args.ClientArgsCreator._compute_request_compression_config
    - botocore.parsers.ResponseParserFactory.create_parser
    - botocore.client.ClientEndpointBridge.resolver_uses_builtin_data
    - botocore.args.ClientArgsCreator._compute_checksum_config
    - botocore.args.ClientArgsCreator._set_global_sts_endpoint
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - <builtin>.int
    - urllib.request.proxy_bypass
    - botocore.utils.is_valid_endpoint_url
    - botocore.args.ClientArgsCreator._compute_auth_scheme_preference_config
    - botocore.config.Config._validate_retry_configuration
    - s3_configuration.update
    - botocore.endpoint_provider.ParameterDefinition.__init__
    - botocore.args.ClientArgsCreator._compute_s3_endpoint_config
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - s3.get
    - botocore.signers.RequestSigner.__init__
    - urllib.parse.urlsplit.netloc.endswith
    - pool_manager_kwargs.update
    - botocore.args.ClientArgsCreator._register_checksum_config_feature_ids
    - <builtin>.type
    - botocore.args.ClientArgsCreator._get_sts_regional_endpoints_config
    - botocore.args.ClientArgsCreator._compute_retry_mode
    - item.strip
    - urllib3.PoolManager
    - botocore.client.ClientEndpointBridge._is_s3_dualstack_mode
    - s3_configuration.copy
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - <builtin>.len
    - botocore.args.ClientArgsCreator._ignore_configured_endpoint_urls
    - botocore.endpoint_provider.RuleSetStandardLibrary.__init__
    - botocore.args.ClientArgsCreator.compute_endpoint_resolver_builtin_defaults
    - weakref.proxy
    - urllib.parse.urlsplit.netloc.split
    - retries.items
    - config_kwargs.get
    - contextvars.ContextVar.get
    - botocore.regions.EndpointRulesetResolver.__init__
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - socket_options.append
    - botocore.args.ClientArgsCreator._validate_s3_regional_config
    - botocore.args.ClientArgsCreator._compute_endpoint_config
    - botocore.args.ClientArgsCreator._compute_retry_config
    - urllib3.Timeout
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.endpoint.EndpointCreator._get_verify_value
    - botocore.endpoint_provider.RuleSet.__init__
    - <builtin>.set
    - botocore.args.ClientArgsCreator._compute_connect_timeout
    - botocore.endpoint.Endpoint.__init__
    - botocore.serialize.create_serializer
    - parameters.items
    - botocore.httpsession.create_urllib3_context
    - botocore.config.Config._record_user_provided_options
    - IPV6_ADDRZ_RE.match
    - event_emitter.emit
    - urllib.parse.urlparse
    - botocore.args.ClientArgsCreator._should_set_global_sts_endpoint
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 14
    IfCount: 9
    argCount: 8
    argDefaultValues: []
    argNames:
    - self
    - service_model
    - client_config
    - endpoint_bridge
    - region_name
    - endpoint_url
    - is_secure
    - scoped_config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 230
    functionName: botocore.args.ClientArgsCreator.compute_client_args
    functionSourceFile: botocore.args
    functionUses: 3
    functionsReached:
    - value.lower
    - botocore.args.ClientArgsCreator.compute_s3_config
    - botocore.args.ClientArgsCreator._compute_sigv4a_signing_region_set_config
    - botocore.context.get_context
    - config_kwargs.get
    - botocore.args.ClientArgsCreator._set_region_if_custom_s3_endpoint
    - contextvars.ContextVar.get
    - ctx.features.add
    - botocore.args.ClientArgsCreator._compute_request_compression_config
    - botocore.args.ClientArgsCreator._compute_configured_endpoint_url
    - botocore.args.ClientArgsCreator._compute_checksum_config
    - socket_options.append
    - logger.debug
    - botocore.args.ClientArgsCreator._should_set_global_sts_endpoint
    - botocore.args.ClientArgsCreator._set_global_sts_endpoint
    - botocore.args.ClientArgsCreator._validate_s3_regional_config
    - botocore.args.ClientArgsCreator._compute_user_agent_appid_config
    - botocore.args.ClientArgsCreator._compute_endpoint_config
    - botocore.args.ClientArgsCreator._compute_retry_config
    - logger.warning
    - config_kwargs.update
    - botocore.args.ClientArgsCreator._compute_account_id_endpoint_mode_config
    - botocore.useragent.register_feature_id
    - <builtin>.isinstance
    - <builtin>.int
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.args.ClientArgsCreator._compute_sts_endpoint_config
    - endpoint_bridge.resolve
    - botocore.args.ClientArgsCreator._compute_signature_version_config
    - botocore.args.ClientArgsCreator._handle_checksum_config
    - botocore.args.ClientArgsCreator._compute_connect_timeout
    - <builtin>.dict
    - scoped_config.get
    - botocore.args.ClientArgsCreator._compute_auth_scheme_preference_config
    - account_id_endpoint_mode.lower
    - endpoint_config.get
    - s3_configuration.update
    - val.lower
    - botocore.args.ClientArgsCreator._compute_socket_options
    - botocore.args.ClientArgsCreator._compute_s3_endpoint_config
    - botocore.args.ClientArgsCreator._should_force_s3_global
    - value.split
    - botocore.args.ClientArgsCreator._resolve_endpoint
    - retries.pop
    - value.upper
    - botocore.args.ClientArgsCreator._register_checksum_config_feature_ids
    - <builtin>.type
    - botocore.args.ClientArgsCreator._validate_min_compression_size
    - botocore.args.ClientArgsCreator._get_sts_regional_endpoints_config
    - item.strip
    - item.replace
    - botocore.args.ClientArgsCreator._compute_retry_mode
    - s3_configuration.copy
    - botocore.args.ClientArgsCreator._compute_inject_host_prefix
    - botocore.args.ClientArgsCreator._is_s3_service
    - botocore.args.ClientArgsCreator._compute_retry_max_attempts
    - botocore.utils.ensure_boolean
    - <builtin>.len
    - botocore.args.ClientArgsCreator._ignore_configured_endpoint_urls
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f9830aa8520>
    argNames:
    - self
    - service_id
    - region_name
    - signing_name
    - signature_version
    - credentials
    - event_emitter
    - auth_token
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 71
    functionName: botocore.signers.RequestSigner.__init__
    functionSourceFile: botocore.signers
    functionUses: 3
    functionsReached:
    - weakref.proxy
    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: event_emitter.emit
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 14
    argDefaultValues: []
    argNames:
    - self
    - endpoints_ruleset_data
    - partition_data
    - client_config
    - service_model
    - endpoint_region_name
    - region_name
    - endpoint_url
    - endpoint
    - is_secure
    - endpoint_bridge
    - event_emitter
    - credentials
    - account_id_endpoint_mode
    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
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 686
    functionName: botocore.args.ClientArgsCreator._build_endpoint_resolver
    functionSourceFile: botocore.args
    functionUses: 3
    functionsReached:
    - botocore.args.ClientArgsCreator.compute_endpoint_resolver_builtin_defaults
    - urllib.parse.urlsplit.netloc.split
    - botocore.args.ClientArgsCreator.compute_s3_config
    - kwargs.pop
    - s3_config.get
    - botocore.endpoint_provider.EndpointProvider.__init__
    - botocore.regions.EndpointRulesetResolver.__init__
    - botocore.client.ClientEndpointBridge.resolver_uses_builtin_data
    - credentials.get_deferred_property
    - <builtin>.all
    - botocore.args.ClientArgsCreator._validate_s3_regional_config
    - botocore.client.ClientEndpointBridge._resolve_use_dualstack_endpoint
    - botocore.endpoint_provider.RuleSet.__init__
    - botocore.endpoint_provider.RuleCreator.create
    - <builtin>.getattr
    - <builtin>.set
    - botocore.utils.is_s3_accelerate_url
    - client_context.update
    - urllib.parse.urlsplit
    - endpoint_config.get
    - s3_configuration.update
    - botocore.endpoint_provider.ParameterDefinition.__init__
    - botocore.args.ClientArgsCreator._should_force_s3_global
    - parameter_type.lower
    - urllib.parse.urlsplit.netloc.endswith
    - botocore.endpoint_provider.RuleSet._ingest_parameter_spec
    - botocore.args.ClientArgsCreator._get_sts_regional_endpoints_config
    - botocore.client.ClientEndpointBridge._resolve_endpoint_variant_config_var
    - parameters.items
    - spec.get
    - botocore.client.ClientEndpointBridge._is_s3_dualstack_mode
    - s3_configuration.copy
    - botocore.args.ClientArgsCreator._is_s3_service
    - <builtin>.len
    - botocore.args.ClientArgsCreator._should_set_global_sts_endpoint
    - botocore.endpoint_provider.RuleSetStandardLibrary.__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: scoped_config.get
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - client_config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 396
    functionName: botocore.args.ClientArgsCreator.compute_s3_config
    functionSourceFile: botocore.args
    functionUses: 5
    functionsReached:
    - s3_configuration.update
    - s3_configuration.copy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client_config
    - endpoint_url
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 375
    functionName: botocore.args.ClientArgsCreator._compute_configured_endpoint_url
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - botocore.args.ClientArgsCreator._ignore_configured_endpoint_urls
    - logger.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - region_name
    - endpoint_url
    - is_secure
    - endpoint_bridge
    - s3_config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 425
    functionName: botocore.args.ClientArgsCreator._compute_endpoint_config
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - botocore.args.ClientArgsCreator._set_global_sts_endpoint
    - botocore.args.ClientArgsCreator._get_sts_regional_endpoints_config
    - botocore.args.ClientArgsCreator._validate_s3_regional_config
    - endpoint_bridge.resolve
    - botocore.args.ClientArgsCreator._set_region_if_custom_s3_endpoint
    - endpoint_config.get
    - botocore.args.ClientArgsCreator._compute_s3_endpoint_config
    - botocore.args.ClientArgsCreator._should_force_s3_global
    - botocore.args.ClientArgsCreator._resolve_endpoint
    - botocore.args.ClientArgsCreator._compute_sts_endpoint_config
    - botocore.args.ClientArgsCreator._should_set_global_sts_endpoint
    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: config_kwargs.update
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 571
    functionName: botocore.args.ClientArgsCreator._compute_retry_config
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - retries.pop
    - botocore.args.ClientArgsCreator._compute_retry_max_attempts
    - config_kwargs.get
    - botocore.args.ClientArgsCreator._compute_retry_mode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 621
    functionName: botocore.args.ClientArgsCreator._compute_connect_timeout
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - config_kwargs.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 846
    functionName: botocore.args.ClientArgsCreator._compute_user_agent_appid_config
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - <builtin>.len
    - logger.warning
    - config_kwargs.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 634
    functionName: botocore.args.ClientArgsCreator._compute_request_compression_config
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - config_kwargs.get
    - val.lower
    - <builtin>.isinstance
    - <builtin>.int
    - botocore.utils.ensure_boolean
    - botocore.args.ClientArgsCreator._validate_min_compression_size
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 863
    functionName: botocore.args.ClientArgsCreator._compute_sigv4a_signing_region_set_config
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - config_kwargs.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 873
    functionName: botocore.args.ClientArgsCreator._compute_checksum_config
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - value.lower
    - botocore.context.get_context
    - config_kwargs.get
    - botocore.useragent.register_feature_id
    - contextvars.ContextVar.get
    - <builtin>.isinstance
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    - value.upper
    - botocore.args.ClientArgsCreator._register_checksum_config_feature_ids
    - botocore.args.ClientArgsCreator._handle_checksum_config
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 920
    functionName: botocore.args.ClientArgsCreator._compute_account_id_endpoint_mode_config
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - <builtin>.isinstance
    - account_id_endpoint_mode.lower
    - config_kwargs.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client_config
    - config_kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 356
    functionName: botocore.args.ClientArgsCreator._compute_inject_host_prefix
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client_config
    - config_kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 950
    functionName: botocore.args.ClientArgsCreator._compute_auth_scheme_preference_config
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - value.split
    - <builtin>.isinstance
    - item.strip
    - item.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client_config
    - config_kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 985
    functionName: botocore.args.ClientArgsCreator._compute_signature_version_config
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - service_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 415
    functionName: botocore.args.ClientArgsCreator._is_s3_service
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830858f10>
    argNames:
    - self
    - scoped_config
    - client_config
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 556
    functionName: botocore.args.ClientArgsCreator._compute_socket_options
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - socket_options.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - client_config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 385
    functionName: botocore.args.ClientArgsCreator._ignore_configured_endpoint_urls
    functionSourceFile: ''
    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: s3_configuration.copy
    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: s3_configuration.update
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - s3_config
    - resolve_endpoint_kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 449
    functionName: botocore.args.ClientArgsCreator._compute_s3_endpoint_config
    functionSourceFile: botocore.args
    functionUses: 5
    functionsReached:
    - botocore.args.ClientArgsCreator._validate_s3_regional_config
    - botocore.args.ClientArgsCreator._set_region_if_custom_s3_endpoint
    - botocore.args.ClientArgsCreator._should_force_s3_global
    - botocore.args.ClientArgsCreator._resolve_endpoint
    - endpoint_bridge.resolve
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - resolve_endpoint_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 499
    functionName: botocore.args.ClientArgsCreator._compute_sts_endpoint_config
    functionSourceFile: botocore.args
    functionUses: 5
    functionsReached:
    - botocore.args.ClientArgsCreator._should_set_global_sts_endpoint
    - botocore.args.ClientArgsCreator._get_sts_regional_endpoints_config
    - botocore.args.ClientArgsCreator._set_global_sts_endpoint
    - endpoint_config.get
    - botocore.args.ClientArgsCreator._resolve_endpoint
    - endpoint_bridge.resolve
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - region_name
    - endpoint_url
    - is_secure
    - endpoint_bridge
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 544
    functionName: botocore.args.ClientArgsCreator._resolve_endpoint
    functionSourceFile: botocore.args
    functionUses: 7
    functionsReached:
    - endpoint_bridge.resolve
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - region_name
    - s3_config
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 470
    functionName: botocore.args.ClientArgsCreator._should_force_s3_global
    functionSourceFile: botocore.args
    functionUses: 8
    functionsReached:
    - botocore.args.ClientArgsCreator._validate_s3_regional_config
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - endpoint_config
    - endpoint_bridge
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 485
    functionName: botocore.args.ClientArgsCreator._set_region_if_custom_s3_endpoint
    functionSourceFile: botocore.args
    functionUses: 6
    functionsReached:
    - endpoint_bridge.resolve
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_val
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 479
    functionName: botocore.args.ClientArgsCreator._validate_s3_regional_config
    functionSourceFile: ''
    functionUses: 9
    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_bridge.resolve
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - region_name
    - endpoint_url
    - endpoint_config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 511
    functionName: botocore.args.ClientArgsCreator._should_set_global_sts_endpoint
    functionSourceFile: botocore.args
    functionUses: 8
    functionsReached:
    - botocore.args.ClientArgsCreator._get_sts_regional_endpoints_config
    - endpoint_config.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - endpoint_config
    - is_secure
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 539
    functionName: botocore.args.ClientArgsCreator._set_global_sts_endpoint
    functionSourceFile: ''
    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: endpoint_config.get
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 524
    functionName: botocore.args.ClientArgsCreator._get_sts_regional_endpoints_config
    functionSourceFile: ''
    functionUses: 9
    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: socket_options.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 575
    functionName: botocore.args.ClientArgsCreator._compute_retry_max_attempts
    functionSourceFile: botocore.args
    functionUses: 5
    functionsReached:
    - retries.pop
    - config_kwargs.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 607
    functionName: botocore.args.ClientArgsCreator._compute_retry_mode
    functionSourceFile: botocore.args
    functionUses: 5
    functionsReached:
    - config_kwargs.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: config_kwargs.get
    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: retries.pop
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - min_size
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 656
    functionName: botocore.args.ClientArgsCreator._validate_min_compression_size
    functionSourceFile: botocore.args
    functionUses: 5
    functionsReached:
    - <builtin>.int
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - val
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 680
    functionName: botocore.args.ClientArgsCreator._ensure_boolean
    functionSourceFile: botocore.args
    functionUses: 0
    functionsReached:
    - val.lower
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 9
    argDefaultValues: []
    argNames:
    - self
    - region_name
    - service_name
    - s3_config
    - endpoint_bridge
    - client_endpoint_url
    - legacy_endpoint_url
    - credentials
    - account_id_endpoint_mode
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 754
    functionName: botocore.args.ClientArgsCreator.compute_endpoint_resolver_builtin_defaults
    functionSourceFile: botocore.args
    functionUses: 4
    functionsReached:
    - urllib.parse.urlsplit.netloc.split
    - s3_config.get
    - botocore.client.ClientEndpointBridge.resolver_uses_builtin_data
    - credentials.get_deferred_property
    - <builtin>.all
    - botocore.args.ClientArgsCreator._validate_s3_regional_config
    - botocore.client.ClientEndpointBridge._resolve_use_dualstack_endpoint
    - <builtin>.getattr
    - <builtin>.set
    - botocore.utils.is_s3_accelerate_url
    - urllib.parse.urlsplit
    - endpoint_config.get
    - botocore.args.ClientArgsCreator._should_force_s3_global
    - urllib.parse.urlsplit.netloc.endswith
    - botocore.args.ClientArgsCreator._get_sts_regional_endpoints_config
    - botocore.client.ClientEndpointBridge._resolve_endpoint_variant_config_var
    - botocore.client.ClientEndpointBridge._is_s3_dualstack_mode
    - <builtin>.len
    - botocore.args.ClientArgsCreator._should_set_global_sts_endpoint
    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: client_context.update
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7f9830dd80a0>
    - <ast.Constant object at 0x7f9830dd8b50>
    argNames:
    - self
    - endpoint_ruleset_data
    - partition_data
    - service_model
    - builtins
    - client_context
    - event_emitter
    - use_ssl
    - requested_auth_scheme
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 466
    functionName: botocore.regions.EndpointRulesetResolver.__init__
    functionSourceFile: botocore.regions
    functionUses: 4
    functionsReached:
    - <builtin>.getattr
    - parameters.items
    - spec.get
    - kwargs.pop
    - botocore.endpoint_provider.ParameterDefinition.__init__
    - botocore.endpoint_provider.RuleSet.__init__
    - botocore.endpoint_provider.EndpointProvider.__init__
    - parameter_type.lower
    - botocore.endpoint_provider.RuleCreator.create
    - botocore.endpoint_provider.RuleSet._ingest_parameter_spec
    - botocore.endpoint_provider.RuleSetStandardLibrary.__init__
    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: 700
    functionName: botocore.client.ClientEndpointBridge.resolver_uses_builtin_data
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_var
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 736
    functionName: botocore.client.ClientEndpointBridge._resolve_endpoint_variant_config_var
    functionSourceFile: botocore.client
    functionUses: 7
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - service_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 748
    functionName: botocore.client.ClientEndpointBridge._resolve_use_dualstack_endpoint
    functionSourceFile: botocore.client
    functionUses: 6
    functionsReached:
    - botocore.client.ClientEndpointBridge._is_s3_dualstack_mode
    - botocore.client.ClientEndpointBridge._resolve_endpoint_variant_config_var
    - <builtin>.getattr
    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: credentials.get_deferred_property
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - config_kwargs
    - config_key
    - valid_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 885
    functionName: botocore.args.ClientArgsCreator._handle_checksum_config
    functionSourceFile: botocore.args
    functionUses: 5
    functionsReached:
    - value.lower
    - botocore.context.get_context
    - config_kwargs.get
    - botocore.useragent.register_feature_id
    - contextvars.ContextVar.get
    - <builtin>.isinstance
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    - value.upper
    - botocore.args.ClientArgsCreator._register_checksum_config_feature_ids
    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.lower
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - value
    - config_key
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 907
    functionName: botocore.args.ClientArgsCreator._register_checksum_config_feature_ids
    functionSourceFile: botocore.args
    functionUses: 6
    functionsReached:
    - botocore.context.get_context
    - contextvars.ContextVar.get
    - botocore.useragent.register_feature_id
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    - value.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: value.upper
    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: account_id_endpoint_mode.lower
    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: item.replace
    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: item.strip
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f98309a7490>
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 999
    functionName: botocore.args.ClientConfigString.__new__
    functionSourceFile: botocore.args
    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: botocore.regions
    functionSourceFile: botocore.regions
    functionUses: 0
    functionsReached:
    - logging.getLogger
    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 0x7f9830769220>
    argNames:
    - self
    - service_name
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 58
    functionName: botocore.regions.BaseEndpointResolver.construct_endpoint
    functionSourceFile: botocore.regions
    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: 87
    functionName: botocore.regions.BaseEndpointResolver.get_available_partitions
    functionSourceFile: botocore.regions
    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 0x7f9830769c10>
    - <ast.Constant object at 0x7f9830769490>
    argNames:
    - self
    - service_name
    - partition_name
    - allow_non_regional
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 94
    functionName: botocore.regions.BaseEndpointResolver.get_available_endpoints
    functionSourceFile: botocore.regions
    functionUses: 0
    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 0x7f98307690d0>
    argNames:
    - self
    - endpoint_data
    - uses_builtin_data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 121
    functionName: botocore.regions.EndpointResolver.__init__
    functionSourceFile: botocore.regions
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830d3c310>
    argNames:
    - self
    - service_name
    - partition_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 135
    functionName: botocore.regions.EndpointResolver.get_service_endpoints_data
    functionSourceFile: botocore.regions
    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: 1
    functionLinenumber: 144
    functionName: botocore.regions.EndpointResolver.get_available_partitions
    functionSourceFile: botocore.regions
    functionUses: 0
    functionsReached:
    - result.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: result.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830b47f40>
    - <ast.Constant object at 0x7f9830b47970>
    - <ast.Constant object at 0x7f9830b479a0>
    argNames:
    - self
    - service_name
    - partition_name
    - allow_non_regional
    - endpoint_variant_tags
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 150
    functionName: botocore.regions.EndpointResolver.get_available_endpoints
    functionSourceFile: botocore.regions
    functionUses: 0
    functionsReached:
    - variant.copy
    - <builtin>.set
    - result.append
    - endpoint_data.get
    - botocore.regions.EndpointResolver._retrieve_variant_data
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - endpoint_data
    - tags
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 324
    functionName: botocore.regions.EndpointResolver._retrieve_variant_data
    functionSourceFile: botocore.regions
    functionUses: 6
    functionsReached:
    - variant.copy
    - <builtin>.set
    - endpoint_data.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830f31670>
    argNames:
    - self
    - partition_name
    - endpoint_variant_tags
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 178
    functionName: botocore.regions.EndpointResolver.get_partition_dns_suffix
    functionSourceFile: botocore.regions
    functionUses: 0
    functionsReached:
    - variant.copy
    - <builtin>.set
    - partition.get
    - endpoint_data.get
    - botocore.regions.EndpointResolver._retrieve_variant_data
    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: partition.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9830f312e0>
    - <ast.Constant object at 0x7f9830f313d0>
    - <ast.Constant object at 0x7f9830f31730>
    - <ast.Constant object at 0x7f9830f31fa0>
    argNames:
    - self
    - service_name
    - region_name
    - partition_name
    - use_dualstack_endpoint
    - use_fips_endpoint
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 193
    functionName: botocore.regions.EndpointResolver.construct_endpoint
    functionSourceFile: botocore.regions
    functionUses: 0
    functionsReached:
    - botocore.regions.EndpointResolver._create_tag_list
    - variant.copy
    - botocore.regions.EndpointResolver._merge_keys
    - LOG.debug
    - partition.get
    - <builtin>.set
    - LOG.warning
    - template.format
    - botocore.regions.EndpointResolver._resolve_variant
    - botocore.regions.EndpointResolver._resolve
    - re.compile
    - endpoint_data.get
    - botocore.regions.EndpointResolver._region_match
    - botocore.regions.EndpointResolver._endpoint_for_partition
    - tags.append
    - service_data.get
    - botocore.regions.EndpointResolver._retrieve_variant_data
    - botocore.regions.EndpointResolver._expand_template
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f9830aa8790>
    argNames:
    - self
    - partition
    - service_name
    - region_name
    - use_dualstack_endpoint
    - use_fips_endpoint
    - force_partition
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 252
    functionName: botocore.regions.EndpointResolver._endpoint_for_partition
    functionSourceFile: botocore.regions
    functionUses: 1
    functionsReached:
    - botocore.regions.EndpointResolver._create_tag_list
    - variant.copy
    - botocore.regions.EndpointResolver._merge_keys
    - partition.get
    - LOG.debug
    - <builtin>.set
    - LOG.warning
    - template.format
    - botocore.regions.EndpointResolver._resolve_variant
    - botocore.regions.EndpointResolver._resolve
    - re.compile
    - endpoint_data.get
    - botocore.regions.EndpointResolver._region_match
    - tags.append
    - service_data.get
    - botocore.regions.EndpointResolver._retrieve_variant_data
    - botocore.regions.EndpointResolver._expand_template
    linkageType: pythonLinkage
    raised:
    - NoRegionError
    - EndpointVariantError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - region_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 243
    functionName: botocore.regions.EndpointResolver.get_partition_for_region
    functionSourceFile: botocore.regions
    functionUses: 0
    functionsReached:
    - re.compile
    - botocore.regions.EndpointResolver._region_match
    linkageType: pythonLinkage
    raised:
    - UnknownRegionError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - partition
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 317
    functionName: botocore.regions.EndpointResolver._region_match
    functionSourceFile: botocore.regions
    functionUses: 3
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - partition
    - service_name
    - service_data
    - endpoint_name
    - use_dualstack_endpoint
    - use_fips_endpoint
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 349
    functionName: botocore.regions.EndpointResolver._resolve
    functionSourceFile: botocore.regions
    functionUses: 2
    functionsReached:
    - botocore.regions.EndpointResolver._create_tag_list
    - variant.copy
    - botocore.regions.EndpointResolver._merge_keys
    - partition.get
    - <builtin>.set
    - LOG.warning
    - template.format
    - botocore.regions.EndpointResolver._resolve_variant
    - endpoint_data.get
    - tags.append
    - service_data.get
    - botocore.regions.EndpointResolver._retrieve_variant_data
    - botocore.regions.EndpointResolver._expand_template
    linkageType: pythonLinkage
    raised:
    - EndpointVariantError
    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: service_data.get
    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: endpoint_data.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: variant.copy
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - use_dualstack_endpoint
    - use_fips_endpoint
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 331
    functionName: botocore.regions.EndpointResolver._create_tag_list
    functionSourceFile: botocore.regions
    functionUses: 3
    functionsReached:
    - tags.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: tags.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tags
    - endpoint_data
    - service_defaults
    - partition_defaults
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 339
    functionName: botocore.regions.EndpointResolver._resolve_variant
    functionSourceFile: botocore.regions
    functionUses: 3
    functionsReached:
    - variant.copy
    - <builtin>.set
    - botocore.regions.EndpointResolver._merge_keys
    - endpoint_data.get
    - botocore.regions.EndpointResolver._retrieve_variant_data
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - from_data
    - result
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 415
    functionName: botocore.regions.EndpointResolver._merge_keys
    functionSourceFile: ''
    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: LOG.warning
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - partition
    - template
    - service_name
    - endpoint_name
    - dnsSuffix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 420
    functionName: botocore.regions.EndpointResolver._expand_template
    functionSourceFile: botocore.regions
    functionUses: 3
    functionsReached:
    - template.format
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ruleset_data
    - partition_data
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 704
    functionName: botocore.endpoint_provider.EndpointProvider.__init__
    functionSourceFile: botocore.endpoint_provider
    functionUses: 5
    functionsReached:
    - <builtin>.getattr
    - parameters.items
    - spec.get
    - kwargs.pop
    - botocore.endpoint_provider.ParameterDefinition.__init__
    - botocore.endpoint_provider.RuleSet.__init__
    - parameter_type.lower
    - botocore.endpoint_provider.RuleCreator.create
    - botocore.endpoint_provider.RuleSet._ingest_parameter_spec
    - botocore.endpoint_provider.RuleSetStandardLibrary.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - operation_model
    - call_args
    - request_context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 490
    functionName: botocore.regions.EndpointRulesetResolver.construct_endpoint
    functionSourceFile: botocore.regions
    functionUses: 0
    functionsReached:
    - provider_result._replace
    - _end_cap_regex.sub
    - botocore.regions.EndpointRulesetResolver._register_endpoint_feature_ids
    - botocore.regions.EndpointRulesetResolver._get_static_context_params
    - botocore.xform_name
    - enum.Enum.__members__.values
    - <builtin>.callable
    - botocore.context.get_context
    - contextvars.ContextVar.get
    - builtins.get
    - provider_result.headers.items
    - ctx.features.add
    - provider_result.url.startswith
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_dynamic_context_param
    - static_ctx_params.get
    - _first_cap_regex.sub
    - copy.copy
    - botocore.endpoint_provider.RuleSet.evaluate
    - msg.startswith
    - matched.lower
    - rule.evaluate
    - botocore.useragent.register_feature_id
    - msg.split
    - params.get
    - param_val.upper
    - input_params.get
    - _USERAGENT_FEATURE_MAPPINGS.get
    - call_args.get
    - botocore.regions.EndpointRulesetResolver._get_customized_builtins
    - botocore.regions.EndpointRulesetResolver._get_dynamic_context_params
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_static_context_param
    - spec.process_input
    - Exception.__init__
    - _special_case_transform.search
    - botocore.regions.EndpointRulesetResolver._get_provider_params
    - msg.lower
    - botocore.endpoint_provider.EndpointProvider.resolve_endpoint
    - params_for_error.items
    - botocore.regions.EndpointRulesetResolver._resolve_param_from_context
    - input_parameters.copy
    - botocore.endpoint_provider.RuleSet.process_input_parameters
    - LOG.debug
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_builtin
    - botocore.regions.EndpointRulesetResolver._get_client_context_params
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_operation_context_param
    - botocore.regions.EndpointRulesetResolver.ruleset_error_to_botocore_exception
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_client_context_param
    - jmespath.search
    - is_special.group
    - botocore.exceptions.BotoCoreError.__init__
    - <builtin>.len
    - ruleset_exception.kwargs.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - operation_model
    - call_args
    - request_context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 544
    functionName: botocore.regions.EndpointRulesetResolver._get_provider_params
    functionSourceFile: botocore.regions
    functionUses: 1
    functionsReached:
    - _end_cap_regex.sub
    - botocore.regions.EndpointRulesetResolver._register_endpoint_feature_ids
    - botocore.regions.EndpointRulesetResolver._get_static_context_params
    - botocore.xform_name
    - enum.Enum.__members__.values
    - <builtin>.callable
    - botocore.context.get_context
    - contextvars.ContextVar.get
    - builtins.get
    - ctx.features.add
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_dynamic_context_param
    - static_ctx_params.get
    - _first_cap_regex.sub
    - copy.copy
    - matched.lower
    - botocore.useragent.register_feature_id
    - param_val.upper
    - _USERAGENT_FEATURE_MAPPINGS.get
    - call_args.get
    - botocore.regions.EndpointRulesetResolver._get_customized_builtins
    - botocore.regions.EndpointRulesetResolver._get_dynamic_context_params
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_static_context_param
    - _special_case_transform.search
    - botocore.regions.EndpointRulesetResolver._resolve_param_from_context
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_builtin
    - botocore.regions.EndpointRulesetResolver._get_client_context_params
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_operation_context_param
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_client_context_param
    - jmespath.search
    - is_special.group
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - input_parameters
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 708
    functionName: botocore.endpoint_provider.EndpointProvider.resolve_endpoint
    functionSourceFile: botocore.endpoint_provider
    functionUses: 1
    functionsReached:
    - input_parameters.copy
    - botocore.endpoint_provider.RuleSet.process_input_parameters
    - botocore.endpoint_provider.RuleSet.evaluate
    - rule.evaluate
    - spec.process_input
    - input_params.get
    - params_for_error.items
    linkageType: pythonLinkage
    raised:
    - EndpointResolutionError
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 1
    IfCount: 13
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ruleset_exception
    - params
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 810
    functionName: botocore.regions.EndpointRulesetResolver.ruleset_error_to_botocore_exception
    functionSourceFile: botocore.regions
    functionUses: 1
    functionsReached:
    - msg.startswith
    - Exception.__init__
    - msg.split
    - params.get
    - botocore.exceptions.BotoCoreError.__init__
    - msg.lower
    - ruleset_exception.kwargs.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: provider_result.url.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: provider_result._replace
    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: provider_result.headers.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: 4
    argDefaultValues: []
    argNames:
    - self
    - operation_model
    - call_args
    - request_context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 660
    functionName: botocore.regions.EndpointRulesetResolver._get_customized_builtins
    functionSourceFile: botocore.regions
    functionUses: 2
    functionsReached:
    - copy.copy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - param_name
    - operation_model
    - call_args
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 578
    functionName: botocore.regions.EndpointRulesetResolver._resolve_param_from_context
    functionSourceFile: botocore.regions
    functionUses: 2
    functionsReached:
    - static_ctx_params.get
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - botocore.xform_name
    - botocore.regions.EndpointRulesetResolver._get_static_context_params
    - botocore.regions.EndpointRulesetResolver._get_dynamic_context_params
    - botocore.regions.EndpointRulesetResolver._get_client_context_params
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_operation_context_param
    - <builtin>.len
    - matched.lower
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_static_context_param
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_client_context_param
    - jmespath.search
    - is_special.group
    - _special_case_transform.search
    - botocore.regions.EndpointRulesetResolver._resolve_param_as_dynamic_context_param
    - call_args.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - builtin_name
    - builtins
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 628
    functionName: botocore.regions.EndpointRulesetResolver._resolve_param_as_builtin
    functionSourceFile: botocore.regions
    functionUses: 2
    functionsReached:
    - enum.Enum.__members__.values
    - builtins.get
    - <builtin>.callable
    linkageType: pythonLinkage
    raised:
    - UnknownEndpointResolutionBuiltInName
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - param_name
    - param_val
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 865
    functionName: botocore.regions.EndpointRulesetResolver._register_endpoint_feature_ids
    functionSourceFile: botocore.regions
    functionUses: 2
    functionsReached:
    - botocore.context.get_context
    - contextvars.ContextVar.get
    - botocore.useragent.register_feature_id
    - param_val.upper
    - _USERAGENT_FEATURE_MAPPINGS.get
    - ctx.features.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - param_name
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 600
    functionName: botocore.regions.EndpointRulesetResolver._resolve_param_as_static_context_param
    functionSourceFile: botocore.regions
    functionUses: 3
    functionsReached:
    - static_ctx_params.get
    - botocore.regions.EndpointRulesetResolver._get_static_context_params
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - param_name
    - operation_model
    - call_args
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 606
    functionName: botocore.regions.EndpointRulesetResolver._resolve_param_as_dynamic_context_param
    functionSourceFile: botocore.regions
    functionUses: 3
    functionsReached:
    - call_args.get
    - botocore.regions.EndpointRulesetResolver._get_dynamic_context_params
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - param_name
    - operation_model
    - call_args
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 620
    functionName: botocore.regions.EndpointRulesetResolver._resolve_param_as_operation_context_param
    functionSourceFile: botocore.regions
    functionUses: 3
    functionsReached:
    - jmespath.search
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - param_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 614
    functionName: botocore.regions.EndpointRulesetResolver._resolve_param_as_client_context_param
    functionSourceFile: botocore.regions
    functionUses: 3
    functionsReached:
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - botocore.xform_name
    - botocore.regions.EndpointRulesetResolver._get_client_context_params
    - matched.lower
    - is_special.group
    - _special_case_transform.search
    - <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: static_ctx_params.get
    functionSourceFile: <builtin>
    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: call_args.get
    functionSourceFile: <builtin>
    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: jmespath.search
    functionSourceFile: jmespath
    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: enum.Enum.__members__.values
    functionSourceFile: enum
    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: builtins.get
    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: 2
    functionLinenumber: -1
    functionName: botocore.regions.EndpointRulesetResolver
    functionSourceFile: botocore.regions
    functionUses: 0
    functionsReached:
    - botocore.utils.instance_cache
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 4
    IfCount: 10
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - auth_schemes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 675
    functionName: botocore.regions.EndpointRulesetResolver.auth_schemes_to_signing_ctx
    functionSourceFile: botocore.regions
    functionUses: 0
    functionsReached:
    - <builtin>.next
    - botoname.startswith
    - LOG.debug
    - signing_context.update
    - botocore.regions.EndpointRulesetResolver._does_botocore_authname_match_ruleset_authname
    - botocore.regions.EndpointRulesetResolver._strip_sig_prefix
    - s.get
    - <builtin>.isinstance
    - <builtin>.any
    - val.lower
    - auth_name.startswith
    - botoname.split
    - botocore.utils.ensure_boolean
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - MissingDependencyException
    - TypeError
    - UnknownSignatureVersionError
    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: s.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: 2
    argDefaultValues: []
    argNames:
    - self
    - auth_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 774
    functionName: botocore.regions.EndpointRulesetResolver._strip_sig_prefix
    functionSourceFile: botocore.regions
    functionUses: 2
    functionsReached:
    - auth_name.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - botoname
    - rsname
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 778
    functionName: botocore.regions.EndpointRulesetResolver._does_botocore_authname_match_ruleset_authname
    functionSourceFile: botocore.regions
    functionUses: 1
    functionsReached:
    - botocore.regions.EndpointRulesetResolver._strip_sig_prefix
    - botoname.startswith
    - auth_name.startswith
    - botoname.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: signing_context.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: auth_name.startswith
    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: botoname.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: botoname.startswith
    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: ruleset_exception.kwargs.get
    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: msg.startswith
    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: msg.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: msg.lower
    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: param_val.upper
    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: botocore.endpoint_provider
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - string.Formatter
    - logging.getLogger
    - re.compile
    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: string.Formatter
    functionSourceFile: string
    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
    - partitions_data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 57
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.__init__
    functionSourceFile: botocore.endpoint_provider
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - argument
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 60
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.is_func
    functionSourceFile: botocore.endpoint_provider
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - argument
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 68
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.is_ref
    functionSourceFile: botocore.endpoint_provider
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - argument
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 76
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.is_template
    functionSourceFile: botocore.endpoint_provider
    functionUses: 2
    functionsReached:
    - TEMPLATE_STRING_RE.search
    - <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: TEMPLATE_STRING_RE.search
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - value
    - scope_vars
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 87
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.resolve_template_string
    functionSourceFile: botocore.endpoint_provider
    functionUses: 2
    functionsReached:
    - reference.split
    - string.Formatter.parse
    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: string.Formatter.parse
    functionSourceFile: string
    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: reference.split
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - value
    - scope_vars
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 106
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.resolve_value
    functionSourceFile: botocore.endpoint_provider
    functionUses: 1
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - string.Formatter.parse
    - botocore.endpoint_provider.RuleSetStandardLibrary.is_template
    - TEMPLATE_STRING_RE.search
    - _first_cap_regex.sub
    - botocore.endpoint_provider.RuleSetStandardLibrary.resolve_value
    - matched.lower
    - <builtin>.isinstance
    - botocore.endpoint_provider.RuleSetStandardLibrary.convert_func_name
    - botocore.endpoint_provider.RuleSetStandardLibrary.is_ref
    - <builtin>.getattr
    - botocore.endpoint_provider.RuleSetStandardLibrary.resolve_template_string
    - scope_vars.get
    - reference.split
    - _special_case_transform.search
    - normalized_name.replace
    - botocore.endpoint_provider.RuleSetStandardLibrary.call_function
    - botocore.endpoint_provider.RuleSetStandardLibrary.is_func
    - is_special.group
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - func_signature
    - scope_vars
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 133
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.call_function
    functionSourceFile: botocore.endpoint_provider
    functionUses: 1
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - string.Formatter.parse
    - botocore.endpoint_provider.RuleSetStandardLibrary.is_template
    - TEMPLATE_STRING_RE.search
    - _first_cap_regex.sub
    - botocore.endpoint_provider.RuleSetStandardLibrary.resolve_value
    - matched.lower
    - <builtin>.isinstance
    - botocore.endpoint_provider.RuleSetStandardLibrary.convert_func_name
    - botocore.endpoint_provider.RuleSetStandardLibrary.is_ref
    - <builtin>.getattr
    - botocore.endpoint_provider.RuleSetStandardLibrary.resolve_template_string
    - scope_vars.get
    - reference.split
    - _special_case_transform.search
    - normalized_name.replace
    - botocore.endpoint_provider.RuleSetStandardLibrary.call_function
    - botocore.endpoint_provider.RuleSetStandardLibrary.is_func
    - is_special.group
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - EndpointResolutionError
    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_vars.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 122
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.convert_func_name
    functionSourceFile: botocore.endpoint_provider
    functionUses: 2
    functionsReached:
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - botocore.xform_name
    - matched.lower
    - is_special.group
    - _special_case_transform.search
    - normalized_name.replace
    - <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: normalized_name.replace
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 158
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.is_set
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - value
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 166
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.get_attr
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - value.get
    - path.split
    - <builtin>.int
    - <builtin>.len
    - GET_ATTR_RE.search
    - match.groups
    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: path.split
    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: GET_ATTR_RE.search
    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: match.groups
    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
    - partition
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 190
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.format_partition_output
    functionSourceFile: botocore.endpoint_provider
    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
    - region
    - partition
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 195
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.is_partition_match
    functionSourceFile: botocore.endpoint_provider
    functionUses: 1
    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: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 199
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.aws_partition
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - botocore.endpoint_provider.RuleSetStandardLibrary.is_partition_match
    - botocore.endpoint_provider.RuleSetStandardLibrary.format_partition_output
    - re.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 216
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.aws_parse_arn
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - <builtin>.all
    - value.startswith
    - botocore.utils.ArnParser.parse_arn
    - arn_dict.pop
    - urllib.parse.unquote.split
    - <builtin>.len
    - resource.replace
    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.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: arn_dict.pop
    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: resource.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - value
    - allow_subdomains
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 243
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.is_valid_host_label
    functionSourceFile: botocore.endpoint_provider
    functionUses: 1
    functionsReached:
    - <builtin>.all
    - VALID_HOST_LABEL_RE.match
    - value.count
    - botocore.endpoint_provider.RuleSetStandardLibrary.is_valid_host_label
    - value.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: value.count
    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: VALID_HOST_LABEL_RE.match
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - value1
    - value2
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 263
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.string_equals
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.type
    - <builtin>.all
    linkageType: pythonLinkage
    raised:
    - EndpointResolutionError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 275
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.uri_encode
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - botocore.utils.percent_encode
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - urllib.parse.quote
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 286
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.parse_url
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - urllib.parse.urlparse.path.split
    - IPV4_RE.match
    - botocore.utils.normalize_url_path
    - output_list.append
    - urllib.parse.urlparse
    - botocore.utils.remove_dot_segments
    - IPV6_ADDRZ_RE.match
    - botocore.utils.is_valid_ipv4_endpoint_url
    - botocore.utils.is_valid_ipv6_endpoint_url
    - UNSAFE_URL_CHARS.intersection
    - output_list.pop
    - <builtin>.len
    - urllib.parse.quote.endswith
    - urllib.parse.quote
    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.endswith
    functionSourceFile: urllib
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - value1
    - value2
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 323
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.boolean_equals
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.type
    - <builtin>.all
    linkageType: pythonLinkage
    raised:
    - EndpointResolutionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 335
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.is_ascii
    functionSourceFile: botocore.endpoint_provider
    functionUses: 1
    functionsReached:
    - value.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - value
    - start
    - stop
    - reverse
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 347
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.substring
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - value.encode
    - botocore.endpoint_provider.RuleSetStandardLibrary.is_ascii
    - <builtin>.len
    - <builtin>.type
    linkageType: pythonLinkage
    raised:
    - EndpointResolutionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 370
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary._not
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - value
    - allow_subdomains
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 378
    functionName: botocore.endpoint_provider.RuleSetStandardLibrary.aws_is_virtual_hostable_s3_bucket
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - value.lower
    - <builtin>.all
    - VALID_HOST_LABEL_RE.match
    - IPV4_RE.match
    - value.count
    - botocore.endpoint_provider.RuleSetStandardLibrary.is_valid_host_label
    - value.split
    - <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 0x7f9830327760>
    argNames:
    - self
    - conditions
    - documentation
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 414
    functionName: botocore.endpoint_provider.BaseRule.__init__
    functionSourceFile: botocore.endpoint_provider
    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:
    - self
    - scope_vars
    - rule_lib
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 418
    functionName: botocore.endpoint_provider.BaseRule.evaluate
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - scope_vars
    - rule_lib
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 421
    functionName: botocore.endpoint_provider.BaseRule.evaluate_conditions
    functionSourceFile: botocore.endpoint_provider
    functionUses: 3
    functionsReached:
    - rule_lib.call_function
    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: rule_lib.call_function
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - endpoint
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 444
    functionName: botocore.endpoint_provider.EndpointRule.__init__
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - scope_vars
    - rule_lib
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 448
    functionName: botocore.endpoint_provider.EndpointRule.evaluate
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - headers.items
    - rule_lib.call_function
    - rule_lib.resolve_value
    - botocore.endpoint_provider.BaseRule.evaluate_conditions
    - rule_lib.resolve_template_string
    - rule_lib.is_template
    - botocore.endpoint_provider.EndpointRule.resolve_properties
    - <builtin>.isinstance
    - botocore.endpoint_provider.EndpointRule.resolve_headers
    - properties.items
    - typing.NamedTuple.__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: rule_lib.resolve_value
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - properties
    - scope_vars
    - rule_lib
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 468
    functionName: botocore.endpoint_provider.EndpointRule.resolve_properties
    functionSourceFile: botocore.endpoint_provider
    functionUses: 1
    functionsReached:
    - rule_lib.is_template
    - rule_lib.resolve_template_string
    - <builtin>.isinstance
    - properties.items
    - botocore.endpoint_provider.EndpointRule.resolve_properties
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - scope_vars
    - rule_lib
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 491
    functionName: botocore.endpoint_provider.EndpointRule.resolve_headers
    functionSourceFile: botocore.endpoint_provider
    functionUses: 1
    functionsReached:
    - headers.items
    - rule_lib.resolve_value
    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: properties.items
    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: rule_lib.is_template
    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: rule_lib.resolve_template_string
    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
    - error
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 509
    functionName: botocore.endpoint_provider.ErrorRule.__init__
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - scope_vars
    - rule_lib
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 513
    functionName: botocore.endpoint_provider.ErrorRule.evaluate
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - rule_lib.call_function
    - rule_lib.resolve_value
    - botocore.endpoint_provider.BaseRule.evaluate_conditions
    linkageType: pythonLinkage
    raised:
    - EndpointResolutionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - rules
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 531
    functionName: botocore.endpoint_provider.TreeRule.__init__
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - botocore.endpoint_provider.RuleCreator.create
    - kwargs.pop
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 558
    functionName: botocore.endpoint_provider.RuleCreator.create
    functionSourceFile: botocore.endpoint_provider
    functionUses: 8
    functionsReached:
    - <builtin>.getattr
    - kwargs.pop
    linkageType: pythonLinkage
    raised:
    - EndpointResolutionError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - scope_vars
    - rule_lib
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 535
    functionName: botocore.endpoint_provider.TreeRule.evaluate
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - scope_vars.copy
    - rule_lib.call_function
    - botocore.endpoint_provider.BaseRule.evaluate_conditions
    - rule.evaluate
    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_vars.copy
    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: rule.evaluate
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f9830f01040>
    - <ast.Constant object at 0x7f9830f01910>
    - <ast.Constant object at 0x7f9830f01b80>
    - <ast.Constant object at 0x7f9830f011c0>
    - <ast.Constant object at 0x7f9830f01d90>
    argNames:
    - self
    - name
    - parameter_type
    - documentation
    - builtIn
    - default
    - required
    - deprecated
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 586
    functionName: botocore.endpoint_provider.ParameterDefinition.__init__
    functionSourceFile: botocore.endpoint_provider
    functionUses: 8
    functionsReached:
    - parameter_type.lower
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised:
    - EndpointResolutionError
    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: parameter_type.lower
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 612
    functionName: botocore.endpoint_provider.ParameterDefinition.validate_input
    functionSourceFile: botocore.endpoint_provider
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - logger.info
    linkageType: pythonLinkage
    raised:
    - EndpointResolutionError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 636
    functionName: botocore.endpoint_provider.ParameterDefinition.process_input
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - logger.info
    - botocore.endpoint_provider.ParameterDefinition.validate_input
    linkageType: pythonLinkage
    raised:
    - EndpointResolutionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9830bb10a0>
    argNames:
    - self
    - version
    - parameters
    - rules
    - partitions
    - documentation
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 654
    functionName: botocore.endpoint_provider.RuleSet.__init__
    functionSourceFile: botocore.endpoint_provider
    functionUses: 6
    functionsReached:
    - <builtin>.getattr
    - parameters.items
    - spec.get
    - kwargs.pop
    - botocore.endpoint_provider.ParameterDefinition.__init__
    - parameter_type.lower
    - botocore.endpoint_provider.RuleCreator.create
    - botocore.endpoint_provider.RuleSet._ingest_parameter_spec
    - botocore.endpoint_provider.RuleSetStandardLibrary.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - parameters
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 663
    functionName: botocore.endpoint_provider.RuleSet._ingest_parameter_spec
    functionSourceFile: botocore.endpoint_provider
    functionUses: 7
    functionsReached:
    - <builtin>.getattr
    - spec.get
    - parameters.items
    - botocore.endpoint_provider.ParameterDefinition.__init__
    - parameter_type.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: spec.get
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - input_params
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 677
    functionName: botocore.endpoint_provider.RuleSet.process_input_parameters
    functionSourceFile: botocore.endpoint_provider
    functionUses: 3
    functionsReached:
    - spec.process_input
    - input_params.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: input_params.get
    functionSourceFile: <builtin>
    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: spec.process_input
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - input_parameters
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 688
    functionName: botocore.endpoint_provider.RuleSet.evaluate
    functionSourceFile: botocore.endpoint_provider
    functionUses: 2
    functionsReached:
    - input_parameters.copy
    - botocore.endpoint_provider.RuleSet.process_input_parameters
    - rule.evaluate
    - spec.process_input
    - input_params.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: input_parameters.copy
    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: 2
    functionLinenumber: -1
    functionName: botocore.endpoint_provider.EndpointProvider
    functionSourceFile: botocore.endpoint_provider
    functionUses: 0
    functionsReached:
    - botocore.utils.lru_cache_weakref.wrapper
    - functools.lru_cache
    - botocore.utils.lru_cache_weakref
    - functools.wraps
    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_for_error.items
    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: botocore.signers
    functionSourceFile: botocore.signers
    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: 92
    functionName: botocore.signers.RequestSigner.region_name
    functionSourceFile: botocore.signers
    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: 96
    functionName: botocore.signers.RequestSigner.signature_version
    functionSourceFile: botocore.signers
    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: 100
    functionName: botocore.signers.RequestSigner.signing_name
    functionSourceFile: botocore.signers
    functionUses: 0
    functionsReached: []
    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 0x7f9830aa8610>
    - <ast.Constant object at 0x7f9830aa8f70>
    argNames:
    - self
    - operation_name
    - request
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 103
    functionName: botocore.signers.RequestSigner.handler
    functionSourceFile: botocore.signers
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - signing_context.get
    - botocore.signers.RequestSigner._resolve_identity_cache
    - signing.get
    - context.get
    - credentials.get_frozen_credentials
    - botocore.signers.RequestSigner._choose_signer
    - botocore.signers.RequestSigner.sign
    - <builtin>.isinstance
    - botocore.signers.RequestSigner.get_auth_instance
    - auth.add_auth
    - signing_type_suffix_map.get
    - botocore.auth.AUTH_TYPE_MAPS.get
    - cache.get_credentials
    - signature_version.endswith
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 4
    IfCount: 9
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f9830bb7760>
    - <ast.Constant object at 0x7f9830bb7940>
    - <ast.Constant object at 0x7f9830bb7e80>
    - <ast.Constant object at 0x7f9830bb7340>
    argNames:
    - self
    - operation_name
    - request
    - region_name
    - signing_type
    - expires_in
    - signing_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 110
    functionName: botocore.signers.RequestSigner.sign
    functionSourceFile: botocore.signers
    functionUses: 2
    functionsReached:
    - <builtin>.getattr
    - signing_context.get
    - botocore.signers.RequestSigner._resolve_identity_cache
    - signing.get
    - context.get
    - credentials.get_frozen_credentials
    - botocore.signers.RequestSigner._choose_signer
    - <builtin>.isinstance
    - botocore.signers.RequestSigner.get_auth_instance
    - auth.add_auth
    - signing_type_suffix_map.get
    - botocore.auth.AUTH_TYPE_MAPS.get
    - cache.get_credentials
    - signature_version.endswith
    - request.context.get
    linkageType: pythonLinkage
    raised:
    - UnsupportedSignatureVersionError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - operation_name
    - signing_type
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 206
    functionName: botocore.signers.RequestSigner._choose_signer
    functionSourceFile: botocore.signers
    functionUses: 3
    functionsReached:
    - signing.get
    - signature_version.endswith
    - signing_type_suffix_map.get
    - context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    - cache
    - cache_key
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 202
    functionName: botocore.signers.RequestSigner._resolve_identity_cache
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 1
    IfCount: 8
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9830d07f10>
    - <ast.Constant object at 0x7f9830d074c0>
    argNames:
    - self
    - signing_name
    - region_name
    - signature_version
    - request_credentials
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 254
    functionName: botocore.signers.RequestSigner.get_auth_instance
    functionSourceFile: botocore.signers
    functionUses: 3
    functionsReached:
    - <builtin>.getattr
    - credentials.get_frozen_credentials
    - <builtin>.isinstance
    - botocore.auth.AUTH_TYPE_MAPS.get
    - cache.get_credentials
    linkageType: pythonLinkage
    raised:
    - UnknownSignatureVersionError
    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: auth.add_auth
    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: signing_type_suffix_map.get
    functionSourceFile: <builtin>
    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: signing.get
    functionSourceFile: <builtin>
    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: signature_version.endswith
    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: botocore.auth.AUTH_TYPE_MAPS.get
    functionSourceFile: <builtin>
    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: cache.get_credentials
    functionSourceFile: <builtin>
    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: credentials.get_frozen_credentials
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f98312f6d00>
    - <ast.Constant object at 0x7f98312f65e0>
    - <ast.Constant object at 0x7f98312f62e0>
    argNames:
    - self
    - request_dict
    - operation_name
    - expires_in
    - region_name
    - signing_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 325
    functionName: botocore.signers.RequestSigner.generate_presigned_url
    functionSourceFile: botocore.signers
    functionUses: 0
    functionsReached:
    - signing_context.get
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - <builtin>.hasattr
    - headers.items
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - urllib.parse.urlencode
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - <builtin>.list
    - cache.get_credentials
    - http.client.HTTPMessage.__init__
    - signature_version.endswith
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - context.get
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.awsrequest.create_request_object
    - signing.get
    - botocore.awsrequest.AWSRequest.prepare
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - botocore.signers.RequestSigner._choose_signer
    - urllib.parse.urlencode.items
    - <builtin>.isinstance
    - auth.add_auth
    - signing_type_suffix_map.get
    - delim.join
    - botocore.auth.AUTH_TYPE_MAPS.get
    - <builtin>.getattr
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - <builtin>.len
    - r.get
    - body.tell
    - botocore.signers.RequestSigner.get_auth_instance
    - collections.abc.MutableMapping.update
    - original.params.items
    - <builtin>.type
    - request.context.get
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.signers.RequestSigner._resolve_identity_cache
    - credentials.get_frozen_credentials
    - botocore.signers.RequestSigner.sign
    - botocore.utils.determine_content_length
    - value.encode
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - http.client.HTTPMessage.items
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - key.encode
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key_id
    - rsa_signer
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 392
    functionName: botocore.signers.CloudFrontSigner.__init__
    functionSourceFile: botocore.signers
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f98312e1400>
    - <ast.Constant object at 0x7f98312e1880>
    argNames:
    - self
    - url
    - date_less_than
    - policy
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 407
    functionName: botocore.signers.CloudFrontSigner.generate_presigned_url
    functionSourceFile: botocore.signers
    functionUses: 0
    functionsReached:
    - params.extend
    - base64.b64encode
    - botocore.signers.CloudFrontSigner._url_b64encode
    - d.total_seconds
    - dateutil.tz.tzutc
    - json.dumps
    - botocore.utils.datetime2timestamp
    - dt.replace
    - policy.encode
    - dt.utcoffset
    - <builtin>.isinstance
    - <builtin>.int
    - botocore.signers.CloudFrontSigner.build_policy
    - collections.OrderedDict
    - datetime.datetime
    - botocore.signers.CloudFrontSigner._build_url
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830b06f70>
    - <ast.Constant object at 0x7f9830b06d30>
    argNames:
    - self
    - resource
    - date_less_than
    - date_greater_than
    - ip_address
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 449
    functionName: botocore.signers.CloudFrontSigner.build_policy
    functionSourceFile: botocore.signers
    functionUses: 1
    functionsReached:
    - d.total_seconds
    - dateutil.tz.tzutc
    - json.dumps
    - botocore.utils.datetime2timestamp
    - dt.replace
    - collections.OrderedDict
    - dt.utcoffset
    - <builtin>.int
    - datetime.datetime
    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: policy.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: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 491
    functionName: botocore.signers.CloudFrontSigner._url_b64encode
    functionSourceFile: botocore.signers
    functionUses: 1
    functionsReached:
    - base64.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: params.extend
    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: []
    argNames:
    - self
    - base_url
    - extra_params
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 445
    functionName: botocore.signers.CloudFrontSigner._build_url
    functionSourceFile: ''
    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:
    - class_attributes
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 502
    functionName: botocore.signers.add_generate_db_auth_token
    functionSourceFile: botocore.signers
    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:
    - class_attributes
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 506
    functionName: botocore.signers.add_dsql_generate_db_auth_token_methods
    functionSourceFile: botocore.signers
    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 0x7f9830e0cac0>
    argNames:
    - self
    - DBHostname
    - Port
    - DBUsername
    - Region
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 515
    functionName: botocore.signers.generate_db_auth_token
    functionSourceFile: botocore.signers
    functionUses: 0
    functionsReached:
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - url_path.startswith
    - r.get
    - botocore.awsrequest.prepare_request_dict
    - botocore.awsrequest._urljoin
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f982f86f1c0>
    - <ast.Constant object at 0x7f982f86f760>
    argNames:
    - self
    - Hostname
    - Action
    - Region
    - ExpiresIn
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 569
    functionName: botocore.signers._dsql_generate_db_auth_token
    functionSourceFile: botocore.signers
    functionUses: 2
    functionsReached:
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - url_path.startswith
    - r.get
    - botocore.awsrequest.prepare_request_dict
    - botocore.awsrequest._urljoin
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ParamValidationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a63610>
    - <ast.Constant object at 0x7f9830a63f10>
    argNames:
    - self
    - Hostname
    - Region
    - ExpiresIn
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 620
    functionName: botocore.signers.dsql_generate_db_connect_auth_token
    functionSourceFile: botocore.signers
    functionUses: 0
    functionsReached:
    - botocore.signers._dsql_generate_db_auth_token
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - url_path.startswith
    - r.get
    - botocore.awsrequest.prepare_request_dict
    - botocore.awsrequest._urljoin
    - <builtin>.len
    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 0x7f9830a63df0>
    - <ast.Constant object at 0x7f9830a63370>
    argNames:
    - self
    - Hostname
    - Region
    - ExpiresIn
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 641
    functionName: botocore.signers.dsql_generate_db_connect_admin_auth_token
    functionSourceFile: botocore.signers
    functionUses: 0
    functionsReached:
    - botocore.signers._dsql_generate_db_auth_token
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - url_path.startswith
    - r.get
    - botocore.awsrequest.prepare_request_dict
    - botocore.awsrequest._urljoin
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request_signer
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 663
    functionName: botocore.signers.S3PostPresigner.__init__
    functionSourceFile: botocore.signers
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9831378c10>
    - <ast.Constant object at 0x7f98313781c0>
    - <ast.Constant object at 0x7f9831378a30>
    - <ast.Constant object at 0x7f9831378550>
    argNames:
    - self
    - request_dict
    - fields
    - conditions
    - expires_in
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 666
    functionName: botocore.signers.S3PostPresigner.generate_presigned_post
    functionSourceFile: botocore.signers
    functionUses: 1
    functionsReached:
    - datetime_now.replace
    - botocore.awsrequest.AWSRequest.__init__
    - botocore.awsrequest.create_request_object
    - headers.items
    - r.get
    - http.client.HTTPMessage.__init__
    - expire_date.strftime
    - datetime.datetime.now
    - botocore.compat.get_current_datetime
    - datetime.timedelta
    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: expire_date.strftime
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - class_attributes
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 752
    functionName: botocore.signers.add_generate_presigned_url
    functionSourceFile: botocore.signers
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a173d0>
    - <ast.Constant object at 0x7f9830a17a60>
    - <ast.Constant object at 0x7f9830a17850>
    argNames:
    - self
    - ClientMethod
    - Params
    - ExpiresIn
    - HttpMethod
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 756
    functionName: botocore.signers.generate_presigned_url
    functionSourceFile: botocore.signers
    functionUses: 0
    functionsReached:
    - urllib.parse.unquote.startswith
    - botocore.utils.ArnParser.parse_arn
    - request_signer.generate_presigned_url
    - <builtin>.isinstance
    - s3_config.get
    - params.get
    - urllib.parse.unquote.split
    - <builtin>.len
    - botocore.utils.ArnParser.is_arn
    - botocore.signers._should_use_global_endpoint
    linkageType: pythonLinkage
    raised:
    - UnknownClientMethodError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - client
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 982
    functionName: botocore.signers._should_use_global_endpoint
    functionSourceFile: botocore.signers
    functionUses: 2
    functionsReached:
    - s3_config.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_signer.generate_presigned_url
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - class_attributes
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 835
    functionName: botocore.signers.add_generate_presigned_post
    functionSourceFile: botocore.signers
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9830083cd0>
    - <ast.Constant object at 0x7f9830083670>
    - <ast.Constant object at 0x7f9830083ee0>
    argNames:
    - self
    - Bucket
    - Key
    - Fields
    - Conditions
    - ExpiresIn
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 839
    functionName: botocore.signers.generate_presigned_post
    functionSourceFile: botocore.signers
    functionUses: 0
    functionsReached:
    - headers.items
    - botocore.utils.ArnParser.parse_arn
    - key.endswith
    - s3_config.get
    - conditions.append
    - http.client.HTTPMessage.__init__
    - botocore.utils.ArnParser.is_arn
    - datetime.timedelta
    - botocore.awsrequest.AWSRequest.__init__
    - botocore.awsrequest.create_request_object
    - fields.copy
    - <builtin>.isinstance
    - params.get
    - botocore.signers.S3PostPresigner.__init__
    - expire_date.strftime
    - datetime.datetime.now
    - urllib.parse.unquote.startswith
    - botocore.signers.S3PostPresigner.generate_presigned_post
    - r.get
    - urllib.parse.unquote.split
    - botocore.signers._should_use_global_endpoint
    - datetime_now.replace
    - <builtin>.len
    - botocore.compat.get_current_datetime
    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: fields.copy
    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: key.endswith
    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: botocore.translate
    functionSourceFile: botocore.translate
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830bb7cd0>
    argNames:
    - endpoint_prefix
    - retry_model
    - definitions
    - client_retry_config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 19
    functionName: botocore.translate.build_retry_config
    functionSourceFile: botocore.translate
    functionUses: 0
    functionsReached:
    - botocore.utils.merge_dicts
    - client_retry_config.get
    - <builtin>.isinstance
    - botocore.translate._merge_client_retry_config
    - value.keys
    - <builtin>.list
    - value.values
    - retry_model.get
    - <builtin>.len
    - botocore.translate.resolve_references
    - config.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: retry_model.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - config
    - definitions
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 61
    functionName: botocore.translate.resolve_references
    functionSourceFile: botocore.translate
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - value.keys
    - <builtin>.list
    - value.values
    - <builtin>.len
    - botocore.translate.resolve_references
    - config.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - retry_config
    - client_retry_config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: botocore.translate._merge_client_retry_config
    functionSourceFile: botocore.translate
    functionUses: 1
    functionsReached:
    - client_retry_config.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: client_retry_config.get
    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: config.items
    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: value.values
    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: 1
    functionLinenumber: -1
    functionName: botocore.waiter
    functionSourceFile: botocore.waiter
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - waiter_name
    - waiter_model
    - client
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 30
    functionName: botocore.waiter.create_waiter_with_client
    functionSourceFile: botocore.waiter
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    - xform_name
    - botocore.waiter.NormalizedOperationMethod.__init__
    - single_waiter_config.get
    - botocore.waiter.WaiterModel.get_waiter
    - botocore.utils.get_service_module_name
    - botocore.docs.docstring.LazyLoadedDocstring.__init__
    - service_model.metadata.get
    - botocore.waiter.SingleWaiterConfig.__init__
    - re.sub
    - <builtin>.super
    - name.replace
    - <builtin>.type
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - waiter_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 137
    functionName: botocore.waiter.WaiterModel.get_waiter
    functionSourceFile: botocore.waiter
    functionUses: 2
    functionsReached:
    - single_waiter_config.get
    - botocore.waiter.SingleWaiterConfig.__init__
    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: xform_name
    functionSourceFile: xform_name
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - client_method
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 90
    functionName: botocore.waiter.NormalizedOperationMethod.__init__
    functionSourceFile: ''
    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:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 57
    functionName: botocore.waiter.create_waiter_with_client.wait
    functionSourceFile: botocore.waiter
    functionUses: 0
    functionsReached:
    - logger.debug
    - config.get
    - kwargs.pop
    - time.sleep
    - acceptor.matcher_func
    - <builtin>.list
    - botocore.waiter.Waiter.wait
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 338
    functionName: botocore.waiter.Waiter.wait
    functionSourceFile: botocore.waiter
    functionUses: 1
    functionsReached:
    - logger.debug
    - config.get
    - kwargs.pop
    - time.sleep
    - acceptor.matcher_func
    - <builtin>.list
    linkageType: pythonLinkage
    raised:
    - WaiterError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: botocore.docs.docstring.LazyLoadedDocstring.__init__
    functionSourceFile: botocore.docs.docstring
    functionUses: 8
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - response
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 82
    functionName: botocore.waiter.is_valid_waiter_error
    functionSourceFile: botocore.waiter
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - response.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 93
    functionName: botocore.waiter.NormalizedOperationMethod.__call__
    functionSourceFile: botocore.waiter
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - waiter_config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 103
    functionName: botocore.waiter.WaiterModel.__init__
    functionSourceFile: botocore.waiter
    functionUses: 3
    functionsReached:
    - botocore.waiter.WaiterModel._verify_supported_version
    - <builtin>.sorted
    - <builtin>.list
    - waiter_config.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: waiter_config.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - version
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 127
    functionName: botocore.waiter.WaiterModel._verify_supported_version
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - WaiterConfigError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - single_waiter_config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 153
    functionName: botocore.waiter.SingleWaiterConfig.__init__
    functionSourceFile: botocore.waiter
    functionUses: 3
    functionsReached:
    - single_waiter_config.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: single_waiter_config.get
    functionSourceFile: <builtin>
    functionUses: 4
    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: 4
    functionLinenumber: 164
    functionName: botocore.waiter.SingleWaiterConfig.acceptors
    functionSourceFile: botocore.waiter
    functionUses: 0
    functionsReached:
    - botocore.waiter.AcceptorConfig._create_error_matcher
    - jmespath.compile
    - config.get
    - botocore.waiter.AcceptorConfig._create_matcher_func
    - acceptors.append
    - botocore.waiter.AcceptorConfig._create_path_matcher
    - botocore.waiter.AcceptorConfig.__init__
    - botocore.waiter.AcceptorConfig._create_path_all_matcher
    - botocore.waiter.AcceptorConfig._create_path_any_matcher
    - botocore.waiter.AcceptorConfig._create_status_matcher
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 173
    functionName: botocore.waiter.AcceptorConfig.__init__
    functionSourceFile: botocore.waiter
    functionUses: 1
    functionsReached:
    - botocore.waiter.AcceptorConfig._create_error_matcher
    - jmespath.compile
    - config.get
    - botocore.waiter.AcceptorConfig._create_matcher_func
    - botocore.waiter.AcceptorConfig._create_path_matcher
    - botocore.waiter.AcceptorConfig._create_path_all_matcher
    - botocore.waiter.AcceptorConfig._create_path_any_matcher
    - botocore.waiter.AcceptorConfig._create_status_matcher
    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: acceptors.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 201
    functionName: botocore.waiter.AcceptorConfig._create_matcher_func
    functionSourceFile: botocore.waiter
    functionUses: 2
    functionsReached:
    - botocore.waiter.AcceptorConfig._create_error_matcher
    - jmespath.compile
    - botocore.waiter.AcceptorConfig._create_path_matcher
    - botocore.waiter.AcceptorConfig._create_path_all_matcher
    - botocore.waiter.AcceptorConfig._create_path_any_matcher
    - botocore.waiter.AcceptorConfig._create_status_matcher
    linkageType: pythonLinkage
    raised:
    - WaiterConfigError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 181
    functionName: botocore.waiter.AcceptorConfig.explanation
    functionSourceFile: botocore.waiter
    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: 225
    functionName: botocore.waiter.AcceptorConfig._create_path_matcher
    functionSourceFile: botocore.waiter
    functionUses: 3
    functionsReached:
    - jmespath.compile
    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: 236
    functionName: botocore.waiter.AcceptorConfig._create_path_all_matcher
    functionSourceFile: botocore.waiter
    functionUses: 3
    functionsReached:
    - jmespath.compile
    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: 257
    functionName: botocore.waiter.AcceptorConfig._create_path_any_matcher
    functionSourceFile: botocore.waiter
    functionUses: 3
    functionsReached:
    - jmespath.compile
    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: 278
    functionName: botocore.waiter.AcceptorConfig._create_status_matcher
    functionSourceFile: ''
    functionUses: 3
    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: 292
    functionName: botocore.waiter.AcceptorConfig._create_error_matcher
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - response
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 229
    functionName: botocore.waiter.AcceptorConfig._create_path_matcher.acceptor_matches
    functionSourceFile: botocore.waiter
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - response.get
    - botocore.waiter.is_valid_waiter_error
    - expression.search
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - response
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 240
    functionName: botocore.waiter.AcceptorConfig._create_path_all_matcher.acceptor_matches
    functionSourceFile: botocore.waiter
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - response.get
    - botocore.waiter.is_valid_waiter_error
    - expression.search
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - response
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 261
    functionName: botocore.waiter.AcceptorConfig._create_path_any_matcher.acceptor_matches
    functionSourceFile: botocore.waiter
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - response.get
    - botocore.waiter.is_valid_waiter_error
    - expression.search
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - response
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 281
    functionName: botocore.waiter.AcceptorConfig._create_status_matcher.acceptor_matches
    functionSourceFile: botocore.waiter
    functionUses: 0
    functionsReached:
    - response.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - response
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 295
    functionName: botocore.waiter.AcceptorConfig._create_error_matcher.acceptor_matches
    functionSourceFile: botocore.waiter
    functionUses: 0
    functionsReached:
    - response.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - name
    - config
    - operation_method
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 316
    functionName: botocore.waiter.Waiter.__init__
    functionSourceFile: botocore.waiter
    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: botocore.waiter.Waiter
    functionSourceFile: botocore.waiter
    functionUses: 0
    functionsReached:
    - botocore.context.with_current_context.decorator
    - functools.partial
    - functools.wraps
    - botocore.context.with_current_context
    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: acceptor.matcher_func
    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: botocore.docs
    functionSourceFile: botocore.docs
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - root_dir
    - session
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 20
    functionName: botocore.docs.generate_docs
    functionSourceFile: botocore.docs
    functionUses: 0
    functionsReached:
    - method_intro_section.style.write_py_doc_string
    - <builtin>.next
    - _end_cap_regex.sub
    - paginator_section.style.start_sphinx_py_class
    - botocore.xform_name
    - collections.OrderedDict.items
    - section.writeln
    - botocore.docs.client.ClientDocumenter.__init__
    - return_section.write
    - <builtin>.sorted
    - collections.OrderedDict
    - history.append
    - output_section.write
    - botocore.docs.paginator.PaginatorDocumenter._add_overview
    - service_model.metadata.get
    - section.style.end_codeblock
    - logger.debug
    - section.style.toctree
    - paginator_section.style.start_codeblock
    - f.write
    - inspect.ismethod
    - output_section.style.new_line
    - service_waiter_model.get_waiter
    - new_params.values
    - return_example_section.style.new_paragraph
    - service_pagination_params.append
    - <builtin>.float
    - os.path.exists
    - section.style.start_sphinx_py_class
    - name.startswith
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - botocore.docs.client.ClientDocumenter._add_title
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - inspect.getdoc
    - return_description_section.style.bold
    - botocore.docs.client.ClientDocumenter._add_client_method
    - closing_section.style.new_line
    - signature_params.rstrip
    - session.get_available_services
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_params
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - client_methods.items
    - example.get
    - closing_section.write
    - botocore.docs.client.ClientDocumenter._add_client_intro
    - method_intro_section.write
    - datetime.datetime.fromtimestamp
    - botocore.docs.bcdoc.restdoc.DocumentStructure.get_section
    - botocore.docs.client.ClientContextParamsDocumenter.document_context_params
    - botocore.docs.method.document_custom_method
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - item_section.write
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_catch_example
    - botocore.docs.client.ClientDocumenter._filter_client_methods
    - is_special.group
    - waiter_section.write
    - botocore.docs.method.document_model_driven_signature
    - section.context.get
    - error_section.style.li
    - botocore.docs.client.ClientExceptionsDocumenter._add_overview
    - section.style.h1
    - output_section.style.start_codeblock
    - example_section.style.new_paragraph
    - item_section.style.new_line
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_classes
    - closing_section.style.end_codeblock
    - botocore.docs.paginator.document_paginate_method
    - inspect.getmembers
    - waiter_section.style.new_line
    - botocore.docs.paginator.PaginatorDocumenter.document_paginators
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - method_intro_section.style.new_paragraph
    - botocore.docs.client.ClientDocumenter._filter_client_method
    - <builtin>.list
    - botocore.docs.service.ServiceDocumenter.paginator_api
    - value.items
    - loader.load_service_model
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - _first_cap_regex.sub
    - response_section.style.end_sphinx_py_attr
    - dateutil.tz.tzutc
    - waiter_section.style.end_codeblock
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - botocore.docs.client.ClientExceptionsDocumenter._add_exceptions_list
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr_description
    - paginator_section.style.end_codeblock
    - os.path.join
    - waiter_section.style.start_codeblock
    - botocore.utils._parse_timestamp_with_tzinfo
    - botocore.docs.client.ClientDocumenter.document_client
    - omitted_params.get
    - example_section.write
    - <builtin>.getattr
    - official_name.lower
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - dateutil.parser.parse
    - section.style.start_codeblock
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - DOCUMENTATION_LINK_REGEX.search
    - return_description_section.style.new_line
    - breadcrumb_section.style.ref
    - operation_model.get_event_stream_output
    - path.pop
    - signature.replace
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - operation_model.service_model.metadata.get
    - params_section.style.bold
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_class
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_example
    - botocore.docs.waiter.WaiterDocumenter.__init__
    - output_section.add_new_section
    - container_section.style.bold
    - botocore.docs.waiter.WaiterDocumenter._add_overview
    - comments.get
    - SECTION_LINE_LIMIT_CONFIG.get
    - method_intro_section.style.end_danger
    - name.replace
    - botocore.docs.service.ServiceDocumenter.waiter_api
    - botocore.docs.service.ServiceDocumenter.client_context_params
    - <builtin>.hasattr
    - botocore.docs.client.ClientContextParamsDocumenter.__init__
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_output
    - return_section.style.new_line
    - <builtin>.open
    - params_section.style.new_line
    - parameter_names.remove
    - botocore.docs.service.ServiceDocumenter.client_api
    - botocore.docs.method.document_custom_signature
    - <builtin>.str
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - <builtin>.enumerate
    - botocore.docs.waiter.WaiterDocumenter._add_single_waiter
    - datetime.timedelta
    - service_pagination_response_params.append
    - input_section.style.start_codeblock
    - botocore.docs.service.ServiceDocumenter.client_exceptions
    - SECTION_METHOD_PATH_DEPTH.get
    - input_section.add_new_section
    - botocore.docs.client.ClientContextParamsDocumenter._add_overview
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - botocore.utils._epoch_seconds_to_datetime
    - section.style.bold
    - parameter_names.append
    - <builtin>.isinstance
    - params_section.style.new_paragraph
    - signature.parameters.copy
    - operation_model.get_streaming_input
    - botocore.docs.client.ClientExceptionsDocumenter.document_exceptions
    - path.append
    - section.style.external_link
    - return_section.add_new_section
    - return_example_section.style.bold
    - input_section.write
    - param_section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_shared_example
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - botocore.docs.client.ClientDocumenter._add_method_exceptions_list
    - example_section.style.bold
    - botocore.docs.client.ClientExceptionsDocumenter._add_top_level_documentation
    - method_intro_section.style.start_danger
    - paginator_section.style.new_line
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - short_name.startswith
    - botocore.docs.service.ServiceDocumenter.document_service
    - botocore.docs.waiter.document_wait_method
    - botocore.docs.service.ServiceDocumenter.get_examples
    - return_description_section.style.new_paragraph
    - botocore.docs.client.ClientDocumenter._add_client_methods
    - shape.members.get
    - botocore.docs.utils.escape_controls
    - paginator_config.get
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - title_section.style.h1
    - waiter_section.style.start_sphinx_py_class
    - response_section.style.start_sphinx_py_attr
    - <builtin>.len
    - event_section.write
    - container_section.style.new_paragraph
    - botocore.docs.client.ClientContextParamsDocumenter._add_context_params_list
    - section.style.indent
    - section.style.new_paragraph
    - section.flush_structure
    - example_section.style.new_line
    - botocore.docs.method.get_instance_public_methods
    - botocore.docs.client.ClientDocumenter._add_client_creation_example
    - botocore.docs.paginator.PaginatorDocumenter.__init__
    - botocore.docs.client.ClientDocumenter._add_model_driven_method
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - method_intro_section.style.external_link
    - botocore.docs.sharedexample.document_shared_examples
    - dict_section_end.write
    - botocore.docs.method.document_model_driven_method
    - error_section.style.new_line
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr
    - value.decode
    - section.include_doc_string
    - botocore.docs.waiter.WaiterDocumenter.document_waiters
    - epoch_zero.astimezone
    - short_name.lower
    - class_section.style.start_sphinx_py_class
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_input
    - section.style.tocitem
    - paginator_section.write
    - botocore.docs.client.ClientDocumenter._add_custom_method
    - matched.lower
    - docs_link.decode
    - botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    - botocore.docs.paginator.PaginatorDocumenter._add_paginator
    - botocore.docs.client.ClientDocumenter._get_client_methods
    - example_section.style.start_codeblock
    - botocore.docs.client.ClientExceptionsDocumenter.__init__
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - error_section.style.bold
    - botocore.docs.utils.get_official_service_name
    - <builtin>.super
    - _ESCAPE_CONTROLS_RE.sub
    - class_section.style.end_sphinx_py_class
    - container_section.add_new_section
    - inspect.signature
    - botocore.docs.client.ClientExceptionsDocumenter._exception_class_name
    - section.style.h2
    - botocore.utils.parse_timestamp
    - botocore.docs.service.ServiceDocumenter.title
    - match.group
    - collections.namedtuple.__init__
    - params.keys
    - _special_case_transform.search
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - botocore.docs.client.ClientExceptionsDocumenter._add_title
    - os.makedirs
    - re.sub
    - history.pop
    - botocore.docs.client.ClientDocumenter._is_custom_method
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - botocore.docs.service.ServiceDocumenter.__init__
    - section.style.dedent
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - list_section.add_new_section
    - method_intro_section.writeln
    - <builtin>.iter
    - <builtin>.range
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.client.ClientDocumenter._add_class_signature
    - dict_section.add_new_section
    - botocore.docs.client.ClientContextParamsDocumenter._add_title
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_params
    - section.style.new_line
    - service_model.operation_model
    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.path.exists
    functionSourceFile: os
    functionUses: 22
    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: session.get_available_services
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - session
    - root_docs_path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 25
    functionName: botocore.docs.service.ServiceDocumenter.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 7
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 14
    functionLinenumber: 47
    functionName: botocore.docs.service.ServiceDocumenter.document_service
    functionSourceFile: botocore.docs.service
    functionUses: 1
    functionsReached:
    - method_intro_section.style.write_py_doc_string
    - <builtin>.next
    - _end_cap_regex.sub
    - paginator_section.style.start_sphinx_py_class
    - botocore.xform_name
    - collections.OrderedDict.items
    - section.writeln
    - botocore.docs.client.ClientDocumenter.__init__
    - return_section.write
    - <builtin>.sorted
    - collections.OrderedDict
    - history.append
    - output_section.write
    - botocore.docs.paginator.PaginatorDocumenter._add_overview
    - service_model.metadata.get
    - section.style.end_codeblock
    - logger.debug
    - section.style.toctree
    - paginator_section.style.start_codeblock
    - f.write
    - inspect.ismethod
    - output_section.style.new_line
    - service_waiter_model.get_waiter
    - new_params.values
    - return_example_section.style.new_paragraph
    - service_pagination_params.append
    - <builtin>.float
    - os.path.exists
    - section.style.start_sphinx_py_class
    - name.startswith
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - botocore.docs.client.ClientDocumenter._add_title
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - inspect.getdoc
    - return_description_section.style.bold
    - botocore.docs.client.ClientDocumenter._add_client_method
    - closing_section.style.new_line
    - signature_params.rstrip
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_params
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - client_methods.items
    - example.get
    - botocore.docs.client.ClientDocumenter._add_client_intro
    - closing_section.write
    - method_intro_section.write
    - datetime.datetime.fromtimestamp
    - botocore.docs.bcdoc.restdoc.DocumentStructure.get_section
    - botocore.docs.client.ClientContextParamsDocumenter.document_context_params
    - botocore.docs.method.document_custom_method
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - item_section.write
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_catch_example
    - botocore.docs.client.ClientDocumenter._filter_client_methods
    - is_special.group
    - waiter_section.write
    - botocore.docs.method.document_model_driven_signature
    - section.context.get
    - error_section.style.li
    - botocore.docs.client.ClientExceptionsDocumenter._add_overview
    - section.style.h1
    - output_section.style.start_codeblock
    - example_section.style.new_paragraph
    - item_section.style.new_line
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_classes
    - closing_section.style.end_codeblock
    - botocore.docs.paginator.document_paginate_method
    - inspect.getmembers
    - waiter_section.style.new_line
    - botocore.docs.paginator.PaginatorDocumenter.document_paginators
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - method_intro_section.style.new_paragraph
    - botocore.docs.client.ClientDocumenter._filter_client_method
    - <builtin>.list
    - botocore.docs.service.ServiceDocumenter.paginator_api
    - value.items
    - loader.load_service_model
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - _first_cap_regex.sub
    - response_section.style.end_sphinx_py_attr
    - dateutil.tz.tzutc
    - waiter_section.style.end_codeblock
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - botocore.docs.client.ClientExceptionsDocumenter._add_exceptions_list
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr_description
    - paginator_section.style.end_codeblock
    - os.path.join
    - waiter_section.style.start_codeblock
    - botocore.utils._parse_timestamp_with_tzinfo
    - botocore.docs.client.ClientDocumenter.document_client
    - omitted_params.get
    - example_section.write
    - <builtin>.getattr
    - official_name.lower
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - dateutil.parser.parse
    - section.style.start_codeblock
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - DOCUMENTATION_LINK_REGEX.search
    - return_description_section.style.new_line
    - breadcrumb_section.style.ref
    - operation_model.get_event_stream_output
    - path.pop
    - signature.replace
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - operation_model.service_model.metadata.get
    - params_section.style.bold
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_class
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_example
    - botocore.docs.waiter.WaiterDocumenter.__init__
    - output_section.add_new_section
    - container_section.style.bold
    - botocore.docs.waiter.WaiterDocumenter._add_overview
    - comments.get
    - SECTION_LINE_LIMIT_CONFIG.get
    - method_intro_section.style.end_danger
    - name.replace
    - botocore.docs.service.ServiceDocumenter.waiter_api
    - botocore.docs.service.ServiceDocumenter.client_context_params
    - <builtin>.hasattr
    - botocore.docs.client.ClientContextParamsDocumenter.__init__
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_output
    - return_section.style.new_line
    - <builtin>.open
    - params_section.style.new_line
    - parameter_names.remove
    - botocore.docs.service.ServiceDocumenter.client_api
    - botocore.docs.method.document_custom_signature
    - <builtin>.str
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - <builtin>.enumerate
    - botocore.docs.waiter.WaiterDocumenter._add_single_waiter
    - datetime.timedelta
    - service_pagination_response_params.append
    - input_section.style.start_codeblock
    - botocore.docs.service.ServiceDocumenter.client_exceptions
    - SECTION_METHOD_PATH_DEPTH.get
    - input_section.add_new_section
    - botocore.docs.client.ClientContextParamsDocumenter._add_overview
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - botocore.utils._epoch_seconds_to_datetime
    - section.style.bold
    - parameter_names.append
    - <builtin>.isinstance
    - params_section.style.new_paragraph
    - signature.parameters.copy
    - operation_model.get_streaming_input
    - botocore.docs.client.ClientExceptionsDocumenter.document_exceptions
    - path.append
    - section.style.external_link
    - return_section.add_new_section
    - return_example_section.style.bold
    - input_section.write
    - param_section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_shared_example
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - botocore.docs.client.ClientDocumenter._add_method_exceptions_list
    - example_section.style.bold
    - botocore.docs.client.ClientExceptionsDocumenter._add_top_level_documentation
    - method_intro_section.style.start_danger
    - paginator_section.style.new_line
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - short_name.startswith
    - botocore.docs.waiter.document_wait_method
    - botocore.docs.service.ServiceDocumenter.get_examples
    - return_description_section.style.new_paragraph
    - botocore.docs.client.ClientDocumenter._add_client_methods
    - shape.members.get
    - botocore.docs.utils.escape_controls
    - paginator_config.get
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - title_section.style.h1
    - waiter_section.style.start_sphinx_py_class
    - response_section.style.start_sphinx_py_attr
    - <builtin>.len
    - event_section.write
    - container_section.style.new_paragraph
    - botocore.docs.client.ClientContextParamsDocumenter._add_context_params_list
    - section.style.indent
    - section.style.new_paragraph
    - section.flush_structure
    - example_section.style.new_line
    - botocore.docs.method.get_instance_public_methods
    - botocore.docs.client.ClientDocumenter._add_client_creation_example
    - botocore.docs.paginator.PaginatorDocumenter.__init__
    - botocore.docs.client.ClientDocumenter._add_model_driven_method
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - method_intro_section.style.external_link
    - botocore.docs.sharedexample.document_shared_examples
    - dict_section_end.write
    - botocore.docs.method.document_model_driven_method
    - error_section.style.new_line
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr
    - value.decode
    - section.include_doc_string
    - botocore.docs.waiter.WaiterDocumenter.document_waiters
    - class_section.style.start_sphinx_py_class
    - short_name.lower
    - epoch_zero.astimezone
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_input
    - section.style.tocitem
    - paginator_section.write
    - botocore.docs.client.ClientDocumenter._add_custom_method
    - matched.lower
    - docs_link.decode
    - botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    - botocore.docs.paginator.PaginatorDocumenter._add_paginator
    - botocore.docs.client.ClientDocumenter._get_client_methods
    - example_section.style.start_codeblock
    - botocore.docs.client.ClientExceptionsDocumenter.__init__
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - botocore.docs.utils.get_official_service_name
    - error_section.style.bold
    - <builtin>.super
    - class_section.style.end_sphinx_py_class
    - _ESCAPE_CONTROLS_RE.sub
    - container_section.add_new_section
    - botocore.docs.client.ClientExceptionsDocumenter._exception_class_name
    - inspect.signature
    - section.style.h2
    - botocore.utils.parse_timestamp
    - botocore.docs.service.ServiceDocumenter.title
    - match.group
    - collections.namedtuple.__init__
    - params.keys
    - _special_case_transform.search
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - botocore.docs.client.ClientExceptionsDocumenter._add_title
    - os.makedirs
    - re.sub
    - history.pop
    - botocore.docs.client.ClientDocumenter._is_custom_method
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - list_section.add_new_section
    - botocore.docs.shape.ShapeDocumenter.__init__
    - section.style.dedent
    - breadcrumb_section.write
    - method_intro_section.writeln
    - <builtin>.iter
    - <builtin>.range
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.client.ClientDocumenter._add_class_signature
    - dict_section.add_new_section
    - botocore.docs.client.ClientContextParamsDocumenter._add_title
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_params
    - section.style.new_line
    - service_model.operation_model
    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: botocore.docs.service
    functionSourceFile: botocore.docs.service
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830d074c0>
    - <ast.Constant object at 0x7f9830d07430>
    - <ast.Constant object at 0x7f9830d07d60>
    argNames:
    - self
    - name
    - section_names
    - target
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 134
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 16
    functionsReached:
    - <builtin>.super
    - collections.OrderedDict
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 213
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.get_section
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 66
    functionName: botocore.docs.service.ServiceDocumenter.title
    functionSourceFile: botocore.docs.service
    functionUses: 2
    functionsReached:
    - section.style.h1
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 75
    functionName: botocore.docs.service.ServiceDocumenter.client_api
    functionSourceFile: botocore.docs.service
    functionUses: 2
    functionsReached:
    - method_intro_section.style.write_py_doc_string
    - <builtin>.next
    - collections.OrderedDict.items
    - section.writeln
    - botocore.docs.client.ClientDocumenter.__init__
    - return_section.write
    - <builtin>.sorted
    - collections.OrderedDict
    - history.append
    - output_section.write
    - service_model.metadata.get
    - section.style.end_codeblock
    - logger.debug
    - section.style.toctree
    - inspect.ismethod
    - f.write
    - output_section.style.new_line
    - new_params.values
    - return_example_section.style.new_paragraph
    - <builtin>.float
    - os.path.exists
    - section.style.start_sphinx_py_class
    - name.startswith
    - botocore.docs.client.ClientDocumenter._add_title
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - inspect.getdoc
    - return_description_section.style.bold
    - botocore.docs.client.ClientDocumenter._add_client_method
    - closing_section.style.new_line
    - signature_params.rstrip
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_params
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - client_methods.items
    - value.splitlines
    - example.get
    - botocore.docs.client.ClientDocumenter._add_client_intro
    - closing_section.write
    - method_intro_section.write
    - datetime.datetime.fromtimestamp
    - botocore.docs.method.document_custom_method
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - item_section.write
    - botocore.docs.client.ClientDocumenter._filter_client_methods
    - botocore.docs.method.document_model_driven_signature
    - section.context.get
    - error_section.style.li
    - output_section.style.start_codeblock
    - example_section.style.new_paragraph
    - item_section.style.new_line
    - closing_section.style.end_codeblock
    - inspect.getmembers
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - method_intro_section.style.new_paragraph
    - botocore.docs.client.ClientDocumenter._filter_client_method
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - <builtin>.list
    - value.items
    - loader.load_service_model
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - dateutil.tz.tzutc
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - os.path.join
    - botocore.utils._parse_timestamp_with_tzinfo
    - botocore.docs.client.ClientDocumenter.document_client
    - example_section.write
    - <builtin>.getattr
    - official_name.lower
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - dateutil.parser.parse
    - section.style.start_codeblock
    - DOCUMENTATION_LINK_REGEX.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - signature.replace
    - breadcrumb_section.style.ref
    - return_description_section.style.new_line
    - path.pop
    - operation_model.get_event_stream_output
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - operation_model.service_model.metadata.get
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - output_section.add_new_section
    - container_section.style.bold
    - comments.get
    - SECTION_LINE_LIMIT_CONFIG.get
    - dict_section.add_new_section
    - method_intro_section.style.end_danger
    - <builtin>.hasattr
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_output
    - return_section.style.new_line
    - <builtin>.open
    - parameter_names.remove
    - <builtin>.enumerate
    - botocore.docs.method.document_custom_signature
    - <builtin>.str
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - datetime.timedelta
    - service_model.operation_model
    - input_section.style.start_codeblock
    - input_section.add_new_section
    - SECTION_METHOD_PATH_DEPTH.get
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - parameter_names.append
    - <builtin>.isinstance
    - signature.parameters.copy
    - operation_model.get_streaming_input
    - path.append
    - return_section.add_new_section
    - return_example_section.style.bold
    - input_section.write
    - param_section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_shared_example
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - botocore.docs.client.ClientDocumenter._add_method_exceptions_list
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - botocore.docs.service.ServiceDocumenter.get_examples
    - return_description_section.style.new_paragraph
    - botocore.docs.client.ClientDocumenter._add_client_methods
    - shape.members.get
    - botocore.docs.utils.escape_controls
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - title_section.style.h1
    - <builtin>.len
    - event_section.write
    - container_section.style.new_paragraph
    - section.style.indent
    - section.style.new_paragraph
    - section.flush_structure
    - botocore.docs.client.ClientDocumenter._add_client_creation_example
    - botocore.docs.method.get_instance_public_methods
    - botocore.docs.client.ClientDocumenter._add_model_driven_method
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - botocore.docs.sharedexample.document_shared_examples
    - error_section.style.new_line
    - dict_section_end.write
    - botocore.docs.method.document_model_driven_method
    - method_intro_section.style.external_link
    - value.decode
    - section.include_doc_string
    - epoch_zero.astimezone
    - short_name.lower
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_input
    - section.style.tocitem
    - botocore.docs.client.ClientDocumenter._add_custom_method
    - docs_link.decode
    - botocore.docs.client.ClientDocumenter._get_client_methods
    - botocore.docs.utils.get_official_service_name
    - botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    - example_section.style.start_codeblock
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - error_section.style.bold
    - _ESCAPE_CONTROLS_RE.sub
    - <builtin>.super
    - container_section.add_new_section
    - inspect.signature
    - section.style.h2
    - botocore.utils.parse_timestamp
    - match.group
    - params.keys
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - os.makedirs
    - history.pop
    - botocore.docs.client.ClientDocumenter._is_custom_method
    - list_section.add_new_section
    - section.style.dedent
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - method_intro_section.writeln
    - <builtin>.iter
    - <builtin>.range
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.client.ClientDocumenter._add_class_signature
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - section.style.new_line
    - short_name.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 86
    functionName: botocore.docs.service.ServiceDocumenter.client_exceptions
    functionSourceFile: botocore.docs.service
    functionUses: 2
    functionsReached:
    - collections.OrderedDict.items
    - section.writeln
    - collections.OrderedDict
    - history.append
    - section.style.end_codeblock
    - section.style.toctree
    - f.write
    - os.path.exists
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_catch_example
    - botocore.docs.client.ClientExceptionsDocumenter._add_overview
    - example_section.style.new_paragraph
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_classes
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - response_section.style.end_sphinx_py_attr
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr_description
    - botocore.docs.client.ClientExceptionsDocumenter._add_exceptions_list
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - os.path.join
    - <builtin>.getattr
    - section.style.start_codeblock
    - DOCUMENTATION_LINK_REGEX.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - params_section.style.bold
    - breadcrumb_section.style.ref
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_example
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_class
    - SECTION_LINE_LIMIT_CONFIG.get
    - <builtin>.hasattr
    - <builtin>.open
    - params_section.style.new_line
    - SECTION_METHOD_PATH_DEPTH.get
    - section.style.bold
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - params_section.style.new_paragraph
    - botocore.docs.client.ClientExceptionsDocumenter.document_exceptions
    - section.style.external_link
    - botocore.docs.client.ClientExceptionsDocumenter._add_top_level_documentation
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - example_section.style.bold
    - final_blank_line_section.style.new_line
    - title_section.style.h1
    - response_section.style.start_sphinx_py_attr
    - <builtin>.len
    - section.style.indent
    - section.style.new_paragraph
    - section.flush_structure
    - example_section.style.new_line
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr
    - value.decode
    - class_section.style.start_sphinx_py_class
    - section.include_doc_string
    - section.style.tocitem
    - docs_link.decode
    - botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    - class_section.style.end_sphinx_py_class
    - botocore.docs.client.ClientExceptionsDocumenter.__init__
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - <builtin>.super
    - botocore.docs.client.ClientExceptionsDocumenter._exception_class_name
    - section.style.h2
    - match.group
    - botocore.docs.client.ClientExceptionsDocumenter._add_title
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - os.makedirs
    - history.pop
    - section.style.dedent
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_params
    - section.style.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 91
    functionName: botocore.docs.service.ServiceDocumenter.paginator_api
    functionSourceFile: botocore.docs.service
    functionUses: 2
    functionsReached:
    - paginator_section.style.start_sphinx_py_class
    - _end_cap_regex.sub
    - botocore.xform_name
    - collections.OrderedDict.items
    - section.writeln
    - return_section.write
    - <builtin>.sorted
    - collections.OrderedDict
    - history.append
    - botocore.docs.paginator.PaginatorDocumenter._add_overview
    - service_model.metadata.get
    - section.style.toctree
    - paginator_section.style.start_codeblock
    - f.write
    - return_example_section.style.new_paragraph
    - service_pagination_params.append
    - os.path.exists
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - return_description_section.style.bold
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - method_intro_section.write
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - example_section.style.new_paragraph
    - botocore.docs.paginator.document_paginate_method
    - botocore.docs.paginator.PaginatorDocumenter.document_paginators
    - method_intro_section.style.new_paragraph
    - <builtin>.list
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - _first_cap_regex.sub
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - paginator_section.style.end_codeblock
    - os.path.join
    - example_section.write
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - section.style.start_codeblock
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - DOCUMENTATION_LINK_REGEX.search
    - return_description_section.style.new_line
    - breadcrumb_section.style.ref
    - operation_model.get_event_stream_output
    - operation_model.service_model.metadata.get
    - SECTION_LINE_LIMIT_CONFIG.get
    - method_intro_section.style.end_danger
    - name.replace
    - <builtin>.hasattr
    - return_section.style.new_line
    - <builtin>.open
    - parameter_names.remove
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - service_pagination_response_params.append
    - SECTION_METHOD_PATH_DEPTH.get
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - parameter_names.append
    - <builtin>.isinstance
    - operation_model.get_streaming_input
    - section.style.external_link
    - return_section.add_new_section
    - return_example_section.style.bold
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - paginator_section.style.new_line
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - return_description_section.style.new_paragraph
    - paginator_config.get
    - title_section.style.h1
    - <builtin>.len
    - event_section.write
    - section.flush_structure
    - botocore.docs.paginator.PaginatorDocumenter.__init__
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - value.decode
    - section.style.tocitem
    - paginator_section.write
    - matched.lower
    - docs_link.decode
    - botocore.docs.paginator.PaginatorDocumenter._add_paginator
    - botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    - example_section.style.start_codeblock
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - <builtin>.super
    - section.style.h2
    - match.group
    - collections.namedtuple.__init__
    - params.keys
    - _special_case_transform.search
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - re.sub
    - os.makedirs
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - method_intro_section.writeln
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - section.style.new_line
    - service_model.operation_model
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 104
    functionName: botocore.docs.service.ServiceDocumenter.waiter_api
    functionSourceFile: botocore.docs.service
    functionUses: 2
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - collections.OrderedDict.items
    - section.writeln
    - return_section.write
    - collections.OrderedDict
    - history.append
    - service_model.metadata.get
    - section.style.toctree
    - f.write
    - service_waiter_model.get_waiter
    - return_example_section.style.new_paragraph
    - os.path.exists
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - return_description_section.style.bold
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - method_intro_section.write
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - waiter_section.write
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - example_section.style.new_paragraph
    - waiter_section.style.new_line
    - method_intro_section.style.new_paragraph
    - <builtin>.list
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - _first_cap_regex.sub
    - waiter_section.style.end_codeblock
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - os.path.join
    - waiter_section.style.start_codeblock
    - example_section.write
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - section.style.start_codeblock
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - DOCUMENTATION_LINK_REGEX.search
    - return_description_section.style.new_line
    - breadcrumb_section.style.ref
    - operation_model.get_event_stream_output
    - operation_model.service_model.metadata.get
    - botocore.docs.waiter.WaiterDocumenter.__init__
    - botocore.docs.waiter.WaiterDocumenter._add_overview
    - SECTION_LINE_LIMIT_CONFIG.get
    - method_intro_section.style.end_danger
    - name.replace
    - <builtin>.hasattr
    - return_section.style.new_line
    - <builtin>.open
    - parameter_names.remove
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - botocore.docs.waiter.WaiterDocumenter._add_single_waiter
    - SECTION_METHOD_PATH_DEPTH.get
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - parameter_names.append
    - operation_model.get_streaming_input
    - return_section.add_new_section
    - return_example_section.style.bold
    - section.style.external_link
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - botocore.docs.waiter.document_wait_method
    - return_description_section.style.new_paragraph
    - title_section.style.h1
    - waiter_section.style.start_sphinx_py_class
    - <builtin>.len
    - event_section.write
    - section.flush_structure
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - value.decode
    - botocore.docs.waiter.WaiterDocumenter.document_waiters
    - section.style.tocitem
    - matched.lower
    - docs_link.decode
    - botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    - example_section.style.start_codeblock
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - <builtin>.super
    - section.style.h2
    - match.group
    - collections.namedtuple.__init__
    - params.keys
    - _special_case_transform.search
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - re.sub
    - os.makedirs
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - method_intro_section.writeln
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - section.style.new_line
    - service_model.operation_model
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 121
    functionName: botocore.docs.service.ServiceDocumenter.client_context_params
    functionSourceFile: botocore.docs.service
    functionUses: 2
    functionsReached:
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - section.style.h2
    - botocore.docs.client.ClientContextParamsDocumenter.document_context_params
    - botocore.xform_name
    - botocore.docs.client.ClientContextParamsDocumenter._add_overview
    - botocore.docs.client.ClientContextParamsDocumenter.__init__
    - section.writeln
    - <builtin>.len
    - matched.lower
    - botocore.docs.client.ClientContextParamsDocumenter._add_context_params_list
    - is_special.group
    - section.write
    - _special_case_transform.search
    - botocore.docs.client.ClientContextParamsDocumenter._add_title
    - omitted_params.get
    - section.style.new_line
    - section.style.external_link
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830b06ac0>
    argNames:
    - self
    - docs_link
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 224
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 17
    functionsReached:
    - collections.OrderedDict.items
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - section.flush_structure
    - SECTION_METHOD_PATH_DEPTH.get
    - docs_link.decode
    - match.group
    - SECTION_LINE_LIMIT_CONFIG.get
    - LARGE_SECTION_MESSAGE.format
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - DOCUMENTATION_LINK_REGEX.search
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - <builtin>.len
    - value.splitlines
    - value.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: section.style.h1
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 72
    functionName: botocore.docs.service.ServiceDocumenter.table_of_contents
    functionSourceFile: botocore.docs.service
    functionUses: 0
    functionsReached:
    - section.style.table_of_contents
    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: section.style.table_of_contents
    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 0x7f982f9782e0>
    argNames:
    - self
    - service_name
    - api_version
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 114
    functionName: botocore.docs.service.ServiceDocumenter.get_examples
    functionSourceFile: botocore.docs.service
    functionUses: 3
    functionsReached:
    - loader.load_service_model
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830769af0>
    argNames:
    - self
    - client
    - root_docs_path
    - shared_examples
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 40
    functionName: botocore.docs.client.ClientDocumenter.__init__
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 49
    functionName: botocore.docs.client.ClientDocumenter.document_client
    functionSourceFile: botocore.docs.client
    functionUses: 3
    functionsReached:
    - method_intro_section.style.write_py_doc_string
    - <builtin>.next
    - collections.OrderedDict.items
    - section.writeln
    - return_section.write
    - <builtin>.sorted
    - collections.OrderedDict
    - history.append
    - output_section.write
    - service_model.metadata.get
    - section.style.end_codeblock
    - logger.debug
    - section.style.toctree
    - inspect.ismethod
    - f.write
    - output_section.style.new_line
    - new_params.values
    - return_example_section.style.new_paragraph
    - <builtin>.float
    - os.path.exists
    - section.style.start_sphinx_py_class
    - name.startswith
    - botocore.docs.client.ClientDocumenter._add_title
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - inspect.getdoc
    - return_description_section.style.bold
    - botocore.docs.client.ClientDocumenter._add_client_method
    - closing_section.style.new_line
    - signature_params.rstrip
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_params
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - client_methods.items
    - value.splitlines
    - example.get
    - botocore.docs.client.ClientDocumenter._add_client_intro
    - closing_section.write
    - method_intro_section.write
    - datetime.datetime.fromtimestamp
    - botocore.docs.method.document_custom_method
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - item_section.write
    - botocore.docs.client.ClientDocumenter._filter_client_methods
    - botocore.docs.method.document_model_driven_signature
    - section.context.get
    - error_section.style.li
    - output_section.style.start_codeblock
    - example_section.style.new_paragraph
    - item_section.style.new_line
    - closing_section.style.end_codeblock
    - inspect.getmembers
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - method_intro_section.style.new_paragraph
    - botocore.docs.client.ClientDocumenter._filter_client_method
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - <builtin>.list
    - value.items
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - dateutil.tz.tzutc
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - os.path.join
    - botocore.utils._parse_timestamp_with_tzinfo
    - example_section.write
    - <builtin>.getattr
    - official_name.lower
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - dateutil.parser.parse
    - section.style.start_codeblock
    - DOCUMENTATION_LINK_REGEX.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - signature.replace
    - breadcrumb_section.style.ref
    - return_description_section.style.new_line
    - path.pop
    - operation_model.get_event_stream_output
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - operation_model.service_model.metadata.get
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - output_section.add_new_section
    - container_section.style.bold
    - comments.get
    - SECTION_LINE_LIMIT_CONFIG.get
    - dict_section.add_new_section
    - method_intro_section.style.end_danger
    - <builtin>.hasattr
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_output
    - return_section.style.new_line
    - <builtin>.open
    - parameter_names.remove
    - <builtin>.enumerate
    - botocore.docs.method.document_custom_signature
    - <builtin>.str
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - datetime.timedelta
    - service_model.operation_model
    - input_section.style.start_codeblock
    - input_section.add_new_section
    - SECTION_METHOD_PATH_DEPTH.get
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - parameter_names.append
    - <builtin>.isinstance
    - signature.parameters.copy
    - operation_model.get_streaming_input
    - path.append
    - return_section.add_new_section
    - return_example_section.style.bold
    - input_section.write
    - param_section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_shared_example
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - botocore.docs.client.ClientDocumenter._add_method_exceptions_list
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - return_description_section.style.new_paragraph
    - botocore.docs.client.ClientDocumenter._add_client_methods
    - shape.members.get
    - botocore.docs.utils.escape_controls
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - title_section.style.h1
    - <builtin>.len
    - event_section.write
    - container_section.style.new_paragraph
    - section.style.indent
    - section.style.new_paragraph
    - section.flush_structure
    - botocore.docs.client.ClientDocumenter._add_client_creation_example
    - botocore.docs.method.get_instance_public_methods
    - botocore.docs.client.ClientDocumenter._add_model_driven_method
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - botocore.docs.sharedexample.document_shared_examples
    - error_section.style.new_line
    - dict_section_end.write
    - botocore.docs.method.document_model_driven_method
    - method_intro_section.style.external_link
    - value.decode
    - section.include_doc_string
    - epoch_zero.astimezone
    - short_name.lower
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_input
    - section.style.tocitem
    - botocore.docs.client.ClientDocumenter._add_custom_method
    - docs_link.decode
    - botocore.docs.client.ClientDocumenter._get_client_methods
    - botocore.docs.utils.get_official_service_name
    - botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    - example_section.style.start_codeblock
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - error_section.style.bold
    - _ESCAPE_CONTROLS_RE.sub
    - <builtin>.super
    - container_section.add_new_section
    - inspect.signature
    - section.style.h2
    - botocore.utils.parse_timestamp
    - match.group
    - params.keys
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - os.makedirs
    - history.pop
    - botocore.docs.client.ClientDocumenter._is_custom_method
    - list_section.add_new_section
    - section.style.dedent
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - method_intro_section.writeln
    - <builtin>.iter
    - <builtin>.range
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.client.ClientDocumenter._add_class_signature
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - section.style.new_line
    - short_name.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client
    - root_docs_path
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 246
    functionName: botocore.docs.client.ClientExceptionsDocumenter.__init__
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 252
    functionName: botocore.docs.client.ClientExceptionsDocumenter.document_exceptions
    functionSourceFile: botocore.docs.client
    functionUses: 3
    functionsReached:
    - collections.OrderedDict.items
    - section.writeln
    - collections.OrderedDict
    - history.append
    - section.style.end_codeblock
    - section.style.toctree
    - f.write
    - os.path.exists
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_catch_example
    - botocore.docs.client.ClientExceptionsDocumenter._add_overview
    - example_section.style.new_paragraph
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_classes
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - response_section.style.end_sphinx_py_attr
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr_description
    - botocore.docs.client.ClientExceptionsDocumenter._add_exceptions_list
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - os.path.join
    - <builtin>.getattr
    - section.style.start_codeblock
    - DOCUMENTATION_LINK_REGEX.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - params_section.style.bold
    - breadcrumb_section.style.ref
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_example
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_class
    - SECTION_LINE_LIMIT_CONFIG.get
    - <builtin>.hasattr
    - <builtin>.open
    - params_section.style.new_line
    - SECTION_METHOD_PATH_DEPTH.get
    - section.style.bold
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - params_section.style.new_paragraph
    - section.style.external_link
    - botocore.docs.client.ClientExceptionsDocumenter._add_top_level_documentation
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - example_section.style.bold
    - final_blank_line_section.style.new_line
    - title_section.style.h1
    - response_section.style.start_sphinx_py_attr
    - <builtin>.len
    - section.style.indent
    - section.style.new_paragraph
    - section.flush_structure
    - example_section.style.new_line
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr
    - value.decode
    - class_section.style.start_sphinx_py_class
    - section.include_doc_string
    - section.style.tocitem
    - docs_link.decode
    - botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    - class_section.style.end_sphinx_py_class
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - <builtin>.super
    - botocore.docs.client.ClientExceptionsDocumenter._exception_class_name
    - section.style.h2
    - match.group
    - botocore.docs.client.ClientExceptionsDocumenter._add_title
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - os.makedirs
    - history.pop
    - section.style.dedent
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_params
    - section.style.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client
    - service_paginator_model
    - root_docs_path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 24
    functionName: botocore.docs.paginator.PaginatorDocumenter.__init__
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 9
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 35
    functionName: botocore.docs.paginator.PaginatorDocumenter.document_paginators
    functionSourceFile: botocore.docs.paginator
    functionUses: 3
    functionsReached:
    - paginator_section.style.start_sphinx_py_class
    - _end_cap_regex.sub
    - botocore.xform_name
    - collections.OrderedDict.items
    - section.writeln
    - return_section.write
    - <builtin>.sorted
    - collections.OrderedDict
    - history.append
    - botocore.docs.paginator.PaginatorDocumenter._add_overview
    - service_model.metadata.get
    - section.style.toctree
    - paginator_section.style.start_codeblock
    - f.write
    - return_example_section.style.new_paragraph
    - service_pagination_params.append
    - os.path.exists
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - return_description_section.style.bold
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - method_intro_section.write
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - example_section.style.new_paragraph
    - botocore.docs.paginator.document_paginate_method
    - method_intro_section.style.new_paragraph
    - <builtin>.list
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - _first_cap_regex.sub
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - paginator_section.style.end_codeblock
    - os.path.join
    - example_section.write
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - section.style.start_codeblock
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - DOCUMENTATION_LINK_REGEX.search
    - return_description_section.style.new_line
    - breadcrumb_section.style.ref
    - operation_model.get_event_stream_output
    - operation_model.service_model.metadata.get
    - SECTION_LINE_LIMIT_CONFIG.get
    - method_intro_section.style.end_danger
    - name.replace
    - <builtin>.hasattr
    - return_section.style.new_line
    - <builtin>.open
    - parameter_names.remove
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - service_pagination_response_params.append
    - SECTION_METHOD_PATH_DEPTH.get
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - parameter_names.append
    - <builtin>.isinstance
    - operation_model.get_streaming_input
    - section.style.external_link
    - return_section.add_new_section
    - return_example_section.style.bold
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - paginator_section.style.new_line
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - return_description_section.style.new_paragraph
    - paginator_config.get
    - title_section.style.h1
    - <builtin>.len
    - event_section.write
    - section.flush_structure
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - value.decode
    - section.style.tocitem
    - paginator_section.write
    - matched.lower
    - docs_link.decode
    - botocore.docs.paginator.PaginatorDocumenter._add_paginator
    - botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    - example_section.style.start_codeblock
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - <builtin>.super
    - section.style.h2
    - match.group
    - collections.namedtuple.__init__
    - params.keys
    - _special_case_transform.search
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - re.sub
    - os.makedirs
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - method_intro_section.writeln
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - section.style.new_line
    - service_model.operation_model
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client
    - service_waiter_model
    - root_docs_path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 24
    functionName: botocore.docs.waiter.WaiterDocumenter.__init__
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 9
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 35
    functionName: botocore.docs.waiter.WaiterDocumenter.document_waiters
    functionSourceFile: botocore.docs.waiter
    functionUses: 3
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - collections.OrderedDict.items
    - section.writeln
    - return_section.write
    - collections.OrderedDict
    - history.append
    - service_model.metadata.get
    - section.style.toctree
    - f.write
    - service_waiter_model.get_waiter
    - return_example_section.style.new_paragraph
    - os.path.exists
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - return_description_section.style.bold
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - method_intro_section.write
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - waiter_section.write
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - example_section.style.new_paragraph
    - waiter_section.style.new_line
    - method_intro_section.style.new_paragraph
    - <builtin>.list
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - _first_cap_regex.sub
    - waiter_section.style.end_codeblock
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - os.path.join
    - waiter_section.style.start_codeblock
    - example_section.write
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - section.style.start_codeblock
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - DOCUMENTATION_LINK_REGEX.search
    - return_description_section.style.new_line
    - breadcrumb_section.style.ref
    - operation_model.get_event_stream_output
    - operation_model.service_model.metadata.get
    - botocore.docs.waiter.WaiterDocumenter._add_overview
    - SECTION_LINE_LIMIT_CONFIG.get
    - method_intro_section.style.end_danger
    - name.replace
    - <builtin>.hasattr
    - return_section.style.new_line
    - <builtin>.open
    - parameter_names.remove
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - botocore.docs.waiter.WaiterDocumenter._add_single_waiter
    - SECTION_METHOD_PATH_DEPTH.get
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - parameter_names.append
    - operation_model.get_streaming_input
    - return_section.add_new_section
    - return_example_section.style.bold
    - section.style.external_link
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - botocore.docs.waiter.document_wait_method
    - return_description_section.style.new_paragraph
    - title_section.style.h1
    - waiter_section.style.start_sphinx_py_class
    - <builtin>.len
    - event_section.write
    - section.flush_structure
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - value.decode
    - section.style.tocitem
    - matched.lower
    - docs_link.decode
    - botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    - example_section.style.start_codeblock
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - <builtin>.super
    - section.style.h2
    - match.group
    - collections.namedtuple.__init__
    - params.keys
    - _special_case_transform.search
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - re.sub
    - os.makedirs
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - method_intro_section.writeln
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - section.style.new_line
    - service_model.operation_model
    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: loader.load_service_model
    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: omitted_params.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - context_params
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 419
    functionName: botocore.docs.client.ClientContextParamsDocumenter.__init__
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 423
    functionName: botocore.docs.client.ClientContextParamsDocumenter.document_context_params
    functionSourceFile: botocore.docs.client
    functionUses: 3
    functionsReached:
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - section.style.h2
    - botocore.xform_name
    - botocore.docs.client.ClientContextParamsDocumenter._add_overview
    - section.writeln
    - <builtin>.len
    - matched.lower
    - botocore.docs.client.ClientContextParamsDocumenter._add_context_params_list
    - is_special.group
    - section.write
    - _special_case_transform.search
    - botocore.docs.client.ClientContextParamsDocumenter._add_title
    - section.style.new_line
    - section.style.external_link
    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: botocore.docs.bcdoc.restdoc
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 0
    functionsReached:
    - re.compile
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f982f9a3fa0>
    argNames:
    - self
    - target
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 51
    functionName: botocore.docs.bcdoc.restdoc.ReSTDocument.__init__
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.__init__
    - botocore.docs.bcdoc.docstringparser.DocStringParser.__init__
    - botocore.docs.bcdoc.style.BaseStyle.__init__
    - <builtin>.super
    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 0x7f9830e7b5e0>
    argNames:
    - self
    - doc
    - indent_width
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 79
    functionName: botocore.docs.bcdoc.style.ReSTStyle.__init__
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 1
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - doc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 29
    functionName: botocore.docs.bcdoc.docstringparser.DocStringParser.__init__
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 62
    functionName: botocore.docs.bcdoc.restdoc.ReSTDocument._write
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - content
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 66
    functionName: botocore.docs.bcdoc.restdoc.ReSTDocument.write
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.restdoc.ReSTDocument._write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - content
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 72
    functionName: botocore.docs.bcdoc.restdoc.ReSTDocument.writeln
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.restdoc.ReSTDocument._write
    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: 46
    functionName: botocore.docs.bcdoc.style.BaseStyle.spaces
    functionSourceFile: ''
    functionUses: 54
    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: 78
    functionName: botocore.docs.bcdoc.restdoc.ReSTDocument.peek_write
    functionSourceFile: botocore.docs.bcdoc.restdoc
    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: 1
    functionLinenumber: 85
    functionName: botocore.docs.bcdoc.restdoc.ReSTDocument.pop_write
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 91
    functionName: botocore.docs.bcdoc.restdoc.ReSTDocument.push_write
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 97
    functionName: botocore.docs.bcdoc.restdoc.ReSTDocument.getvalue
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    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: 1
    functionLinenumber: 85
    functionName: botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 43
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - refname
    - link
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 238
    functionName: botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    functionSourceFile: ''
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - words
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 107
    functionName: botocore.docs.bcdoc.restdoc.ReSTDocument.translate_words
    functionSourceFile: botocore.docs.bcdoc.restdoc
    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
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 110
    functionName: botocore.docs.bcdoc.restdoc.ReSTDocument.handle_data
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.restdoc.ReSTDocument._write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - doc_string
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 114
    functionName: botocore.docs.bcdoc.restdoc.ReSTDocument.include_doc_string
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 0
    functionsReached:
    - itertools.zip_longest
    - botocore.docs.bcdoc.docstringparser.TagNode._has_nested_tags
    - <builtin>.hasattr
    - botocore.docs.bcdoc.docstringparser.TagNode.write
    - <builtin>.any
    - botocore.docs.bcdoc.docstringparser.TagNode._write_end
    - botocore.docs.bcdoc.docstringparser.DocStringParser.feed
    - <builtin>.isinstance
    - botocore.docs.bcdoc.docstringparser.TagNode._write_start
    - <builtin>.super
    - botocore.docs.bcdoc.docstringparser.StemNode.__init__
    - botocore.docs.bcdoc.docstringparser.DocStringParser.close
    - botocore.docs.bcdoc.docstringparser.StemNode._write_children
    - <builtin>.getattr
    - botocore.docs.bcdoc.docstringparser.HTMLTree.__init__
    - child.write
    - botocore.docs.bcdoc.docstringparser.HTMLTree.write
    - LOG.debug
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 38
    functionName: botocore.docs.bcdoc.docstringparser.DocStringParser.feed
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    - itertools.zip_longest
    - botocore.docs.bcdoc.docstringparser.TagNode._has_nested_tags
    - <builtin>.hasattr
    - botocore.docs.bcdoc.docstringparser.TagNode.write
    - botocore.docs.bcdoc.docstringparser.HTMLTree.__init__
    - botocore.docs.bcdoc.docstringparser.TagNode._write_end
    - child.write
    - <builtin>.isinstance
    - <builtin>.any
    - botocore.docs.bcdoc.docstringparser.TagNode._write_start
    - <builtin>.super
    - botocore.docs.bcdoc.docstringparser.StemNode.__init__
    - botocore.docs.bcdoc.docstringparser.StemNode._write_children
    - botocore.docs.bcdoc.docstringparser.HTMLTree.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 43
    functionName: botocore.docs.bcdoc.docstringparser.DocStringParser.close
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    - itertools.zip_longest
    - botocore.docs.bcdoc.docstringparser.TagNode._has_nested_tags
    - <builtin>.hasattr
    - botocore.docs.bcdoc.docstringparser.TagNode.write
    - botocore.docs.bcdoc.docstringparser.HTMLTree.__init__
    - botocore.docs.bcdoc.docstringparser.TagNode._write_end
    - child.write
    - <builtin>.isinstance
    - <builtin>.any
    - botocore.docs.bcdoc.docstringparser.TagNode._write_start
    - <builtin>.super
    - botocore.docs.bcdoc.docstringparser.StemNode.__init__
    - botocore.docs.bcdoc.docstringparser.StemNode._write_children
    - botocore.docs.bcdoc.docstringparser.HTMLTree.write
    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: 0
    functionLinenumber: 126
    functionName: botocore.docs.bcdoc.restdoc.ReSTDocument.remove_last_doc_string
    functionSourceFile: botocore.docs.bcdoc.restdoc
    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
    - section_names
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 182
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 17
    functionsReached:
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    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: 158
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.name
    functionSourceFile: botocore.docs.bcdoc.restdoc
    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
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 171
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.path
    functionSourceFile: botocore.docs.bcdoc.restdoc
    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: 175
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.available_sections
    functionSourceFile: botocore.docs.bcdoc.restdoc
    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: 0
    functionLinenumber: 179
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.context
    functionSourceFile: botocore.docs.bcdoc.restdoc
    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 0x7f9830c52f70>
    argNames:
    - self
    - name
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 186
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    functionSourceFile: ''
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 217
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.has_section
    functionSourceFile: botocore.docs.bcdoc.restdoc
    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
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 220
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.delete_section
    functionSourceFile: botocore.docs.bcdoc.restdoc
    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: SECTION_METHOD_PATH_DEPTH.get
    functionSourceFile: <builtin>
    functionUses: 18
    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: 266
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    functionSourceFile: ''
    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: collections.OrderedDict.items
    functionSourceFile: collections
    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: value.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: DOCUMENTATION_LINK_REGEX.search
    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: section.flush_structure
    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: value.splitlines
    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: SECTION_LINE_LIMIT_CONFIG.get
    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: docs_link.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: LARGE_SECTION_MESSAGE.format
    functionSourceFile: <builtin>
    functionUses: 18
    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: 269
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.remove_all_sections
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 0
    functionsReached:
    - collections.OrderedDict
    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: 272
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.clear_text
    functionSourceFile: botocore.docs.bcdoc.restdoc
    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
    - title
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 275
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 16
    functionsReached:
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - title_section.style.h1
    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: title_section.style.h1
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - full_path
    - file_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 280
    functionName: botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    functionSourceFile: botocore.docs.bcdoc.restdoc
    functionUses: 12
    functionsReached:
    - collections.OrderedDict.items
    - section.flush_structure
    - <builtin>.open
    - value.decode
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - SECTION_METHOD_PATH_DEPTH.get
    - f.write
    - docs_link.decode
    - os.path.join
    - LARGE_SECTION_MESSAGE.format
    - os.path.exists
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - match.group
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - DOCUMENTATION_LINK_REGEX.search
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - os.makedirs
    - value.splitlines
    - SECTION_LINE_LIMIT_CONFIG.get
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - <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: 1
    functionLinenumber: -1
    functionName: botocore.docs.bcdoc.style
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - logging.getLogger
    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 0x7f9830ba5970>
    argNames:
    - self
    - doc
    - indent_width
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 22
    functionName: botocore.docs.bcdoc.style.BaseStyle.__init__
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 33
    functionName: botocore.docs.bcdoc.style.BaseStyle.indentation
    functionSourceFile: botocore.docs.bcdoc.style
    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: 36
    functionName: botocore.docs.bcdoc.style.BaseStyle.new_paragraph
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    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: botocore.docs.bcdoc.style.BaseStyle.indent
    functionSourceFile: botocore.docs.bcdoc.style
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 42
    functionName: botocore.docs.bcdoc.style.BaseStyle.dedent
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 49
    functionName: botocore.docs.bcdoc.style.BaseStyle.bold
    functionSourceFile: botocore.docs.bcdoc.style
    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 0x7f982f895340>
    argNames:
    - self
    - link
    - title
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 52
    functionName: botocore.docs.bcdoc.style.BaseStyle.ref
    functionSourceFile: botocore.docs.bcdoc.style
    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
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 55
    functionName: botocore.docs.bcdoc.style.BaseStyle.h2
    functionSourceFile: botocore.docs.bcdoc.style
    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
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 58
    functionName: botocore.docs.bcdoc.style.BaseStyle.h3
    functionSourceFile: botocore.docs.bcdoc.style
    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
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 61
    functionName: botocore.docs.bcdoc.style.BaseStyle.underline
    functionSourceFile: botocore.docs.bcdoc.style
    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
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 64
    functionName: botocore.docs.bcdoc.style.BaseStyle.italics
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 67
    functionName: botocore.docs.bcdoc.style.BaseStyle.add_trailing_space_to_previous_write
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 3
    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: 1
    functionLinenumber: 88
    functionName: botocore.docs.bcdoc.style.ReSTStyle.new_line
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 5
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - markup
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 91
    functionName: botocore.docs.bcdoc.style.ReSTStyle._start_inline
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - markup
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 103
    functionName: botocore.docs.bcdoc.style.ReSTStyle._end_inline
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 8
    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 0x7f9830ee9c70>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 114
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_bold
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 2
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle._start_inline
    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: 1
    functionLinenumber: 117
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_bold
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 2
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle._end_inline
    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 0x7f9830ee9940>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 120
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_b
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.start_bold
    - botocore.docs.bcdoc.style.ReSTStyle._start_inline
    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: 2
    functionLinenumber: 124
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_b
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.end_bold
    - botocore.docs.bcdoc.style.ReSTStyle._end_inline
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 128
    functionName: botocore.docs.bcdoc.style.ReSTStyle.bold
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.start_bold
    - botocore.docs.bcdoc.style.ReSTStyle._start_inline
    - botocore.docs.bcdoc.style.ReSTStyle.end_bold
    - botocore.docs.bcdoc.style.ReSTStyle._end_inline
    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 0x7f983090f4c0>
    argNames:
    - self
    - title
    - link
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 134
    functionName: botocore.docs.bcdoc.style.ReSTStyle.ref
    functionSourceFile: botocore.docs.bcdoc.style
    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
    - s
    - border_char
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 139
    functionName: botocore.docs.bcdoc.style.ReSTStyle._heading
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 3
    functionsReached:
    - <builtin>.len
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 145
    functionName: botocore.docs.bcdoc.style.ReSTStyle.h1
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle._heading
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 148
    functionName: botocore.docs.bcdoc.style.ReSTStyle.h2
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle._heading
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 151
    functionName: botocore.docs.bcdoc.style.ReSTStyle.h3
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle._heading
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    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 0x7f9830772a00>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 154
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_italics
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 2
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle._start_inline
    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: 1
    functionLinenumber: 157
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_italics
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 2
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle._end_inline
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 160
    functionName: botocore.docs.bcdoc.style.ReSTStyle.italics
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle._end_inline
    - botocore.docs.bcdoc.style.ReSTStyle.end_italics
    - botocore.docs.bcdoc.style.ReSTStyle.start_italics
    - botocore.docs.bcdoc.style.ReSTStyle._start_inline
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830772070>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 166
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_p
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 170
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_p
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830afb730>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 174
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_code
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 1
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.add_trailing_space_to_previous_write
    - botocore.docs.bcdoc.style.ReSTStyle._start_inline
    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: 1
    functionLinenumber: 179
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_code
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 1
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle._end_inline
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 183
    functionName: botocore.docs.bcdoc.style.ReSTStyle.code
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.start_code
    - botocore.docs.bcdoc.style.ReSTStyle.end_code
    - botocore.docs.bcdoc.style.BaseStyle.add_trailing_space_to_previous_write
    - botocore.docs.bcdoc.style.ReSTStyle._start_inline
    - botocore.docs.bcdoc.style.ReSTStyle._end_inline
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830327490>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 189
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_note
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.BaseStyle.indent
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 195
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_note
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.dedent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830327670>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 199
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_important
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.BaseStyle.indent
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 205
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_important
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.dedent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e65670>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 209
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_danger
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.BaseStyle.indent
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 215
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_danger
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.dedent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e65f70>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 219
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_a
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - attr_value.strip
    - botocore.docs.bcdoc.style.BaseStyle.add_trailing_space_to_previous_write
    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: attr_value.strip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f98307f1370>
    argNames:
    - self
    - label
    - text
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 241
    functionName: botocore.docs.bcdoc.style.ReSTStyle.sphinx_reference_label
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 249
    functionName: botocore.docs.bcdoc.style.ReSTStyle._clean_link_text
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 1
    functionsReached:
    - doc.pop_write
    - last_write.startswith
    - doc.push_write
    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: doc.pop_write
    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: last_write.startswith
    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: doc.push_write
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f983098abb0>
    argNames:
    - self
    - next_child
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 261
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_a
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - last_write.startswith
    - last_write.rstrip
    - doc.pop_write
    - doc.push_write
    - botocore.docs.bcdoc.style.ReSTStyle._clean_link_text
    - last_write.replace
    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: last_write.rstrip
    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: last_write.replace
    functionSourceFile: <builtin>
    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 0x7f9830ca5e20>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 285
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_i
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.start_italics
    - botocore.docs.bcdoc.style.ReSTStyle._start_inline
    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: 2
    functionLinenumber: 289
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_i
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.end_italics
    - botocore.docs.bcdoc.style.ReSTStyle._end_inline
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a53fa0>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 293
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_li
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 3
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_line
    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: 2
    functionLinenumber: 298
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_li
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 3
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 302
    functionName: botocore.docs.bcdoc.style.ReSTStyle.li
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 2
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.start_li
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.end_li
    - botocore.docs.bcdoc.style.ReSTStyle.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830720dc0>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 308
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_ul
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 1
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.indent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 314
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_ul
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.dedent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830bb1100>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 320
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_ol
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.indent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 327
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_ol
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.dedent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830bb14c0>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 333
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_examples
    functionSourceFile: botocore.docs.bcdoc.style
    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: 336
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_examples
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830bb1d60>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 339
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_fullname
    functionSourceFile: botocore.docs.bcdoc.style
    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: 342
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_fullname
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a4a130>
    argNames:
    - self
    - attrs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 345
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_codeblock
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 1
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.indent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 350
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_codeblock
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 1
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.dedent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 354
    functionName: botocore.docs.bcdoc.style.ReSTStyle.codeblock
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.end_codeblock
    - botocore.docs.bcdoc.style.BaseStyle.indent
    - botocore.docs.bcdoc.style.ReSTStyle.start_codeblock
    - botocore.docs.bcdoc.style.BaseStyle.dedent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 365
    functionName: botocore.docs.bcdoc.style.ReSTStyle.toctree
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.indent
    - botocore.docs.bcdoc.style.ReSTStyle.start_ul
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f98313e9e80>
    argNames:
    - self
    - item
    - file_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 373
    functionName: botocore.docs.bcdoc.style.ReSTStyle.tocitem
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 1
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.end_li
    - botocore.docs.bcdoc.style.ReSTStyle.li
    - botocore.docs.bcdoc.style.ReSTStyle.new_line
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.start_li
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 382
    functionName: botocore.docs.bcdoc.style.ReSTStyle.hidden_toctree
    functionSourceFile: botocore.docs.bcdoc.style
    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
    - item
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 388
    functionName: botocore.docs.bcdoc.style.ReSTStyle.hidden_tocitem
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.end_li
    - botocore.docs.bcdoc.style.ReSTStyle.li
    - botocore.docs.bcdoc.style.ReSTStyle.new_line
    - botocore.docs.bcdoc.style.ReSTStyle.tocitem
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.start_li
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830f2e190>
    - <ast.Constant object at 0x7f9830f2e430>
    argNames:
    - self
    - title
    - depth
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 392
    functionName: botocore.docs.bcdoc.style.ReSTStyle.table_of_contents
    functionSourceFile: botocore.docs.bcdoc.style
    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
    - class_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 399
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_sphinx_py_class
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.BaseStyle.indent
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 405
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_sphinx_py_class
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.dedent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830cf8070>
    argNames:
    - self
    - method_name
    - parameters
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 409
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_sphinx_py_method
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.BaseStyle.indent
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 418
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_sphinx_py_method
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.dedent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - attr_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 422
    functionName: botocore.docs.bcdoc.style.ReSTStyle.start_sphinx_py_attr
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.BaseStyle.indent
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 428
    functionName: botocore.docs.bcdoc.style.ReSTStyle.end_sphinx_py_attr
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - botocore.docs.bcdoc.style.BaseStyle.dedent
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - docstring
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 432
    functionName: botocore.docs.bcdoc.style.ReSTStyle.write_py_doc_string
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached:
    - docstring.splitlines
    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: docstring.splitlines
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - title
    - link
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 437
    functionName: botocore.docs.bcdoc.style.ReSTStyle.external_link
    functionSourceFile: botocore.docs.bcdoc.style
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - title
    - page
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 443
    functionName: botocore.docs.bcdoc.style.ReSTStyle.internal_link
    functionSourceFile: botocore.docs.bcdoc.style
    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: botocore.docs.bcdoc.docstringparser
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    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: 3
    functionLinenumber: 34
    functionName: botocore.docs.bcdoc.docstringparser.DocStringParser.reset
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - botocore.docs.bcdoc.docstringparser.StemNode.__init__
    - botocore.docs.bcdoc.docstringparser.HTMLTree.__init__
    - html.parser.HTMLParser.reset
    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: html.parser.HTMLParser.reset
    functionSourceFile: html
    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
    - doc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 66
    functionName: botocore.docs.bcdoc.docstringparser.HTMLTree.__init__
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 4
    functionsReached:
    - <builtin>.super
    - botocore.docs.bcdoc.docstringparser.StemNode.__init__
    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: 3
    functionLinenumber: 95
    functionName: botocore.docs.bcdoc.docstringparser.HTMLTree.write
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 3
    functionsReached:
    - <builtin>.getattr
    - itertools.zip_longest
    - botocore.docs.bcdoc.docstringparser.TagNode._has_nested_tags
    - <builtin>.hasattr
    - botocore.docs.bcdoc.docstringparser.TagNode.write
    - child.write
    - <builtin>.isinstance
    - <builtin>.any
    - botocore.docs.bcdoc.docstringparser.TagNode._write_start
    - botocore.docs.bcdoc.docstringparser.TagNode._write_end
    - botocore.docs.bcdoc.docstringparser.StemNode._write_children
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tag
    - attrs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 49
    functionName: botocore.docs.bcdoc.docstringparser.DocStringParser.handle_starttag
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - <builtin>.hasattr
    - botocore.docs.bcdoc.docstringparser.HTMLTree._doc_has_handler
    - botocore.docs.bcdoc.docstringparser.StemNode.add_child
    - botocore.docs.bcdoc.docstringparser.TagNode.__init__
    - botocore.docs.bcdoc.docstringparser.HTMLTree.add_tag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f98315443d0>
    - <ast.Constant object at 0x7f98315448b0>
    argNames:
    - self
    - tag
    - attrs
    - is_start
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 72
    functionName: botocore.docs.bcdoc.docstringparser.HTMLTree.add_tag
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 2
    functionsReached:
    - <builtin>.super
    - <builtin>.hasattr
    - botocore.docs.bcdoc.docstringparser.HTMLTree._doc_has_handler
    - botocore.docs.bcdoc.docstringparser.StemNode.add_child
    - botocore.docs.bcdoc.docstringparser.TagNode.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tag
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 52
    functionName: botocore.docs.bcdoc.docstringparser.DocStringParser.handle_endtag
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - <builtin>.hasattr
    - botocore.docs.bcdoc.docstringparser.HTMLTree._doc_has_handler
    - botocore.docs.bcdoc.docstringparser.StemNode.add_child
    - botocore.docs.bcdoc.docstringparser.TagNode.__init__
    - botocore.docs.bcdoc.docstringparser.HTMLTree.add_tag
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 55
    functionName: botocore.docs.bcdoc.docstringparser.DocStringParser.handle_data
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 0
    functionsReached:
    - <builtin>.next
    - <builtin>.reversed
    - botocore.docs.bcdoc.docstringparser.DataNode.__init__
    - <builtin>.isinstance
    - botocore.docs.bcdoc.docstringparser.StemNode.add_child
    - <builtin>.super
    - <builtin>.len
    - <builtin>.enumerate
    - botocore.docs.bcdoc.docstringparser.HTMLTree.add_data
    - data.isspace
    - ch.isspace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 92
    functionName: botocore.docs.bcdoc.docstringparser.HTMLTree.add_data
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 1
    functionsReached:
    - <builtin>.next
    - <builtin>.reversed
    - botocore.docs.bcdoc.docstringparser.DataNode.__init__
    - <builtin>.isinstance
    - botocore.docs.bcdoc.docstringparser.StemNode.add_child
    - <builtin>.super
    - <builtin>.len
    - <builtin>.enumerate
    - data.isspace
    - ch.isspace
    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 0x7f983008bc70>
    argNames:
    - self
    - parent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 108
    functionName: botocore.docs.bcdoc.docstringparser.StemNode.__init__
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 5
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tag
    - is_start
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 84
    functionName: botocore.docs.bcdoc.docstringparser.HTMLTree._doc_has_handler
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 3
    functionsReached:
    - <builtin>.hasattr
    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 0x7f9830a17a30>
    - <ast.Constant object at 0x7f9830a17f40>
    argNames:
    - self
    - tag
    - attrs
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 168
    functionName: botocore.docs.bcdoc.docstringparser.TagNode.__init__
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 3
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - child
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 112
    functionName: botocore.docs.bcdoc.docstringparser.StemNode.add_child
    functionSourceFile: ''
    functionUses: 5
    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 0x7f9830e7b040>
    argNames:
    - self
    - data
    - parent
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 248
    functionName: botocore.docs.bcdoc.docstringparser.DataNode.__init__
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 2
    functionsReached:
    - <builtin>.next
    - <builtin>.reversed
    - <builtin>.isinstance
    - <builtin>.super
    - <builtin>.len
    - <builtin>.enumerate
    - data.isspace
    - ch.isspace
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e0c2b0>
    argNames:
    - self
    - doc
    - next_child
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 177
    functionName: botocore.docs.bcdoc.docstringparser.TagNode.write
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 4
    functionsReached:
    - <builtin>.getattr
    - itertools.zip_longest
    - botocore.docs.bcdoc.docstringparser.TagNode._has_nested_tags
    - <builtin>.hasattr
    - child.write
    - <builtin>.isinstance
    - <builtin>.any
    - botocore.docs.bcdoc.docstringparser.TagNode._write_start
    - botocore.docs.bcdoc.docstringparser.TagNode._write_end
    - botocore.docs.bcdoc.docstringparser.StemNode._write_children
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a800d0>
    argNames:
    - self
    - parent
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 100
    functionName: botocore.docs.bcdoc.docstringparser.Node.__init__
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    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
    - doc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 103
    functionName: botocore.docs.bcdoc.docstringparser.Node.write
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - doc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 116
    functionName: botocore.docs.bcdoc.docstringparser.StemNode.write
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 0
    functionsReached:
    - child.collapse_whitespace
    - itertools.zip_longest
    - child.write
    - cur.rstrip
    - prev.endswith_whitespace
    - cur.startswith_whitespace
    - cur.lstrip
    - botocore.docs.bcdoc.docstringparser.StemNode.collapse_whitespace
    - <builtin>.isinstance
    - botocore.docs.bcdoc.docstringparser.StemNode.lstrip
    - nxt.startswith_whitespace
    - cur.endswith_whitespace
    - <builtin>.zip
    - botocore.docs.bcdoc.docstringparser.StemNode._write_children
    - botocore.docs.bcdoc.docstringparser.TagNode.collapse_whitespace
    - botocore.docs.bcdoc.docstringparser.StemNode.rstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 148
    functionName: botocore.docs.bcdoc.docstringparser.StemNode.collapse_whitespace
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 1
    functionsReached:
    - child.collapse_whitespace
    - botocore.docs.bcdoc.docstringparser.StemNode.lstrip
    - botocore.docs.bcdoc.docstringparser.StemNode.rstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 194
    functionName: botocore.docs.bcdoc.docstringparser.TagNode.collapse_whitespace
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 1
    functionsReached:
    - child.collapse_whitespace
    - cur.rstrip
    - cur.startswith_whitespace
    - <builtin>.isinstance
    - botocore.docs.bcdoc.docstringparser.StemNode.lstrip
    - nxt.startswith_whitespace
    - cur.endswith_whitespace
    - <builtin>.zip
    - prev.endswith_whitespace
    - cur.lstrip
    - botocore.docs.bcdoc.docstringparser.StemNode.rstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - doc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 120
    functionName: botocore.docs.bcdoc.docstringparser.StemNode._write_children
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 6
    functionsReached:
    - itertools.zip_longest
    - <builtin>.isinstance
    - child.write
    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: child.write
    functionSourceFile: <builtin>
    functionUses: 7
    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: 127
    functionName: botocore.docs.bcdoc.docstringparser.StemNode.is_whitespace
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 0
    functionsReached:
    - child.is_whitespace
    - <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: child.is_whitespace
    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: 0
    functionLinenumber: 130
    functionName: botocore.docs.bcdoc.docstringparser.StemNode.startswith_whitespace
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    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: 133
    functionName: botocore.docs.bcdoc.docstringparser.StemNode.endswith_whitespace
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 136
    functionName: botocore.docs.bcdoc.docstringparser.StemNode.lstrip
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 142
    functionName: botocore.docs.bcdoc.docstringparser.StemNode.rstrip
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    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: child.collapse_whitespace
    functionSourceFile: <builtin>
    functionUses: 3
    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: 173
    functionName: botocore.docs.bcdoc.docstringparser.TagNode._has_nested_tags
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 5
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - doc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 228
    functionName: botocore.docs.bcdoc.docstringparser.TagNode._write_start
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 5
    functionsReached:
    - <builtin>.hasattr
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - doc
    - next_child
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 233
    functionName: botocore.docs.bcdoc.docstringparser.TagNode._write_end
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 5
    functionsReached:
    - <builtin>.hasattr
    - <builtin>.getattr
    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: prev.endswith_whitespace
    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: cur.startswith_whitespace
    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: cur.lstrip
    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: cur.endswith_whitespace
    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: nxt.startswith_whitespace
    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: cur.rstrip
    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: data.isspace
    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: ch.isspace
    functionSourceFile: <builtin>
    functionUses: 3
    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: 271
    functionName: botocore.docs.bcdoc.docstringparser.DataNode.data
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    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: 277
    functionName: botocore.docs.bcdoc.docstringparser.DataNode.is_whitespace
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    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: 282
    functionName: botocore.docs.bcdoc.docstringparser.DataNode.startswith_whitespace
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    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: 287
    functionName: botocore.docs.bcdoc.docstringparser.DataNode.endswith_whitespace
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 292
    functionName: botocore.docs.bcdoc.docstringparser.DataNode.lstrip
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 1
    functionsReached:
    - botocore.docs.bcdoc.docstringparser.DataNode.rstrip
    - botocore.docs.bcdoc.docstringparser.DataNode.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 298
    functionName: botocore.docs.bcdoc.docstringparser.DataNode.rstrip
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 1
    functionsReached:
    - botocore.docs.bcdoc.docstringparser.DataNode.rstrip
    - botocore.docs.bcdoc.docstringparser.DataNode.lstrip
    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: 304
    functionName: botocore.docs.bcdoc.docstringparser.DataNode.collapse_whitespace
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    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
    - doc
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 308
    functionName: botocore.docs.bcdoc.docstringparser.DataNode.write
    functionSourceFile: botocore.docs.bcdoc.docstringparser
    functionUses: 0
    functionsReached:
    - doc.handle_data
    - doc.translate_words
    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: doc.translate_words
    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: doc.handle_data
    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: botocore.docs.paginator
    functionSourceFile: botocore.docs.paginator
    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: section.style.h2
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 105
    functionName: botocore.docs.paginator.PaginatorDocumenter._add_overview
    functionSourceFile: botocore.docs.paginator
    functionUses: 4
    functionsReached:
    - section.style.new_line
    - section.write
    - section.style.external_link
    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: section.style.new_line
    functionSourceFile: <builtin>
    functionUses: 67
    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: section.writeln
    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: section.style.toctree
    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: section.style.tocitem
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 10
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - paginator_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 69
    functionName: botocore.docs.paginator.PaginatorDocumenter._add_paginator
    functionSourceFile: botocore.docs.paginator
    functionUses: 4
    functionsReached:
    - paginator_section.style.start_sphinx_py_class
    - _end_cap_regex.sub
    - botocore.xform_name
    - return_section.write
    - collections.OrderedDict
    - history.append
    - service_model.metadata.get
    - paginator_section.style.start_codeblock
    - return_example_section.style.new_paragraph
    - service_pagination_params.append
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - return_description_section.style.bold
    - method_intro_section.write
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - example_section.style.new_paragraph
    - botocore.docs.paginator.document_paginate_method
    - method_intro_section.style.new_paragraph
    - <builtin>.list
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - _first_cap_regex.sub
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - paginator_section.style.end_codeblock
    - example_section.write
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - section.style.start_codeblock
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - return_description_section.style.new_line
    - breadcrumb_section.style.ref
    - operation_model.get_event_stream_output
    - operation_model.service_model.metadata.get
    - method_intro_section.style.end_danger
    - name.replace
    - <builtin>.hasattr
    - return_section.style.new_line
    - parameter_names.remove
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - service_pagination_response_params.append
    - parameter_names.append
    - <builtin>.isinstance
    - operation_model.get_streaming_input
    - return_section.add_new_section
    - return_example_section.style.bold
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - paginator_section.style.new_line
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - return_description_section.style.new_paragraph
    - paginator_config.get
    - title_section.style.h1
    - <builtin>.len
    - event_section.write
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - paginator_section.write
    - matched.lower
    - example_section.style.start_codeblock
    - section.write
    - collections.namedtuple.__init__
    - params.keys
    - _special_case_transform.search
    - re.sub
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - method_intro_section.writeln
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - return_section.style.indent
    - section.style.new_line
    - service_model.operation_model
    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: breadcrumb_section.style.ref
    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: breadcrumb_section.write
    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: paginator_section.style.start_sphinx_py_class
    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: paginator_section.style.start_codeblock
    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: paginator_section.style.new_line
    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: paginator_section.write
    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: paginator_section.style.end_codeblock
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f98307e61c0>
    argNames:
    - section
    - paginator_name
    - event_emitter
    - service_model
    - paginator_config
    - include_signature
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 121
    functionName: botocore.docs.paginator.document_paginate_method
    functionSourceFile: botocore.docs.paginator
    functionUses: 10
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - <builtin>.hasattr
    - return_section.write
    - collections.OrderedDict
    - method_intro_section.style.new_paragraph
    - return_section.style.new_line
    - history.append
    - <builtin>.list
    - parameter_names.remove
    - service_model.metadata.get
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - _first_cap_regex.sub
    - service_pagination_response_params.append
    - name.replace
    - service_model.operation_model
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - matched.lower
    - parameter_names.append
    - <builtin>.isinstance
    - example_section.style.start_codeblock
    - section.write
    - operation_model.get_streaming_input
    - return_example_section.style.new_paragraph
    - return_section.add_new_section
    - example_section.write
    - service_pagination_params.append
    - return_example_section.style.bold
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - example_section.style.bold
    - section.style.start_codeblock
    - method_intro_section.style.start_danger
    - return_description_section.style.bold
    - collections.namedtuple.__init__
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - _special_case_transform.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - re.sub
    - return_description_section.style.new_line
    - event_section.write
    - operation_model.get_event_stream_output
    - return_description_section.style.new_paragraph
    - params.keys
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - operation_model.service_model.metadata.get
    - method_intro_section.write
    - method_intro_section.writeln
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - paginator_config.get
    - return_section.style.indent
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - method_intro_section.style.end_danger
    - <builtin>.len
    - section.style.new_line
    - example_section.style.new_paragraph
    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: section.write
    functionSourceFile: <builtin>
    functionUses: 78
    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: section.style.external_link
    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: paginator_config.get
    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: service_pagination_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: service_pagination_response_params.append
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 35
    IfCount: 7
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7f9830327ac0>
    - <ast.Constant object at 0x7f98303279d0>
    - <ast.Constant object at 0x7f9830327370>
    - <ast.Constant object at 0x7f9830327a90>
    - <ast.Constant object at 0x7f9830327790>
    - <ast.Constant object at 0x7f98303270a0>
    - <ast.Constant object at 0x7f9830327eb0>
    - <ast.Constant object at 0x7f9830327760>
    argNames:
    - section
    - method_name
    - operation_model
    - event_emitter
    - method_description
    - example_prefix
    - include_input
    - include_output
    - exclude_input
    - exclude_output
    - document_output
    - include_signature
    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: 3
    functionLinenumber: 139
    functionName: botocore.docs.method.document_model_driven_method
    functionSourceFile: botocore.docs.method
    functionUses: 22
    functionsReached:
    - <builtin>.hasattr
    - return_section.write
    - method_intro_section.style.new_paragraph
    - return_section.style.new_line
    - history.append
    - <builtin>.list
    - parameter_names.remove
    - method_intro_section.style.external_link
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - parameter_names.append
    - example_section.style.start_codeblock
    - section.write
    - operation_model.get_streaming_input
    - return_example_section.style.new_paragraph
    - example_section.write
    - return_example_section.style.bold
    - return_section.add_new_section
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - <builtin>.len
    - example_section.style.bold
    - section.style.start_codeblock
    - method_intro_section.style.start_danger
    - return_description_section.style.bold
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - params.keys
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - return_description_section.style.new_line
    - operation_model.get_event_stream_output
    - return_description_section.style.new_paragraph
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - operation_model.service_model.metadata.get
    - method_intro_section.write
    - method_intro_section.writeln
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - section.add_new_section
    - return_section.style.indent
    - botocore.docs.method.document_model_driven_signature
    - method_intro_section.style.end_danger
    - event_section.write
    - section.style.new_line
    - example_section.style.new_paragraph
    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: botocore.docs.method
    functionSourceFile: botocore.docs.method
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - instance
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: botocore.docs.method.get_instance_public_methods
    functionSourceFile: botocore.docs.method
    functionUses: 5
    functionsReached:
    - inspect.ismethod
    - inspect.getmembers
    - name.startswith
    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: 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: inspect.ismethod
    functionSourceFile: inspect
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830d92850>
    - <ast.Constant object at 0x7f9830d92880>
    argNames:
    - section
    - name
    - operation_model
    - include
    - exclude
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 46
    functionName: botocore.docs.method.document_model_driven_signature
    functionSourceFile: botocore.docs.method
    functionUses: 23
    functionsReached:
    - section.style.start_sphinx_py_method
    - parameter_names.append
    - params.keys
    - <builtin>.list
    - parameter_names.remove
    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: parameter_names.append
    functionSourceFile: <builtin>
    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: parameter_names.remove
    functionSourceFile: <builtin>
    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: section.style.start_sphinx_py_method
    functionSourceFile: <builtin>
    functionUses: 27
    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 0x7f9830772b20>
    - <ast.Constant object at 0x7f9830772160>
    argNames:
    - section
    - name
    - method
    - include
    - exclude
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 86
    functionName: botocore.docs.method.document_custom_signature
    functionSourceFile: botocore.docs.method
    functionUses: 8
    functionsReached:
    - <builtin>.next
    - <builtin>.iter
    - section.style.start_sphinx_py_method
    - <builtin>.isinstance
    - signature_params.rstrip
    - signature.parameters.copy
    - new_params.values
    - signature.replace
    - <builtin>.str
    - inspect.signature
    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.signature
    functionSourceFile: inspect
    functionUses: 9
    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.parameters.copy
    functionSourceFile: <builtin>
    functionUses: 9
    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: new_params.values
    functionSourceFile: <builtin>
    functionUses: 9
    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.replace
    functionSourceFile: <builtin>
    functionUses: 9
    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_params.rstrip
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - section
    - method_name
    - method
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 121
    functionName: botocore.docs.method.document_custom_method
    functionSourceFile: botocore.docs.method
    functionUses: 7
    functionsReached:
    - method_intro_section.style.write_py_doc_string
    - <builtin>.next
    - method_intro_section.writeln
    - <builtin>.iter
    - section.context.get
    - inspect.getdoc
    - section.style.start_sphinx_py_method
    - <builtin>.str
    - section.add_new_section
    - <builtin>.isinstance
    - signature_params.rstrip
    - signature.parameters.copy
    - new_params.values
    - signature.replace
    - botocore.docs.method.document_custom_signature
    - inspect.signature
    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: section.context.get
    functionSourceFile: <builtin>
    functionUses: 9
    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: section.add_new_section
    functionSourceFile: <builtin>
    functionUses: 58
    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: method_intro_section.writeln
    functionSourceFile: <builtin>
    functionUses: 25
    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.getdoc
    functionSourceFile: inspect
    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: method_intro_section.style.write_py_doc_string
    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: method_intro_section.include_doc_string
    functionSourceFile: <builtin>
    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: method_intro_section.style.start_danger
    functionSourceFile: <builtin>
    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: method_intro_section.style.end_danger
    functionSourceFile: <builtin>
    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: operation_model.service_model.metadata.get
    functionSourceFile: <builtin>
    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: method_intro_section.style.new_paragraph
    functionSourceFile: <builtin>
    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: method_intro_section.write
    functionSourceFile: <builtin>
    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: method_intro_section.style.external_link
    functionSourceFile: <builtin>
    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: example_section.style.new_paragraph
    functionSourceFile: <builtin>
    functionUses: 29
    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: example_section.style.bold
    functionSourceFile: <builtin>
    functionUses: 29
    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: operation_model.get_streaming_output
    functionSourceFile: <builtin>
    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: operation_model.get_event_stream_output
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a17760>
    argNames:
    - self
    - service_name
    - operation_name
    - event_emitter
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 25
    functionName: botocore.docs.shape.ShapeDocumenter.__init__
    functionSourceFile: ''
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 6
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9830772fd0>
    - <ast.Constant object at 0x7f9830772d00>
    - <ast.Constant object at 0x7f9830772c40>
    argNames:
    - self
    - section
    - shape
    - prefix
    - include
    - exclude
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 18
    functionName: botocore.docs.example.BaseExampleDocumenter.document_example
    functionSourceFile: botocore.docs.example
    functionUses: 29
    functionsReached:
    - <builtin>.getattr
    - <builtin>.hasattr
    - section.style.start_codeblock
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - section.add_new_section
    - final_blank_line_section.style.new_line
    - history.append
    - section.write
    - <builtin>.len
    - history.pop
    - section.style.new_line
    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: example_section.style.start_codeblock
    functionSourceFile: <builtin>
    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: example_section.write
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f983074f580>
    - <ast.Constant object at 0x7f983074f700>
    argNames:
    - self
    - section
    - shape
    - include
    - exclude
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 18
    functionName: botocore.docs.params.BaseParamsDocumenter.document_params
    functionSourceFile: botocore.docs.params
    functionUses: 29
    functionsReached:
    - <builtin>.getattr
    - <builtin>.hasattr
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - history.append
    - <builtin>.len
    - history.pop
    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: return_section.style.new_line
    functionSourceFile: <builtin>
    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: return_section.write
    functionSourceFile: <builtin>
    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: return_section.style.indent
    functionSourceFile: <builtin>
    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: return_section.add_new_section
    functionSourceFile: <builtin>
    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: event_section.style.new_paragraph
    functionSourceFile: <builtin>
    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: event_section.write
    functionSourceFile: <builtin>
    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: event_section.style.new_line
    functionSourceFile: <builtin>
    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: return_example_section.style.new_line
    functionSourceFile: <builtin>
    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: return_example_section.style.bold
    functionSourceFile: <builtin>
    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: return_example_section.style.new_paragraph
    functionSourceFile: <builtin>
    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: return_description_section.style.new_line
    functionSourceFile: <builtin>
    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: return_description_section.style.bold
    functionSourceFile: <builtin>
    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: return_description_section.style.new_paragraph
    functionSourceFile: <builtin>
    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: botocore.docs.params
    functionSourceFile: botocore.docs.params
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 7
    IfCount: 5
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f98309b8550>
    - <ast.Constant object at 0x7f98309b82b0>
    - <ast.Constant object at 0x7f98309b8fa0>
    - <ast.Constant object at 0x7f98309b8160>
    argNames:
    - self
    - section
    - shape
    - history
    - include
    - exclude
    - name
    - is_required
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 35
    functionName: botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    functionSourceFile: botocore.docs.shape
    functionUses: 42
    functionsReached:
    - <builtin>.getattr
    - <builtin>.hasattr
    - history.append
    - <builtin>.len
    - history.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - shape
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 43
    functionName: botocore.docs.params.BaseParamsDocumenter.document_recursive_shape
    functionSourceFile: botocore.docs.params
    functionUses: 0
    functionsReached:
    - documentation_section.include_doc_string
    - section.style.new_paragraph
    - botocore.docs.params.RequestParamsDocumenter._add_member_documentation
    - end_type_section.style.new_line
    - <builtin>.hasattr
    - botocore.docs.utils.py_type_name
    - type_section.style.italics
    - is_required_section.style.bold
    - is_required_section.write
    - shape.serialization.get
    - botocore.docs.params.BaseParamsDocumenter._document_non_top_level_param_type
    - type_section.add_new_section
    - is_required_section.style.indent
    - section.write
    - name_section.write
    - botocore.docs.params.RequestParamsDocumenter._append_idempotency_documentation
    - botocore.docs.params.ResponseParamsDocumenter._add_member_documentation
    - <builtin>.getattr
    - end_param_section.style.new_paragraph
    - tagged_union_docs.write
    - botocore.docs.shape.ShapeDocumenter._get_special_py_type_name
    - name_section.style.bold
    - shape.members.keys
    - type_section.write
    - documentation_section.style.indent
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - section.add_new_section
    - botocore.utils.is_json_value_header
    - botocore.docs.params.RequestParamsDocumenter._add_special_trait_documentation
    - example.style.codeblock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 15
    IfCount: 6
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a33f70>
    - <ast.Constant object at 0x7f9830a332e0>
    - <ast.Constant object at 0x7f9830a33370>
    argNames:
    - self
    - section
    - shape
    - name
    - is_top_level_param
    - is_required
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 239
    functionName: botocore.docs.params.RequestParamsDocumenter._add_member_documentation
    functionSourceFile: botocore.docs.params
    functionUses: 7
    functionsReached:
    - documentation_section.include_doc_string
    - end_type_section.style.new_line
    - <builtin>.hasattr
    - botocore.docs.utils.py_type_name
    - type_section.style.italics
    - is_required_section.style.bold
    - is_required_section.write
    - shape.serialization.get
    - botocore.docs.params.BaseParamsDocumenter._document_non_top_level_param_type
    - type_section.add_new_section
    - is_required_section.style.indent
    - section.write
    - name_section.write
    - botocore.docs.params.RequestParamsDocumenter._append_idempotency_documentation
    - <builtin>.getattr
    - end_param_section.style.new_paragraph
    - tagged_union_docs.write
    - botocore.docs.shape.ShapeDocumenter._get_special_py_type_name
    - name_section.style.bold
    - shape.members.keys
    - type_section.write
    - documentation_section.style.indent
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - section.add_new_section
    - botocore.utils.is_json_value_header
    - botocore.docs.params.RequestParamsDocumenter._add_special_trait_documentation
    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 0x7f9830a17cd0>
    argNames:
    - self
    - section
    - shape
    - name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 162
    functionName: botocore.docs.params.ResponseParamsDocumenter._add_member_documentation
    functionSourceFile: botocore.docs.params
    functionUses: 5
    functionsReached:
    - documentation_section.include_doc_string
    - section.style.new_paragraph
    - <builtin>.hasattr
    - botocore.docs.utils.py_type_name
    - type_section.style.italics
    - shape.serialization.get
    - botocore.docs.params.BaseParamsDocumenter._document_non_top_level_param_type
    - name_section.write
    - <builtin>.getattr
    - tagged_union_docs.write
    - botocore.docs.shape.ShapeDocumenter._get_special_py_type_name
    - name_section.style.bold
    - shape.members.keys
    - type_section.write
    - documentation_section.style.indent
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - section.add_new_section
    - botocore.utils.is_json_value_header
    - example.style.codeblock
    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 0x7f983090f190>
    - <ast.Constant object at 0x7f983090fb80>
    argNames:
    - self
    - section
    - shape
    - history
    - include
    - exclude
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 46
    functionName: botocore.docs.params.BaseParamsDocumenter.document_shape_default
    functionSourceFile: botocore.docs.params
    functionUses: 0
    functionsReached:
    - documentation_section.include_doc_string
    - section.style.new_paragraph
    - botocore.docs.params.RequestParamsDocumenter._add_member_documentation
    - end_type_section.style.new_line
    - <builtin>.hasattr
    - botocore.docs.utils.py_type_name
    - type_section.style.italics
    - is_required_section.style.bold
    - is_required_section.write
    - shape.serialization.get
    - botocore.docs.params.BaseParamsDocumenter._document_non_top_level_param_type
    - type_section.add_new_section
    - is_required_section.style.indent
    - section.write
    - name_section.write
    - botocore.docs.params.RequestParamsDocumenter._append_idempotency_documentation
    - botocore.docs.params.ResponseParamsDocumenter._add_member_documentation
    - <builtin>.getattr
    - end_param_section.style.new_paragraph
    - tagged_union_docs.write
    - botocore.docs.shape.ShapeDocumenter._get_special_py_type_name
    - name_section.style.bold
    - shape.members.keys
    - type_section.write
    - documentation_section.style.indent
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - section.add_new_section
    - botocore.utils.is_json_value_header
    - botocore.docs.params.RequestParamsDocumenter._add_special_trait_documentation
    - example.style.codeblock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e65e80>
    - <ast.Constant object at 0x7f9830e659d0>
    argNames:
    - self
    - section
    - shape
    - history
    - include
    - exclude
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 51
    functionName: botocore.docs.params.BaseParamsDocumenter.document_shape_type_list
    functionSourceFile: botocore.docs.params
    functionUses: 0
    functionsReached:
    - documentation_section.include_doc_string
    - section.style.new_paragraph
    - section.style.indent
    - botocore.docs.params.RequestParamsDocumenter._add_member_documentation
    - end_type_section.style.new_line
    - <builtin>.hasattr
    - botocore.docs.utils.py_type_name
    - type_section.style.italics
    - is_required_section.style.bold
    - history.append
    - is_required_section.write
    - shape.serialization.get
    - botocore.docs.params.BaseParamsDocumenter._document_non_top_level_param_type
    - type_section.add_new_section
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - is_required_section.style.indent
    - botocore.docs.params.BaseParamsDocumenter._end_nested_param
    - section.write
    - name_section.write
    - botocore.docs.params.RequestParamsDocumenter._append_idempotency_documentation
    - botocore.docs.params.ResponseParamsDocumenter._add_member_documentation
    - <builtin>.getattr
    - end_param_section.style.new_paragraph
    - botocore.utils.is_json_value_header
    - tagged_union_docs.write
    - botocore.docs.shape.ShapeDocumenter._get_special_py_type_name
    - name_section.style.bold
    - history.pop
    - shape.members.keys
    - section.style.dedent
    - type_section.write
    - documentation_section.style.indent
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - section.add_new_section
    - section.style.new_line
    - botocore.docs.params.BaseParamsDocumenter._start_nested_param
    - <builtin>.len
    - botocore.docs.params.RequestParamsDocumenter._add_special_trait_documentation
    - example.style.codeblock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 148
    functionName: botocore.docs.params.BaseParamsDocumenter._start_nested_param
    functionSourceFile: botocore.docs.params
    functionUses: 3
    functionsReached:
    - section.style.indent
    - section.style.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 152
    functionName: botocore.docs.params.BaseParamsDocumenter._end_nested_param
    functionSourceFile: botocore.docs.params
    functionUses: 3
    functionsReached:
    - section.style.new_line
    - section.style.dedent
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 8
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f98313e9b50>
    - <ast.Constant object at 0x7f98313e9850>
    argNames:
    - self
    - section
    - shape
    - history
    - include
    - exclude
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 69
    functionName: botocore.docs.params.BaseParamsDocumenter.document_shape_type_map
    functionSourceFile: botocore.docs.params
    functionUses: 0
    functionsReached:
    - documentation_section.include_doc_string
    - section.style.indent
    - section.style.new_paragraph
    - botocore.docs.params.RequestParamsDocumenter._add_member_documentation
    - end_type_section.style.new_line
    - <builtin>.hasattr
    - botocore.docs.utils.py_type_name
    - type_section.style.italics
    - is_required_section.style.bold
    - history.append
    - is_required_section.write
    - shape.serialization.get
    - botocore.docs.params.BaseParamsDocumenter._document_non_top_level_param_type
    - type_section.add_new_section
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - is_required_section.style.indent
    - botocore.docs.params.BaseParamsDocumenter._end_nested_param
    - param_section.style.indent
    - section.write
    - name_section.write
    - botocore.docs.params.RequestParamsDocumenter._append_idempotency_documentation
    - botocore.docs.params.ResponseParamsDocumenter._add_member_documentation
    - <builtin>.getattr
    - end_param_section.style.new_paragraph
    - botocore.utils.is_json_value_header
    - tagged_union_docs.write
    - botocore.docs.shape.ShapeDocumenter._get_special_py_type_name
    - name_section.style.bold
    - shape.members.keys
    - history.pop
    - section.style.dedent
    - type_section.write
    - documentation_section.style.indent
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - section.add_new_section
    - section.style.new_line
    - botocore.docs.params.BaseParamsDocumenter._start_nested_param
    - <builtin>.len
    - botocore.docs.params.RequestParamsDocumenter._add_special_trait_documentation
    - example.style.codeblock
    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: param_section.style.indent
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e7b970>
    - <ast.Constant object at 0x7f9830e7b280>
    - <ast.Constant object at 0x7f9830e7b310>
    argNames:
    - self
    - section
    - shape
    - history
    - include
    - exclude
    - name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 96
    functionName: botocore.docs.params.BaseParamsDocumenter.document_shape_type_structure
    functionSourceFile: botocore.docs.params
    functionUses: 0
    functionsReached:
    - documentation_section.include_doc_string
    - section.style.indent
    - section.style.new_paragraph
    - botocore.docs.params.RequestParamsDocumenter._add_member_documentation
    - end_type_section.style.new_line
    - <builtin>.hasattr
    - botocore.docs.utils.py_type_name
    - type_section.style.italics
    - is_required_section.style.bold
    - history.append
    - is_required_section.write
    - shape.serialization.get
    - botocore.docs.params.BaseParamsDocumenter._document_non_top_level_param_type
    - type_section.add_new_section
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - is_required_section.style.indent
    - botocore.docs.params.BaseParamsDocumenter._end_nested_param
    - section.write
    - name_section.write
    - botocore.docs.params.RequestParamsDocumenter._append_idempotency_documentation
    - botocore.docs.params.ResponseParamsDocumenter._add_member_documentation
    - <builtin>.getattr
    - end_param_section.style.new_paragraph
    - botocore.utils.is_json_value_header
    - tagged_union_docs.write
    - botocore.docs.shape.ShapeDocumenter._get_special_py_type_name
    - name_section.style.bold
    - shape.members.keys
    - history.pop
    - section.style.dedent
    - type_section.write
    - members.copy
    - botocore.docs.params.BaseParamsDocumenter._add_members_to_shape
    - documentation_section.style.indent
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - section.add_new_section
    - section.style.new_line
    - botocore.docs.params.BaseParamsDocumenter._start_nested_param
    - <builtin>.len
    - botocore.docs.params.RequestParamsDocumenter._add_special_trait_documentation
    - example.style.codeblock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - members
    - include
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 128
    functionName: botocore.docs.params.BaseParamsDocumenter._add_members_to_shape
    functionSourceFile: botocore.docs.params
    functionUses: 3
    functionsReached:
    - members.copy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - shape
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 125
    functionName: botocore.docs.params.BaseParamsDocumenter._add_member_documentation
    functionSourceFile: botocore.docs.params
    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: members.copy
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - type_section
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 135
    functionName: botocore.docs.params.BaseParamsDocumenter._document_non_top_level_param_type
    functionSourceFile: botocore.docs.params
    functionUses: 9
    functionsReached:
    - type_section.write
    - <builtin>.hasattr
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - botocore.docs.utils.py_type_name
    - type_section.style.italics
    - botocore.docs.shape.ShapeDocumenter._get_special_py_type_name
    - botocore.utils.is_json_value_header
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 114
    functionName: botocore.docs.shape.ShapeDocumenter._get_special_py_type_name
    functionSourceFile: botocore.docs.shape
    functionUses: 10
    functionsReached:
    - <builtin>.hasattr
    - botocore.utils.is_json_value_header
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - type_name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 17
    functionName: botocore.docs.utils.py_type_name
    functionSourceFile: ''
    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: type_section.write
    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: type_section.style.italics
    functionSourceFile: <builtin>
    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: section.style.indent
    functionSourceFile: <builtin>
    functionUses: 33
    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: section.style.dedent
    functionSourceFile: <builtin>
    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: name_section.write
    functionSourceFile: <builtin>
    functionUses: 9
    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: name_section.style.bold
    functionSourceFile: <builtin>
    functionUses: 9
    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: documentation_section.style.indent
    functionSourceFile: <builtin>
    functionUses: 9
    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: shape.members.keys
    functionSourceFile: <builtin>
    functionUses: 9
    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: tagged_union_docs.write
    functionSourceFile: <builtin>
    functionUses: 9
    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: example.style.codeblock
    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: documentation_section.include_doc_string
    functionSourceFile: <builtin>
    functionUses: 9
    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: section.style.new_paragraph
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - section
    - shape
    - history
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 200
    functionName: botocore.docs.params.ResponseParamsDocumenter.document_shape_type_event_stream
    functionSourceFile: botocore.docs.params
    functionUses: 0
    functionsReached:
    - section.style.indent
    - documentation_section.include_doc_string
    - botocore.docs.params.RequestParamsDocumenter._add_member_documentation
    - end_type_section.style.new_line
    - <builtin>.hasattr
    - botocore.docs.utils.py_type_name
    - type_section.style.italics
    - is_required_section.style.bold
    - history.append
    - <builtin>.enumerate
    - is_required_section.write
    - shape.serialization.get
    - botocore.docs.params.BaseParamsDocumenter._document_non_top_level_param_type
    - type_section.add_new_section
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - is_required_section.style.indent
    - section.write
    - param_section.style.new_line
    - botocore.docs.params.RequestParamsDocumenter._append_idempotency_documentation
    - name_section.write
    - <builtin>.getattr
    - end_param_section.style.new_paragraph
    - botocore.utils.is_json_value_header
    - tagged_union_docs.write
    - botocore.docs.shape.ShapeDocumenter._get_special_py_type_name
    - name_section.style.bold
    - shape.members.keys
    - history.pop
    - section.style.dedent
    - type_section.write
    - members.copy
    - botocore.docs.params.BaseParamsDocumenter._add_members_to_shape
    - documentation_section.style.indent
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - section.add_new_section
    - section.style.new_line
    - botocore.docs.params.RequestParamsDocumenter.document_shape_type_structure
    - <builtin>.len
    - botocore.docs.params.RequestParamsDocumenter._add_special_trait_documentation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f982f82c130>
    - <ast.Constant object at 0x7f982f82cac0>
    argNames:
    - self
    - section
    - shape
    - history
    - include
    - exclude
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 211
    functionName: botocore.docs.params.RequestParamsDocumenter.document_shape_type_structure
    functionSourceFile: botocore.docs.params
    functionUses: 1
    functionsReached:
    - section.style.indent
    - documentation_section.include_doc_string
    - botocore.docs.params.RequestParamsDocumenter._add_member_documentation
    - end_type_section.style.new_line
    - <builtin>.hasattr
    - botocore.docs.utils.py_type_name
    - type_section.style.italics
    - is_required_section.style.bold
    - history.append
    - <builtin>.enumerate
    - is_required_section.write
    - shape.serialization.get
    - botocore.docs.params.BaseParamsDocumenter._document_non_top_level_param_type
    - type_section.add_new_section
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - is_required_section.style.indent
    - section.write
    - param_section.style.new_line
    - botocore.docs.params.RequestParamsDocumenter._append_idempotency_documentation
    - name_section.write
    - <builtin>.getattr
    - end_param_section.style.new_paragraph
    - botocore.utils.is_json_value_header
    - tagged_union_docs.write
    - botocore.docs.shape.ShapeDocumenter._get_special_py_type_name
    - name_section.style.bold
    - shape.members.keys
    - history.pop
    - section.style.dedent
    - type_section.write
    - members.copy
    - botocore.docs.params.BaseParamsDocumenter._add_members_to_shape
    - documentation_section.style.indent
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - section.add_new_section
    - section.style.new_line
    - <builtin>.len
    - botocore.docs.params.RequestParamsDocumenter._add_special_trait_documentation
    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: param_section.style.new_line
    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: type_section.add_new_section
    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: end_type_section.style.new_line
    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: is_required_section.style.indent
    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: is_required_section.style.bold
    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: is_required_section.write
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 296
    functionName: botocore.docs.params.RequestParamsDocumenter._add_special_trait_documentation
    functionSourceFile: botocore.docs.params
    functionUses: 8
    functionsReached:
    - botocore.docs.params.RequestParamsDocumenter._append_idempotency_documentation
    - section.write
    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: end_param_section.style.new_paragraph
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 300
    functionName: botocore.docs.params.RequestParamsDocumenter._append_idempotency_documentation
    functionSourceFile: botocore.docs.params
    functionUses: 9
    functionsReached:
    - section.write
    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: botocore.docs.utils
    functionSourceFile: botocore.docs.utils
    functionUses: 0
    functionsReached:
    - collections.namedtuple
    - re.compile
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - type_name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 38
    functionName: botocore.docs.utils.py_default
    functionSourceFile: botocore.docs.utils
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - service_model
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 64
    functionName: botocore.docs.utils.get_official_service_name
    functionSourceFile: botocore.docs.utils
    functionUses: 5
    functionsReached:
    - service_model.metadata.get
    - official_name.lower
    - short_name.lower
    - short_name.startswith
    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: short_name.startswith
    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: short_name.lower
    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: official_name.lower
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a80b80>
    - <ast.Constant object at 0x7f9830a80eb0>
    - <ast.Constant object at 0x7f9830a80130>
    argNames:
    - cls
    - name
    - type_name
    - documentation
    - metadata
    - members
    - required_members
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 96
    functionName: botocore.docs.utils.DocumentedShape.__new__
    functionSourceFile: botocore.docs.utils
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a805e0>
    argNames:
    - self
    - name
    - param_description
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 123
    functionName: botocore.docs.utils.AutoPopulatedParam.__init__
    functionSourceFile: botocore.docs.utils
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - section
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 133
    functionName: botocore.docs.utils.AutoPopulatedParam.document_auto_populated_param
    functionSourceFile: botocore.docs.utils
    functionUses: 0
    functionsReached:
    - section.get_section
    - description_section.writeln
    - section.delete_section
    - event_name.startswith
    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: event_name.startswith
    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: section.get_section
    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: section.delete_section
    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: description_section.writeln
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - parameter_name
    - operation_names
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 163
    functionName: botocore.docs.utils.HideParamFromOperations.__init__
    functionSourceFile: botocore.docs.utils
    functionUses: 0
    functionsReached:
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - section
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 184
    functionName: botocore.docs.utils.HideParamFromOperations.hide_param
    functionSourceFile: botocore.docs.utils
    functionUses: 0
    functionsReached:
    - section.get_section
    - section.delete_section
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - parameter_name
    - doc_string
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 197
    functionName: botocore.docs.utils.AppendParamDocumentation.__init__
    functionSourceFile: botocore.docs.utils
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - section
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 201
    functionName: botocore.docs.utils.AppendParamDocumentation.append_documentation
    functionSourceFile: botocore.docs.utils
    functionUses: 0
    functionsReached:
    - section.get_section
    - description_section.writeln
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - match
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 220
    functionName: botocore.docs.utils._CONTROLS_MATCH_HANDLER
    functionSourceFile: botocore.docs.utils
    functionUses: 0
    functionsReached:
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 224
    functionName: botocore.docs.utils.escape_controls
    functionSourceFile: botocore.docs.utils
    functionUses: 16
    functionsReached:
    - _ESCAPE_CONTROLS_RE.sub
    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: _ESCAPE_CONTROLS_RE.sub
    functionSourceFile: <builtin>
    functionUses: 17
    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: botocore.docs.shape
    functionSourceFile: botocore.docs.shape
    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: history.append
    functionSourceFile: <builtin>
    functionUses: 43
    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: history.pop
    functionSourceFile: <builtin>
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 104
    functionName: botocore.docs.shape.ShapeDocumenter._get_special_py_default
    functionSourceFile: botocore.docs.shape
    functionUses: 2
    functionsReached:
    - <builtin>.hasattr
    - botocore.utils.is_json_value_header
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - shape
    - special_type_map
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 124
    functionName: botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    functionSourceFile: botocore.docs.shape
    functionUses: 14
    functionsReached:
    - <builtin>.hasattr
    - botocore.utils.is_json_value_header
    - shape.serialization.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: botocore.docs.example
    functionSourceFile: botocore.docs.example
    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: section.style.start_codeblock
    functionSourceFile: <builtin>
    functionUses: 33
    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: final_blank_line_section.style.new_line
    functionSourceFile: <builtin>
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - shape
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 52
    functionName: botocore.docs.example.BaseExampleDocumenter.document_recursive_shape
    functionSourceFile: botocore.docs.example
    functionUses: 0
    functionsReached:
    - section.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f9830afb610>
    - <ast.Constant object at 0x7f9830afb820>
    argNames:
    - self
    - section
    - shape
    - history
    - include
    - exclude
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 55
    functionName: botocore.docs.example.BaseExampleDocumenter.document_shape_default
    functionSourceFile: botocore.docs.example
    functionUses: 1
    functionsReached:
    - <builtin>.hasattr
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - botocore.docs.utils.py_default
    - section.write
    - botocore.utils.is_json_value_header
    - botocore.docs.shape.ShapeDocumenter._get_special_py_default
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f9830dfc6a0>
    - <ast.Constant object at 0x7f9830dfc880>
    argNames:
    - self
    - section
    - shape
    - history
    - include
    - exclude
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 66
    functionName: botocore.docs.example.BaseExampleDocumenter.document_shape_type_string
    functionSourceFile: botocore.docs.example
    functionUses: 0
    functionsReached:
    - <builtin>.hasattr
    - botocore.utils.is_json_value_header
    - botocore.docs.shape.ShapeDocumenter._get_value_for_special_type
    - botocore.docs.utils.py_default
    - botocore.docs.example.BaseExampleDocumenter.document_shape_default
    - section.write
    - <builtin>.len
    - botocore.docs.shape.ShapeDocumenter._get_special_py_default
    - <builtin>.enumerate
    - shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f98307f1430>
    - <ast.Constant object at 0x7f98307f1c70>
    argNames:
    - self
    - section
    - shape
    - history
    - include
    - exclude
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 77
    functionName: botocore.docs.example.BaseExampleDocumenter.document_shape_type_list
    functionSourceFile: botocore.docs.example
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.docs.example.BaseExampleDocumenter._end_nested_param
    - section.style.indent
    - <builtin>.hasattr
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - section.add_new_section
    - section.style.new_line
    - history.append
    - section.write
    - botocore.docs.example.BaseExampleDocumenter._start_nested_param
    - <builtin>.len
    - history.pop
    - list_section.add_new_section
    - section.style.dedent
    - ending_comma_section.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830327730>
    argNames:
    - self
    - section
    - start
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 155
    functionName: botocore.docs.example.BaseExampleDocumenter._start_nested_param
    functionSourceFile: botocore.docs.example
    functionUses: 5
    functionsReached:
    - section.style.indent
    - section.style.new_line
    - section.write
    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: list_section.add_new_section
    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: ending_comma_section.write
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a63af0>
    argNames:
    - self
    - section
    - end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 162
    functionName: botocore.docs.example.BaseExampleDocumenter._end_nested_param
    functionSourceFile: botocore.docs.example
    functionUses: 6
    functionsReached:
    - section.style.new_line
    - section.write
    - section.style.dedent
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 7
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f9830f01cd0>
    - <ast.Constant object at 0x7f9830f018e0>
    argNames:
    - self
    - section
    - shape
    - history
    - include
    - exclude
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 94
    functionName: botocore.docs.example.BaseExampleDocumenter.document_shape_type_structure
    functionSourceFile: botocore.docs.example
    functionUses: 1
    functionsReached:
    - botocore.docs.example.BaseExampleDocumenter._add_members_to_shape
    - section.style.indent
    - <builtin>.hasattr
    - history.append
    - botocore.docs.example.BaseExampleDocumenter._start_nested_param
    - <builtin>.enumerate
    - ending_comma_section.write
    - param_section.write
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - section.write
    - botocore.docs.example.BaseExampleDocumenter._end_structure
    - <builtin>.getattr
    - param_section.add_new_section
    - ending_comma_section.style.new_line
    - history.pop
    - section.style.dedent
    - members.copy
    - botocore.docs.example.BaseExampleDocumenter._end_nested_param
    - section.clear_text
    - section.add_new_section
    - <builtin>.len
    - section.style.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - members
    - include
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 148
    functionName: botocore.docs.example.BaseExampleDocumenter._add_members_to_shape
    functionSourceFile: botocore.docs.example
    functionUses: 3
    functionsReached:
    - members.copy
    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: param_section.write
    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: param_section.add_new_section
    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: ending_comma_section.style.new_line
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - start
    - end
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 169
    functionName: botocore.docs.example.BaseExampleDocumenter._end_structure
    functionSourceFile: botocore.docs.example
    functionUses: 3
    functionsReached:
    - botocore.docs.example.BaseExampleDocumenter._end_nested_param
    - section.clear_text
    - section.add_new_section
    - section.write
    - section.style.new_line
    - section.style.dedent
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f983098adc0>
    - <ast.Constant object at 0x7f983098a760>
    argNames:
    - self
    - section
    - shape
    - history
    - include
    - exclude
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 129
    functionName: botocore.docs.example.BaseExampleDocumenter.document_shape_type_map
    functionSourceFile: botocore.docs.example
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - history.pop
    - botocore.docs.example.BaseExampleDocumenter._end_nested_param
    - section.style.indent
    - <builtin>.hasattr
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - section.add_new_section
    - map_section.add_new_section
    - history.append
    - section.write
    - botocore.docs.example.BaseExampleDocumenter._start_nested_param
    - <builtin>.len
    - key_section.write
    - section.style.new_line
    - section.style.dedent
    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: map_section.add_new_section
    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: key_section.write
    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: section.clear_text
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - section
    - shape
    - history
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 185
    functionName: botocore.docs.example.ResponseExampleDocumenter.document_shape_type_event_stream
    functionSourceFile: botocore.docs.example
    functionUses: 0
    functionsReached:
    - botocore.docs.example.BaseExampleDocumenter._add_members_to_shape
    - section.style.indent
    - <builtin>.hasattr
    - history.append
    - botocore.docs.example.BaseExampleDocumenter._start_nested_param
    - <builtin>.enumerate
    - ending_comma_section.write
    - param_section.write
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - section.write
    - botocore.docs.example.BaseExampleDocumenter._end_structure
    - end_section.write
    - <builtin>.getattr
    - param_section.add_new_section
    - botocore.docs.example.RequestExampleDocumenter.document_shape_type_structure
    - ending_comma_section.style.new_line
    - history.pop
    - section.style.dedent
    - members.copy
    - botocore.docs.example.BaseExampleDocumenter._end_nested_param
    - section.clear_text
    - section.add_new_section
    - botocore.docs.example.BaseExampleDocumenter.document_shape_type_structure
    - <builtin>.len
    - section.style.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 7
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f9830ee9e20>
    - <ast.Constant object at 0x7f9830ee9be0>
    argNames:
    - self
    - section
    - shape
    - history
    - include
    - exclude
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 197
    functionName: botocore.docs.example.RequestExampleDocumenter.document_shape_type_structure
    functionSourceFile: botocore.docs.example
    functionUses: 1
    functionsReached:
    - botocore.docs.example.BaseExampleDocumenter._add_members_to_shape
    - section.style.indent
    - <builtin>.hasattr
    - history.append
    - botocore.docs.example.BaseExampleDocumenter._start_nested_param
    - <builtin>.enumerate
    - ending_comma_section.write
    - param_section.write
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - section.write
    - botocore.docs.example.BaseExampleDocumenter._end_structure
    - <builtin>.getattr
    - param_section.add_new_section
    - ending_comma_section.style.new_line
    - history.pop
    - section.style.dedent
    - members.copy
    - botocore.docs.example.BaseExampleDocumenter._end_nested_param
    - section.clear_text
    - section.add_new_section
    - <builtin>.len
    - section.style.new_line
    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: end_section.write
    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: botocore.docs.waiter
    functionSourceFile: botocore.docs.waiter
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 89
    functionName: botocore.docs.waiter.WaiterDocumenter._add_overview
    functionSourceFile: botocore.docs.waiter
    functionUses: 4
    functionsReached:
    - section.style.new_line
    - section.write
    - section.style.external_link
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 10
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - waiter_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 59
    functionName: botocore.docs.waiter.WaiterDocumenter._add_single_waiter
    functionSourceFile: botocore.docs.waiter
    functionUses: 4
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - <builtin>.hasattr
    - waiter_section.style.new_line
    - return_section.write
    - collections.OrderedDict
    - method_intro_section.style.new_paragraph
    - return_section.style.new_line
    - history.append
    - <builtin>.list
    - parameter_names.remove
    - service_model.metadata.get
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - _first_cap_regex.sub
    - service_model.operation_model
    - waiter_section.style.end_codeblock
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - matched.lower
    - service_waiter_model.get_waiter
    - parameter_names.append
    - waiter_section.style.start_codeblock
    - example_section.style.start_codeblock
    - params.keys
    - section.write
    - operation_model.get_streaming_input
    - return_example_section.style.new_paragraph
    - return_section.add_new_section
    - example_section.write
    - return_example_section.style.bold
    - <builtin>.getattr
    - waiter_section.style.start_sphinx_py_class
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - <builtin>.len
    - example_section.style.bold
    - section.style.start_codeblock
    - method_intro_section.style.start_danger
    - return_description_section.style.bold
    - collections.namedtuple.__init__
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - _special_case_transform.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - re.sub
    - botocore.docs.waiter.document_wait_method
    - breadcrumb_section.style.ref
    - return_description_section.style.new_line
    - operation_model.get_event_stream_output
    - return_description_section.style.new_paragraph
    - event_section.write
    - botocore.docs.shape.ShapeDocumenter.__init__
    - operation_model.service_model.metadata.get
    - breadcrumb_section.write
    - history.pop
    - method_intro_section.write
    - method_intro_section.writeln
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - return_section.style.indent
    - waiter_section.write
    - is_special.group
    - title_section.style.h1
    - botocore.docs.method.document_model_driven_signature
    - method_intro_section.style.end_danger
    - name.replace
    - section.style.new_line
    - example_section.style.new_paragraph
    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: waiter_section.style.start_sphinx_py_class
    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: waiter_section.style.start_codeblock
    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: waiter_section.style.new_line
    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: waiter_section.write
    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: waiter_section.style.end_codeblock
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    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 0x7f98307e6760>
    argNames:
    - section
    - waiter_name
    - event_emitter
    - service_model
    - service_waiter_model
    - include_signature
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 105
    functionName: botocore.docs.waiter.document_wait_method
    functionSourceFile: botocore.docs.waiter
    functionUses: 10
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - <builtin>.hasattr
    - return_section.write
    - collections.OrderedDict
    - method_intro_section.style.new_paragraph
    - return_section.style.new_line
    - history.append
    - <builtin>.list
    - parameter_names.remove
    - service_model.metadata.get
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - _first_cap_regex.sub
    - name.replace
    - service_model.operation_model
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - matched.lower
    - service_waiter_model.get_waiter
    - parameter_names.append
    - example_section.style.start_codeblock
    - section.write
    - operation_model.get_streaming_input
    - return_example_section.style.new_paragraph
    - return_section.add_new_section
    - example_section.write
    - return_example_section.style.bold
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - example_section.style.bold
    - section.style.start_codeblock
    - method_intro_section.style.start_danger
    - return_description_section.style.bold
    - collections.namedtuple.__init__
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - _special_case_transform.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - re.sub
    - return_description_section.style.new_line
    - event_section.write
    - operation_model.get_event_stream_output
    - return_description_section.style.new_paragraph
    - params.keys
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - operation_model.service_model.metadata.get
    - method_intro_section.write
    - method_intro_section.writeln
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - return_section.style.indent
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - method_intro_section.style.end_danger
    - <builtin>.len
    - section.style.new_line
    - example_section.style.new_paragraph
    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: service_waiter_model.get_waiter
    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: botocore.docs.client
    functionSourceFile: botocore.docs.client
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - method_name
    - service_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 29
    functionName: botocore.docs.client._allowlist_generate_presigned_url
    functionSourceFile: botocore.docs.client
    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
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 86
    functionName: botocore.docs.client.ClientDocumenter._add_title
    functionSourceFile: botocore.docs.client
    functionUses: 4
    functionsReached:
    - section.style.h2
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 114
    functionName: botocore.docs.client.ClientDocumenter._add_class_signature
    functionSourceFile: botocore.docs.client
    functionUses: 4
    functionsReached:
    - section.style.start_sphinx_py_class
    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: 60
    functionName: botocore.docs.client.ClientDocumenter._get_client_methods
    functionSourceFile: botocore.docs.client
    functionUses: 4
    functionsReached:
    - inspect.getmembers
    - name.startswith
    - inspect.ismethod
    - botocore.docs.method.get_instance_public_methods
    - botocore.docs.client.ClientDocumenter._filter_client_methods
    - botocore.docs.client.ClientDocumenter._filter_client_method
    - client_methods.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 9
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - client_methods
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 89
    functionName: botocore.docs.client.ClientDocumenter._add_client_intro
    functionSourceFile: botocore.docs.client
    functionUses: 4
    functionsReached:
    - section.include_doc_string
    - official_name.lower
    - section.style.toctree
    - section.style.new_paragraph
    - short_name.lower
    - section.style.dedent
    - section.style.tocitem
    - section.writeln
    - section.style.start_codeblock
    - botocore.docs.client.ClientDocumenter._add_client_creation_example
    - section.add_new_section
    - botocore.docs.utils.get_official_service_name
    - <builtin>.sorted
    - section.write
    - service_model.metadata.get
    - section.style.new_line
    - short_name.startswith
    - section.style.end_codeblock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - client_methods
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 127
    functionName: botocore.docs.client.ClientDocumenter._add_client_methods
    functionSourceFile: botocore.docs.client
    functionUses: 4
    functionsReached:
    - method_intro_section.style.write_py_doc_string
    - <builtin>.next
    - collections.OrderedDict.items
    - return_section.write
    - <builtin>.sorted
    - collections.OrderedDict
    - history.append
    - output_section.write
    - logger.debug
    - f.write
    - output_section.style.new_line
    - new_params.values
    - return_example_section.style.new_paragraph
    - <builtin>.float
    - os.path.exists
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - inspect.getdoc
    - return_description_section.style.bold
    - botocore.docs.client.ClientDocumenter._add_client_method
    - closing_section.style.new_line
    - signature_params.rstrip
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_params
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - example.get
    - closing_section.write
    - method_intro_section.write
    - datetime.datetime.fromtimestamp
    - botocore.docs.method.document_custom_method
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - item_section.write
    - botocore.docs.method.document_model_driven_signature
    - section.context.get
    - error_section.style.li
    - output_section.style.start_codeblock
    - example_section.style.new_paragraph
    - item_section.style.new_line
    - closing_section.style.end_codeblock
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - method_intro_section.style.new_paragraph
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - <builtin>.list
    - value.items
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - dateutil.tz.tzutc
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - os.path.join
    - botocore.utils._parse_timestamp_with_tzinfo
    - example_section.write
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - dateutil.parser.parse
    - section.style.start_codeblock
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - DOCUMENTATION_LINK_REGEX.search
    - signature.replace
    - breadcrumb_section.style.ref
    - path.pop
    - return_description_section.style.new_line
    - operation_model.get_event_stream_output
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - operation_model.service_model.metadata.get
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - output_section.add_new_section
    - container_section.style.bold
    - comments.get
    - SECTION_LINE_LIMIT_CONFIG.get
    - dict_section.add_new_section
    - method_intro_section.style.end_danger
    - <builtin>.hasattr
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_output
    - return_section.style.new_line
    - <builtin>.open
    - parameter_names.remove
    - <builtin>.enumerate
    - botocore.docs.method.document_custom_signature
    - <builtin>.str
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - datetime.timedelta
    - input_section.style.start_codeblock
    - input_section.add_new_section
    - SECTION_METHOD_PATH_DEPTH.get
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - parameter_names.append
    - <builtin>.isinstance
    - signature.parameters.copy
    - operation_model.get_streaming_input
    - path.append
    - input_section.write
    - return_section.add_new_section
    - return_example_section.style.bold
    - param_section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_shared_example
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - botocore.docs.client.ClientDocumenter._add_method_exceptions_list
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - return_description_section.style.new_paragraph
    - shape.members.get
    - botocore.docs.utils.escape_controls
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - title_section.style.h1
    - <builtin>.len
    - event_section.write
    - container_section.style.new_paragraph
    - section.style.indent
    - section.style.new_paragraph
    - section.flush_structure
    - botocore.docs.client.ClientDocumenter._add_model_driven_method
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - botocore.docs.sharedexample.document_shared_examples
    - error_section.style.new_line
    - dict_section_end.write
    - botocore.docs.method.document_model_driven_method
    - method_intro_section.style.external_link
    - value.decode
    - epoch_zero.astimezone
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_input
    - botocore.docs.client.ClientDocumenter._add_custom_method
    - docs_link.decode
    - botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    - example_section.style.start_codeblock
    - LARGE_SECTION_MESSAGE.format
    - error_section.style.bold
    - section.write
    - _ESCAPE_CONTROLS_RE.sub
    - <builtin>.super
    - container_section.add_new_section
    - inspect.signature
    - botocore.utils.parse_timestamp
    - match.group
    - params.keys
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - os.makedirs
    - botocore.docs.client.ClientDocumenter._is_custom_method
    - history.pop
    - list_section.add_new_section
    - section.style.dedent
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - method_intro_section.writeln
    - <builtin>.iter
    - <builtin>.range
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - section.style.new_line
    - service_model.operation_model
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - client_methods
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 64
    functionName: botocore.docs.client.ClientDocumenter._filter_client_methods
    functionSourceFile: botocore.docs.client
    functionUses: 5
    functionsReached:
    - client_methods.items
    - botocore.docs.client.ClientDocumenter._filter_client_method
    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: client_methods.items
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 76
    functionName: botocore.docs.client.ClientDocumenter._filter_client_method
    functionSourceFile: ''
    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: section.include_doc_string
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 119
    functionName: botocore.docs.client.ClientDocumenter._add_client_creation_example
    functionSourceFile: botocore.docs.client
    functionUses: 5
    functionsReached:
    - section.style.start_codeblock
    - section.style.new_line
    - section.write
    - section.style.end_codeblock
    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: section.style.start_sphinx_py_class
    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: section.style.end_codeblock
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - method_name
    - method
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 143
    functionName: botocore.docs.client.ClientDocumenter._add_client_method
    functionSourceFile: botocore.docs.client
    functionUses: 5
    functionsReached:
    - method_intro_section.style.write_py_doc_string
    - <builtin>.next
    - return_section.write
    - history.append
    - output_section.write
    - logger.debug
    - output_section.style.new_line
    - new_params.values
    - return_example_section.style.new_paragraph
    - <builtin>.float
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - inspect.getdoc
    - return_description_section.style.bold
    - closing_section.style.new_line
    - signature_params.rstrip
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_params
    - example.get
    - closing_section.write
    - method_intro_section.write
    - datetime.datetime.fromtimestamp
    - botocore.docs.method.document_custom_method
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - item_section.write
    - botocore.docs.method.document_model_driven_signature
    - section.context.get
    - error_section.style.li
    - output_section.style.start_codeblock
    - example_section.style.new_paragraph
    - item_section.style.new_line
    - closing_section.style.end_codeblock
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - method_intro_section.style.new_paragraph
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - <builtin>.list
    - value.items
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - dateutil.tz.tzutc
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - botocore.utils._parse_timestamp_with_tzinfo
    - example_section.write
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - dateutil.parser.parse
    - section.style.start_codeblock
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - signature.replace
    - return_description_section.style.new_line
    - breadcrumb_section.style.ref
    - path.pop
    - operation_model.get_event_stream_output
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - operation_model.service_model.metadata.get
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - output_section.add_new_section
    - container_section.style.bold
    - comments.get
    - method_intro_section.style.end_danger
    - <builtin>.hasattr
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_output
    - return_section.style.new_line
    - parameter_names.remove
    - <builtin>.enumerate
    - botocore.docs.method.document_custom_signature
    - <builtin>.str
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - datetime.timedelta
    - input_section.style.start_codeblock
    - input_section.add_new_section
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - parameter_names.append
    - <builtin>.isinstance
    - signature.parameters.copy
    - operation_model.get_streaming_input
    - path.append
    - return_section.add_new_section
    - return_example_section.style.bold
    - input_section.write
    - param_section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_shared_example
    - botocore.docs.client.ClientDocumenter._add_method_exceptions_list
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - return_description_section.style.new_paragraph
    - shape.members.get
    - botocore.docs.utils.escape_controls
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - title_section.style.h1
    - <builtin>.len
    - event_section.write
    - container_section.style.new_paragraph
    - section.style.indent
    - section.style.new_paragraph
    - botocore.docs.client.ClientDocumenter._add_model_driven_method
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - botocore.docs.sharedexample.document_shared_examples
    - error_section.style.new_line
    - dict_section_end.write
    - botocore.docs.method.document_model_driven_method
    - method_intro_section.style.external_link
    - epoch_zero.astimezone
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_input
    - botocore.docs.client.ClientDocumenter._add_custom_method
    - example_section.style.start_codeblock
    - error_section.style.bold
    - section.write
    - _ESCAPE_CONTROLS_RE.sub
    - container_section.add_new_section
    - inspect.signature
    - botocore.utils.parse_timestamp
    - params.keys
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - botocore.docs.client.ClientDocumenter._is_custom_method
    - history.pop
    - list_section.add_new_section
    - section.style.dedent
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - method_intro_section.writeln
    - <builtin>.iter
    - <builtin>.range
    - section.add_new_section
    - return_section.style.indent
    - dict_section.add_new_section
    - section.style.new_line
    - service_model.operation_model
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - method_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 163
    functionName: botocore.docs.client.ClientDocumenter._is_custom_method
    functionSourceFile: ''
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - method_name
    - method
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 166
    functionName: botocore.docs.client.ClientDocumenter._add_custom_method
    functionSourceFile: botocore.docs.client
    functionUses: 6
    functionsReached:
    - method_intro_section.style.write_py_doc_string
    - <builtin>.next
    - method_intro_section.writeln
    - <builtin>.iter
    - botocore.docs.method.document_custom_method
    - section.context.get
    - inspect.getdoc
    - section.style.start_sphinx_py_method
    - <builtin>.str
    - section.add_new_section
    - <builtin>.isinstance
    - signature_params.rstrip
    - signature.parameters.copy
    - new_params.values
    - signature.replace
    - botocore.docs.method.document_custom_signature
    - inspect.signature
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - method_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 180
    functionName: botocore.docs.client.ClientDocumenter._add_model_driven_method
    functionSourceFile: botocore.docs.client
    functionUses: 6
    functionsReached:
    - return_section.write
    - history.append
    - output_section.write
    - logger.debug
    - output_section.style.new_line
    - return_example_section.style.new_paragraph
    - <builtin>.float
    - return_description_section.style.bold
    - closing_section.style.new_line
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_params
    - example.get
    - closing_section.write
    - method_intro_section.write
    - datetime.datetime.fromtimestamp
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - item_section.write
    - botocore.docs.method.document_model_driven_signature
    - section.context.get
    - error_section.style.li
    - output_section.style.start_codeblock
    - example_section.style.new_paragraph
    - item_section.style.new_line
    - closing_section.style.end_codeblock
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - method_intro_section.style.new_paragraph
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - <builtin>.list
    - value.items
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - dateutil.tz.tzutc
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - botocore.utils._parse_timestamp_with_tzinfo
    - example_section.write
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - dateutil.parser.parse
    - section.style.start_codeblock
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - return_description_section.style.new_line
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - path.pop
    - operation_model.get_event_stream_output
    - operation_model.service_model.metadata.get
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - output_section.add_new_section
    - container_section.style.bold
    - comments.get
    - method_intro_section.style.end_danger
    - <builtin>.hasattr
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_output
    - return_section.style.new_line
    - parameter_names.remove
    - <builtin>.enumerate
    - <builtin>.str
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - datetime.timedelta
    - input_section.style.start_codeblock
    - input_section.add_new_section
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - parameter_names.append
    - <builtin>.isinstance
    - operation_model.get_streaming_input
    - path.append
    - input_section.write
    - return_section.add_new_section
    - return_example_section.style.bold
    - param_section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_shared_example
    - botocore.docs.client.ClientDocumenter._add_method_exceptions_list
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - return_description_section.style.new_paragraph
    - shape.members.get
    - botocore.docs.utils.escape_controls
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - <builtin>.len
    - event_section.write
    - container_section.style.new_paragraph
    - section.style.indent
    - section.style.new_paragraph
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - botocore.docs.sharedexample.document_shared_examples
    - error_section.style.new_line
    - dict_section_end.write
    - botocore.docs.method.document_model_driven_method
    - method_intro_section.style.external_link
    - epoch_zero.astimezone
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_input
    - example_section.style.start_codeblock
    - error_section.style.bold
    - section.write
    - _ESCAPE_CONTROLS_RE.sub
    - container_section.add_new_section
    - botocore.utils.parse_timestamp
    - params.keys
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - history.pop
    - list_section.add_new_section
    - section.style.dedent
    - botocore.docs.shape.ShapeDocumenter.__init__
    - method_intro_section.writeln
    - <builtin>.range
    - section.add_new_section
    - return_section.style.indent
    - dict_section.add_new_section
    - section.style.new_line
    - service_model.operation_model
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 169
    functionName: botocore.docs.client.ClientDocumenter._add_method_exceptions_list
    functionSourceFile: botocore.docs.client
    functionUses: 7
    functionsReached:
    - error_section.style.li
    - error_section.style.new_line
    - section.add_new_section
    - error_section.style.bold
    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_section.style.new_line
    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: error_section.style.bold
    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: error_section.style.li
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - section
    - operation_model
    - example_prefix
    - shared_examples
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 204
    functionName: botocore.docs.sharedexample.document_shared_examples
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 7
    functionsReached:
    - closing_section.style.end_codeblock
    - section.style.new_paragraph
    - section.style.indent
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_output
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - output_section.write
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - value.items
    - dict_section_end.write
    - datetime.datetime
    - <builtin>.enumerate
    - botocore.compat.get_tzinfo_options
    - <builtin>.str
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_input
    - dateutil.tz.tzutc
    - input_section.style.start_codeblock
    - input_section.add_new_section
    - container_section.style.new_paragraph
    - output_section.style.new_line
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - <builtin>.isinstance
    - section.write
    - _ESCAPE_CONTROLS_RE.sub
    - botocore.utils._parse_timestamp_with_tzinfo
    - path.append
    - container_section.add_new_section
    - input_section.write
    - <builtin>.float
    - param_section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_shared_example
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - closing_section.style.new_line
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_params
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - path.pop
    - example.get
    - closing_section.write
    - shape.members.get
    - list_section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - section.style.dedent
    - datetime.datetime.fromtimestamp
    - output_section.add_new_section
    - botocore.docs.utils.escape_controls
    - container_section.style.bold
    - item_section.write
    - <builtin>.range
    - section.add_new_section
    - comments.get
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - dict_section.add_new_section
    - <builtin>.len
    - section.style.new_line
    - output_section.style.start_codeblock
    - item_section.style.new_line
    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: botocore.docs.client.ClientExceptionsDocumenter
    functionSourceFile: botocore.docs.client
    functionUses: 0
    functionsReached:
    - collections.OrderedDict
    - collections.namedtuple.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 258
    functionName: botocore.docs.client.ClientExceptionsDocumenter._add_title
    functionSourceFile: botocore.docs.client
    functionUses: 4
    functionsReached:
    - section.style.h2
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 261
    functionName: botocore.docs.client.ClientExceptionsDocumenter._add_overview
    functionSourceFile: botocore.docs.client
    functionUses: 4
    functionsReached:
    - section.style.new_line
    - section.write
    - section.style.external_link
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 7
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 279
    functionName: botocore.docs.client.ClientExceptionsDocumenter._add_exceptions_list
    functionSourceFile: botocore.docs.client
    functionUses: 4
    functionsReached:
    - section.style.toctree
    - section.style.tocitem
    - section.writeln
    - section.write
    - section.style.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 294
    functionName: botocore.docs.client.ClientExceptionsDocumenter._add_exception_classes
    functionSourceFile: botocore.docs.client
    functionUses: 4
    functionsReached:
    - section.style.indent
    - section.style.new_paragraph
    - collections.OrderedDict.items
    - <builtin>.hasattr
    - section.flush_structure
    - example_section.style.new_line
    - collections.OrderedDict
    - history.append
    - <builtin>.open
    - params_section.style.new_line
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - class_section.style.start_sphinx_py_class
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - section.include_doc_string
    - response_section.style.end_sphinx_py_attr
    - section.style.end_codeblock
    - value.decode
    - response_section.style.start_sphinx_py_attr
    - SECTION_METHOD_PATH_DEPTH.get
    - section.style.bold
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr_description
    - f.write
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - docs_link.decode
    - params_section.style.new_paragraph
    - os.path.join
    - class_section.style.end_sphinx_py_class
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - <builtin>.super
    - botocore.docs.client.ClientExceptionsDocumenter._exception_class_name
    - <builtin>.getattr
    - os.path.exists
    - botocore.docs.client.ClientExceptionsDocumenter._add_top_level_documentation
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - section.style.start_codeblock
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - example_section.style.bold
    - match.group
    - final_blank_line_section.style.new_line
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - DOCUMENTATION_LINK_REGEX.search
    - os.makedirs
    - breadcrumb_section.style.ref
    - params_section.style.bold
    - value.splitlines
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_example
    - section.style.dedent
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_class
    - history.pop
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_catch_example
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - SECTION_LINE_LIMIT_CONFIG.get
    - title_section.style.h1
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - <builtin>.len
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_params
    - section.style.new_line
    - example_section.style.new_paragraph
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 276
    functionName: botocore.docs.client.ClientExceptionsDocumenter._exception_class_name
    functionSourceFile: botocore.docs.client
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 8
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 313
    functionName: botocore.docs.client.ClientExceptionsDocumenter._add_exception_class
    functionSourceFile: botocore.docs.client
    functionUses: 5
    functionsReached:
    - section.style.indent
    - section.style.new_paragraph
    - <builtin>.hasattr
    - example_section.style.new_line
    - history.append
    - params_section.style.new_line
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr
    - section.style.end_codeblock
    - class_section.style.start_sphinx_py_class
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section
    - section.include_doc_string
    - response_section.style.end_sphinx_py_attr
    - section.style.bold
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr_description
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - params_section.style.new_paragraph
    - class_section.style.end_sphinx_py_class
    - section.write
    - botocore.docs.client.ClientExceptionsDocumenter._exception_class_name
    - <builtin>.getattr
    - botocore.docs.client.ClientExceptionsDocumenter._add_top_level_documentation
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - section.style.start_codeblock
    - example_section.style.bold
    - final_blank_line_section.style.new_line
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - params_section.style.bold
    - breadcrumb_section.style.ref
    - history.pop
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_example
    - section.style.dedent
    - botocore.docs.shape.ShapeDocumenter.__init__
    - breadcrumb_section.write
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - botocore.docs.client.ClientExceptionsDocumenter._add_exception_catch_example
    - section.add_new_section
    - title_section.style.h1
    - response_section.style.start_sphinx_py_attr
    - <builtin>.len
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_params
    - section.style.new_line
    - example_section.style.new_paragraph
    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: class_section.style.start_sphinx_py_class
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 328
    functionName: botocore.docs.client.ClientExceptionsDocumenter._add_top_level_documentation
    functionSourceFile: botocore.docs.client
    functionUses: 6
    functionsReached:
    - section.include_doc_string
    - section.style.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 16
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 334
    functionName: botocore.docs.client.ClientExceptionsDocumenter._add_exception_catch_example
    functionSourceFile: botocore.docs.client
    functionUses: 6
    functionsReached:
    - section.style.indent
    - section.style.new_paragraph
    - section.style.start_codeblock
    - section.style.bold
    - section.write
    - section.style.new_line
    - section.style.dedent
    - section.style.end_codeblock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 352
    functionName: botocore.docs.client.ClientExceptionsDocumenter._add_response_attr
    functionSourceFile: botocore.docs.client
    functionUses: 6
    functionsReached:
    - <builtin>.hasattr
    - example_section.style.new_line
    - history.append
    - params_section.style.new_line
    - section.include_doc_string
    - response_section.style.end_sphinx_py_attr
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_attr_description
    - params_section.style.new_paragraph
    - section.write
    - <builtin>.getattr
    - example_section.style.bold
    - section.style.start_codeblock
    - final_blank_line_section.style.new_line
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - params_section.style.bold
    - history.pop
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_example
    - botocore.docs.shape.ShapeDocumenter.__init__
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - section.add_new_section
    - response_section.style.start_sphinx_py_attr
    - <builtin>.len
    - botocore.docs.client.ClientExceptionsDocumenter._add_response_params
    - section.style.new_line
    - example_section.style.new_paragraph
    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: class_section.style.end_sphinx_py_class
    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: section.style.bold
    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: response_section.style.start_sphinx_py_attr
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 360
    functionName: botocore.docs.client.ClientExceptionsDocumenter._add_response_attr_description
    functionSourceFile: botocore.docs.client
    functionUses: 7
    functionsReached:
    - section.include_doc_string
    - section.style.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 370
    functionName: botocore.docs.client.ClientExceptionsDocumenter._add_response_example
    functionSourceFile: botocore.docs.client
    functionUses: 7
    functionsReached:
    - <builtin>.getattr
    - history.pop
    - <builtin>.hasattr
    - example_section.style.new_line
    - example_section.style.bold
    - section.style.start_codeblock
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - section.add_new_section
    - final_blank_line_section.style.new_line
    - history.append
    - section.write
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - <builtin>.len
    - example_section.style.new_paragraph
    - section.style.new_line
    - botocore.docs.shape.ShapeDocumenter.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 386
    functionName: botocore.docs.client.ClientExceptionsDocumenter._add_response_params
    functionSourceFile: botocore.docs.client
    functionUses: 7
    functionsReached:
    - <builtin>.getattr
    - <builtin>.hasattr
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - section.add_new_section
    - params_section.style.new_paragraph
    - history.append
    - params_section.style.new_line
    - params_section.style.bold
    - <builtin>.len
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__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: response_section.style.end_sphinx_py_attr
    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: example_section.style.new_line
    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: params_section.style.new_line
    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: params_section.style.bold
    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: params_section.style.new_paragraph
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 428
    functionName: botocore.docs.client.ClientContextParamsDocumenter._add_title
    functionSourceFile: botocore.docs.client
    functionUses: 4
    functionsReached:
    - section.style.h2
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 431
    functionName: botocore.docs.client.ClientContextParamsDocumenter._add_overview
    functionSourceFile: botocore.docs.client
    functionUses: 4
    functionsReached:
    - section.style.new_line
    - section.write
    - section.style.external_link
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 446
    functionName: botocore.docs.client.ClientContextParamsDocumenter._add_context_params_list
    functionSourceFile: botocore.docs.client
    functionUses: 4
    functionsReached:
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - botocore.xform_name
    - section.writeln
    - matched.lower
    - is_special.group
    - _special_case_transform.search
    - section.write
    - <builtin>.len
    - section.style.new_line
    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: botocore.docs.sharedexample
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 6
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - example
    - prefix
    - section
    - operation_model
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 21
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter.document_shared_example
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 8
    functionsReached:
    - closing_section.style.end_codeblock
    - section.style.new_paragraph
    - section.style.indent
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_output
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - output_section.write
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - value.items
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - dict_section_end.write
    - datetime.datetime
    - <builtin>.enumerate
    - botocore.compat.get_tzinfo_options
    - <builtin>.str
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - botocore.docs.sharedexample.SharedExampleDocumenter.document_input
    - dateutil.tz.tzutc
    - input_section.style.start_codeblock
    - input_section.add_new_section
    - botocore.utils._epoch_seconds_to_datetime
    - output_section.style.new_line
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - <builtin>.isinstance
    - section.write
    - _ESCAPE_CONTROLS_RE.sub
    - botocore.utils._parse_timestamp_with_tzinfo
    - path.append
    - input_section.write
    - <builtin>.float
    - param_section.add_new_section
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - closing_section.style.new_line
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_params
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - path.pop
    - example.get
    - closing_section.write
    - shape.members.get
    - list_section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - section.style.dedent
    - datetime.datetime.fromtimestamp
    - output_section.add_new_section
    - botocore.docs.utils.escape_controls
    - item_section.write
    - <builtin>.range
    - section.add_new_section
    - comments.get
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - dict_section.add_new_section
    - <builtin>.len
    - section.style.new_line
    - output_section.style.start_codeblock
    - item_section.style.new_line
    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: example.get
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - section
    - example
    - prefix
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 42
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter.document_input
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 9
    functionsReached:
    - closing_section.style.end_codeblock
    - section.style.indent
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - value.items
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - dict_section_end.write
    - datetime.datetime
    - <builtin>.enumerate
    - botocore.compat.get_tzinfo_options
    - <builtin>.str
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - input_section.style.start_codeblock
    - input_section.add_new_section
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - <builtin>.isinstance
    - section.write
    - _ESCAPE_CONTROLS_RE.sub
    - botocore.utils._parse_timestamp_with_tzinfo
    - path.append
    - input_section.write
    - <builtin>.float
    - param_section.add_new_section
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - closing_section.style.new_line
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_params
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - path.pop
    - example.get
    - closing_section.write
    - list_section.add_new_section
    - shape.members.get
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - section.style.dedent
    - datetime.datetime.fromtimestamp
    - botocore.docs.utils.escape_controls
    - item_section.write
    - <builtin>.range
    - section.add_new_section
    - comments.get
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - dict_section.add_new_section
    - <builtin>.len
    - section.style.new_line
    - item_section.style.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 6
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - example
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 59
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter.document_output
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 9
    functionsReached:
    - closing_section.style.end_codeblock
    - section.style.indent
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - output_section.write
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - value.items
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - dict_section_end.write
    - datetime.datetime
    - <builtin>.enumerate
    - botocore.compat.get_tzinfo_options
    - <builtin>.str
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - output_section.style.new_line
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - <builtin>.isinstance
    - section.write
    - _ESCAPE_CONTROLS_RE.sub
    - botocore.utils._parse_timestamp_with_tzinfo
    - path.append
    - <builtin>.float
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - path.pop
    - example.get
    - list_section.add_new_section
    - shape.members.get
    - section.style.dedent
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - datetime.datetime.fromtimestamp
    - output_section.add_new_section
    - botocore.docs.utils.escape_controls
    - item_section.write
    - <builtin>.range
    - section.add_new_section
    - comments.get
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - dict_section.add_new_section
    - <builtin>.len
    - section.style.new_line
    - output_section.style.start_codeblock
    - item_section.style.new_line
    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: input_section.style.start_codeblock
    functionSourceFile: <builtin>
    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: input_section.write
    functionSourceFile: <builtin>
    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: comments.get
    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: input_section.add_new_section
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    IfCount: 2
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - section
    - value
    - comments
    - path
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 130
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter._document_params
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 10
    functionsReached:
    - section.style.indent
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - value.items
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - dict_section_end.write
    - datetime.datetime
    - <builtin>.enumerate
    - botocore.compat.get_tzinfo_options
    - <builtin>.str
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - <builtin>.isinstance
    - section.write
    - _ESCAPE_CONTROLS_RE.sub
    - botocore.utils._parse_timestamp_with_tzinfo
    - path.append
    - <builtin>.float
    - param_section.add_new_section
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - path.pop
    - list_section.add_new_section
    - shape.members.get
    - section.style.dedent
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - datetime.datetime.fromtimestamp
    - botocore.docs.utils.escape_controls
    - item_section.write
    - <builtin>.range
    - section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - dict_section.add_new_section
    - <builtin>.len
    - section.style.new_line
    - item_section.style.new_line
    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: closing_section.style.new_line
    functionSourceFile: <builtin>
    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: closing_section.write
    functionSourceFile: <builtin>
    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: closing_section.style.end_codeblock
    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: output_section.style.new_line
    functionSourceFile: <builtin>
    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: output_section.write
    functionSourceFile: <builtin>
    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: output_section.style.start_codeblock
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 10
    IfCount: 5
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f9830d59a60>
    argNames:
    - self
    - section
    - value
    - comments
    - path
    - shape
    - top_level
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 101
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 14
    functionsReached:
    - section.style.indent
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - value.items
    - dict_section_end.write
    - datetime.datetime
    - <builtin>.enumerate
    - botocore.compat.get_tzinfo_options
    - <builtin>.str
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - <builtin>.isinstance
    - section.write
    - _ESCAPE_CONTROLS_RE.sub
    - botocore.utils._parse_timestamp_with_tzinfo
    - path.append
    - <builtin>.float
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - path.pop
    - list_section.add_new_section
    - shape.members.get
    - section.style.dedent
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - datetime.datetime.fromtimestamp
    - botocore.docs.utils.escape_controls
    - item_section.write
    - <builtin>.range
    - section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - dict_section.add_new_section
    - <builtin>.len
    - section.style.new_line
    - item_section.style.new_line
    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: output_section.add_new_section
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - section
    - value
    - comments
    - path
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 76
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter._document
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 14
    functionsReached:
    - section.style.indent
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - value.items
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - dict_section_end.write
    - datetime.datetime
    - <builtin>.enumerate
    - botocore.compat.get_tzinfo_options
    - <builtin>.str
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - <builtin>.isinstance
    - section.write
    - _ESCAPE_CONTROLS_RE.sub
    - botocore.utils._parse_timestamp_with_tzinfo
    - path.append
    - <builtin>.float
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - path.pop
    - list_section.add_new_section
    - shape.members.get
    - section.style.dedent
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - datetime.datetime.fromtimestamp
    - botocore.docs.utils.escape_controls
    - item_section.write
    - <builtin>.range
    - section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - dict_section.add_new_section
    - <builtin>.len
    - section.style.new_line
    - item_section.style.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 8
    IfCount: 1
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - section
    - value
    - comments
    - path
    - shape
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 152
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 14
    functionsReached:
    - section.style.indent
    - botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    - botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_dict
    - value.items
    - dict_section_end.write
    - datetime.datetime
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.compat.get_tzinfo_options
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_list
    - <builtin>.isinstance
    - section.write
    - _ESCAPE_CONTROLS_RE.sub
    - botocore.utils._parse_timestamp_with_tzinfo
    - path.append
    - <builtin>.float
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    - re.sub
    - botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    - path.pop
    - list_section.add_new_section
    - shape.members.get
    - section.style.dedent
    - botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    - datetime.datetime.fromtimestamp
    - botocore.docs.utils.escape_controls
    - item_section.write
    - <builtin>.range
    - section.add_new_section
    - botocore.docs.sharedexample.SharedExampleDocumenter._document
    - dict_section.add_new_section
    - <builtin>.len
    - section.style.new_line
    - item_section.style.new_line
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - value
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 175
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter._document_number
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 15
    functionsReached:
    - <builtin>.str
    - section.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - value
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 178
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 15
    functionsReached:
    - <builtin>.float
    - logger.debug
    - datetime.datetime.fromtimestamp
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - botocore.utils._epoch_seconds_to_datetime
    - <builtin>.range
    - <builtin>.isinstance
    - section.write
    - botocore.utils._parse_timestamp_with_tzinfo
    - datetime.datetime
    - <builtin>.len
    - botocore.compat.get_tzinfo_options
    - <builtin>.str
    - datetime.timedelta
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - value
    - path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 169
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter._document_str
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 15
    functionsReached:
    - botocore.docs.utils.escape_controls
    - section.write
    - _ESCAPE_CONTROLS_RE.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - start
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 192
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 15
    functionsReached:
    - section.style.indent
    - section.write
    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: path.append
    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: dict_section.add_new_section
    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: item_section.style.new_line
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - path
    - comments
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 185
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter._get_comment
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 15
    functionsReached:
    - re.sub
    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: item_section.write
    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: path.pop
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - section
    - end
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 197
    functionName: botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value
    functionSourceFile: botocore.docs.sharedexample
    functionUses: 15
    functionsReached:
    - section.style.new_line
    - section.write
    - section.style.dedent
    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: dict_section_end.write
    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: container_section.style.new_paragraph
    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: container_section.style.bold
    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: container_section.add_new_section
    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: botocore.docs.docstring
    functionSourceFile: botocore.docs.docstring
    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:
    - cls
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: botocore.docs.docstring.LazyLoadedDocstring.__new__
    functionSourceFile: botocore.docs.docstring
    functionUses: 0
    functionsReached:
    - <builtin>.super
    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: 43
    functionName: botocore.docs.docstring.LazyLoadedDocstring._write_docstring
    functionSourceFile: botocore.docs.docstring
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830de9df0>
    argNames:
    - self
    - tabsize
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 49
    functionName: botocore.docs.docstring.LazyLoadedDocstring.expandtabs
    functionSourceFile: botocore.docs.docstring
    functionUses: 0
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - collections.OrderedDict.items
    - return_section.write
    - collections.OrderedDict
    - history.append
    - service_model.metadata.get
    - service_waiter_model.get_waiter
    - return_example_section.style.new_paragraph
    - service_pagination_params.append
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - return_description_section.style.bold
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - botocore.docs.docstring.LazyLoadedDocstring._generate
    - method_intro_section.write
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - example_section.style.new_paragraph
    - botocore.docs.docstring.LazyLoadedDocstring._write_docstring
    - botocore.docs.paginator.document_paginate_method
    - botocore.docs.docstring.WaiterDocstring._write_docstring
    - method_intro_section.style.new_paragraph
    - <builtin>.list
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - _first_cap_regex.sub
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - example_section.write
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - section.style.start_codeblock
    - DOCUMENTATION_LINK_REGEX.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - return_description_section.style.new_line
    - operation_model.get_event_stream_output
    - operation_model.service_model.metadata.get
    - SECTION_LINE_LIMIT_CONFIG.get
    - method_intro_section.style.end_danger
    - name.replace
    - <builtin>.hasattr
    - return_section.style.new_line
    - parameter_names.remove
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - service_pagination_response_params.append
    - SECTION_METHOD_PATH_DEPTH.get
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - parameter_names.append
    - <builtin>.isinstance
    - operation_model.get_streaming_input
    - return_section.add_new_section
    - return_example_section.style.bold
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - botocore.docs.docstring.ClientMethodDocstring._write_docstring
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - botocore.docs.waiter.document_wait_method
    - return_description_section.style.new_paragraph
    - paginator_config.get
    - <builtin>.len
    - event_section.write
    - botocore.docs.docstring.LazyLoadedDocstring._create_docstring
    - section.flush_structure
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - value.decode
    - matched.lower
    - docs_link.decode
    - example_section.style.start_codeblock
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - <builtin>.super
    - match.group
    - botocore.docs.docstring.PaginatorDocstring._write_docstring
    - collections.namedtuple.__init__
    - params.keys
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - _special_case_transform.search
    - re.sub
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - method_intro_section.writeln
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - section.style.new_line
    - service_model.operation_model
    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: 6
    functionLinenumber: 69
    functionName: botocore.docs.docstring.LazyLoadedDocstring._generate
    functionSourceFile: botocore.docs.docstring
    functionUses: 2
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - collections.OrderedDict.items
    - return_section.write
    - collections.OrderedDict
    - history.append
    - service_model.metadata.get
    - service_waiter_model.get_waiter
    - return_example_section.style.new_paragraph
    - service_pagination_params.append
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - return_description_section.style.bold
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - method_intro_section.write
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - example_section.style.new_paragraph
    - botocore.docs.docstring.LazyLoadedDocstring._write_docstring
    - botocore.docs.paginator.document_paginate_method
    - botocore.docs.docstring.WaiterDocstring._write_docstring
    - method_intro_section.style.new_paragraph
    - <builtin>.list
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - _first_cap_regex.sub
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - example_section.write
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - section.style.start_codeblock
    - DOCUMENTATION_LINK_REGEX.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - return_description_section.style.new_line
    - operation_model.get_event_stream_output
    - operation_model.service_model.metadata.get
    - SECTION_LINE_LIMIT_CONFIG.get
    - method_intro_section.style.end_danger
    - name.replace
    - <builtin>.hasattr
    - return_section.style.new_line
    - parameter_names.remove
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - service_pagination_response_params.append
    - SECTION_METHOD_PATH_DEPTH.get
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - parameter_names.append
    - <builtin>.isinstance
    - operation_model.get_streaming_input
    - return_section.add_new_section
    - return_example_section.style.bold
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - botocore.docs.docstring.ClientMethodDocstring._write_docstring
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - botocore.docs.waiter.document_wait_method
    - return_description_section.style.new_paragraph
    - paginator_config.get
    - <builtin>.len
    - event_section.write
    - botocore.docs.docstring.LazyLoadedDocstring._create_docstring
    - section.flush_structure
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - value.decode
    - matched.lower
    - docs_link.decode
    - example_section.style.start_codeblock
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - <builtin>.super
    - match.group
    - botocore.docs.docstring.PaginatorDocstring._write_docstring
    - collections.namedtuple.__init__
    - params.keys
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - _special_case_transform.search
    - re.sub
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - method_intro_section.writeln
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - section.style.new_line
    - service_model.operation_model
    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: 7
    functionLinenumber: 63
    functionName: botocore.docs.docstring.LazyLoadedDocstring.__str__
    functionSourceFile: botocore.docs.docstring
    functionUses: 0
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - collections.OrderedDict.items
    - return_section.write
    - collections.OrderedDict
    - history.append
    - service_model.metadata.get
    - service_waiter_model.get_waiter
    - return_example_section.style.new_paragraph
    - service_pagination_params.append
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - return_description_section.style.bold
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - botocore.docs.docstring.LazyLoadedDocstring._generate
    - method_intro_section.write
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - example_section.style.new_paragraph
    - botocore.docs.docstring.LazyLoadedDocstring._write_docstring
    - botocore.docs.paginator.document_paginate_method
    - botocore.docs.docstring.WaiterDocstring._write_docstring
    - method_intro_section.style.new_paragraph
    - <builtin>.list
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - _first_cap_regex.sub
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - example_section.write
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - section.style.start_codeblock
    - DOCUMENTATION_LINK_REGEX.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - return_description_section.style.new_line
    - operation_model.get_event_stream_output
    - operation_model.service_model.metadata.get
    - SECTION_LINE_LIMIT_CONFIG.get
    - method_intro_section.style.end_danger
    - name.replace
    - <builtin>.hasattr
    - return_section.style.new_line
    - parameter_names.remove
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - service_pagination_response_params.append
    - SECTION_METHOD_PATH_DEPTH.get
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - parameter_names.append
    - <builtin>.isinstance
    - operation_model.get_streaming_input
    - return_section.add_new_section
    - return_example_section.style.bold
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - botocore.docs.docstring.ClientMethodDocstring._write_docstring
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - botocore.docs.waiter.document_wait_method
    - return_description_section.style.new_paragraph
    - paginator_config.get
    - <builtin>.len
    - event_section.write
    - botocore.docs.docstring.LazyLoadedDocstring._create_docstring
    - section.flush_structure
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - value.decode
    - matched.lower
    - docs_link.decode
    - example_section.style.start_codeblock
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - <builtin>.super
    - match.group
    - botocore.docs.docstring.PaginatorDocstring._write_docstring
    - collections.namedtuple.__init__
    - params.keys
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - _special_case_transform.search
    - re.sub
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - method_intro_section.writeln
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - section.style.new_line
    - service_model.operation_model
    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: 5
    functionLinenumber: 75
    functionName: botocore.docs.docstring.LazyLoadedDocstring._create_docstring
    functionSourceFile: botocore.docs.docstring
    functionUses: 3
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - collections.OrderedDict.items
    - return_section.write
    - collections.OrderedDict
    - history.append
    - service_model.metadata.get
    - service_waiter_model.get_waiter
    - return_example_section.style.new_paragraph
    - service_pagination_params.append
    - botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section
    - return_description_section.style.bold
    - botocore.docs.bcdoc.style.BaseStyle.spaces
    - value.splitlines
    - method_intro_section.write
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - example_section.style.new_paragraph
    - botocore.docs.docstring.LazyLoadedDocstring._write_docstring
    - botocore.docs.paginator.document_paginate_method
    - botocore.docs.docstring.WaiterDocstring._write_docstring
    - method_intro_section.style.new_paragraph
    - <builtin>.list
    - botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure
    - _first_cap_regex.sub
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - example_section.write
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - section.style.start_codeblock
    - DOCUMENTATION_LINK_REGEX.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - return_description_section.style.new_line
    - operation_model.get_event_stream_output
    - operation_model.service_model.metadata.get
    - SECTION_LINE_LIMIT_CONFIG.get
    - method_intro_section.style.end_danger
    - name.replace
    - <builtin>.hasattr
    - return_section.style.new_line
    - parameter_names.remove
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - service_pagination_response_params.append
    - SECTION_METHOD_PATH_DEPTH.get
    - botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure
    - parameter_names.append
    - <builtin>.isinstance
    - operation_model.get_streaming_input
    - return_section.add_new_section
    - return_example_section.style.bold
    - botocore.docs.bcdoc.style.ReSTStyle.link_target_definition
    - example_section.style.bold
    - method_intro_section.style.start_danger
    - botocore.docs.docstring.ClientMethodDocstring._write_docstring
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - botocore.docs.waiter.document_wait_method
    - return_description_section.style.new_paragraph
    - paginator_config.get
    - <builtin>.len
    - event_section.write
    - section.flush_structure
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - value.decode
    - matched.lower
    - docs_link.decode
    - example_section.style.start_codeblock
    - LARGE_SECTION_MESSAGE.format
    - section.write
    - <builtin>.super
    - match.group
    - botocore.docs.docstring.PaginatorDocstring._write_docstring
    - collections.namedtuple.__init__
    - params.keys
    - botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue
    - _special_case_transform.search
    - re.sub
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - method_intro_section.writeln
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - botocore.docs.bcdoc.restdoc.DocumentStructure.__init__
    - return_section.style.indent
    - botocore.docs.bcdoc.style.ReSTStyle.new_paragraph
    - section.style.new_line
    - service_model.operation_model
    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: 4
    functionLinenumber: 86
    functionName: botocore.docs.docstring.ClientMethodDocstring._write_docstring
    functionSourceFile: botocore.docs.docstring
    functionUses: 4
    functionsReached:
    - <builtin>.hasattr
    - return_section.write
    - method_intro_section.style.new_paragraph
    - return_section.style.new_line
    - history.append
    - <builtin>.list
    - parameter_names.remove
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - parameter_names.append
    - example_section.style.start_codeblock
    - section.write
    - operation_model.get_streaming_input
    - return_example_section.style.new_paragraph
    - example_section.write
    - return_example_section.style.bold
    - return_section.add_new_section
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - <builtin>.len
    - example_section.style.bold
    - section.style.start_codeblock
    - method_intro_section.style.start_danger
    - return_description_section.style.bold
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - params.keys
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - return_description_section.style.new_line
    - operation_model.get_event_stream_output
    - return_description_section.style.new_paragraph
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - operation_model.service_model.metadata.get
    - method_intro_section.write
    - method_intro_section.writeln
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - section.add_new_section
    - return_section.style.indent
    - botocore.docs.method.document_model_driven_signature
    - method_intro_section.style.end_danger
    - event_section.write
    - section.style.new_line
    - example_section.style.new_paragraph
    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: 5
    functionLinenumber: 96
    functionName: botocore.docs.docstring.PaginatorDocstring._write_docstring
    functionSourceFile: botocore.docs.docstring
    functionUses: 4
    functionsReached:
    - _end_cap_regex.sub
    - botocore.docs.paginator.document_paginate_method
    - botocore.xform_name
    - <builtin>.hasattr
    - return_section.write
    - collections.OrderedDict
    - method_intro_section.style.new_paragraph
    - return_section.style.new_line
    - history.append
    - <builtin>.list
    - parameter_names.remove
    - service_model.metadata.get
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - _first_cap_regex.sub
    - service_pagination_response_params.append
    - name.replace
    - service_model.operation_model
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - matched.lower
    - parameter_names.append
    - <builtin>.isinstance
    - example_section.style.start_codeblock
    - section.write
    - operation_model.get_streaming_input
    - return_example_section.style.new_paragraph
    - return_section.add_new_section
    - example_section.write
    - service_pagination_params.append
    - return_example_section.style.bold
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - example_section.style.bold
    - section.style.start_codeblock
    - method_intro_section.style.start_danger
    - return_description_section.style.bold
    - collections.namedtuple.__init__
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - _special_case_transform.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - re.sub
    - return_description_section.style.new_line
    - event_section.write
    - operation_model.get_event_stream_output
    - return_description_section.style.new_paragraph
    - params.keys
    - history.pop
    - botocore.docs.shape.ShapeDocumenter.__init__
    - operation_model.service_model.metadata.get
    - method_intro_section.write
    - method_intro_section.writeln
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - paginator_config.get
    - return_section.style.indent
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - method_intro_section.style.end_danger
    - <builtin>.len
    - section.style.new_line
    - example_section.style.new_paragraph
    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: 5
    functionLinenumber: 91
    functionName: botocore.docs.docstring.WaiterDocstring._write_docstring
    functionSourceFile: botocore.docs.docstring
    functionUses: 4
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - <builtin>.hasattr
    - return_section.write
    - collections.OrderedDict
    - method_intro_section.style.new_paragraph
    - return_section.style.new_line
    - history.append
    - <builtin>.list
    - parameter_names.remove
    - service_model.metadata.get
    - method_intro_section.style.external_link
    - botocore.docs.method.document_model_driven_method
    - method_intro_section.include_doc_string
    - event_section.style.new_line
    - _first_cap_regex.sub
    - service_model.operation_model
    - section.style.start_sphinx_py_method
    - botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape
    - matched.lower
    - service_waiter_model.get_waiter
    - parameter_names.append
    - example_section.style.start_codeblock
    - section.write
    - operation_model.get_streaming_input
    - return_example_section.style.new_paragraph
    - return_section.add_new_section
    - example_section.write
    - return_example_section.style.bold
    - <builtin>.getattr
    - event_section.style.new_paragraph
    - operation_model.get_streaming_output
    - <builtin>.len
    - example_section.style.bold
    - section.style.start_codeblock
    - method_intro_section.style.start_danger
    - return_description_section.style.bold
    - collections.namedtuple.__init__
    - return_example_section.style.new_line
    - final_blank_line_section.style.new_line
    - _special_case_transform.search
    - botocore.docs.example.BaseExampleDocumenter.document_example
    - re.sub
    - botocore.docs.waiter.document_wait_method
    - return_description_section.style.new_line
    - operation_model.get_event_stream_output
    - return_description_section.style.new_paragraph
    - event_section.write
    - params.keys
    - botocore.docs.shape.ShapeDocumenter.__init__
    - operation_model.service_model.metadata.get
    - history.pop
    - method_intro_section.write
    - method_intro_section.writeln
    - botocore.docs.params.BaseParamsDocumenter.document_params
    - botocore.utils.get_service_module_name
    - section.add_new_section
    - return_section.style.indent
    - is_special.group
    - botocore.docs.method.document_model_driven_signature
    - method_intro_section.style.end_danger
    - name.replace
    - section.style.new_line
    - example_section.style.new_paragraph
    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: botocore.docs.bcdoc
    functionSourceFile: botocore.docs.bcdoc
    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: 1
    functionLinenumber: -1
    functionName: botocore.discovery
    functionSourceFile: botocore.discovery
    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:
    - model
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: botocore.discovery.block_endpoint_discovery_required_operations
    functionSourceFile: botocore.discovery
    functionUses: 0
    functionsReached:
    - endpoint_discovery.get
    linkageType: pythonLinkage
    raised:
    - EndpointDiscoveryRequired
    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_discovery.get
    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
    - service_model
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 48
    functionName: botocore.discovery.EndpointDiscoveryModel.__init__
    functionSourceFile: botocore.discovery
    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: 1
    functionLinenumber: -1
    functionName: botocore.discovery.EndpointDiscoveryModel
    functionSourceFile: botocore.discovery
    functionUses: 0
    functionsReached:
    - botocore.utils.CachedProperty
    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: 52
    functionName: botocore.discovery.EndpointDiscoveryModel.discovery_operation_name
    functionSourceFile: botocore.discovery
    functionUses: 0
    functionsReached:
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - botocore.xform_name
    - matched.lower
    - is_special.group
    - _special_case_transform.search
    - <builtin>.len
    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: 57
    functionName: botocore.discovery.EndpointDiscoveryModel.discovery_operation_keys
    functionSourceFile: botocore.discovery
    functionUses: 0
    functionsReached:
    - discovery_operation.input_shape.members.keys
    - <builtin>.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: discovery_operation.input_shape.members.keys
    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
    - operation_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 64
    functionName: botocore.discovery.EndpointDiscoveryModel.discovery_required_for
    functionSourceFile: botocore.discovery
    functionUses: 2
    functionsReached:
    - operation_model.endpoint_discovery.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: operation_model.endpoint_discovery.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 73
    functionName: botocore.discovery.EndpointDiscoveryModel.discovery_operation_kwargs
    functionSourceFile: botocore.discovery
    functionUses: 7
    functionsReached:
    - kwargs.get
    - kwargs.items
    - kwargs.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - operation
    - params
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 81
    functionName: botocore.discovery.EndpointDiscoveryModel.gather_identifiers
    functionSourceFile: botocore.discovery
    functionUses: 2
    functionsReached:
    - shape.members.items
    - member_shape.metadata.get
    - botocore.discovery.EndpointDiscoveryModel._gather_ids
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f98312f6d00>
    argNames:
    - self
    - shape
    - params
    - ids
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 84
    functionName: botocore.discovery.EndpointDiscoveryModel._gather_ids
    functionSourceFile: botocore.discovery
    functionUses: 3
    functionsReached:
    - shape.members.items
    - member_shape.metadata.get
    - botocore.discovery.EndpointDiscoveryModel._gather_ids
    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: member_shape.metadata.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f98312e1340>
    - <ast.Constant object at 0x7f98312e1f40>
    - <ast.Constant object at 0x7f98312e1fa0>
    argNames:
    - self
    - client
    - cache
    - current_time
    - always_discover
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 100
    functionName: botocore.discovery.EndpointDiscoveryManager.__init__
    functionSourceFile: botocore.discovery
    functionUses: 2
    functionsReached:
    - weakref.proxy
    - botocore.discovery.EndpointDiscoveryModel.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - response
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 117
    functionName: botocore.discovery.EndpointDiscoveryManager._parse_endpoints
    functionSourceFile: botocore.discovery
    functionUses: 3
    functionsReached:
    - endpoint.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: endpoint.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 125
    functionName: botocore.discovery.EndpointDiscoveryManager._cache_item
    functionSourceFile: botocore.discovery
    functionUses: 6
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.sorted
    - <builtin>.tuple
    - value.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 131
    functionName: botocore.discovery.EndpointDiscoveryManager._create_cache_key
    functionSourceFile: botocore.discovery
    functionUses: 5
    functionsReached:
    - kwargs.pop
    - <builtin>.tuple
    - botocore.discovery.EndpointDiscoveryManager._cache_item
    - <builtin>.sorted
    - kwargs.get
    - <builtin>.isinstance
    - kwargs.items
    - value.items
    - botocore.discovery.EndpointDiscoveryModel.discovery_operation_kwargs
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - operation
    - params
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 135
    functionName: botocore.discovery.EndpointDiscoveryManager.gather_identifiers
    functionSourceFile: botocore.discovery
    functionUses: 1
    functionsReached:
    - botocore.discovery.EndpointDiscoveryModel.gather_identifiers
    - shape.members.items
    - member_shape.metadata.get
    - botocore.discovery.EndpointDiscoveryModel._gather_ids
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 138
    functionName: botocore.discovery.EndpointDiscoveryManager.delete_endpoints
    functionSourceFile: botocore.discovery
    functionUses: 1
    functionsReached:
    - kwargs.pop
    - <builtin>.tuple
    - botocore.discovery.EndpointDiscoveryManager._cache_item
    - <builtin>.sorted
    - <builtin>.isinstance
    - kwargs.get
    - kwargs.items
    - value.items
    - botocore.discovery.EndpointDiscoveryModel.discovery_operation_kwargs
    - botocore.discovery.EndpointDiscoveryManager._create_cache_key
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 143
    functionName: botocore.discovery.EndpointDiscoveryManager._describe_endpoints
    functionSourceFile: botocore.discovery
    functionUses: 3
    functionsReached:
    - <builtin>.getattr
    - logger.debug
    - kwargs.pop
    - kwargs.get
    - kwargs.items
    - botocore.discovery.EndpointDiscoveryModel.discovery_operation_kwargs
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 152
    functionName: botocore.discovery.EndpointDiscoveryManager._get_current_endpoints
    functionSourceFile: botocore.discovery
    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:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 158
    functionName: botocore.discovery.EndpointDiscoveryManager._refresh_current_endpoints
    functionSourceFile: botocore.discovery
    functionUses: 2
    functionsReached:
    - <builtin>.getattr
    - logger.debug
    - botocore.discovery.EndpointDiscoveryManager._describe_endpoints
    - kwargs.pop
    - <builtin>.tuple
    - botocore.discovery.EndpointDiscoveryManager._cache_item
    - <builtin>.sorted
    - <builtin>.isinstance
    - kwargs.get
    - kwargs.items
    - value.items
    - botocore.discovery.EndpointDiscoveryModel.discovery_operation_kwargs
    - endpoint.get
    - botocore.discovery.EndpointDiscoveryManager._create_cache_key
    - botocore.discovery.EndpointDiscoveryManager._parse_endpoints
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cache_key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 170
    functionName: botocore.discovery.EndpointDiscoveryManager._recently_failed
    functionSourceFile: botocore.discovery
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - endpoints
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 178
    functionName: botocore.discovery.EndpointDiscoveryManager._select_endpoint
    functionSourceFile: botocore.discovery
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 2
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 181
    functionName: botocore.discovery.EndpointDiscoveryManager.describe_endpoint
    functionSourceFile: botocore.discovery
    functionUses: 1
    functionsReached:
    - operation_model.endpoint_discovery.get
    - kwargs.pop
    - <builtin>.sorted
    - botocore.discovery.EndpointDiscoveryModel.discovery_required_for
    - botocore.discovery.EndpointDiscoveryManager._select_endpoint
    - value.items
    - botocore.discovery.EndpointDiscoveryManager._recently_failed
    - botocore.discovery.EndpointDiscoveryManager._refresh_current_endpoints
    - logger.debug
    - botocore.discovery.EndpointDiscoveryManager._describe_endpoints
    - <builtin>.isinstance
    - kwargs.get
    - <builtin>.getattr
    - botocore.discovery.EndpointDiscoveryManager._cache_item
    - kwargs.items
    - botocore.discovery.EndpointDiscoveryManager._parse_endpoints
    - botocore.discovery.EndpointDiscoveryManager._get_current_endpoints
    - <builtin>.tuple
    - botocore.discovery.EndpointDiscoveryModel.discovery_operation_kwargs
    - endpoint.get
    - botocore.discovery.EndpointDiscoveryManager._create_cache_key
    linkageType: pythonLinkage
    raised:
    - EndpointDiscoveryRefreshFailed
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - manager
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 226
    functionName: botocore.discovery.EndpointDiscoveryHandler.__init__
    functionSourceFile: botocore.discovery
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - events
    - service_id
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 229
    functionName: botocore.discovery.EndpointDiscoveryHandler.register
    functionSourceFile: botocore.discovery
    functionUses: 2
    functionsReached:
    - events.register
    - events.register_first
    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: events.register
    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: events.register_first
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - params
    - model
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 238
    functionName: botocore.discovery.EndpointDiscoveryHandler.gather_identifiers
    functionSourceFile: botocore.discovery
    functionUses: 0
    functionsReached:
    - shape.members.items
    - botocore.discovery.EndpointDiscoveryManager.gather_identifiers
    - member_shape.metadata.get
    - botocore.discovery.EndpointDiscoveryModel._gather_ids
    - botocore.discovery.EndpointDiscoveryModel.gather_identifiers
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - request
    - operation_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 246
    functionName: botocore.discovery.EndpointDiscoveryHandler.discover_endpoint
    functionSourceFile: botocore.discovery
    functionUses: 0
    functionsReached:
    - endpoint.startswith
    - operation_model.endpoint_discovery.get
    - kwargs.pop
    - <builtin>.sorted
    - botocore.discovery.EndpointDiscoveryModel.discovery_required_for
    - botocore.discovery.EndpointDiscoveryManager._select_endpoint
    - value.items
    - botocore.discovery.EndpointDiscoveryManager._recently_failed
    - botocore.discovery.EndpointDiscoveryManager._refresh_current_endpoints
    - logger.debug
    - botocore.discovery.EndpointDiscoveryManager._describe_endpoints
    - kwargs.get
    - <builtin>.isinstance
    - <builtin>.getattr
    - botocore.discovery.EndpointDiscoveryManager.describe_endpoint
    - botocore.discovery.EndpointDiscoveryManager._cache_item
    - kwargs.items
    - botocore.discovery.EndpointDiscoveryManager._parse_endpoints
    - request.context.get
    - botocore.discovery.EndpointDiscoveryManager._get_current_endpoints
    - <builtin>.tuple
    - botocore.discovery.EndpointDiscoveryModel.discovery_operation_kwargs
    - endpoint.get
    - botocore.discovery.EndpointDiscoveryManager._create_cache_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: endpoint.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - request_dict
    - response
    - operation
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 261
    functionName: botocore.discovery.EndpointDiscoveryHandler.handle_retries
    functionSourceFile: botocore.discovery
    functionUses: 0
    functionsReached:
    - response.get
    - botocore.discovery.EndpointDiscoveryManager.delete_endpoints
    - kwargs.pop
    - <builtin>.tuple
    - request_dict.get
    - botocore.discovery.EndpointDiscoveryManager._cache_item
    - <builtin>.sorted
    - <builtin>.isinstance
    - kwargs.get
    - kwargs.items
    - value.items
    - botocore.discovery.EndpointDiscoveryModel.discovery_operation_kwargs
    - botocore.discovery.EndpointDiscoveryManager._create_cache_key
    - context.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: 1
    functionLinenumber: -1
    functionName: botocore.retryhandler
    functionSourceFile: botocore.retryhandler
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - base
    - growth_factor
    - attempts
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 43
    functionName: botocore.retryhandler.delay_exponential
    functionSourceFile: botocore.retryhandler
    functionUses: 0
    functionsReached:
    - random.random
    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: random.random
    functionSourceFile: random
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - base
    - growth_factor
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 66
    functionName: botocore.retryhandler.create_exponential_delay_function
    functionSourceFile: botocore.retryhandler
    functionUses: 2
    functionsReached:
    - functools.partial
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830858b80>
    argNames:
    - config
    - operation_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 78
    functionName: botocore.retryhandler.create_retry_handler
    functionSourceFile: botocore.retryhandler
    functionUses: 0
    functionsReached:
    - botocore.retryhandler._create_single_response_checker
    - checkers.append
    - botocore.retryhandler.MaxAttemptsDecorator.__init__
    - botocore.retryhandler.create_checker_from_retry_config
    - botocore.retryhandler.CRC32Checker.__init__
    - botocore.retryhandler._create_single_checker
    - botocore.retryhandler._extract_retryable_exception
    - botocore.retryhandler.RetryHandler.__init__
    - botocore.retryhandler.HTTPStatusCodeChecker.__init__
    - config.get
    - botocore.retryhandler.ServiceErrorCodeChecker.__init__
    - botocore.retryhandler.create_exponential_delay_function
    - functools.partial
    - <builtin>.tuple
    - exceptions.extend
    - applies_when.get
    - <builtin>.len
    - botocore.retryhandler.create_retry_action_from_config
    - botocore.retryhandler.MultiChecker.__init__
    - retryable_exceptions.extend
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f98309901f0>
    argNames:
    - config
    - operation_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 101
    functionName: botocore.retryhandler.create_checker_from_retry_config
    functionSourceFile: botocore.retryhandler
    functionUses: 1
    functionsReached:
    - botocore.retryhandler._create_single_checker
    - botocore.retryhandler._extract_retryable_exception
    - botocore.retryhandler._create_single_response_checker
    - config.get
    - botocore.retryhandler.ServiceErrorCodeChecker.__init__
    - <builtin>.tuple
    - botocore.retryhandler.HTTPStatusCodeChecker.__init__
    - checkers.append
    - botocore.retryhandler.MaxAttemptsDecorator.__init__
    - exceptions.extend
    - applies_when.get
    - botocore.retryhandler.CRC32Checker.__init__
    - <builtin>.len
    - botocore.retryhandler.MultiChecker.__init__
    - retryable_exceptions.extend
    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 0x7f9830858c40>
    argNames:
    - config
    - operation_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 88
    functionName: botocore.retryhandler.create_retry_action_from_config
    functionSourceFile: botocore.retryhandler
    functionUses: 1
    functionsReached:
    - botocore.retryhandler.create_exponential_delay_function
    - functools.partial
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - checker
    - action
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 187
    functionName: botocore.retryhandler.RetryHandler.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - config
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 135
    functionName: botocore.retryhandler._create_single_checker
    functionSourceFile: botocore.retryhandler
    functionUses: 2
    functionsReached:
    - botocore.retryhandler.ServiceErrorCodeChecker.__init__
    - botocore.retryhandler.HTTPStatusCodeChecker.__init__
    - botocore.retryhandler._create_single_response_checker
    - botocore.retryhandler.CRC32Checker.__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: checkers.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - config
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 162
    functionName: botocore.retryhandler._extract_retryable_exception
    functionSourceFile: botocore.retryhandler
    functionUses: 2
    functionsReached:
    - exceptions.extend
    - applies_when.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: retryable_exceptions.extend
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    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 0x7f9830879e50>
    argNames:
    - self
    - checker
    - max_attempts
    - retryable_exceptions
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 271
    functionName: botocore.retryhandler.MaxAttemptsDecorator.__init__
    functionSourceFile: ''
    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
    - checkers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 358
    functionName: botocore.retryhandler.MultiChecker.__init__
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - response
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 144
    functionName: botocore.retryhandler._create_single_response_checker
    functionSourceFile: botocore.retryhandler
    functionUses: 3
    functionsReached:
    - botocore.retryhandler.ServiceErrorCodeChecker.__init__
    - botocore.retryhandler.HTTPStatusCodeChecker.__init__
    - botocore.retryhandler.CRC32Checker.__init__
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - status_code
    - error_code
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 339
    functionName: botocore.retryhandler.ServiceErrorCodeChecker.__init__
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - status_code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 324
    functionName: botocore.retryhandler.HTTPStatusCodeChecker.__init__
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - header
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 372
    functionName: botocore.retryhandler.CRC32Checker.__init__
    functionSourceFile: ''
    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: applies_when.get
    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: exceptions.extend
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - attempts
    - response
    - caught_exception
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 191
    functionName: botocore.retryhandler.RetryHandler.__call__
    functionSourceFile: botocore.retryhandler
    functionUses: 0
    functionsReached:
    - checker_kwargs.update
    - <builtin>.isinstance
    - logger.debug
    - botocore.retryhandler.MaxAttemptsDecorator.__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: checker_kwargs.update
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - attempt_number
    - response
    - caught_exception
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 222
    functionName: botocore.retryhandler.BaseChecker.__call__
    functionSourceFile: botocore.retryhandler
    functionUses: 0
    functionsReached:
    - botocore.retryhandler.ServiceErrorCodeChecker._check_response
    - logger.debug
    - botocore.retryhandler.CRC32Checker._check_response
    - http_response.headers.get
    - botocore.retryhandler.HTTPStatusCodeChecker._check_response
    - <builtin>.int
    - botocore.retryhandler.ExceptionRaiser._check_caught_exception
    - botocore.retryhandler.BaseChecker._check_caught_exception
    - binascii.crc32
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - attempt_number
    - response
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 343
    functionName: botocore.retryhandler.ServiceErrorCodeChecker._check_response
    functionSourceFile: botocore.retryhandler
    functionUses: 1
    functionsReached:
    - logger.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - attempt_number
    - response
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 376
    functionName: botocore.retryhandler.CRC32Checker._check_response
    functionSourceFile: botocore.retryhandler
    functionUses: 1
    functionsReached:
    - logger.debug
    - <builtin>.int
    - http_response.headers.get
    - binascii.crc32
    linkageType: pythonLinkage
    raised:
    - ChecksumError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - attempt_number
    - response
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 327
    functionName: botocore.retryhandler.HTTPStatusCodeChecker._check_response
    functionSourceFile: botocore.retryhandler
    functionUses: 1
    functionsReached:
    - logger.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - attempt_number
    - caught_exception
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 256
    functionName: botocore.retryhandler.BaseChecker._check_caught_exception
    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
    - attempt_number
    - caught_exception
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 408
    functionName: botocore.retryhandler.ExceptionRaiser._check_caught_exception
    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
    - attempt_number
    - response
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 253
    functionName: botocore.retryhandler.BaseChecker._check_response
    functionSourceFile: botocore.retryhandler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - attempt_number
    - response
    - caught_exception
    - retries_context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 276
    functionName: botocore.retryhandler.MaxAttemptsDecorator.__call__
    functionSourceFile: botocore.retryhandler
    functionUses: 0
    functionsReached:
    - logger.debug
    - <builtin>.max
    - botocore.retryhandler.MaxAttemptsDecorator._should_retry
    - retries_context.get
    - botocore.retryhandler.MultiChecker.__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: <builtin>.max
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - attempt_number
    - response
    - caught_exception
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 304
    functionName: botocore.retryhandler.MaxAttemptsDecorator._should_retry
    functionSourceFile: botocore.retryhandler
    functionUses: 1
    functionsReached:
    - logger.debug
    - botocore.retryhandler.MultiChecker.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - attempt_number
    - response
    - caught_exception
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 361
    functionName: botocore.retryhandler.MultiChecker.__call__
    functionSourceFile: botocore.retryhandler
    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: http_response.headers.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: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: botocore.session
    functionSourceFile: botocore.session
    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: botocore.session.Session
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - botocore.context.with_current_context
    - botocore.context.with_current_context.decorator
    - copy.copy
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830ac4490>
    - <ast.Constant object at 0x7f9830ac46d0>
    - <ast.Constant object at 0x7f9830ac4700>
    - <ast.Constant object at 0x7f9830ac43a0>
    argNames:
    - self
    - session_vars
    - event_hooks
    - include_builtin_handlers
    - profile
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 99
    functionName: botocore.session.Session.__init__
    functionSourceFile: botocore.session
    functionUses: 1
    functionsReached:
    - botocore.useragent._get_crt_version
    - botocore.session.Session._register_endpoint_resolver
    - botocore.session.Session._register_config_store
    - <builtin>.callable
    - botocore.invoke_initializers
    - botocore.useragent.UserAgentString.__init__
    - logger.debug
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.hooks._PrefixTrie.__init__
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.session.Session._register_monitor
    - botocore.session.ComponentLocator.register_component
    - os.environ.get
    - botocore.session.Session._register_credential_provider
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.hooks.HierarchicalEmitter._register_last
    - botocore.hooks.HierarchicalEmitter._register
    - old_part.split
    - botocore.session.SessionVarDict.__init__
    - platform.release
    - botocore.hooks.EventAliaser._replace_subsection
    - botocore.hooks.BaseEventHooks.register_last
    - botocore.parsers.ResponseParserFactory.__init__
    - env_var_providers.append
    - botocore.session.Session._register_smart_defaults_factory
    - botocore.session.Session._register_user_agent_creator
    - copy.copy
    - botocore.configprovider.ConfigValueStore.__init__
    - providers.extend
    - botocore.session.Session.register
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - platform.system
    - botocore.session.ComponentLocator.__init__
    - botocore.session.Session._register_exceptions_factory
    - botocore.useragent.UserAgentString.from_environment
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.hooks.HierarchicalEmitter.__init__
    - botocore.session.Session._register_response_parser_factory
    - inspect.getfullargspec
    - botocore.errorfactory.ClientExceptionsFactory.__init__
    - botocore.hooks.EventAliaser.register_first
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.hooks.EventAliaser.register
    - botocore.hooks.HierarchicalEmitter._register_section
    - event_name.split
    - botocore.session.Session._register_token_provider
    - event_parts.index
    - botocore.hooks.EventAliaser.register_last
    - botocore.hooks.EventAliaser._alias_event_name
    - <builtin>.isinstance
    - config_variables.items
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.hooks.BaseEventHooks._verify_is_callable
    - botocore.session.Session._register_default_config_resolver
    - botocore.hooks.BaseEventHooks.register
    - <builtin>.len
    - botocore.hooks.BaseEventHooks._verify_accept_kwargs
    - scoped_config_providers.append
    - botocore.session.Session._register_event_emitter
    - botocore.hooks._PrefixTrie.append_item
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.hooks.HierarchicalEmitter._register_first
    - botocore.session.ComponentLocator.lazy_register_component
    - key.split
    - providers.append
    - botocore.compat.accepts_kwargs
    - botocore.configprovider.ChainProvider.__init__
    - collections.namedtuple.__init__
    - botocore.session.Session._register_components
    - collections.abc.MutableMapping.update
    - platform.python_version
    - botocore.hooks.BaseEventHooks._verify_and_register
    - <builtin>.range
    - platform.python_implementation
    - mapping.items
    - platform.machine
    - botocore.session.Session._register_builtin_handlers
    - botocore.session.Session._register_data_loader
    - botocore.hooks.EventAliaser.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - events
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 249
    functionName: botocore.session.Session._register_builtin_handlers
    functionSourceFile: botocore.session
    functionUses: 2
    functionsReached:
    - botocore.hooks._PrefixTrie.append_item
    - botocore.hooks.EventAliaser.register_first
    - <builtin>.callable
    - botocore.hooks.EventAliaser.register
    - botocore.hooks.EventAliaser._replace_subsection
    - botocore.hooks.BaseEventHooks.register_last
    - botocore.hooks.HierarchicalEmitter._register_section
    - event_name.split
    - botocore.hooks.HierarchicalEmitter._register_first
    - key.split
    - logger.debug
    - event_parts.index
    - botocore.session.Session.register
    - botocore.hooks.EventAliaser.register_last
    - botocore.hooks.EventAliaser._alias_event_name
    - botocore.compat.accepts_kwargs
    - collections.namedtuple.__init__
    - inspect.getfullargspec
    - botocore.hooks.BaseEventHooks._verify_and_register
    - <builtin>.range
    - botocore.hooks.BaseEventHooks._verify_is_callable
    - botocore.hooks.HierarchicalEmitter._register_last
    - botocore.hooks.HierarchicalEmitter._register
    - botocore.hooks.BaseEventHooks.register
    - <builtin>.len
    - botocore.hooks.BaseEventHooks._verify_accept_kwargs
    - old_part.split
    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: 1194
    functionName: botocore.session.ComponentLocator.__init__
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 12
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 163
    functionName: botocore.session.Session._register_components
    functionSourceFile: botocore.session
    functionUses: 2
    functionsReached:
    - botocore.session.Session._register_event_emitter
    - botocore.errorfactory.ClientExceptionsFactory.__init__
    - botocore.useragent._get_crt_version
    - platform.release
    - botocore.session.Session._register_endpoint_resolver
    - botocore.session.Session._register_config_store
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.parsers.ResponseParserFactory.__init__
    - botocore.useragent.UserAgentString.__init__
    - env_var_providers.append
    - botocore.session.Session._register_token_provider
    - botocore.session.ComponentLocator.lazy_register_component
    - botocore.session.Session._register_user_agent_creator
    - botocore.session.Session._register_smart_defaults_factory
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - providers.append
    - platform.system
    - <builtin>.isinstance
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - config_variables.items
    - botocore.configprovider.ChainProvider.__init__
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.session.Session._register_exceptions_factory
    - botocore.useragent.UserAgentString.from_environment
    - botocore.configprovider.SectionConfigProvider.__init__
    - platform.python_version
    - botocore.session.ComponentLocator.register_component
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.session.Session._register_monitor
    - botocore.session.Session._register_response_parser_factory
    - os.environ.get
    - botocore.session.Session._register_credential_provider
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.session.Session._register_default_config_resolver
    - platform.python_implementation
    - mapping.items
    - platform.machine
    - botocore.session.Session._register_data_loader
    - scoped_config_providers.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - session
    - session_vars
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1235
    functionName: botocore.session.SessionVarDict.__init__
    functionSourceFile: botocore.session
    functionUses: 2
    functionsReached:
    - copy.copy
    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: 1
    functionLinenumber: 188
    functionName: botocore.session.Session._register_credential_provider
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - botocore.session.ComponentLocator.lazy_register_component
    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: 1
    functionLinenumber: 180
    functionName: botocore.session.Session._register_token_provider
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - botocore.session.ComponentLocator.lazy_register_component
    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: 1
    functionLinenumber: 198
    functionName: botocore.session.Session._register_data_loader
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - botocore.session.ComponentLocator.lazy_register_component
    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: 1
    functionLinenumber: 204
    functionName: botocore.session.Session._register_endpoint_resolver
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - botocore.session.ComponentLocator.lazy_register_component
    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: 1
    functionLinenumber: 177
    functionName: botocore.session.Session._register_event_emitter
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - botocore.session.ComponentLocator.register_component
    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: 1
    functionLinenumber: 239
    functionName: botocore.session.Session._register_response_parser_factory
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - botocore.session.ComponentLocator.register_component
    - botocore.parsers.ResponseParserFactory.__init__
    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: 1
    functionLinenumber: 244
    functionName: botocore.session.Session._register_exceptions_factory
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - botocore.session.ComponentLocator.register_component
    - botocore.errorfactory.ClientExceptionsFactory.__init__
    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: 5
    functionLinenumber: 261
    functionName: botocore.session.Session._register_config_store
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.configprovider._create_config_chain_mapping
    - env_var_providers.append
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - providers.append
    - <builtin>.isinstance
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - config_variables.items
    - botocore.configprovider.ChainProvider.__init__
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.session.ComponentLocator.register_component
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - mapping.items
    - scoped_config_providers.append
    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: 1
    functionLinenumber: 269
    functionName: botocore.session.Session._register_monitor
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - botocore.session.ComponentLocator.lazy_register_component
    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: 1
    functionLinenumber: 215
    functionName: botocore.session.Session._register_default_config_resolver
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - botocore.session.ComponentLocator.lazy_register_component
    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: 1
    functionLinenumber: 225
    functionName: botocore.session.Session._register_smart_defaults_factory
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - botocore.session.ComponentLocator.lazy_register_component
    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: 2
    functionLinenumber: 274
    functionName: botocore.session.Session._register_user_agent_creator
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - os.environ.get
    - botocore.useragent._get_crt_version
    - platform.system
    - platform.python_implementation
    - botocore.useragent.UserAgentString.from_environment
    - platform.machine
    - platform.python_version
    - botocore.session.ComponentLocator.register_component
    - botocore.useragent.UserAgentString.__init__
    - platform.release
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - component
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1219
    functionName: botocore.session.ComponentLocator.register_component
    functionSourceFile: ''
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - no_arg_factory
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1226
    functionName: botocore.session.ComponentLocator.lazy_register_component
    functionSourceFile: ''
    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: 3
    functionLinenumber: 185
    functionName: botocore.session.Session._create_token_resolver
    functionSourceFile: botocore.session
    functionUses: 43
    functionsReached:
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.utils.JSONFileCache.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.tokens.create_token_resolver
    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: 9
    functionLinenumber: 193
    functionName: botocore.session.Session._create_credential_resolver
    functionSourceFile: botocore.session
    functionUses: 42
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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: 13
    functionLinenumber: -1
    functionName: botocore.session.Session._register_data_loader.<lambda1>
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - search_path_string.split
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.loaders.Loader.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - paths.append
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - botocore.loaders.create_loader
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f982f8953d0>
    argNames:
    - search_path_string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 201
    functionName: botocore.loaders.create_loader
    functionSourceFile: botocore.loaders
    functionUses: 1
    functionsReached:
    - search_path_string.split
    - paths.append
    - os.path.expandvars
    - os.path.expanduser
    - botocore.loaders.Loader.__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: 12
    functionLinenumber: 205
    functionName: botocore.session.Session._register_endpoint_resolver.create_default_resolver
    functionSourceFile: botocore.session
    functionUses: 42
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 814
    functionName: botocore.session.Session.get_component
    functionSourceFile: botocore.session
    functionUses: 42
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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: loader.load_data_with_path
    functionSourceFile: <builtin>
    functionUses: 43
    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: loader.is_builtin_path
    functionSourceFile: <builtin>
    functionUses: 43
    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: 12
    functionLinenumber: 216
    functionName: botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    functionSourceFile: botocore.session
    functionUses: 42
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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: loader.load_data
    functionSourceFile: <builtin>
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - default_config_data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 308
    functionName: botocore.configprovider.DefaultConfigResolver.__init__
    functionSourceFile: ''
    functionUses: 43
    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: 12
    functionLinenumber: 226
    functionName: botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    functionSourceFile: botocore.session
    functionUses: 42
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 828
    functionName: botocore.session.Session._get_internal_component
    functionSourceFile: botocore.session
    functionUses: 42
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - default_config_resolver
    - imds_region_provider
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 585
    functionName: botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    functionSourceFile: ''
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830afbd60>
    - <ast.Constant object at 0x7f9830afb970>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 723
    functionName: botocore.session.Session.register
    functionSourceFile: botocore.session
    functionUses: 3
    functionsReached:
    - botocore.hooks._PrefixTrie.append_item
    - <builtin>.callable
    - botocore.hooks.EventAliaser.register
    - botocore.hooks.EventAliaser._replace_subsection
    - botocore.hooks.HierarchicalEmitter._register_section
    - event_name.split
    - botocore.hooks.HierarchicalEmitter._register_first
    - key.split
    - logger.debug
    - event_parts.index
    - botocore.hooks.EventAliaser._alias_event_name
    - botocore.compat.accepts_kwargs
    - collections.namedtuple.__init__
    - inspect.getfullargspec
    - botocore.hooks.BaseEventHooks._verify_and_register
    - <builtin>.range
    - botocore.hooks.BaseEventHooks._verify_is_callable
    - botocore.hooks.HierarchicalEmitter._register_last
    - botocore.hooks.HierarchicalEmitter._register
    - botocore.hooks.BaseEventHooks.register
    - <builtin>.len
    - botocore.hooks.BaseEventHooks._verify_accept_kwargs
    - old_part.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - session
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 274
    functionName: botocore.configprovider.create_botocore_default_config_mapping
    functionSourceFile: botocore.configprovider
    functionUses: 48
    functionsReached:
    - botocore.configprovider.ChainProvider.__init__
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - providers.extend
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - providers.append
    - <builtin>.isinstance
    - botocore.configprovider._create_config_chain_mapping
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.configprovider.InstanceVarProvider.__init__
    - env_var_providers.append
    - scoped_config_providers.append
    - config_variables.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f9830a4a7c0>
    argNames:
    - self
    - mapping
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 460
    functionName: botocore.configprovider.ConfigValueStore.__init__
    functionSourceFile: botocore.configprovider
    functionUses: 50
    functionsReached:
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - mapping.items
    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: 13
    functionLinenumber: 278
    functionName: botocore.session.Session._create_csm_monitor
    functionSourceFile: botocore.session
    functionUses: 42
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.monitoring.CSMSerializer.__init__
    - botocore.credentials.EnvProvider.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Attribute object at 0x7f9830ce6100>
    argNames:
    - self
    - time
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 69
    functionName: botocore.monitoring.MonitorEventAdapter.__init__
    functionSourceFile: ''
    functionUses: 43
    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: socket.socket
    functionSourceFile: socket
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - csm_client_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 356
    functionName: botocore.monitoring.CSMSerializer.__init__
    functionSourceFile: botocore.monitoring
    functionUses: 43
    functionsReached:
    - botocore.monitoring.CSMSerializer._validate_client_id
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - socket
    - host
    - port
    - serializer
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 549
    functionName: botocore.monitoring.SocketPublisher.__init__
    functionSourceFile: ''
    functionUses: 43
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - adapter
    - publisher
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 33
    functionName: botocore.monitoring.Monitor.__init__
    functionSourceFile: ''
    functionUses: 43
    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: 12
    functionLinenumber: 297
    functionName: botocore.session.Session._get_crt_version
    functionSourceFile: botocore.session
    functionUses: 8
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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: 302
    functionName: botocore.session.Session.available_profiles
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - botocore.session.Session._build_profile_map
    - <builtin>.list
    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: 0
    functionLinenumber: 305
    functionName: botocore.session.Session._build_profile_map
    functionSourceFile: ''
    functionUses: 6
    functionsReached: []
    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: 13
    functionLinenumber: 314
    functionName: botocore.session.Session.profile
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - logical_name
    - methods
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 329
    functionName: botocore.session.Session._get_config_variable_with_custom_methods
    functionSourceFile: botocore.session
    functionUses: 43
    functionsReached:
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - providers.append
    - <builtin>.isinstance
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - config_variables.items
    - botocore.configprovider.ChainProvider.__init__
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - collections.abc.MutableMapping.items
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.configprovider.InstanceVarProvider.__init__
    - provider.provide
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - mapping.items
    - scoped_config_providers.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - logical_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 489
    functionName: botocore.configprovider.ConfigValueStore.get_config_variable
    functionSourceFile: botocore.configprovider
    functionUses: 44
    functionsReached:
    - provider.provide
    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 0x7f9830b06fa0>
    argNames:
    - self
    - session
    - methods
    - environ
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1290
    functionName: botocore.session.SubsetChainConfigFactory.__init__
    functionSourceFile: botocore.session
    functionUses: 44
    functionsReached:
    - botocore.configprovider.ConfigChainFactory.__init__
    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 0x7f9830b069d0>
    - <ast.Constant object at 0x7f9830b06730>
    - <ast.Constant object at 0x7f9830b064c0>
    - <ast.Constant object at 0x7f9830b06160>
    - <ast.Constant object at 0x7f9830b06910>
    argNames:
    - self
    - instance_name
    - env_var_names
    - config_property_name
    - default
    - conversion_func
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1294
    functionName: botocore.session.SubsetChainConfigFactory.create_config_chain
    functionSourceFile: botocore.session
    functionUses: 44
    functionsReached:
    - botocore.configprovider.ChainProvider.__init__
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - providers.extend
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - providers.append
    - <builtin>.isinstance
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.InstanceVarProvider.__init__
    - env_var_providers.append
    - scoped_config_providers.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - logical_name
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 357
    functionName: botocore.session.Session.set_config_variable
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - logger.debug
    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: 388
    functionName: botocore.session.Session.instance_variables
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - copy.copy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 391
    functionName: botocore.session.Session.get_scoped_config
    functionSourceFile: botocore.session
    functionUses: 4
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - botocore.session.Session._build_profile_map
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - profile_map.get
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised:
    - ProfileNotFound
    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: profile_map.get
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    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: 13
    functionLinenumber: 429
    functionName: botocore.session.Session.full_config
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - key.startswith
    - cp.options
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - botocore.utils.is_valid_uri
    - session.user_agent
    - endpoint_mode.lower
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - os.path.isfile
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - services.update
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - shlex.split
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.configloader.raw_config_parse
    - botocore.monitoring.MonitorEventAdapter.__init__
    - cp.sections
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - config_value.startswith
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - parsed_config.items
    - collections.abc.MutableMapping.items
    - loader.load_data
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - cp.get
    - profiles.update
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - key.strip
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - botocore.configloader.build_profile_map
    - sso_sessions.update
    - <builtin>.isinstance
    - line.split
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - botocore.credentials.InstanceMetadataProvider.__init__
    - botocore.configloader._parse_nested
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.monitoring.CSMSerializer.__init__
    - botocore.credentials.EnvProvider.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - copy.deepcopy
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - botocore.configloader.load_config
    - config_value.splitlines
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - value.strip
    - scoped_config_providers.append
    - line.strip
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - botocore.configloader._parse_section
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - cp.read
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - configparser.RawConfigParser
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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: 464
    functionName: botocore.session.Session.get_default_client_config
    functionSourceFile: botocore.session
    functionUses: 1
    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_config
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 474
    functionName: botocore.session.Session.set_default_client_config
    functionSourceFile: botocore.session
    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 0x7f9830a63130>
    - <ast.Constant object at 0x7f9830a63ee0>
    argNames:
    - self
    - access_key
    - secret_key
    - token
    - account_id
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 484
    functionName: botocore.session.Session.set_credentials
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - botocore.credentials.Credentials
    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: botocore.credentials.Credentials
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 510
    functionName: botocore.session.Session.get_credentials
    functionSourceFile: botocore.session
    functionUses: 1
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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: 10
    functionLinenumber: 1198
    functionName: botocore.session.ComponentLocator.get_component
    functionSourceFile: botocore.session
    functionUses: 42
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 525
    functionName: botocore.session.Session.get_auth_token
    functionSourceFile: botocore.session
    functionUses: 1
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - provider.load_token
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - kwargs.get
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data_path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 582
    functionName: botocore.session.Session.get_data
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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 0x7f9830f01910>
    argNames:
    - self
    - service_name
    - api_version
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 591
    functionName: botocore.session.Session.get_service_model
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - responses.append
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - collections.deque.extendleft
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.hooks._PrefixTrie._get_items
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.session.ComponentLocator.get_component
    - <builtin>.reversed
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - EVENT_ALIASES.get
    - service_description.get
    - env.get
    - botocore.hooks.EventAliaser.emit
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - collections.deque
    - botocore.credentials.ProcessProvider.__init__
    - old_part.split
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - botocore.hooks.EventAliaser._replace_subsection
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - stack.append
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.session.Session.get_service_data
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.hooks.HierarchicalEmitter.emit
    - event_name.split
    - botocore.session.Session._get_config_variable_with_custom_methods
    - event_parts.index
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - botocore.hooks.EventAliaser._alias_event_name
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - children.get
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - botocore.hooks._PrefixTrie.prefix_search
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.model.ServiceModel.__init__
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.hooks.HierarchicalEmitter._emit
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - key.split
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - stack.pop
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.model.ShapeResolver.__init__
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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 0x7f9830a53190>
    argNames:
    - self
    - service_name
    - api_version
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 622
    functionName: botocore.session.Session.get_service_data
    functionSourceFile: botocore.session
    functionUses: 2
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - responses.append
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - collections.deque.extendleft
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.hooks._PrefixTrie._get_items
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.session.ComponentLocator.get_component
    - <builtin>.reversed
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - EVENT_ALIASES.get
    - env.get
    - botocore.hooks.EventAliaser.emit
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - collections.deque
    - botocore.credentials.ProcessProvider.__init__
    - old_part.split
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - botocore.hooks.EventAliaser._replace_subsection
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - stack.append
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.hooks.HierarchicalEmitter.emit
    - event_name.split
    - botocore.session.Session._get_config_variable_with_custom_methods
    - event_parts.index
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - botocore.hooks.EventAliaser._alias_event_name
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - children.get
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - botocore.hooks._PrefixTrie.prefix_search
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.hooks.HierarchicalEmitter._emit
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - key.split
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - stack.pop
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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 0x7f9830ca5a90>
    argNames:
    - self
    - service_name
    - api_version
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 608
    functionName: botocore.session.Session.get_waiter_model
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - warnings.warn
    - waiter_config.get
    - botocore.session.Session._get_internal_component
    - <builtin>.sorted
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - botocore.waiter.WaiterModel._verify_supported_version
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - <builtin>.list
    - loader.load_service_model
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.waiter.WaiterModel.__init__
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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 0x7f9830ca59a0>
    argNames:
    - self
    - service_name
    - api_version
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 615
    functionName: botocore.session.Session.get_paginator_model
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - loader.load_service_model
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.paginate.PaginatorModel.__init__
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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: EVENT_ALIASES.get
    functionSourceFile: <builtin>
    functionUses: 3
    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: 12
    functionLinenumber: 639
    functionName: botocore.session.Session.get_available_services
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f98307f1730>
    argNames:
    - self
    - logger_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 647
    functionName: botocore.session.Session.set_debug_logger
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - botocore.session.Session.set_stream_logger
    - logging.getLogger
    - ch.setFormatter
    - logging.StreamHandler
    - logging.Formatter
    - log.addHandler
    - log.setLevel
    - ch.setLevel
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f98307f1c40>
    - <ast.Constant object at 0x7f98307f1fa0>
    argNames:
    - self
    - logger_name
    - log_level
    - stream
    - format_string
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 654
    functionName: botocore.session.Session.set_stream_logger
    functionSourceFile: botocore.session
    functionUses: 1
    functionsReached:
    - logging.getLogger
    - ch.setFormatter
    - logging.StreamHandler
    - logging.Formatter
    - log.addHandler
    - log.setLevel
    - ch.setLevel
    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.setLevel
    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: logging.StreamHandler
    functionSourceFile: logging
    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: ch.setLevel
    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: logging.Formatter
    functionSourceFile: logging
    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: ch.setFormatter
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830dfccd0>
    argNames:
    - self
    - log_level
    - path
    - logger_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 695
    functionName: botocore.session.Session.set_file_logger
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - logging.getLogger
    - logging.FileHandler
    - ch.setFormatter
    - logging.Formatter
    - log.addHandler
    - log.setLevel
    - ch.setLevel
    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.FileHandler
    functionSourceFile: logging
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830afb880>
    - <ast.Constant object at 0x7f9830afba00>
    - <ast.Constant object at 0x7f9830afbdf0>
    argNames:
    - self
    - event_name
    - handler
    - unique_id
    - unique_id_uses_count
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 765
    functionName: botocore.session.Session.unregister
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - key.split
    - botocore.hooks._PrefixTrie._remove_item
    - node_list.last.remove
    - logger.debug
    - event_parts.index
    - event_name.split
    - node_list.middle.remove
    - <builtin>.range
    - node_list.first.remove
    - botocore.hooks.EventAliaser._alias_event_name
    - botocore.hooks.EventAliaser._replace_subsection
    - botocore.hooks.HierarchicalEmitter.unregister
    - <builtin>.len
    - botocore.hooks._PrefixTrie.remove_item
    - botocore.hooks.EventAliaser.unregister
    - old_part.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 807
    functionName: botocore.session.Session.emit
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - botocore.hooks.EventAliaser._replace_subsection
    - botocore.hooks.HierarchicalEmitter.emit
    - botocore.hooks.HierarchicalEmitter._emit
    - event_name.split
    - responses.append
    - key.split
    - logger.debug
    - event_parts.index
    - collections.deque.extendleft
    - botocore.hooks.EventAliaser._alias_event_name
    - botocore.hooks._PrefixTrie._get_items
    - stack.pop
    - children.get
    - stack.append
    - <builtin>.reversed
    - botocore.hooks.EventAliaser.emit
    - botocore.hooks._PrefixTrie.prefix_search
    - <builtin>.range
    - <builtin>.len
    - collections.deque
    - old_part.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 810
    functionName: botocore.session.Session.emit_first_non_none_response
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - botocore.hooks.first_non_none_response
    - botocore.hooks.EventAliaser._replace_subsection
    - botocore.hooks.HierarchicalEmitter.emit
    - botocore.hooks.HierarchicalEmitter._emit
    - event_name.split
    - responses.append
    - key.split
    - logger.debug
    - event_parts.index
    - collections.deque.extendleft
    - botocore.hooks.EventAliaser._alias_event_name
    - botocore.hooks._PrefixTrie._get_items
    - stack.pop
    - children.get
    - stack.append
    - <builtin>.reversed
    - botocore.hooks.EventAliaser.emit
    - botocore.hooks._PrefixTrie.prefix_search
    - <builtin>.range
    - <builtin>.len
    - collections.deque
    - old_part.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - component
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 834
    functionName: botocore.session.Session._register_internal_component
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - botocore.session.ComponentLocator.register_component
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - component
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 840
    functionName: botocore.session.Session.register_component
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - botocore.session.ComponentLocator.register_component
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - component
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 843
    functionName: botocore.session.Session.lazy_register_component
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - botocore.session.ComponentLocator.lazy_register_component
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 9
    IfCount: 11
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7f9830107130>
    - <ast.Constant object at 0x7f98301072e0>
    - <ast.Constant object at 0x7f9830107070>
    - <ast.Constant object at 0x7f9830107bb0>
    - <ast.Constant object at 0x7f9830107b50>
    - <ast.Constant object at 0x7f98301076d0>
    - <ast.Constant object at 0x7f9830107550>
    - <ast.Constant object at 0x7f983074fac0>
    - <ast.Constant object at 0x7f983074fd60>
    - <ast.Constant object at 0x7f983074f970>
    argNames:
    - self
    - service_name
    - region_name
    - api_version
    - use_ssl
    - verify
    - endpoint_url
    - aws_access_key_id
    - aws_secret_access_key
    - aws_session_token
    - config
    - aws_account_id
    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: 14
    functionLinenumber: 847
    functionName: botocore.session.Session.create_client
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - config_store.get_config_variable
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - botocore.context.get_context
    - <builtin>.callable
    - UNSAFE_URL_CHARS.intersection
    - botocore.credentials.Credentials
    - botocore.session.Session._create_token_resolver
    - botocore.utils.is_valid_uri
    - default_config_resolver.get_default_modes
    - session.user_agent
    - endpoint_mode.lower
    - config_store.set_config_provider
    - logger.debug
    - botocore.credentials.LoginProvider.__init__
    - urllib3.util.ssl_.SSLContext
    - botocore.session.Session.get_default_client_config
    - botocore.session.Session._build_profile_map
    - logger.warning
    - botocore.session.Session.user_agent
    - provider.load_token
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfiguredEndpointProvider._get_snake_case_service_id
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - smart_defaults_factory.merge_smart_defaults
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - botocore.session.Session._register_client_plugins
    - utils.SERVICE_NAME_ALIASES.get
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - plugins.items
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.hooks.HierarchicalEmitter._register_last
    - botocore.hooks.HierarchicalEmitter._register
    - credential_inputs.append
    - botocore.credentials.ProcessProvider.__init__
    - old_part.split
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._resolve_defaults_mode
    - log.debug
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - mode.lower
    - botocore.hooks.EventAliaser._replace_subsection
    - profile_map.get
    - allowed.match
    - plugin.split
    - ctx.features.add
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - client_creator.create_client
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - copy.copy
    - botocore.configprovider.ConfigValueStore.__init__
    - providers.extend
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.useragent.register_feature_id
    - platform.system
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.utils.ContainerMetadataFetcher.__init__
    - botocore.session.Session._add_configured_endpoint_provider
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.plugin.get_plugin_context
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.session.Session.get_scoped_config
    - inspect.getfullargspec
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.configprovider.ConfiguredEndpointProvider.__init__
    - valid_host_label.match
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.credentials.SSOProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - importlib.import_module
    - botocore.httpsession.ProxyConfiguration.__init__
    - botocore.session.Session._get_crt_version
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - user_agent_creator.set_session_config
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.hooks.EventAliaser.register
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.hooks.HierarchicalEmitter._register_section
    - event_name.split
    - botocore.session.Session._get_config_variable_with_custom_methods
    - part.strip
    - event_parts.index
    - botocore.plugin.get_botocore_plugins
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - utils.CLIENT_NAME_TO_HYPHENIZED_SERVICE_ID_OVERRIDES.get
    - botocore.hooks.EventAliaser._alias_event_name
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - kwargs.get
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.monitoring.CSMSerializer.__init__
    - botocore.credentials.EnvProvider.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - user_agent_creator.set_client_features
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.hooks.BaseEventHooks._verify_is_callable
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.hooks.BaseEventHooks.register
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.hooks.BaseEventHooks._verify_accept_kwargs
    - botocore.credentials.CredentialResolver.__init__
    - botocore.session.Session._missing_cred_vars
    - scoped_config_providers.append
    - botocore.utils.validate_region_name
    - botocore.hooks._PrefixTrie.append_item
    - botocore.session.Session._get_ignored_credentials
    - botocore.session.Session._resolve_region_name
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.session.Session.get_credentials
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.plugin.load_client_plugins
    - contextvars.ContextVar.get
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.hooks.HierarchicalEmitter._register_first
    - key.split
    - botocore.session.Session.get_auth_token
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - default_client_config.merge
    - providers.append
    - urllib3.Timeout
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.compat.accepts_kwargs
    - botocore.client.ClientCreator
    - botocore.utils.IMDSFetcher._select_base_url
    - hyphenized_service_id.replace
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - module.initialize_client_plugin
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - collections.namedtuple.__init__
    - platform.python_version
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - botocore.hooks.BaseEventHooks._verify_and_register
    - plugins_list.split
    - <builtin>.range
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    - platform.release
    linkageType: pythonLinkage
    raised:
    - PartialCredentialsError
    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_client_config.merge
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - region_name
    - config
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 1049
    functionName: botocore.session.Session._resolve_region_name
    functionSourceFile: botocore.session
    functionUses: 1
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - valid_host_label.match
    - botocore.credentials.SSOProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.validate_region_name
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - access_key
    - secret_key
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1100
    functionName: botocore.session.Session._missing_cred_vars
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - aws_session_token
    - aws_account_id
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1164
    functionName: botocore.session.Session._get_ignored_credentials
    functionSourceFile: botocore.session
    functionUses: 1
    functionsReached:
    - credential_inputs.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: user_agent_creator.set_session_config
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client_config
    - config_store
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 1071
    functionName: botocore.session.Session._resolve_defaults_mode
    functionSourceFile: botocore.session
    functionUses: 1
    functionsReached:
    - config_store.get_config_variable
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - default_config_resolver.get_default_modes
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - mode.lower
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised:
    - InvalidDefaultsMode
    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: smart_defaults_factory.merge_smart_defaults
    functionSourceFile: <builtin>
    functionUses: 1
    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_name
    - config_store
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 14
    functionLinenumber: 1089
    functionName: botocore.session.Session._add_configured_endpoint_provider
    functionSourceFile: botocore.session
    functionUses: 1
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - config_store.set_config_provider
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - botocore.session.Session._build_profile_map
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfiguredEndpointProvider._get_snake_case_service_id
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - utils.SERVICE_NAME_ALIASES.get
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - profile_map.get
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.session.Session.get_scoped_config
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.configprovider.ConfiguredEndpointProvider.__init__
    - botocore.credentials.SSOProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - utils.CLIENT_NAME_TO_HYPHENIZED_SERVICE_ID_OVERRIDES.get
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - hyphenized_service_id.replace
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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: user_agent_creator.set_client_features
    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: botocore.client.ClientCreator
    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: client_creator.create_client
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1172
    functionName: botocore.session.Session._register_client_plugins
    functionSourceFile: botocore.session
    functionUses: 1
    functionsReached:
    - os.environ.get
    - log.debug
    - botocore.plugin.get_botocore_plugins
    - module.initialize_client_plugin
    - importlib.import_module
    - logger.warning
    - plugins_list.split
    - botocore.plugin.load_client_plugins
    - contextvars.ContextVar.get
    - botocore.plugin.get_plugin_context
    - plugin.split
    - plugins.items
    - part.strip
    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: config_store.get_config_variable
    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_config_resolver.get_default_modes
    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: mode.lower
    functionSourceFile: <builtin>
    functionUses: 2
    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 0x7f9830d927f0>
    argNames:
    - self
    - full_config
    - scoped_config
    - client_name
    - environ
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 936
    functionName: botocore.configprovider.ConfiguredEndpointProvider.__init__
    functionSourceFile: botocore.configprovider
    functionUses: 2
    functionsReached:
    - botocore.configprovider.ConfiguredEndpointProvider._get_snake_case_service_id
    - utils.SERVICE_NAME_ALIASES.get
    - utils.CLIENT_NAME_TO_HYPHENIZED_SERVICE_ID_OVERRIDES.get
    - hyphenized_service_id.replace
    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: config_store.set_config_provider
    functionSourceFile: <builtin>
    functionUses: 8
    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: 12
    functionLinenumber: 1107
    functionName: botocore.session.Session.get_available_partitions
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - resolver.get_available_partitions
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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: resolver.get_available_partitions
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - region_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 1116
    functionName: botocore.session.Session.get_partition_for_region
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - resolver.get_partition_for_region
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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 0x7f982f895d30>
    - <ast.Constant object at 0x7f982f895280>
    argNames:
    - self
    - service_name
    - partition_name
    - allow_non_regional
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 1129
    functionName: botocore.session.Session.get_available_regions
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - responses.append
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - collections.deque.extendleft
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.hooks._PrefixTrie._get_items
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - <builtin>.reversed
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - EVENT_ALIASES.get
    - env.get
    - botocore.hooks.EventAliaser.emit
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - collections.deque
    - botocore.credentials.ProcessProvider.__init__
    - old_part.split
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - botocore.hooks.EventAliaser._replace_subsection
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - stack.append
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.session.Session.get_service_data
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.hooks.HierarchicalEmitter.emit
    - event_name.split
    - botocore.session.Session._get_config_variable_with_custom_methods
    - event_parts.index
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - botocore.hooks.EventAliaser._alias_event_name
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - children.get
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - botocore.hooks._PrefixTrie.prefix_search
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.hooks.HierarchicalEmitter._emit
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - key.split
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - stack.pop
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - resolver.get_available_endpoints
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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: resolver.get_available_endpoints
    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: credential_inputs.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: plugins_list.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: part.strip
    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: plugin.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: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1239
    functionName: botocore.session.SessionVarDict.__getitem__
    functionSourceFile: botocore.session
    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
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 1242
    functionName: botocore.session.SessionVarDict.__setitem__
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.session.SessionVarDict._update_config_store_from_session_vars
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - logical_name
    - config_options
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 1255
    functionName: botocore.session.SessionVarDict._update_config_store_from_session_vars
    functionSourceFile: botocore.session
    functionUses: 1
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - os.path.join
    - botocore.credentials.OriginalEC2Provider.__init__
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1246
    functionName: botocore.session.SessionVarDict.__delitem__
    functionSourceFile: botocore.session
    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: 1249
    functionName: botocore.session.SessionVarDict.__iter__
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    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: 1252
    functionName: botocore.session.SessionVarDict.__len__
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - <builtin>.len
    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 0x7f9830ca5880>
    argNames:
    - self
    - session
    - environ
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 351
    functionName: botocore.configprovider.ConfigChainFactory.__init__
    functionSourceFile: ''
    functionUses: 50
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9830dfc2e0>
    - <ast.Constant object at 0x7f9830dfc9a0>
    - <ast.Constant object at 0x7f9830dfcc10>
    - <ast.Constant object at 0x7f9830dfcd90>
    - <ast.Constant object at 0x7f9830dfc790>
    argNames:
    - self
    - instance_name
    - env_var_names
    - config_property_names
    - default
    - conversion_func
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 367
    functionName: botocore.configprovider.ConfigChainFactory.create_config_chain
    functionSourceFile: botocore.configprovider
    functionUses: 51
    functionsReached:
    - botocore.configprovider.ChainProvider.__init__
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - providers.extend
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - providers.append
    - <builtin>.isinstance
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.InstanceVarProvider.__init__
    - env_var_providers.append
    - scoped_config_providers.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - logical_name
    - provider
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 566
    functionName: botocore.configprovider.ConfigValueStore.set_config_provider
    functionSourceFile: ''
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f982f978bb0>
    argNames:
    - env_vars
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 1326
    functionName: botocore.session.get_session
    functionSourceFile: botocore.session
    functionUses: 0
    functionsReached:
    - botocore.useragent._get_crt_version
    - botocore.session.Session._register_endpoint_resolver
    - botocore.session.Session._register_config_store
    - <builtin>.callable
    - botocore.invoke_initializers
    - botocore.useragent.UserAgentString.__init__
    - logger.debug
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.hooks._PrefixTrie.__init__
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.session.Session._register_monitor
    - botocore.session.ComponentLocator.register_component
    - botocore.session.Session.__init__
    - os.environ.get
    - botocore.session.Session._register_credential_provider
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.hooks.HierarchicalEmitter._register_last
    - botocore.hooks.HierarchicalEmitter._register
    - old_part.split
    - botocore.session.SessionVarDict.__init__
    - platform.release
    - botocore.hooks.EventAliaser._replace_subsection
    - botocore.hooks.BaseEventHooks.register_last
    - botocore.parsers.ResponseParserFactory.__init__
    - env_var_providers.append
    - botocore.session.Session._register_smart_defaults_factory
    - botocore.session.Session._register_user_agent_creator
    - copy.copy
    - botocore.configprovider.ConfigValueStore.__init__
    - providers.extend
    - botocore.session.Session.register
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.configprovider.ScopedConfigProvider.__init__
    - platform.system
    - botocore.session.ComponentLocator.__init__
    - botocore.session.Session._register_exceptions_factory
    - botocore.useragent.UserAgentString.from_environment
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.hooks.HierarchicalEmitter.__init__
    - botocore.session.Session._register_response_parser_factory
    - inspect.getfullargspec
    - botocore.errorfactory.ClientExceptionsFactory.__init__
    - botocore.hooks.EventAliaser.register_first
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.hooks.EventAliaser.register
    - botocore.hooks.HierarchicalEmitter._register_section
    - event_name.split
    - botocore.session.Session._register_token_provider
    - event_parts.index
    - botocore.hooks.EventAliaser.register_last
    - botocore.hooks.EventAliaser._alias_event_name
    - <builtin>.isinstance
    - config_variables.items
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.hooks.BaseEventHooks._verify_is_callable
    - botocore.session.Session._register_default_config_resolver
    - botocore.hooks.BaseEventHooks.register
    - <builtin>.len
    - botocore.hooks.BaseEventHooks._verify_accept_kwargs
    - scoped_config_providers.append
    - botocore.session.Session._register_event_emitter
    - botocore.hooks._PrefixTrie.append_item
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.configprovider._create_config_chain_mapping
    - botocore.hooks.HierarchicalEmitter._register_first
    - botocore.session.ComponentLocator.lazy_register_component
    - key.split
    - providers.append
    - botocore.compat.accepts_kwargs
    - botocore.configprovider.ChainProvider.__init__
    - collections.namedtuple.__init__
    - botocore.session.Session._register_components
    - collections.abc.MutableMapping.update
    - platform.python_version
    - botocore.hooks.BaseEventHooks._verify_and_register
    - <builtin>.range
    - platform.python_implementation
    - mapping.items
    - platform.machine
    - botocore.session.Session._register_builtin_handlers
    - botocore.session.Session._register_data_loader
    - botocore.hooks.EventAliaser.__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: botocore.loaders
    functionSourceFile: botocore.loaders
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 127
    functionName: botocore.loaders.instance_cache
    functionSourceFile: botocore.loaders
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 137
    functionName: botocore.loaders.instance_cache._wrapper
    functionSourceFile: botocore.loaders
    functionUses: 0
    functionsReached:
    - services.add
    - <builtin>.sorted
    - botocore.loaders.Loader.load_data_with_path
    - botocore.loaders.Loader.list_available_services
    - botocore.loaders.Loader.load_service_model
    - logger.debug
    - botocore.loaders.JSONFileLoader._load_file
    - os.path.isfile
    - botocore.loaders.Loader._find_extras
    - os.path.join
    - <builtin>.isinstance
    - os.path.isdir
    - os.listdir
    - botocore.loaders.Loader.determine_latest_version
    - _JSON_OPEN_METHODS.items
    - <builtin>.set
    - os.path.exists
    - known_api_versions.add
    - <builtin>.max
    - json.loads
    - botocore.loaders.JSONFileLoader.exists
    - botocore.loaders.Loader.list_api_versions
    - fp.read
    - kwargs.items
    - botocore.loaders.Loader.load_data
    - botocore.loaders.ExtrasProcessor._process
    - botocore.loaders.Loader._potential_locations
    - botocore.loaders.ExtrasProcessor.process
    - botocore.loaders.JSONFileLoader.load_file
    - botocore.utils.deep_merge
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e7b580>
    argNames:
    - self
    - service_name
    - type_name
    - api_version
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 376
    functionName: botocore.loaders.Loader.load_service_model
    functionSourceFile: botocore.loaders
    functionUses: 1
    functionsReached:
    - services.add
    - <builtin>.sorted
    - botocore.loaders.Loader.load_data_with_path
    - botocore.loaders.Loader.list_available_services
    - logger.debug
    - botocore.loaders.JSONFileLoader._load_file
    - os.path.isfile
    - botocore.loaders.Loader._find_extras
    - os.path.join
    - <builtin>.isinstance
    - os.path.isdir
    - os.listdir
    - botocore.loaders.Loader.determine_latest_version
    - _JSON_OPEN_METHODS.items
    - os.path.exists
    - <builtin>.set
    - known_api_versions.add
    - <builtin>.max
    - json.loads
    - botocore.loaders.JSONFileLoader.exists
    - botocore.loaders.Loader.list_api_versions
    - fp.read
    - botocore.loaders.Loader.load_data
    - botocore.loaders.ExtrasProcessor._process
    - botocore.loaders.Loader._potential_locations
    - botocore.loaders.ExtrasProcessor.process
    - botocore.loaders.JSONFileLoader.load_file
    - botocore.utils.deep_merge
    linkageType: pythonLinkage
    raised:
    - UnknownServiceError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 438
    functionName: botocore.loaders.Loader.load_data_with_path
    functionSourceFile: botocore.loaders
    functionUses: 4
    functionsReached:
    - os.path.exists
    - logger.debug
    - botocore.loaders.JSONFileLoader._load_file
    - json.loads
    - os.path.isfile
    - botocore.loaders.Loader._potential_locations
    - fp.read
    - os.path.join
    - os.path.isdir
    - _JSON_OPEN_METHODS.items
    - botocore.loaders.JSONFileLoader.load_file
    linkageType: pythonLinkage
    raised:
    - DataNotFoundError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - type_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 280
    functionName: botocore.loaders.Loader.list_available_services
    functionSourceFile: botocore.loaders
    functionUses: 2
    functionsReached:
    - <builtin>.set
    - os.path.exists
    - services.add
    - botocore.loaders.JSONFileLoader.exists
    - os.path.isfile
    - botocore.loaders.Loader._potential_locations
    - <builtin>.sorted
    - os.path.join
    - os.path.isdir
    - os.listdir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - type_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 323
    functionName: botocore.loaders.Loader.determine_latest_version
    functionSourceFile: botocore.loaders
    functionUses: 2
    functionsReached:
    - <builtin>.set
    - os.path.exists
    - known_api_versions.add
    - <builtin>.max
    - botocore.loaders.JSONFileLoader.exists
    - os.path.isfile
    - botocore.loaders.Loader._potential_locations
    - botocore.loaders.Loader.list_api_versions
    - <builtin>.sorted
    - os.path.join
    - os.path.isdir
    - os.listdir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - type_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 346
    functionName: botocore.loaders.Loader.list_api_versions
    functionSourceFile: botocore.loaders
    functionUses: 3
    functionsReached:
    - <builtin>.set
    - os.path.exists
    - known_api_versions.add
    - botocore.loaders.JSONFileLoader.exists
    - os.path.isfile
    - botocore.loaders.Loader._potential_locations
    - <builtin>.sorted
    - os.path.join
    - os.path.isdir
    - os.listdir
    linkageType: pythonLinkage
    raised:
    - DataNotFoundError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file_path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 157
    functionName: botocore.loaders.JSONFileLoader.exists
    functionSourceFile: botocore.loaders
    functionUses: 5
    functionsReached:
    - os.path.isfile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - full_path
    - open_method
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 172
    functionName: botocore.loaders.JSONFileLoader._load_file
    functionSourceFile: botocore.loaders
    functionUses: 6
    functionsReached:
    - logger.debug
    - os.path.isfile
    - fp.read
    - json.loads
    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: fp.read
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file_path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 184
    functionName: botocore.loaders.JSONFileLoader.load_file
    functionSourceFile: botocore.loaders
    functionUses: 5
    functionsReached:
    - logger.debug
    - json.loads
    - botocore.loaders.JSONFileLoader._load_file
    - os.path.isfile
    - fp.read
    - _JSON_OPEN_METHODS.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: _JSON_OPEN_METHODS.items
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f9830ce63a0>
    - <ast.Constant object at 0x7f9830ce6340>
    - <ast.Constant object at 0x7f9830ce6550>
    - <ast.Constant object at 0x7f9830ce66d0>
    - <ast.Constant object at 0x7f9830ce6be0>
    argNames:
    - self
    - extra_search_paths
    - file_loader
    - cache
    - include_default_search_paths
    - include_default_extras
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 244
    functionName: botocore.loaders.Loader.__init__
    functionSourceFile: ''
    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: search_path_string.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: paths.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: 1
    functionLinenumber: -1
    functionName: botocore.loaders.Loader
    functionSourceFile: botocore.loaders
    functionUses: 0
    functionsReached:
    - botocore.loaders.instance_cache
    - os.path.expanduser
    - os.path.join
    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: 272
    functionName: botocore.loaders.Loader.search_paths
    functionSourceFile: botocore.loaders
    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: 276
    functionName: botocore.loaders.Loader.extras_types
    functionSourceFile: botocore.loaders
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e65520>
    - <ast.Constant object at 0x7f9830e65fa0>
    - <ast.Constant object at 0x7f9830e652b0>
    argNames:
    - self
    - name
    - must_exist
    - is_dir
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 475
    functionName: botocore.loaders.Loader._potential_locations
    functionSourceFile: botocore.loaders
    functionUses: 8
    functionsReached:
    - os.path.join
    - os.path.isdir
    - os.path.exists
    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.listdir
    functionSourceFile: os
    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: services.add
    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: known_api_versions.add
    functionSourceFile: <builtin>
    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:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 456
    functionName: botocore.loaders.Loader.load_data
    functionSourceFile: botocore.loaders
    functionUses: 3
    functionsReached:
    - os.path.exists
    - logger.debug
    - botocore.loaders.JSONFileLoader._load_file
    - json.loads
    - os.path.isfile
    - botocore.loaders.Loader._potential_locations
    - fp.read
    - os.path.join
    - botocore.loaders.Loader.load_data_with_path
    - os.path.isdir
    - _JSON_OPEN_METHODS.items
    - botocore.loaders.JSONFileLoader.load_file
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - type_name
    - api_version
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 426
    functionName: botocore.loaders.Loader._find_extras
    functionSourceFile: botocore.loaders
    functionUses: 2
    functionsReached:
    - os.path.exists
    - logger.debug
    - botocore.loaders.Loader.load_data
    - botocore.loaders.JSONFileLoader._load_file
    - json.loads
    - os.path.isfile
    - botocore.loaders.Loader._potential_locations
    - fp.read
    - os.path.join
    - botocore.loaders.Loader.load_data_with_path
    - os.path.isdir
    - _JSON_OPEN_METHODS.items
    - botocore.loaders.JSONFileLoader.load_file
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - original_model
    - extra_models
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 510
    functionName: botocore.loaders.ExtrasProcessor.process
    functionSourceFile: botocore.loaders
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - botocore.loaders.ExtrasProcessor._process
    - botocore.utils.deep_merge
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 491
    functionName: botocore.loaders.Loader.is_builtin_path
    functionSourceFile: botocore.loaders
    functionUses: 0
    functionsReached:
    - os.path.expanduser
    - path.startswith
    - os.path.expandvars
    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: path.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - model
    - extra_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 522
    functionName: botocore.loaders.ExtrasProcessor._process
    functionSourceFile: botocore.loaders
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - botocore.utils.deep_merge
    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: 2
    functionLinenumber: -1
    functionName: botocore.handlers
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - logging.getLogger
    - botocore.handlers.ParameterAlias.__init__
    - handler_list.append
    - re.compile
    - aliases.items
    - botocore.handlers._add_parameter_aliases
    - <builtin>.object
    - original.rsplit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - service_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 107
    functionName: botocore.handlers.handle_service_name_alias
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - SERVICE_NAME_ALIASES.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: SERVICE_NAME_ALIASES.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 111
    functionName: botocore.handlers.add_recursion_detection_header
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - os.environ.get
    - urllib.parse.quote
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 120
    functionName: botocore.handlers.escape_xml_payload
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - body.replace
    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.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - response
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 136
    functionName: botocore.handlers.check_for_200_error
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - logger.debug
    - parser.feed
    - botocore.handlers._looks_like_special_case_error
    - parser.close
    - xml.etree.ElementTree.XMLParser
    - xml.etree.ElementTree.TreeBuilder
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - status_code
    - body
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 170
    functionName: botocore.handlers._looks_like_special_case_error
    functionSourceFile: botocore.handlers
    functionUses: 2
    functionsReached:
    - parser.close
    - xml.etree.ElementTree.TreeBuilder
    - parser.feed
    - xml.etree.ElementTree.XMLParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 2
    IfCount: 9
    argCount: 3
    argDefaultValues: []
    argNames:
    - context
    - signing_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 188
    functionName: botocore.handlers.set_operation_specific_signer
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - context.get
    - botocore.handlers._resolve_sigv4a_region
    - auth_type.startswith
    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: auth_type.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - context
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 259
    functionName: botocore.handlers._resolve_sigv4a_region
    functionSourceFile: botocore.handlers
    functionUses: 1
    functionsReached:
    - context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - parsed
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 241
    functionName: botocore.handlers._handle_sqs_compatible_error
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - parsed_error.get
    - parsed.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: parsed_error.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - parsed
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 268
    functionName: botocore.handlers.decode_console_output
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - logger.debug
    - <builtin>.bytes
    - base64.b64decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - params
    - model
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 282
    functionName: botocore.handlers.generate_idempotent_uuid
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - uuid.uuid4
    - logger.debug
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 293
    functionName: botocore.handlers.decode_quoted_jsondoc
    functionSourceFile: botocore.handlers
    functionUses: 2
    functionsReached:
    - urllib.parse.unquote
    - logger.debug
    - json.loads
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - parsed
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 301
    functionName: botocore.handlers.json_decode_template_body
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - logger.debug
    - json.loads
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 312
    functionName: botocore.handlers.validate_bucket_name
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - VALID_BUCKET.search
    - VALID_S3_ARN.search
    linkageType: pythonLinkage
    raised:
    - ParamValidationError
    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: VALID_BUCKET.search
    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: VALID_S3_ARN.search
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 325
    functionName: botocore.handlers.sse_md5
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - key_as_bytes.encode
    - <builtin>.isinstance
    - params.get
    - hashlib.md5
    - botocore.compat.get_md5
    - botocore.handlers._sse_md5
    - botocore.handlers._needs_s3_sse_customization
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f98309bd9d0>
    argNames:
    - params
    - sse_member_prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 345
    functionName: botocore.handlers._sse_md5
    functionSourceFile: botocore.handlers
    functionUses: 2
    functionsReached:
    - base64.b64encode
    - key_as_bytes.encode
    - <builtin>.isinstance
    - params.get
    - botocore.compat.get_md5
    - hashlib.md5
    - botocore.handlers._needs_s3_sse_customization
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 335
    functionName: botocore.handlers.copy_source_sse_md5
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - key_as_bytes.encode
    - <builtin>.isinstance
    - params.get
    - hashlib.md5
    - botocore.compat.get_md5
    - botocore.handlers._sse_md5
    - botocore.handlers._needs_s3_sse_customization
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - sse_member_prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 361
    functionName: botocore.handlers._needs_s3_sse_customization
    functionSourceFile: botocore.handlers
    functionUses: 3
    functionsReached:
    - params.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: key_as_bytes.encode
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - kwargs
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 368
    functionName: botocore.handlers.disable_signing
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - model
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 376
    functionName: botocore.handlers.add_expect_header
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - model.http.get
    - os.environ.get
    - logger.debug
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - <builtin>.hasattr
    - body.tell
    - botocore.utils.determine_content_length
    - val.lower
    - <builtin>.isinstance
    - botocore.utils.ensure_boolean
    - <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: model.http.get
    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
    - replacement_service_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 397
    functionName: botocore.handlers.DeprecatedServiceDocumenter.__init__
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - section
    - event_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 400
    functionName: botocore.handlers.DeprecatedServiceDocumenter.inject_deprecation_notice
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - section.style.end_important
    - section.style.ref
    - section.write
    - section.style.start_important
    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: section.style.start_important
    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: section.style.ref
    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: section.style.end_important
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - section
    - event_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 411
    functionName: botocore.handlers.document_copy_source_form
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - parent.get_section
    - type_section.write
    - doc_section.clear_text
    - param_line.get_section
    - value_portion.clear_text
    - section.get_section
    - value_portion.write
    - doc_section.write
    - param_section.get_section
    - type_section.clear_text
    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: parent.get_section
    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: param_line.get_section
    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: value_portion.clear_text
    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: value_portion.write
    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: param_section.get_section
    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: type_section.clear_text
    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: doc_section.clear_text
    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: doc_section.write
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 448
    functionName: botocore.handlers.handle_copy_source_param
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - botocore.utils.percent_encode
    - VERSION_ID_SUFFIX.search
    - botocore.handlers._quote_source_header
    - <builtin>.str
    - VALID_S3_ARN.search
    - result.start
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - params.get
    - source_dict.get
    - botocore.handlers._quote_source_header_from_dict
    - urllib.parse.quote
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 494
    functionName: botocore.handlers._quote_source_header
    functionSourceFile: botocore.handlers
    functionUses: 1
    functionsReached:
    - botocore.utils.percent_encode
    - VERSION_ID_SUFFIX.search
    - result.start
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - urllib.parse.quote
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - source_dict
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 475
    functionName: botocore.handlers._quote_source_header_from_dict
    functionSourceFile: botocore.handlers
    functionUses: 1
    functionsReached:
    - botocore.utils.percent_encode
    - VALID_S3_ARN.search
    - urllib.parse.quote.encode
    - <builtin>.isinstance
    - urllib.parse.quote
    - source_dict.get
    - <builtin>.str
    linkageType: pythonLinkage
    raised:
    - ParamValidationError
    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: source_dict.get
    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: VERSION_ID_SUFFIX.search
    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: result.start
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - request_signer
    - request_dict
    - model
    - source_region
    - destination_region
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 503
    functionName: botocore.handlers._get_cross_region_presigned_url
    functionSourceFile: botocore.handlers
    functionUses: 2
    functionsReached:
    - copy.deepcopy
    - request_signer.generate_presigned_url
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - request_signer
    - params
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 526
    functionName: botocore.handlers._get_presigned_url_source_and_destination_regions
    functionSourceFile: botocore.handlers
    functionUses: 2
    functionsReached:
    - params.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - params
    - request_signer
    - model
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 533
    functionName: botocore.handlers.inject_presigned_url_ec2
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - botocore.handlers._get_cross_region_presigned_url
    - request_signer.generate_presigned_url
    - params.get
    - copy.deepcopy
    - botocore.handlers._get_presigned_url_source_and_destination_regions
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - params
    - request_signer
    - model
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 549
    functionName: botocore.handlers.inject_presigned_url_rds
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - botocore.handlers._get_cross_region_presigned_url
    - request_signer.generate_presigned_url
    - params.get
    - copy.deepcopy
    - botocore.handlers._get_presigned_url_source_and_destination_regions
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - parsed
    - model
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 573
    functionName: botocore.handlers.json_decode_policies
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - logger.debug
    - shape.members.items
    - json.loads
    - botocore.handlers.decode_quoted_jsondoc
    - urllib.parse.unquote
    - botocore.handlers._decode_policy_types
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - parsed
    - shape
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 585
    functionName: botocore.handlers._decode_policy_types
    functionSourceFile: botocore.handlers
    functionUses: 1
    functionsReached:
    - logger.debug
    - shape.members.items
    - json.loads
    - botocore.handlers.decode_quoted_jsondoc
    - urllib.parse.unquote
    - botocore.handlers._decode_policy_types
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - parsed
    - http_response
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 607
    functionName: botocore.handlers.parse_get_bucket_location
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - parser.close
    - xml.etree.ElementTree.TreeBuilder
    - parser.feed
    - xml.etree.ElementTree.XMLParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 623
    functionName: botocore.handlers.base64_encode_user_data
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - base64.b64encode
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - param
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 633
    functionName: botocore.handlers.document_base64_encoding
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - botocore.docs.utils.AppendParamDocumentation.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 643
    functionName: botocore.handlers.validate_ascii_metadata
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - value.encode
    - params.get
    - key.encode
    - metadata.items
    linkageType: pythonLinkage
    raised:
    - ParamValidationError
    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: metadata.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - params
    - model
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 674
    functionName: botocore.handlers.fix_route53_ids
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - <builtin>.hasattr
    - input_shape.members.items
    - logger.debug
    - orig_value.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: orig_value.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 698
    functionName: botocore.handlers.inject_account_id
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - params.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - model
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 707
    functionName: botocore.handlers.add_glacier_version
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - model
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 714
    functionName: botocore.handlers.add_accept_header
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 720
    functionName: botocore.handlers.add_glacier_checksums
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - checksum.update
    - botocore.utils.calculate_sha256
    - itertools.zip_longest
    - botocore.utils.calculate_tree_hash
    - <builtin>.iter
    - io.BytesIO.seek
    - new_chunks.append
    - chunks.append
    - checksum.digest
    - hashlib.sha256
    - binascii.hexlify
    - checksum.hexdigest
    - <builtin>.isinstance
    - io.BytesIO
    - botocore.utils._in_pairs
    - <builtin>.len
    - io.BytesIO.tell
    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: io.BytesIO.tell
    functionSourceFile: io
    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: io.BytesIO.seek
    functionSourceFile: io
    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: 1
    functionLinenumber: 753
    functionName: botocore.handlers.document_glacier_tree_hash_checksum
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - botocore.docs.utils.AppendParamDocumentation.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - section
    - event_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 770
    functionName: botocore.handlers.document_cloudformation_get_template_return_type
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - type_section.write
    - parent.get_section
    - template_body_section.get_section
    - value_portion.clear_text
    - param_line.get_section
    - section.get_section
    - value_portion.write
    - type_section.clear_text
    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: template_body_section.get_section
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - request
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 786
    functionName: botocore.handlers.switch_host_machinelearning
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - request_json.get
    - request.data.decode
    - logger.debug
    - json.loads
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - botocore.utils._get_new_endpoint
    - botocore.utils._switch_hosts
    - botocore.utils.switch_host_with_param
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - kwargs
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 790
    functionName: botocore.handlers.check_openssl_supports_tls_version_1_2
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - request
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 809
    functionName: botocore.handlers.change_get_to_post
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - request.url.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: request.url.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - params
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 818
    functionName: botocore.handlers.set_list_objects_encoding_type_url
    functionSourceFile: botocore.handlers
    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:
    - parsed
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 826
    functionName: botocore.handlers.decode_list_object
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - botocore.handlers._decode_list_object
    - parsed.get
    - context.get
    - urllib.parse.unquote_plus
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - top_level_keys
    - nested_keys
    - parsed
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 878
    functionName: botocore.handlers._decode_list_object
    functionSourceFile: botocore.handlers
    functionUses: 3
    functionsReached:
    - parsed.get
    - context.get
    - urllib.parse.unquote_plus
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - parsed
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 843
    functionName: botocore.handlers.decode_list_object_v2
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - botocore.handlers._decode_list_object
    - parsed.get
    - context.get
    - urllib.parse.unquote_plus
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - parsed
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 856
    functionName: botocore.handlers.decode_list_object_versions
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - botocore.handlers._decode_list_object
    - parsed.get
    - context.get
    - urllib.parse.unquote_plus
    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_plus
    functionSourceFile: urllib
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 893
    functionName: botocore.handlers.convert_body_to_file_like_object
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - botocore.compat.ensure_bytes
    - io.BytesIO.encode
    - io.BytesIO
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - handler_list
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 901
    functionName: botocore.handlers._add_parameter_aliases
    functionSourceFile: botocore.handlers
    functionUses: 1
    functionsReached:
    - botocore.handlers.ParameterAlias.__init__
    - aliases.items
    - original.rsplit
    - handler_list.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: aliases.items
    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: original.rsplit
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - original_name
    - alias_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 935
    functionName: botocore.handlers.ParameterAlias.__init__
    functionSourceFile: ''
    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: handler_list.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - model
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 939
    functionName: botocore.handlers.ParameterAlias.alias_parameter_in_call
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - params.pop
    linkageType: pythonLinkage
    raised:
    - AliasConflictParameterError
    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: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - section
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 955
    functionName: botocore.handlers.ParameterAlias.alias_parameter_in_documentation
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - event_name.startswith
    - content.replace
    - section.clear_text
    - section.get_section
    - section.write
    - param_section.get_section
    - section.getvalue
    - botocore.handlers.ParameterAlias._replace_content
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - section
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 975
    functionName: botocore.handlers.ParameterAlias._replace_content
    functionSourceFile: botocore.handlers
    functionUses: 1
    functionsReached:
    - section.clear_text
    - section.write
    - content.replace
    - section.getvalue
    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: section.getvalue
    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: content.replace
    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:
    - self
    - actual_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 985
    functionName: botocore.handlers.ClientMethodAlias.__init__
    functionSourceFile: botocore.handlers
    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:
    - self
    - client
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 993
    functionName: botocore.handlers.ClientMethodAlias.__call__
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    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: botocore.handlers.HeaderToHostHoister
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - header_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1003
    functionName: botocore.handlers.HeaderToHostHoister.__init__
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1006
    functionName: botocore.handlers.HeaderToHostHoister.hoist
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - urllib.parse.urlsplit.netloc.split
    - botocore.handlers.HeaderToHostHoister._prepend_to_host
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - botocore.handlers.HeaderToHostHoister._ensure_header_is_valid_host
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - header
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1021
    functionName: botocore.handlers.HeaderToHostHoister._ensure_header_is_valid_host
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ParamValidationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - url
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1031
    functionName: botocore.handlers.HeaderToHostHoister._prepend_to_host
    functionSourceFile: botocore.handlers
    functionUses: 1
    functionsReached:
    - urllib.parse.urlsplit
    - urllib.parse.urlsplit.netloc.split
    - urllib.parse.urlunsplit
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - model
    - params
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1047
    functionName: botocore.handlers.inject_api_version_header_if_needed
    functionSourceFile: botocore.handlers
    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:
    - class_attributes
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1053
    functionName: botocore.handlers.remove_lex_v2_start_conversation
    functionSourceFile: botocore.handlers
    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:
    - class_attributes
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1059
    functionName: botocore.handlers.remove_qbusiness_chat
    functionSourceFile: botocore.handlers
    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:
    - class_attributes
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1065
    functionName: botocore.handlers.remove_bedrock_runtime_invoke_model_with_bidirectional_stream
    functionSourceFile: botocore.handlers
    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:
    - serializer_kwargs
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1073
    functionName: botocore.handlers.enable_millisecond_timestamp_precision
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - request
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1078
    functionName: botocore.handlers.add_retry_headers
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - params
    - model
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1093
    functionName: botocore.handlers.remove_bucket_from_url_paths_from_model
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - req_uri.startswith
    - req_uri.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: req_uri.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: req_uri.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - params
    - model
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1127
    functionName: botocore.handlers.remove_accid_host_prefix_from_model
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - <builtin>.any
    - model.endpoint.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: model.endpoint.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - request
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1152
    functionName: botocore.handlers.remove_arn_from_signing_path
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - urllib.parse.unquote.startswith
    - auth_path.startswith
    - auth_path.split
    - botocore.utils.ArnParser.parse_arn
    - urllib.parse.unquote
    - <builtin>.isinstance
    - urllib.parse.unquote.split
    - <builtin>.len
    - botocore.utils.ArnParser.is_arn
    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: auth_path.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: auth_path.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 5
    argDefaultValues: []
    argNames:
    - builtins
    - model
    - params
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1162
    functionName: botocore.handlers.customize_endpoint_resolver_builtins
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - botocore.utils.is_s3express_bucket
    - urllib.parse.unquote.startswith
    - VALID_HOST_LABEL_RE.match
    - botocore.utils.ArnParser.parse_arn
    - bucket.endswith
    - <builtin>.isinstance
    - params.get
    - urllib.parse.unquote.split
    - <builtin>.len
    - botocore.utils.ArnParser.is_arn
    - context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - request
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1208
    functionName: botocore.handlers.remove_content_type_header_for_presigning
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - operation_model
    - response_dict
    - customized_response_dict
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1216
    functionName: botocore.handlers.handle_expires_header
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - botocore.handlers._has_expires_shape
    - <builtin>.any
    - datetime.datetime
    - botocore.compat.get_tzinfo_options
    - datetime.timedelta
    - logger.debug
    - epoch_zero.astimezone
    - dateutil.tz.tzutc
    - botocore.utils._epoch_seconds_to_datetime
    - logger.warning
    - <builtin>.isinstance
    - botocore.utils._parse_timestamp_with_tzinfo
    - response_dict.get
    - <builtin>.float
    - botocore.utils.parse_timestamp
    - dateutil.parser.parse
    - datetime.datetime.fromtimestamp
    - shape.members.values
    - member_shape.serialization.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - shape
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1233
    functionName: botocore.handlers._has_expires_shape
    functionSourceFile: botocore.handlers
    functionUses: 1
    functionsReached:
    - shape.members.values
    - <builtin>.any
    - member_shape.serialization.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_dict.get
    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: shape.members.values
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 11
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - section
    - event_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1243
    functionName: botocore.handlers.document_expires_shape
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - parent.get_section
    - param_section.add_new_section
    - new_param_section.style.indent
    - param_line.get_section
    - new_param_line.style.new_line
    - doc_section.style.start_note
    - doc_section.style.end_note
    - new_param_section.write
    - section.get_section
    - param_line.add_new_section
    - doc_section.write
    - parent.has_section
    - new_param_section.style.new_paragraph
    - param_section.get_section
    - section.has_section
    - new_param_line.write
    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: section.has_section
    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: parent.has_section
    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: param_line.add_new_section
    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: new_param_line.write
    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: new_param_line.style.new_line
    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: doc_section.style.start_note
    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: doc_section.style.end_note
    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: new_param_section.style.new_paragraph
    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: new_param_section.write
    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: new_param_section.style.indent
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - operation_model
    - response_dict
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1280
    functionName: botocore.handlers._handle_200_error
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - logger.debug
    - parser.feed
    - botocore.handlers._should_handle_200_error
    - botocore.handlers._looks_like_special_case_error
    - parser.close
    - xml.etree.ElementTree.XMLParser
    - output_shape.serialization.get
    - xml.etree.ElementTree.TreeBuilder
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - operation_model
    - response_dict
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1297
    functionName: botocore.handlers._should_handle_200_error
    functionSourceFile: botocore.handlers
    functionUses: 1
    functionsReached:
    - output_shape.serialization.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: output_shape.serialization.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - response
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1313
    functionName: botocore.handlers._update_status_code
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - parsed.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - params
    - model
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1326
    functionName: botocore.handlers._handle_request_validation_mode_member
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - kwargs.get
    - params.setdefault
    - http_checksum.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: params.setdefault
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - request
    - signature_version
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1340
    functionName: botocore.handlers._set_extra_headers_for_unsigned_request
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - algorithm.get
    - checksum_context.get
    - request.context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - context
    - signing_name
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1353
    functionName: botocore.handlers._set_auth_scheme_preference_signer
    functionSourceFile: botocore.handlers
    functionUses: 0
    functionsReached:
    - botocore.handlers.get_bearer_auth_supported_services
    - botocore.context.get_context
    - scheme.split
    - contextvars.ContextVar.get
    - ctx.features.add
    - context.get
    - logger.debug
    - signing_name.replace
    - botocore.useragent.register_feature_id
    - <builtin>.isinstance
    - auth_scheme_preference.split
    - _USERAGENT_FEATURE_MAPPINGS.get
    - signing_name.strip
    - dict.fromkeys
    - botocore.handlers._should_prefer_bearer_auth
    - AUTH_PREF_TO_SIGNATURE_VERSION.get
    - os.environ.get
    - botocore.utils.get_token_from_environment
    - botocore.utils._get_bearer_env_var_name
    - botocore.auth.resolve_auth_scheme_preference
    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: auth_scheme_preference.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - has_in_code_configuration
    - signing_name
    - resolved_signature_version
    - auth_options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1412
    functionName: botocore.handlers._should_prefer_bearer_auth
    functionSourceFile: botocore.handlers
    functionUses: 1
    functionsReached:
    - signing_name.strip
    - os.environ.get
    - botocore.utils.get_token_from_environment
    - signing_name.replace
    - botocore.handlers.get_bearer_auth_supported_services
    - botocore.utils._get_bearer_env_var_name
    - <builtin>.isinstance
    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: 1434
    functionName: botocore.handlers.get_bearer_auth_supported_services
    functionSourceFile: ''
    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: botocore.configprovider
    functionSourceFile: botocore.configprovider
    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:
    - chain_builder
    - config_variables
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 294
    functionName: botocore.configprovider._create_config_chain_mapping
    functionSourceFile: botocore.configprovider
    functionUses: 49
    functionsReached:
    - botocore.configprovider.ChainProvider.__init__
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - providers.extend
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - providers.append
    - <builtin>.isinstance
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.InstanceVarProvider.__init__
    - env_var_providers.append
    - scoped_config_providers.append
    - config_variables.items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f98303976a0>
    argNames:
    - self
    - section_name
    - session
    - override_providers
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 850
    functionName: botocore.configprovider.SectionConfigProvider.__init__
    functionSourceFile: botocore.configprovider
    functionUses: 50
    functionsReached:
    - botocore.configprovider.ScopedConfigProvider.__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: config_variables.items
    functionSourceFile: <builtin>
    functionUses: 50
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - mode
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 313
    functionName: botocore.configprovider.DefaultConfigResolver._resolve_default_values_by_mode
    functionSourceFile: botocore.configprovider
    functionUses: 1
    functionsReached:
    - modification_dict.keys
    - <builtin>.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: modification_dict.keys
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 331
    functionName: botocore.configprovider.DefaultConfigResolver.get_default_modes
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - default_modes.extend
    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_modes.extend
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - mode
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 336
    functionName: botocore.configprovider.DefaultConfigResolver.get_default_config_values
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - botocore.configprovider.DefaultConfigResolver._resolve_default_values_by_mode
    - modification_dict.keys
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - instance_var
    - session
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 749
    functionName: botocore.configprovider.InstanceVarProvider.__init__
    functionSourceFile: ''
    functionUses: 53
    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: providers.append
    functionSourceFile: <builtin>
    functionUses: 52
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - env_var_names
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 433
    functionName: botocore.configprovider.ConfigChainFactory._get_env_providers
    functionSourceFile: botocore.configprovider
    functionUses: 52
    functionsReached:
    - <builtin>.isinstance
    - botocore.configprovider.EnvironmentProvider.__init__
    - env_var_providers.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: providers.extend
    functionSourceFile: <builtin>
    functionUses: 52
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - config_property_names
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 443
    functionName: botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    functionSourceFile: botocore.configprovider
    functionUses: 52
    functionsReached:
    - <builtin>.isinstance
    - botocore.configprovider.ScopedConfigProvider.__init__
    - scoped_config_providers.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 907
    functionName: botocore.configprovider.ConstantProvider.__init__
    functionSourceFile: ''
    functionUses: 59
    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 0x7f9830b063a0>
    - <ast.Constant object at 0x7f9830b06760>
    argNames:
    - self
    - providers
    - conversion_func
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 684
    functionName: botocore.configprovider.ChainProvider.__init__
    functionSourceFile: ''
    functionUses: 58
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - env
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 816
    functionName: botocore.configprovider.EnvironmentProvider.__init__
    functionSourceFile: ''
    functionUses: 56
    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: env_var_providers.append
    functionSourceFile: <builtin>
    functionUses: 53
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - config_var_name
    - session
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 778
    functionName: botocore.configprovider.ScopedConfigProvider.__init__
    functionSourceFile: ''
    functionUses: 56
    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: scoped_config_providers.append
    functionSourceFile: <builtin>
    functionUses: 53
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - memo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 475
    functionName: botocore.configprovider.ConfigValueStore.__deepcopy__
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.configprovider.ConfigValueStore.set_config_variable
    - mapping.items
    - copy.deepcopy
    - botocore.configprovider.ConfigValueStore.set_config_provider
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - logical_name
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 531
    functionName: botocore.configprovider.ConfigValueStore.set_config_variable
    functionSourceFile: ''
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 482
    functionName: botocore.configprovider.ConfigValueStore.__copy__
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - copy.copy
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.configprovider.ConfigValueStore.set_config_variable
    - mapping.items
    - botocore.configprovider.ConfigValueStore.set_config_provider
    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: provider.provide
    functionSourceFile: <builtin>
    functionUses: 46
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - logical_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 510
    functionName: botocore.configprovider.ConfigValueStore.get_config_provider
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - logical_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 557
    functionName: botocore.configprovider.ConfigValueStore.clear_config_variable
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - config_store
    - mode
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 18
    functionLinenumber: 592
    functionName: botocore.configprovider.SmartDefaultsConfigStoreFactory.merge_smart_defaults
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - urllib.parse.urlencode
    - UNSAFE_URL_CHARS.intersection
    - botocore.utils.IMDSRegionProvider._get_instance_metadata_region
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.LoginProvider.__init__
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.session.Session.user_agent
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - proxy_manager_kwargs.update
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - delim.join
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - botocore.utils.IMDSRegionProvider.provide
    - url.startswith
    - io.BytesIO.lower
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.utils.IMDSRegionProvider._create_fetcher
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.utils.IMDSFetcher._log_imds_response
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.utils.JSONFileCache.__init__
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - urllib.request.getproxies
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.credentials.ProcessProvider.__init__
    - botocore.utils.IMDSFetcher._get_request
    - botocore.session.Session._create_credential_resolver
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - urllib3.PoolManager.connection_from_url
    - base64.b64encode.strip
    - headers.items
    - botocore.monitoring.MonitorEventAdapter.__init__
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.utils.IMDSFetcher._add_user_agent
    - allowed.match
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.utils.IMDSRegionProvider._get_fetcher
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - urllib3.proxy_from_url
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - platform.system
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - urllib.parse.unquote
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - auth_str.encode
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.session.Session._get_crt_version
    - botocore.httpsession.ProxyConfiguration.__init__
    - botocore.utils.determine_content_length
    - mapping.get
    - value.encode
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - key.encode
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - botocore.httpsession.get_cert_path
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.utils.get_environ_proxies
    - botocore.utils.InstanceMetadataRegionFetcher._get_region
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - botocore.credentials.InstanceMetadataProvider.__init__
    - conn.urlopen
    - urllib.request.proxy_bypass
    - config_variables.items
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - json.loads
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.monitoring.CSMSerializer.__init__
    - botocore.credentials.EnvProvider.__init__
    - providers.remove
    - url.lower
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.awsrequest.AWSResponse
    - os.path.expandvars
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - provider.provide
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - http.client.HTTPMessage.items
    - botocore.httpsession.ensure_boolean
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - botocore.credentials.ContainerProvider.__init__
    - scoped_config_providers.append
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - botocore.utils.InstanceMetadataRegionFetcher.retrieve_region
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.resolve_auto_mode
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - botocore.compat.ensure_bytes
    - config.get
    - loader.is_builtin_path
    - io.BytesIO.encode
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - platform.python_version
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - certifi.where
    - original.params.items
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - mapping.items
    - urllib.parse.urlparse
    - platform.release
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - region_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 17
    functionLinenumber: 604
    functionName: botocore.configprovider.SmartDefaultsConfigStoreFactory.resolve_auto_mode
    functionSourceFile: botocore.configprovider
    functionUses: 1
    functionsReached:
    - botocore.httpsession.URLLib3Session._path_url
    - botocore.httpsession.ProxyConfiguration.proxy_headers_for
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - urllib.parse.urlencode
    - UNSAFE_URL_CHARS.intersection
    - botocore.utils.IMDSRegionProvider._get_instance_metadata_region
    - botocore.utils.IMDSFetcher._assert_v1_enabled
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.awsrequest.AWSRequest.__init__
    - logger.debug
    - botocore.utils.IMDSFetcher._assert_enabled
    - botocore.credentials.LoginProvider.__init__
    - proxy_url.startswith
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - urllib3.util.retry.Retry
    - botocore.awsrequest.AWSRequestPreparer._prepare_headers
    - urllib.parse.urlencode.items
    - botocore.session.Session.user_agent
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - proxy_manager_kwargs.update
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - delim.join
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - botocore.utils.IMDSRegionProvider.provide
    - url.startswith
    - io.BytesIO.lower
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.utils.IMDSRegionProvider._create_fetcher
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.utils.IMDSFetcher._log_imds_response
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.IMDSFetcher._default_retry
    - botocore.utils.JSONFileCache.__init__
    - botocore.httpsession.URLLib3Session._setup_ssl_cert
    - urllib.request.getproxies
    - botocore.httpsession.URLLib3Session._setup_proxy_ssl_context
    - botocore.httpsession.URLLib3Session.send
    - botocore.utils.IMDSFetcher._is_empty
    - botocore.credentials.ProcessProvider.__init__
    - botocore.utils.IMDSFetcher._get_request
    - botocore.session.Session._create_credential_resolver
    - botocore.utils.InstanceMetadataFetcher._is_invalid_json
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - urllib3.PoolManager.connection_from_url
    - base64.b64encode.strip
    - headers.items
    - botocore.monitoring.MonitorEventAdapter.__init__
    - botocore.httpsession.URLLib3Session._get_proxy_manager
    - botocore.utils.IMDSFetcher._add_user_agent
    - allowed.match
    - <builtin>.list
    - http.client.HTTPMessage.__init__
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.utils.IMDSRegionProvider._get_fetcher
    - botocore.httpsession.URLLib3Session._get_connection_manager
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - urllib3.proxy_from_url
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - platform.system
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - urllib.parse.unquote
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - botocore.utils.IMDSFetcher._fetch_metadata_token
    - loader.load_data
    - collections.abc.MutableMapping.items
    - botocore.httpsession.ProxyConfiguration._get_auth_from_url
    - body.tell
    - val.lower
    - auth_str.encode
    - botocore.configprovider.InstanceVarProvider.__init__
    - session.instance_variables
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.session.Session._get_crt_version
    - botocore.httpsession.ProxyConfiguration.__init__
    - botocore.utils.determine_content_length
    - mapping.get
    - value.encode
    - botocore.httpsession.URLLib3Session._get_request_target
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name
    - botocore.awsrequest.AWSRequestPreparer._determine_content_length
    - key.encode
    - botocore.httpsession.get_cert_path
    - botocore.utils.IMDSFetcher._is_non_ok_response
    - botocore.utils.get_environ_proxies
    - botocore.utils.InstanceMetadataRegionFetcher._get_region
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - botocore.httpsession.ProxyConfiguration._construct_basic_auth
    - botocore.utils.IMDSFetcher._construct_url
    - botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.awsrequest.AWSRequestPreparer._to_utf8
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - botocore.awsrequest.AWSRequestPreparer._prepare_body
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - <builtin>.str
    - botocore.awsrequest.HeadersDict.__init__
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - botocore.awsrequest.AWSRequest.prepare
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.httpsession.URLLib3Session._chunked
    - botocore.credentials.InstanceMetadataProvider.__init__
    - conn.urlopen
    - urllib.request.proxy_bypass
    - config_variables.items
    - urllib3.util.ssl_.is_ipaddress
    - botocore.awsrequest.AWSRequestPreparer._prepare_url
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - json.loads
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.monitoring.CSMSerializer.__init__
    - botocore.credentials.EnvProvider.__init__
    - providers.remove
    - url.lower
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.awsrequest.AWSResponse
    - os.path.expandvars
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - provider.provide
    - botocore.httpsession.URLLib3Session._proxies_kwargs
    - pool_manager_kwargs.update
    - <builtin>.type
    - session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_cert_chain
    - urllib3.util.url.parse_url
    - e.kwargs.get
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.awsrequest.AWSRequestPreparer.prepare
    - botocore.httpsession.ProxyConfiguration.proxy_url_for
    - botocore.credentials.ContainerProvider.__init__
    - botocore.httpsession.ensure_boolean
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - http.client.HTTPMessage.items
    - scoped_config_providers.append
    - proxies_kwargs.items
    - base64.b64encode
    - botocore.awsrequest.AWSPreparedRequest.__init__
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - botocore.httpsession.ProxyConfiguration._fix_proxy_url
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - <builtin>.bool
    - logger_args.append
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - botocore.utils.InstanceMetadataRegionFetcher.retrieve_region
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - botocore.compat.ensure_bytes
    - config.get
    - loader.is_builtin_path
    - io.BytesIO.encode
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.httpsession._is_ipaddress
    - botocore.httpsession.ProxyConfiguration._proxies.get
    - collections.abc.MutableMapping.update
    - platform.python_version
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - certifi.where
    - original.params.items
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - botocore.httpsession.create_urllib3_context
    - <builtin>.range
    - headers.get
    - IPV6_ADDRZ_RE.match
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.load_verify_locations
    - mapping.items
    - urllib.parse.urlparse
    - platform.release
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - config_store
    - variable
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 626
    functionName: botocore.configprovider.SmartDefaultsConfigStoreFactory._update_provider
    functionSourceFile: botocore.configprovider
    functionUses: 3
    functionsReached:
    - config_store.set_config_provider
    - botocore.configprovider.ChainProvider.__init__
    - chain_provider_copy.set_default_provider
    - botocore.configprovider.ConstantProvider.__init__
    - <builtin>.isinstance
    - copy.deepcopy
    - config_store.get_config_provider
    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: config_store.get_config_provider
    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: chain_provider_copy.set_default_provider
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - config_store
    - section_name
    - variable
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 639
    functionName: botocore.configprovider.SmartDefaultsConfigStoreFactory._update_section_provider
    functionSourceFile: botocore.configprovider
    functionUses: 1
    functionsReached:
    - config_store.set_config_provider
    - section_provider_copy.set_default_provider
    - botocore.configprovider.ConstantProvider.__init__
    - copy.deepcopy
    - config_store.get_config_provider
    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: section_provider_copy.set_default_provider
    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
    - config_store
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 650
    functionName: botocore.configprovider.SmartDefaultsConfigStoreFactory._set_retryMode
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - botocore.configprovider.SmartDefaultsConfigStoreFactory._update_provider
    - config_store.set_config_provider
    - botocore.configprovider.ChainProvider.__init__
    - chain_provider_copy.set_default_provider
    - botocore.configprovider.ConstantProvider.__init__
    - <builtin>.isinstance
    - copy.deepcopy
    - config_store.get_config_provider
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - config_store
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 653
    functionName: botocore.configprovider.SmartDefaultsConfigStoreFactory._set_stsRegionalEndpoints
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - botocore.configprovider.SmartDefaultsConfigStoreFactory._update_provider
    - config_store.set_config_provider
    - botocore.configprovider.ChainProvider.__init__
    - chain_provider_copy.set_default_provider
    - botocore.configprovider.ConstantProvider.__init__
    - <builtin>.isinstance
    - copy.deepcopy
    - config_store.get_config_provider
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - config_store
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 656
    functionName: botocore.configprovider.SmartDefaultsConfigStoreFactory._set_s3UsEast1RegionalEndpoints
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - config_store.set_config_provider
    - section_provider_copy.set_default_provider
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.configprovider.SmartDefaultsConfigStoreFactory._update_section_provider
    - copy.deepcopy
    - config_store.get_config_provider
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - config_store
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 661
    functionName: botocore.configprovider.SmartDefaultsConfigStoreFactory._set_connectTimeoutInMillis
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - botocore.configprovider.SmartDefaultsConfigStoreFactory._update_provider
    - config_store.set_config_provider
    - botocore.configprovider.ChainProvider.__init__
    - chain_provider_copy.set_default_provider
    - botocore.configprovider.ConstantProvider.__init__
    - <builtin>.isinstance
    - copy.deepcopy
    - config_store.get_config_provider
    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: 672
    functionName: botocore.configprovider.BaseProvider.provide
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - memo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 701
    functionName: botocore.configprovider.ChainProvider.__deepcopy__
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - copy.deepcopy
    - botocore.configprovider.ChainProvider.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 706
    functionName: botocore.configprovider.ChainProvider.provide
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - provider.provide
    - botocore.configprovider.ChainProvider._convert_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 737
    functionName: botocore.configprovider.ChainProvider._convert_type
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - default_provider
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 719
    functionName: botocore.configprovider.ChainProvider.set_default_provider
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - <builtin>.sum
    - <builtin>.isinstance
    - logger.info
    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>.sum
    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: 742
    functionName: botocore.configprovider.ChainProvider.__repr__
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - memo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 762
    functionName: botocore.configprovider.InstanceVarProvider.__deepcopy__
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - copy.deepcopy
    - botocore.configprovider.InstanceVarProvider.__init__
    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: 1
    functionLinenumber: 767
    functionName: botocore.configprovider.InstanceVarProvider.provide
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - instance_vars.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: instance_vars.get
    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: 0
    functionLinenumber: 773
    functionName: botocore.configprovider.InstanceVarProvider.__repr__
    functionSourceFile: botocore.configprovider
    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
    - memo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 794
    functionName: botocore.configprovider.ScopedConfigProvider.__deepcopy__
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - copy.deepcopy
    - botocore.configprovider.ScopedConfigProvider.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 14
    functionLinenumber: 799
    functionName: botocore.configprovider.ScopedConfigProvider.provide
    functionSourceFile: botocore.configprovider
    functionUses: 1
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - botocore.session.Session._build_profile_map
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - scoped_config.get
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - profile_map.get
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.session.Session.get_scoped_config
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - section_config.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    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: section_config.get
    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: 0
    functionLinenumber: 809
    functionName: botocore.configprovider.ScopedConfigProvider.__repr__
    functionSourceFile: botocore.configprovider
    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
    - memo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 828
    functionName: botocore.configprovider.EnvironmentProvider.__deepcopy__
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - copy.deepcopy
    - botocore.configprovider.EnvironmentProvider.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 833
    functionName: botocore.configprovider.EnvironmentProvider.provide
    functionSourceFile: botocore.configprovider
    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: 0
    functionLinenumber: 839
    functionName: botocore.configprovider.EnvironmentProvider.__repr__
    functionSourceFile: botocore.configprovider
    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
    - memo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 860
    functionName: botocore.configprovider.SectionConfigProvider.__deepcopy__
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - copy.deepcopy
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 867
    functionName: botocore.configprovider.SectionConfigProvider.provide
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - warnings.warn
    - botocore.session.Session._get_internal_component
    - botocore.configprovider.ScopedConfigProvider.provide
    - UNSAFE_URL_CHARS.intersection
    - botocore.session.Session._create_token_resolver
    - endpoint_mode.lower
    - session.user_agent
    - botocore.utils.is_valid_uri
    - botocore.credentials.LoginProvider.__init__
    - logger.debug
    - urllib3.util.ssl_.SSLContext
    - botocore.session.Session._build_profile_map
    - logger.warning
    - botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider
    - botocore.configprovider.ConfigChainFactory._get_env_providers
    - botocore.configprovider.ConfigValueStore.set_config_provider
    - botocore.credentials.SharedCredentialProvider.__init__
    - botocore.session.ComponentLocator.get_component
    - botocore.utils.IMDSRegionProvider.__init__
    - scoped_config.get
    - urllib.parse.urlsplit
    - botocore.utils.get_login_token_cache_directory
    - env.get
    - botocore.credentials.ProfileProviderBuilder._create_config_provider
    - botocore.credentials.ProfileProviderBuilder._create_process_provider
    - botocore.regions.EndpointResolver.__init__
    - botocore.credentials.BotoProvider.__init__
    - botocore.utils.resolve_imds_endpoint_mode
    - os.environ.copy
    - botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__
    - os.environ.get
    - botocore.configprovider.ConfigChainFactory.create_config_chain
    - botocore.utils.JSONFileCache.__init__
    - urllib.request.getproxies
    - botocore.credentials.ProcessProvider.__init__
    - botocore.tokens.TokenProviderChain.__init__
    - botocore.session.Session._create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder._create_login_provider
    - botocore.monitoring.MonitorEventAdapter.__init__
    - allowed.match
    - profile_map.get
    - botocore.session.SubsetChainConfigFactory.create_config_chain
    - env_var_providers.append
    - botocore.utils.IMDSFetcher.__init__
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - providers.extend
    - botocore.configprovider.ConfigValueStore.__init__
    - botocore.session.SubsetChainConfigFactory.__init__
    - botocore.configprovider.ScopedConfigProvider.__init__
    - botocore.configprovider.create_botocore_default_config_mapping
    - botocore.credentials.OriginalEC2Provider.__init__
    - os.path.join
    - botocore.session.Session._register_endpoint_resolver.create_default_resolver
    - botocore.utils.ContainerMetadataFetcher.__init__
    - <builtin>.getattr
    - loader.load_data
    - collections.abc.MutableMapping.items
    - session.instance_variables
    - botocore.configprovider.InstanceVarProvider.__init__
    - botocore.session.Session.get_scoped_config
    - botocore.monitoring.CSMSerializer._validate_client_id
    - botocore.credentials.SSOProvider.__init__
    - botocore.tokens.ScopedEnvTokenProvider.__init__
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - mapping.get
    - section_config.get
    - botocore.monitoring.SocketPublisher.__init__
    - botocore.utils.get_environ_proxies
    - botocore.configprovider.ConfigValueStore.get_config_variable
    - <builtin>.hasattr
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfigChainFactory.__init__
    - botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory
    - socket.socket
    - botocore.configprovider.DefaultConfigResolver.__init__
    - botocore.session.Session._get_config_variable_with_custom_methods
    - botocore.monitoring.Monitor.__init__
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - botocore.credentials.InstanceMetadataProvider.__init__
    - urllib.request.proxy_bypass
    - config_variables.items
    - botocore.session.Session._create_csm_monitor
    - botocore.configprovider.ConfigChainFactory._get_scoped_config_providers
    - botocore.utils.is_valid_endpoint_url
    - botocore.session.Session.get_component
    - botocore.configprovider.SmartDefaultsConfigStoreFactory.__init__
    - loader.load_data_with_path
    - botocore.credentials.EnvProvider.__init__
    - botocore.monitoring.CSMSerializer.__init__
    - providers.remove
    - botocore.configprovider.SectionConfigProvider.__init__
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - os.path.expandvars
    - provider.provide
    - pool_manager_kwargs.update
    - session.get_config_variable
    - urllib3.PoolManager
    - botocore.credentials.ConfigProvider.__init__
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - botocore.credentials.ContainerProvider.__init__
    - <builtin>.len
    - botocore.credentials.CredentialResolver.__init__
    - scoped_config_providers.append
    - botocore.utils.SSOTokenLoader.__init__
    - botocore.credentials.CanonicalNameCredentialSourcer.__init__
    - botocore.configprovider.ConstantProvider.__init__
    - botocore.tokens.SSOTokenProvider.__init__
    - botocore.session.Session._register_default_config_resolver.create_default_config_resolver
    - botocore.configprovider._create_config_chain_mapping
    - os.path.expanduser
    - botocore.session.Session.get_config_variable
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - botocore.credentials.ProfileProviderBuilder._create_web_identity_provider
    - botocore.credentials.AssumeRoleProvider.__init__
    - urllib3.Timeout
    - providers.append
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.tokens.create_token_resolver
    - <builtin>.super
    - botocore.credentials._get_client_creator
    - botocore.utils.IMDSFetcher._select_base_url
    - <builtin>.set
    - botocore.configprovider.ChainProvider.__init__
    - config.get
    - loader.is_builtin_path
    - botocore.credentials.ProfileProviderBuilder.providers
    - botocore.credentials.EnvProvider._build_mapping
    - botocore.credentials.ProfileProviderBuilder._create_sso_provider
    - botocore.credentials.create_credential_resolver
    - botocore.credentials.ProfileProviderBuilder.__init__
    - botocore.httpsession.create_urllib3_context
    - IPV6_ADDRZ_RE.match
    - mapping.items
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - default_provider
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 885
    functionName: botocore.configprovider.SectionConfigProvider.set_default_provider
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - provider.set_default_provider
    - botocore.configprovider.ChainProvider.__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: provider.set_default_provider
    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: 0
    functionLinenumber: 896
    functionName: botocore.configprovider.SectionConfigProvider.__repr__
    functionSourceFile: botocore.configprovider
    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
    - memo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 910
    functionName: botocore.configprovider.ConstantProvider.__deepcopy__
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - copy.deepcopy
    - botocore.configprovider.ConstantProvider.__init__
    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: 913
    functionName: botocore.configprovider.ConstantProvider.provide
    functionSourceFile: botocore.configprovider
    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: 917
    functionName: botocore.configprovider.ConstantProvider.__repr__
    functionSourceFile: botocore.configprovider
    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
    - client_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1004
    functionName: botocore.configprovider.ConfiguredEndpointProvider._get_snake_case_service_id
    functionSourceFile: botocore.configprovider
    functionUses: 3
    functionsReached:
    - utils.SERVICE_NAME_ALIASES.get
    - utils.CLIENT_NAME_TO_HYPHENIZED_SERVICE_ID_OVERRIDES.get
    - hyphenized_service_id.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 971
    functionName: botocore.configprovider.ConfiguredEndpointProvider.provide
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - logger.debug
    - logger.info
    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.SERVICE_NAME_ALIASES.get
    functionSourceFile: <builtin>
    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: utils.CLIENT_NAME_TO_HYPHENIZED_SERVICE_ID_OVERRIDES.get
    functionSourceFile: <builtin>
    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: hyphenized_service_id.replace
    functionSourceFile: <builtin>
    functionUses: 4
    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: 1015
    functionName: botocore.configprovider.ConfiguredEndpointProvider._get_service_env_var_name
    functionSourceFile: botocore.configprovider
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1019
    functionName: botocore.configprovider.ConfiguredEndpointProvider._get_services_config
    functionSourceFile: botocore.configprovider
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - InvalidConfigError
    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: 1038
    functionName: botocore.configprovider.ConfiguredEndpointProvider._get_endpoint_url_config_service
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - botocore.configprovider.ConfiguredEndpointProvider._get_services_config
    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: 1046
    functionName: botocore.configprovider.ConfiguredEndpointProvider._get_endpoint_url_config_global
    functionSourceFile: botocore.configprovider
    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: 1049
    functionName: botocore.configprovider.ConfiguredEndpointProvider._get_endpoint_url_environment_service
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.ConfiguredEndpointProvider._get_service_env_var_name
    - botocore.configprovider.EnvironmentProvider.provide
    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: 1054
    functionName: botocore.configprovider.ConfiguredEndpointProvider._get_endpoint_url_environment_global
    functionSourceFile: botocore.configprovider
    functionUses: 0
    functionsReached:
    - botocore.configprovider.EnvironmentProvider.__init__
    - botocore.configprovider.EnvironmentProvider.provide
    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: botocore.client
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - botocore.history.HistoryRecorder.__init__
    - botocore.history.get_global_history_recorder
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7f9830e0ca30>
    - <ast.Constant object at 0x7f9830e0cb20>
    - <ast.Constant object at 0x7f9830e0cdf0>
    - <ast.Constant object at 0x7f9830e0c640>
    - <ast.Constant object at 0x7f9830e0c2b0>
    argNames:
    - self
    - loader
    - endpoint_resolver
    - user_agent
    - event_emitter
    - retry_handler_factory
    - retry_config_translator
    - response_parser_factory
    - exceptions_factory
    - config_store
    - user_agent_creator
    - auth_token_resolver
    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: 0
    functionLinenumber: 73
    functionName: botocore.client.ClientCreator.__init__
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    IfCount: 2
    argCount: 11
    argDefaultValues:
    - <ast.Constant object at 0x7f98315448b0>
    - <ast.Constant object at 0x7f98315448e0>
    - <ast.Constant object at 0x7f9831544280>
    - <ast.Constant object at 0x7f9831544370>
    - <ast.Constant object at 0x7f9831544550>
    - <ast.Constant object at 0x7f98315446a0>
    - <ast.Constant object at 0x7f9831544fd0>
    - <ast.Constant object at 0x7f9831544520>
    argNames:
    - self
    - service_name
    - region_name
    - is_secure
    - endpoint_url
    - verify
    - credentials
    - scoped_config
    - api_version
    - client_config
    - auth_token
    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: 9
    functionLinenumber: 103
    functionName: botocore.client.ClientCreator.create_client
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - botocore.retries.standard.TransientRetryableChecker.__init__
    - service_config.get
    - _end_cap_regex.sub
    - botocore.useragent._get_crt_version
    - botocore.xform_name
    - botocore.retries.throttling.CubicCalculator.__init__
    - botocore.args.ClientArgsCreator._compute_sigv4a_signing_region_set_config
    - botocore.retries.standard.register_retry_handler
    - botocore.context.get_context
    - time.time
    - botocore.validate.ParamValidationDecorator.__init__
    - botocore.args.ClientArgsCreator._set_region_if_custom_s3_endpoint
    - botocore.hooks.first_non_none_response
    - copied_args.pop
    - botocore.retries.bucket.Clock.current_time
    - UNSAFE_URL_CHARS.intersection
    - service_model.metadata.get
    - botocore.args.ClientArgsCreator._build_endpoint_resolver
    - botocore.useragent.UserAgentString.__init__
    - botocore.retries.standard.RetryHandler.__init__
    - botocore.retries.standard.ThrottledRetryableChecker.__init__
    - botocore.retries.standard.StandardRetryConditions.__init__
    - events.register_first
    - logger.debug
    - botocore.client.ClientCreator._register_importexport_events
    - threading.Condition
    - <builtin>.all
    - botocore.args.ClientArgsCreator._compute_configured_endpoint_url
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - botocore.client.ClientCreator._evaluate_client_specific_token
    - config_kwargs.update
    - botocore.args.ClientArgsCreator._compute_account_id_endpoint_mode_config
    - botocore.client.ClientCreator._register_v2_standard_retries
    - botocore.endpoint_provider.RuleCreator.create
    - botocore.client.ClientCreator._load_service_endpoints_ruleset
    - botocore.client.ClientCreator._register_s3express_events
    - botocore.args.ClientArgsCreator._compute_signature_version_config
    - retries.copy
    - botocore.args.ClientArgsCreator._handle_checksum_config
    - botocore.utils.S3ControlArnParamHandlerv2.__init__
    - botocore.utils.is_s3_accelerate_url
    - botocore.retries.standard.OrRetryChecker.__init__
    - client_context.update
    - scoped_config.get
    - urllib.parse.urlsplit
    - account_id_endpoint_mode.lower
    - botocore.client.ClientCreator._register_v2_adaptive_retries
    - service_description.get
    - botocore.args.ClientArgsCreator._compute_socket_options
    - value.split
    - parameter_type.lower
    - botocore.args.ClientArgsCreator._resolve_endpoint
    - botocore.endpoint_provider.RuleSet._ingest_parameter_spec
    - os.environ.get
    - config_vars.update
    - botocore.retries.bucket.Clock.__init__
    - botocore.client.ClientEndpointBridge._resolve_endpoint_variant_config_var
    - item.replace
    - botocore.retries.adaptive.RateClocker.__init__
    - botocore.endpoint.EndpointCreator.__init__
    - client_meta.events.register
    - <builtin>.tuple
    - botocore.endpoint.EndpointCreator._get_proxies
    - botocore.config.Config.__init__
    - urllib.request.getproxies
    - botocore.discovery.EndpointDiscoveryManager.__init__
    - is_special.group
    - botocore.args.ClientArgsCreator._is_s3_service
    - botocore.args.ClientArgsCreator._compute_retry_max_attempts
    - value.lower
    - threading.Lock
    - botocore.parsers.create_parser
    - botocore.config.Config._validate_s3_configuration
    - allowed.match
    - botocore.parsers.ResponseParserFactory.__init__
    - <builtin>.list
    - botocore.endpoint_provider.EndpointProvider.__init__
    - ctx.features.add
    - botocore.client.ClientCreator._create_methods
    - botocore.discovery.EndpointDiscoveryHandler.__init__
    - math.floor
    - service_id.hyphenize
    - _first_cap_regex.sub
    - config_options.update
    - botocore.args.ClientArgsCreator.get_client_args
    - credentials.get_deferred_property
    - botocore.retries.standard.RetryPolicy.__init__
    - copy.copy
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - botocore.client.ClientEndpointBridge._resolve_use_dualstack_endpoint
    - botocore.args.ClientArgsCreator._compute_user_agent_appid_config
    - botocore.useragent.register_feature_id
    - client.meta.config.retries.get
    - platform.system
    - emitter.register
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.args.ClientArgsCreator._compute_sts_endpoint_config
    - endpoint_bridge.resolve
    - <builtin>.getattr
    - botocore.retries.standard.ModeledRetryableChecker.__init__
    - <builtin>.dict
    - botocore.client.ClientCreator._normalize_endpoint_discovery_config
    - botocore.client.ClientCreator._requires_endpoint_discovery
    - <builtin>.setattr
    - endpoint_config.get
    - botocore.retries.standard.RetryQuotaChecker.__init__
    - botocore.retries.standard.ThrottlingErrorDetector.__init__
    - botocore.utils.S3RegionRedirectorv2.register
    - logger.info
    - val.lower
    - botocore.args.ClientArgsCreator._should_force_s3_global
    - botocore.useragent.UserAgentString.from_environment
    - kwargs.items
    - retries.pop
    - value.upper
    - botocore.utils.S3ExpressIdentityResolver.register
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.endpoint.EndpointCreator.create_endpoint
    - spec.get
    - botocore.docs.docstring.LazyLoadedDocstring.__init__
    - botocore.retries.bucket.TokenBucket.__init__
    - botocore.httpsession.ProxyConfiguration.__init__
    - config_vars.items
    - botocore.args.ClientArgsCreator._compute_inject_host_prefix
    - retry_mode.upper
    - botocore.utils.S3ExpressIdentityCache.__init__
    - botocore.utils.ensure_boolean
    - name.replace
    - botocore.args.ClientArgsCreator._validate_min_compression_size
    - botocore.discovery.EndpointDiscoveryHandler.register
    - botocore.retries.standard.ExponentialBackoff.__init__
    - botocore.args.ClientArgsCreator.compute_client_args
    - botocore.client.ClientCreator._set_s3_presign_signature_version
    - botocore.utils.get_environ_proxies
    - botocore.args.ClientArgsCreator.compute_s3_config
    - kwargs.pop
    - <builtin>.hasattr
    - botocore.utils.S3ControlArnParamHandlerv2.register
    - urllib.parse.urlparse
    - botocore.client.ClientCreator._transform_legacy_retries
    - s3_config.get
    - botocore.model.ServiceModel.operation_model
    - botocore.client.ClientCreator._create_client_class
    - <builtin>.enumerate
    - <builtin>.str
    - botocore.retries.adaptive.ClientRateLimiter.__init__
    - botocore.model.OperationModel.__init__
    - botocore.parsers.ResponseParserFactory.create_parser
    - botocore.client.ClientEndpointBridge.resolver_uses_builtin_data
    - client.meta.events.register
    - botocore.args.ClientArgsCreator._compute_request_compression_config
    - botocore.args.ClientArgsCreator._compute_checksum_config
    - botocore.args.ClientArgsCreator._set_global_sts_endpoint
    - events.register
    - botocore.utils.should_bypass_proxies
    - botocore.client.ClientCreator._set_importexport_signature_version
    - operation_model.get
    - <builtin>.isinstance
    - <builtin>.int
    - enabled.lower
    - original_config.get
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - urllib.request.proxy_bypass
    - botocore.retries.adaptive.register_retry_handler
    - botocore.utils.is_valid_endpoint_url
    - botocore.args.ClientArgsCreator._compute_auth_scheme_preference_config
    - botocore.config.Config._validate_retry_configuration
    - botocore.client._get_configured_signature_version
    - s3_configuration.update
    - botocore.retries.standard.MaxAttemptsChecker.__init__
    - botocore.endpoint_provider.ParameterDefinition.__init__
    - botocore.client.ClientCreator._normalize_fips_region
    - botocore.args.ClientArgsCreator._compute_s3_endpoint_config
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - botocore.signers.RequestSigner.__init__
    - botocore.utils.S3ExpressIdentityResolver.__init__
    - s3.get
    - urllib.parse.urlsplit.netloc.endswith
    - pool_manager_kwargs.update
    - botocore.auth.resolve_auth_type
    - <builtin>.type
    - botocore.args.ClientArgsCreator._register_checksum_config_feature_ids
    - botocore.utils.S3RegionRedirectorv2.__init__
    - botocore.args.ClientArgsCreator._get_sts_regional_endpoints_config
    - event_emitter.register
    - botocore.args.ClientArgsCreator._compute_retry_mode
    - item.strip
    - urllib3.PoolManager
    - botocore.client.ClientEndpointBridge._is_s3_dualstack_mode
    - region_name.replace
    - s3_configuration.copy
    - re.compile
    - botocore.client.ClientCreator._register_s3_control_events
    - botocore.model.ServiceModel.__init__
    - botocore.utils.is_valid_ipv6_endpoint_url
    - <builtin>.len
    - botocore.args.ClientArgsCreator._ignore_configured_endpoint_urls
    - botocore.retries.quota.RetryQuota.__init__
    - botocore.endpoint_provider.RuleSetStandardLibrary.__init__
    - botocore.args.ClientArgsCreator.compute_endpoint_resolver_builtin_defaults
    - botocore.client.ClientCreator._get_client_args
    - weakref.proxy
    - urllib.parse.urlsplit.netloc.split
    - botocore.retries.throttling.CubicCalculator._calculate_zero_point
    - botocore.client.ClientCreator._create_name_mapping
    - botocore.client.ClientCreator._load_service_model
    - retries.items
    - config_kwargs.get
    - contextvars.ContextVar.get
    - botocore.client.ClientEndpointBridge.__init__
    - botocore.regions.EndpointRulesetResolver.__init__
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - socket_options.append
    - botocore.args.ClientArgsCreator._validate_s3_regional_config
    - botocore.args.ClientArgsCreator._compute_endpoint_config
    - botocore.args.ClientArgsCreator._compute_retry_config
    - matched.lower
    - botocore.config.Config.merge
    - urllib3.Timeout
    - botocore.client.ClientCreator._register_legacy_retries
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.endpoint_provider.RuleSet.__init__
    - botocore.endpoint.EndpointCreator._get_verify_value
    - <builtin>.super
    - botocore.discovery.EndpointDiscoveryModel.__init__
    - botocore.client.ClientCreator._create_api_method
    - <builtin>.set
    - botocore.args.ClientArgsCreator._compute_connect_timeout
    - botocore.endpoint.Endpoint.__init__
    - botocore.model.ShapeResolver.__init__
    - _special_case_transform.search
    - platform.python_version
    - re.sub
    - botocore.serialize.create_serializer
    - botocore.client.ClientCreator._register_retries
    - botocore.client.ClientCreator._register_endpoint_discovery
    - parameters.items
    - botocore.httpsession.create_urllib3_context
    - botocore.args.ClientArgsCreator.__init__
    - botocore.config.Config._record_user_provided_options
    - botocore.utils.get_service_module_name
    - IPV6_ADDRZ_RE.match
    - platform.python_implementation
    - platform.machine
    - event_emitter.emit
    - botocore.client.ClientCreator._register_s3_events
    - botocore.args.ClientArgsCreator._should_set_global_sts_endpoint
    - platform.release
    - client.meta.service_model.service_id.hyphenize
    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 0x7f98309bddf0>
    argNames:
    - self
    - service_name
    - api_version
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 232
    functionName: botocore.client.ClientCreator._load_service_model
    functionSourceFile: botocore.client
    functionUses: 2
    functionsReached:
    - service_description.get
    - botocore.model.ServiceModel.__init__
    - botocore.model.ShapeResolver.__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 0x7f9830da4280>
    argNames:
    - self
    - service_name
    - api_version
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 239
    functionName: botocore.client.ClientCreator._load_service_endpoints_ruleset
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - service_model
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 192
    functionName: botocore.client.ClientCreator._create_client_class
    functionSourceFile: botocore.client
    functionUses: 2
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - botocore.client.ClientCreator._create_name_mapping
    - botocore.model.ServiceModel.operation_model
    - service_model.metadata.get
    - botocore.client.ClientCreator._create_methods
    - <builtin>.str
    - botocore.model.OperationModel.__init__
    - _first_cap_regex.sub
    - matched.lower
    - operation_model.get
    - <builtin>.super
    - botocore.client.ClientCreator._create_api_method
    - <builtin>.len
    - _special_case_transform.search
    - re.sub
    - <builtin>.type
    - <builtin>.tuple
    - botocore.utils.get_service_module_name
    - botocore.docs.docstring.LazyLoadedDocstring.__init__
    - is_special.group
    - name.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - region_name
    - client_config
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 207
    functionName: botocore.client.ClientCreator._normalize_fips_region
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - config_options.update
    - config_vars.update
    - copy.copy
    - <builtin>.len
    - botocore.config.Config._record_user_provided_options
    - logger.warning
    - retries.items
    - botocore.config.Config.__init__
    - botocore.config.Config._validate_retry_configuration
    - <builtin>.setattr
    - botocore.config.Config._validate_s3_configuration
    - region_name.replace
    - config_vars.items
    - s3.get
    - <builtin>.list
    - kwargs.items
    - botocore.config.Config.merge
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f9830b47430>
    - <ast.Constant object at 0x7f9830b479a0>
    - <ast.Constant object at 0x7f9830b47b80>
    - <ast.Constant object at 0x7f9830b478e0>
    - <ast.Constant object at 0x7f9830b47220>
    - <ast.Constant object at 0x7f9830b477c0>
    argNames:
    - self
    - endpoint_resolver
    - scoped_config
    - client_config
    - default_endpoint
    - service_signing_name
    - config_store
    - service_signature_version
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 643
    functionName: botocore.client.ClientEndpointBridge.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - signing_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 619
    functionName: botocore.client.ClientCreator._evaluate_client_specific_token
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 13
    argDefaultValues: []
    argNames:
    - self
    - service_model
    - region_name
    - is_secure
    - endpoint_url
    - verify
    - credentials
    - scoped_config
    - client_config
    - endpoint_bridge
    - auth_token
    - endpoints_ruleset_data
    - partition_data
    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
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 533
    functionName: botocore.client.ClientCreator._get_client_args
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - botocore.useragent._get_crt_version
    - botocore.args.ClientArgsCreator._compute_sigv4a_signing_region_set_config
    - botocore.context.get_context
    - botocore.validate.ParamValidationDecorator.__init__
    - botocore.args.ClientArgsCreator._set_region_if_custom_s3_endpoint
    - UNSAFE_URL_CHARS.intersection
    - botocore.args.ClientArgsCreator._build_endpoint_resolver
    - botocore.useragent.UserAgentString.__init__
    - botocore.args.ClientArgsCreator._compute_configured_endpoint_url
    - logger.debug
    - <builtin>.all
    - urllib3.util.ssl_.SSLContext
    - logger.warning
    - config_kwargs.update
    - botocore.args.ClientArgsCreator._compute_account_id_endpoint_mode_config
    - botocore.endpoint_provider.RuleCreator.create
    - botocore.args.ClientArgsCreator._compute_signature_version_config
    - botocore.args.ClientArgsCreator._handle_checksum_config
    - botocore.utils.is_s3_accelerate_url
    - client_context.update
    - scoped_config.get
    - urllib.parse.urlsplit
    - account_id_endpoint_mode.lower
    - botocore.args.ClientArgsCreator._compute_socket_options
    - value.split
    - botocore.args.ClientArgsCreator._resolve_endpoint
    - parameter_type.lower
    - botocore.endpoint_provider.RuleSet._ingest_parameter_spec
    - os.environ.get
    - config_vars.update
    - botocore.client.ClientEndpointBridge._resolve_endpoint_variant_config_var
    - item.replace
    - botocore.endpoint.EndpointCreator.__init__
    - botocore.endpoint.EndpointCreator._get_proxies
    - botocore.config.Config.__init__
    - urllib.request.getproxies
    - botocore.args.ClientArgsCreator._is_s3_service
    - botocore.args.ClientArgsCreator._compute_retry_max_attempts
    - value.lower
    - threading.Lock
    - botocore.parsers.create_parser
    - botocore.config.Config._validate_s3_configuration
    - allowed.match
    - botocore.parsers.ResponseParserFactory.__init__
    - <builtin>.list
    - botocore.endpoint_provider.EndpointProvider.__init__
    - ctx.features.add
    - botocore.args.ClientArgsCreator.get_client_args
    - credentials.get_deferred_property
    - botocore.httpsession.URLLib3Session._get_ssl_context
    - copy.copy
    - botocore.client.ClientEndpointBridge._resolve_use_dualstack_endpoint
    - botocore.args.ClientArgsCreator._compute_user_agent_appid_config
    - botocore.useragent.register_feature_id
    - platform.system
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.args.ClientArgsCreator._compute_sts_endpoint_config
    - endpoint_bridge.resolve
    - <builtin>.getattr
    - <builtin>.dict
    - <builtin>.setattr
    - endpoint_config.get
    - val.lower
    - botocore.useragent.UserAgentString.from_environment
    - botocore.args.ClientArgsCreator._should_force_s3_global
    - kwargs.items
    - retries.pop
    - value.upper
    - botocore.httpsession.URLLib3Session.__init__
    - botocore.endpoint.EndpointCreator.create_endpoint
    - spec.get
    - botocore.httpsession.ProxyConfiguration.__init__
    - config_vars.items
    - botocore.args.ClientArgsCreator._compute_inject_host_prefix
    - botocore.utils.ensure_boolean
    - botocore.args.ClientArgsCreator._validate_min_compression_size
    - botocore.args.ClientArgsCreator.compute_client_args
    - botocore.utils.get_environ_proxies
    - botocore.args.ClientArgsCreator.compute_s3_config
    - kwargs.pop
    - <builtin>.hasattr
    - s3_config.get
    - <builtin>.enumerate
    - botocore.args.ClientArgsCreator._compute_request_compression_config
    - botocore.parsers.ResponseParserFactory.create_parser
    - botocore.client.ClientEndpointBridge.resolver_uses_builtin_data
    - botocore.args.ClientArgsCreator._compute_checksum_config
    - botocore.args.ClientArgsCreator._set_global_sts_endpoint
    - botocore.utils.should_bypass_proxies
    - urllib3.contrib.pyopenssl.orig_util_SSLContext
    - <builtin>.isinstance
    - <builtin>.int
    - urllib.request.proxy_bypass
    - botocore.utils.is_valid_endpoint_url
    - botocore.args.ClientArgsCreator._compute_auth_scheme_preference_config
    - botocore.config.Config._validate_retry_configuration
    - s3_configuration.update
    - botocore.endpoint_provider.ParameterDefinition.__init__
    - botocore.args.ClientArgsCreator._compute_s3_endpoint_config
    - botocore.httpsession.create_urllib3_context.disable_check_hostname
    - s3.get
    - botocore.signers.RequestSigner.__init__
    - urllib.parse.urlsplit.netloc.endswith
    - pool_manager_kwargs.update
    - botocore.args.ClientArgsCreator._register_checksum_config_feature_ids
    - <builtin>.type
    - botocore.args.ClientArgsCreator._get_sts_regional_endpoints_config
    - botocore.args.ClientArgsCreator._compute_retry_mode
    - item.strip
    - urllib3.PoolManager
    - botocore.client.ClientEndpointBridge._is_s3_dualstack_mode
    - s3_configuration.copy
    - re.compile
    - botocore.utils.is_valid_ipv6_endpoint_url
    - <builtin>.len
    - botocore.args.ClientArgsCreator._ignore_configured_endpoint_urls
    - botocore.endpoint_provider.RuleSetStandardLibrary.__init__
    - botocore.args.ClientArgsCreator.compute_endpoint_resolver_builtin_defaults
    - weakref.proxy
    - urllib.parse.urlsplit.netloc.split
    - retries.items
    - config_kwargs.get
    - contextvars.ContextVar.get
    - botocore.regions.EndpointRulesetResolver.__init__
    - urllib3.contrib.pyopenssl.orig_util_SSLContext.set_ciphers
    - socket_options.append
    - botocore.args.ClientArgsCreator._validate_s3_regional_config
    - botocore.args.ClientArgsCreator._compute_endpoint_config
    - botocore.args.ClientArgsCreator._compute_retry_config
    - urllib3.Timeout
    - botocore.httpsession.URLLib3Session._get_pool_manager_kwargs
    - botocore.endpoint.EndpointCreator._get_verify_value
    - botocore.endpoint_provider.RuleSet.__init__
    - <builtin>.set
    - botocore.args.ClientArgsCreator._compute_connect_timeout
    - botocore.endpoint.Endpoint.__init__
    - platform.python_version
    - botocore.serialize.create_serializer
    - parameters.items
    - botocore.httpsession.create_urllib3_context
    - botocore.args.ClientArgsCreator.__init__
    - botocore.config.Config._record_user_provided_options
    - IPV6_ADDRZ_RE.match
    - platform.python_implementation
    - platform.machine
    - event_emitter.emit
    - urllib.parse.urlparse
    - botocore.args.ClientArgsCreator._should_set_global_sts_endpoint
    - platform.release
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 5
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 244
    functionName: botocore.client.ClientCreator._register_retries
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - botocore.retries.throttling.CubicCalculator._calculate_zero_point
    - botocore.retries.standard.TransientRetryableChecker.__init__
    - threading.Lock
    - botocore.retries.throttling.CubicCalculator.__init__
    - botocore.retries.standard.register_retry_handler
    - botocore.context.get_context
    - time.time
    - contextvars.ContextVar.get
    - botocore.retries.bucket.Clock.current_time
    - botocore.client.ClientCreator._transform_legacy_retries
    - copied_args.pop
    - math.floor
    - ctx.features.add
    - botocore.retries.standard.RetryHandler.__init__
    - service_id.hyphenize
    - botocore.retries.standard.ThrottledRetryableChecker.__init__
    - botocore.retries.adaptive.ClientRateLimiter.__init__
    - botocore.retries.standard.StandardRetryConditions.__init__
    - logger.debug
    - client.meta.events.register
    - threading.Condition
    - botocore.retries.standard.RetryPolicy.__init__
    - botocore.useragent.register_feature_id
    - botocore.client.ClientCreator._register_legacy_retries
    - client.meta.config.retries.get
    - original_config.get
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.client.ClientCreator._register_v2_standard_retries
    - retries.copy
    - botocore.retries.standard.ModeledRetryableChecker.__init__
    - botocore.retries.adaptive.register_retry_handler
    - botocore.retries.standard.OrRetryChecker.__init__
    - botocore.client.ClientCreator._register_v2_adaptive_retries
    - botocore.retries.standard.RetryQuotaChecker.__init__
    - botocore.retries.standard.ThrottlingErrorDetector.__init__
    - botocore.retries.standard.MaxAttemptsChecker.__init__
    - botocore.retries.bucket.Clock.__init__
    - botocore.retries.adaptive.RateClocker.__init__
    - botocore.retries.bucket.TokenBucket.__init__
    - retry_mode.upper
    - botocore.retries.standard.ExponentialBackoff.__init__
    - botocore.retries.quota.RetryQuota.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - client
    - endpoint_bridge
    - endpoint_url
    - client_config
    - scoped_config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 390
    functionName: botocore.client.ClientCreator._register_s3_events
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - botocore.utils.S3RegionRedirectorv2.__init__
    - service_config.get
    - client.meta.events.register
    - logger.debug
    - weakref.proxy
    - scoped_config.get
    - client_meta.events.register
    - botocore.client._get_configured_signature_version
    - botocore.utils.S3RegionRedirectorv2.register
    - <builtin>.isinstance
    - emitter.register
    - botocore.client.ClientCreator._set_s3_presign_signature_version
    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 0x7f9830a85490>
    - <ast.Constant object at 0x7f9830a85430>
    - <ast.Constant object at 0x7f983015cdc0>
    - <ast.Constant object at 0x7f983015cfd0>
    argNames:
    - self
    - client
    - endpoint_bridge
    - endpoint_url
    - client_config
    - scoped_config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 378
    functionName: botocore.client.ClientCreator._register_s3express_events
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - botocore.utils.S3ExpressIdentityResolver.register
    - weakref.proxy
    - logger.debug
    - emitter.register
    - botocore.utils.S3ExpressIdentityCache.__init__
    - botocore.utils.S3ExpressIdentityResolver.__init__
    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 0x7f98300a44f0>
    - <ast.Constant object at 0x7f98300a4b50>
    - <ast.Constant object at 0x7f98300a4040>
    - <ast.Constant object at 0x7f98300a4670>
    argNames:
    - self
    - client
    - endpoint_bridge
    - endpoint_url
    - client_config
    - scoped_config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 408
    functionName: botocore.client.ClientCreator._register_s3_control_events
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - botocore.utils.S3ControlArnParamHandlerv2.__init__
    - botocore.utils.S3ControlArnParamHandlerv2.register
    - event_emitter.register
    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 0x7f982f731ac0>
    - <ast.Constant object at 0x7f982f731190>
    - <ast.Constant object at 0x7f982f731880>
    - <ast.Constant object at 0x7f982f731910>
    argNames:
    - self
    - client
    - endpoint_bridge
    - endpoint_url
    - client_config
    - scoped_config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 497
    functionName: botocore.client.ClientCreator._register_importexport_events
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - service_config.get
    - logger.debug
    - scoped_config.get
    - client_meta.events.register
    - botocore.client._get_configured_signature_version
    - botocore.client.ClientCreator._set_importexport_signature_version
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client
    - endpoint_url
    - config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 318
    functionName: botocore.client.ClientCreator._register_endpoint_discovery
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - events.register_first
    - weakref.proxy
    - botocore.client.ClientCreator._normalize_endpoint_discovery_config
    - botocore.client.ClientCreator._requires_endpoint_discovery
    - events.register
    - botocore.discovery.EndpointDiscoveryManager.__init__
    - <builtin>.isinstance
    - val.lower
    - enabled.lower
    - botocore.utils.ensure_boolean
    - botocore.discovery.EndpointDiscoveryHandler.__init__
    - botocore.discovery.EndpointDiscoveryHandler.register
    - client.meta.service_model.service_id.hyphenize
    - botocore.discovery.EndpointDiscoveryModel.__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 0x7f9830ba54c0>
    argNames:
    - self
    - service_name
    - api_version
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 188
    functionName: botocore.client.ClientCreator.create_client_class
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - botocore.client.ClientCreator._create_name_mapping
    - botocore.client.ClientCreator._load_service_model
    - botocore.model.ServiceModel.operation_model
    - botocore.client.ClientCreator._create_methods
    - botocore.client.ClientCreator._create_client_class
    - service_model.metadata.get
    - <builtin>.str
    - botocore.model.OperationModel.__init__
    - _first_cap_regex.sub
    - matched.lower
    - operation_model.get
    - <builtin>.super
    - botocore.client.ClientCreator._create_api_method
    - <builtin>.len
    - botocore.model.ShapeResolver.__init__
    - service_description.get
    - _special_case_transform.search
    - re.sub
    - <builtin>.type
    - <builtin>.tuple
    - botocore.utils.get_service_module_name
    - botocore.docs.docstring.LazyLoadedDocstring.__init__
    - is_special.group
    - botocore.model.ServiceModel.__init__
    - name.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - service_model
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 572
    functionName: botocore.client.ClientCreator._create_methods
    functionSourceFile: botocore.client
    functionUses: 3
    functionsReached:
    - botocore.client.ClientCreator._create_api_method
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - botocore.xform_name
    - botocore.docs.docstring.LazyLoadedDocstring.__init__
    - matched.lower
    - operation_model.get
    - is_special.group
    - _special_case_transform.search
    - botocore.model.ServiceModel.operation_model
    - <builtin>.super
    - <builtin>.len
    - <builtin>.str
    - botocore.model.OperationModel.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - service_model
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 581
    functionName: botocore.client.ClientCreator._create_name_mapping
    functionSourceFile: botocore.client
    functionUses: 3
    functionsReached:
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - botocore.xform_name
    - matched.lower
    - is_special.group
    - _special_case_transform.search
    - <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: region_name.replace
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 257
    functionName: botocore.client.ClientCreator._register_v2_standard_retries
    functionSourceFile: botocore.client
    functionUses: 2
    functionsReached:
    - botocore.retries.standard.StandardRetryConditions.__init__
    - botocore.retries.standard.ModeledRetryableChecker.__init__
    - botocore.retries.standard.TransientRetryableChecker.__init__
    - client.meta.events.register
    - botocore.retries.standard.RetryPolicy.__init__
    - botocore.retries.standard.OrRetryChecker.__init__
    - service_id.hyphenize
    - threading.Lock
    - botocore.retries.standard.register_retry_handler
    - botocore.retries.standard.RetryHandler.__init__
    - botocore.retries.standard.RetryQuotaChecker.__init__
    - client.meta.config.retries.get
    - botocore.retries.standard.MaxAttemptsChecker.__init__
    - botocore.retries.quota.RetryQuota.__init__
    - botocore.retries.standard.ExponentialBackoff.__init__
    - botocore.retries.standard.ThrottledRetryableChecker.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 264
    functionName: botocore.client.ClientCreator._register_v2_adaptive_retries
    functionSourceFile: botocore.client
    functionUses: 2
    functionsReached:
    - botocore.retries.throttling.CubicCalculator._calculate_zero_point
    - botocore.retries.adaptive.register_retry_handler
    - client.meta.events.register
    - botocore.retries.bucket.Clock.__init__
    - botocore.retries.throttling.CubicCalculator.__init__
    - threading.Lock
    - threading.Condition
    - botocore.retries.adaptive.RateClocker.__init__
    - botocore.retries.adaptive.ClientRateLimiter.__init__
    - time.time
    - botocore.retries.bucket.TokenBucket.__init__
    - botocore.retries.bucket.Clock.current_time
    - botocore.retries.standard.ThrottlingErrorDetector.__init__
    - math.floor
    - botocore.retries.standard.ThrottledRetryableChecker.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - client
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 267
    functionName: botocore.client.ClientCreator._register_legacy_retries
    functionSourceFile: botocore.client
    functionUses: 2
    functionsReached:
    - logger.debug
    - client.meta.events.register
    - service_id.hyphenize
    - copied_args.pop
    - botocore.client.ClientCreator._transform_legacy_retries
    - original_config.get
    - retries.copy
    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: retry_mode.upper
    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: client.meta.config.retries.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Name object at 0x7f9830de9a00>
    argNames:
    - client
    - max_attempts
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 43
    functionName: botocore.retries.standard.register_retry_handler
    functionSourceFile: botocore.retries.standard
    functionUses: 3
    functionsReached:
    - botocore.retries.standard.StandardRetryConditions.__init__
    - botocore.retries.standard.TransientRetryableChecker.__init__
    - client.meta.events.register
    - botocore.retries.standard.RetryPolicy.__init__
    - botocore.retries.standard.ModeledRetryableChecker.__init__
    - botocore.retries.standard.OrRetryChecker.__init__
    - service_id.hyphenize
    - threading.Lock
    - botocore.retries.standard.RetryHandler.__init__
    - botocore.retries.standard.RetryQuotaChecker.__init__
    - botocore.retries.quota.RetryQuota.__init__
    - botocore.retries.standard.MaxAttemptsChecker.__init__
    - botocore.retries.standard.ExponentialBackoff.__init__
    - botocore.retries.standard.ThrottledRetryableChecker.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - client
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 10
    functionName: botocore.retries.adaptive.register_retry_handler
    functionSourceFile: botocore.retries.adaptive
    functionUses: 3
    functionsReached:
    - botocore.retries.throttling.CubicCalculator._calculate_zero_point
    - client.meta.events.register
    - botocore.retries.bucket.Clock.__init__
    - botocore.retries.throttling.CubicCalculator.__init__
    - threading.Lock
    - threading.Condition
    - botocore.retries.adaptive.RateClocker.__init__
    - botocore.retries.adaptive.ClientRateLimiter.__init__
    - time.time
    - botocore.retries.bucket.TokenBucket.__init__
    - botocore.retries.bucket.Clock.current_time
    - botocore.retries.standard.ThrottlingErrorDetector.__init__
    - math.floor
    - botocore.retries.standard.ThrottledRetryableChecker.__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: service_id.hyphenize
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - retries
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 298
    functionName: botocore.client.ClientCreator._transform_legacy_retries
    functionSourceFile: botocore.client
    functionUses: 3
    functionsReached:
    - copied_args.pop
    - retries.copy
    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: original_config.get
    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: retries.copy
    functionSourceFile: <builtin>
    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: copied_args.pop
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client
    - config_store
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 309
    functionName: botocore.client.ClientCreator._get_retry_mode
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - client_retries.get
    - config_store.get_config_variable
    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: client_retries.get
    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: client.meta.service_model.service_id.hyphenize
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - enabled
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 349
    functionName: botocore.client.ClientCreator._normalize_endpoint_discovery_config
    functionSourceFile: botocore.client
    functionUses: 2
    functionsReached:
    - botocore.utils.ensure_boolean
    - val.lower
    - <builtin>.isinstance
    - enabled.lower
    linkageType: pythonLinkage
    raised:
    - InvalidEndpointDiscoveryConfigurationError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - client
    - enabled
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 362
    functionName: botocore.client.ClientCreator._requires_endpoint_discovery
    functionSourceFile: ''
    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: enabled.lower
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client
    - endpoint_bridge
    - endpoint_url
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 367
    functionName: botocore.client.ClientCreator._register_eventbridge_events
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - botocore.utils.EventbridgeSignerSetter.register
    - botocore.utils.EventbridgeSignerSetter.__init__
    - event_emitter.register
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client_meta
    - client_config
    - scoped_config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 420
    functionName: botocore.client.ClientCreator._set_s3_presign_signature_version
    functionSourceFile: botocore.client
    functionUses: 2
    functionsReached:
    - service_config.get
    - logger.debug
    - scoped_config.get
    - client_meta.events.register
    - botocore.client._get_configured_signature_version
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - service_name
    - client_config
    - scoped_config
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1412
    functionName: botocore.client._get_configured_signature_version
    functionSourceFile: botocore.client
    functionUses: 9
    functionsReached:
    - scoped_config.get
    - service_config.get
    - <builtin>.isinstance
    - logger.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: client_meta.events.register
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - params
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 463
    functionName: botocore.client.ClientCreator._inject_s3_input_parameters
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - signature_version
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 472
    functionName: botocore.client.ClientCreator._default_s3_presign_to_sigv2
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - signature_version.endswith
    - signature_version.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - client_meta
    - client_config
    - scoped_config
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 511
    functionName: botocore.client.ClientCreator._set_importexport_signature_version
    functionSourceFile: botocore.client
    functionUses: 2
    functionsReached:
    - service_config.get
    - logger.debug
    - scoped_config.get
    - client_meta.events.register
    - botocore.client._get_configured_signature_version
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - signature_version
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 530
    functionName: botocore.client.ClientCreator._default_signer_to_sigv4
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - py_operation_name
    - operation_name
    - service_model
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 590
    functionName: botocore.client.ClientCreator._create_api_method
    functionSourceFile: botocore.client
    functionUses: 4
    functionsReached:
    - botocore.docs.docstring.LazyLoadedDocstring.__init__
    - operation_model.get
    - botocore.model.ServiceModel.operation_model
    - <builtin>.super
    - <builtin>.str
    - botocore.model.OperationModel.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 593
    functionName: botocore.client.ClientCreator._create_api_method._api_call
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f98301a6eb0>
    - <ast.Constant object at 0x7f98301a6760>
    - <ast.Constant object at 0x7f98301a6b80>
    argNames:
    - self
    - service_name
    - region_name
    - endpoint_url
    - is_secure
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 661
    functionName: botocore.client.ClientEndpointBridge.resolve
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - service_config.get
    - botocore.client.ClientEndpointBridge._pick_region_values
    - logger.debug
    - botocore.client.ClientEndpointBridge._assume_endpoint
    - botocore.client.ClientEndpointBridge._resolve_signing_name
    - botocore.client.ClientEndpointBridge._resolve_endpoint_variant_config_var
    - botocore.client.ClientEndpointBridge._resolve_use_dualstack_endpoint
    - botocore.client.ClientEndpointBridge._check_default_region
    - botocore.client.ClientEndpointBridge._make_url
    - scoped_config.get
    - botocore.client.ClientEndpointBridge._create_endpoint
    - resolved.get
    - botocore.client.ClientEndpointBridge._is_s3_dualstack_mode
    - botocore.client._get_configured_signature_version
    - <builtin>.isinstance
    - botocore.client.ClientEndpointBridge._create_result
    - botocore.client.ClientEndpointBridge._resolve_signature_version
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - region_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 703
    functionName: botocore.client.ClientEndpointBridge._check_default_region
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - resolved
    - service_name
    - region_name
    - endpoint_url
    - is_secure
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 710
    functionName: botocore.client.ClientEndpointBridge._create_endpoint
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - service_config.get
    - botocore.client.ClientEndpointBridge._pick_region_values
    - botocore.client.ClientEndpointBridge._resolve_signing_name
    - logger.debug
    - botocore.client.ClientEndpointBridge._make_url
    - scoped_config.get
    - resolved.get
    - botocore.client._get_configured_signature_version
    - <builtin>.isinstance
    - botocore.client.ClientEndpointBridge._create_result
    - botocore.client.ClientEndpointBridge._resolve_signature_version
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - region_name
    - endpoint_url
    - is_secure
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 778
    functionName: botocore.client.ClientEndpointBridge._assume_endpoint
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - service_config.get
    - logger.debug
    - botocore.client.ClientEndpointBridge._resolve_signing_name
    - botocore.client.ClientEndpointBridge._make_url
    - scoped_config.get
    - resolved.get
    - botocore.client._get_configured_signature_version
    - <builtin>.isinstance
    - botocore.client.ClientEndpointBridge._create_result
    - botocore.client.ClientEndpointBridge._resolve_signature_version
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - resolved
    - region_name
    - endpoint_url
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 850
    functionName: botocore.client.ClientEndpointBridge._pick_region_values
    functionSourceFile: ''
    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: resolved.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - hostname
    - is_secure
    - supported_protocols
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 830
    functionName: botocore.client.ClientEndpointBridge._make_url
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - resolved
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 872
    functionName: botocore.client.ClientEndpointBridge._resolve_signature_version
    functionSourceFile: botocore.client
    functionUses: 3
    functionsReached:
    - service_config.get
    - logger.debug
    - scoped_config.get
    - resolved.get
    - botocore.client._get_configured_signature_version
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - UnknownSignatureVersionError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - resolved
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 837
    functionName: botocore.client.ClientEndpointBridge._resolve_signing_name
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 8
    argDefaultValues: []
    argNames:
    - self
    - service_name
    - region_name
    - signing_region
    - signing_name
    - endpoint_url
    - signature_version
    - metadata
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 810
    functionName: botocore.client.ClientEndpointBridge._create_result
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - service_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 756
    functionName: botocore.client.ClientEndpointBridge._is_s3_dualstack_mode
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 13
    argDefaultValues:
    - <ast.Constant object at 0x7f9830944250>
    - <ast.Constant object at 0x7f9830944c70>
    argNames:
    - self
    - serializer
    - endpoint
    - response_parser
    - event_emitter
    - request_signer
    - service_model
    - loader
    - client_config
    - partition
    - exceptions_factory
    - endpoint_ruleset_resolver
    - user_agent_creator
    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
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 916
    functionName: botocore.client.BaseClient.__init__
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - os.environ.get
    - botocore.useragent._get_crt_version
    - botocore.client.ClientMeta.__init__
    - platform.system
    - platform.python_implementation
    - botocore.useragent.UserAgentString.from_environment
    - botocore.client.BaseClient._register_handlers
    - platform.machine
    - platform.python_version
    - botocore.useragent.UserAgentString.__init__
    - platform.release
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 7
    argDefaultValues: []
    argNames:
    - self
    - events
    - client_config
    - endpoint_url
    - service_model
    - method_to_api_mapping
    - partition
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1371
    functionName: botocore.client.ClientMeta.__init__
    functionSourceFile: ''
    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:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 977
    functionName: botocore.client.BaseClient._register_handlers
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - item
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 958
    functionName: botocore.client.BaseClient.__getattr__
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 973
    functionName: botocore.client.BaseClient.close
    functionSourceFile: botocore.client
    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: 991
    functionName: botocore.client.BaseClient._service_model
    functionSourceFile: botocore.client
    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: botocore.client.BaseClient
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - botocore.context.with_current_context
    - botocore.context.with_current_context.decorator
    - botocore.utils.CachedProperty
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 6
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - operation_name
    - api_params
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 995
    functionName: botocore.client.BaseClient._make_api_call
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - botocore.context.get_context
    - botocore.client.BaseClient._make_request
    - botocore.hooks.first_non_none_response
    - urllib.parse.urlencode
    - request_context.get
    - logger.debug
    - error_info.get
    - botocore.httpchecksum.AwsChunkedWrapper.__init__
    - urllib.parse.urlunsplit
    - botocore.client.BaseClient._resolve_endpoint_ruleset
    - endpoint_info.properties.get
    - DEFAULT_CHECKSUM_ALGORITHM.lower
    - urllib.parse.urlsplit
    - _CHECKSUM_CLS.get
    - botocore.httpchecksum._apply_request_trailer_checksum
    - botocore.awsrequest._urljoin
    - fileobj.tell
    - CHECKSUM_HEADER_PATTERN.match
    - http_checksum.get
    - botocore.utils.has_checksum_header
    - botocore.utils._calculate_md5_from_bytes
    - io.BytesIO
    - md5.digest
    - ctx.features.add
    - botocore.httpchecksum._apply_request_header_checksum
    - operation_input_shape.members.get
    - botocore.useragent.register_feature_id
    - _USERAGENT_FEATURE_MAPPINGS.get
    - botocore.httpchecksum.resolve_response_checksum_algorithms
    - botocore.compress._should_compress_request
    - url_path.startswith
    - body.tell
    - usable_algorithms.append
    - handler.emit
    - botocore.httpchecksum.resolve_checksum_context
    - botocore.utils.determine_content_length
    - algorithm_member_shape.serialization.get
    - botocore.client.BaseClient._convert_to_request_dict
    - md5.update
    - botocore.compress._is_compressible_type
    - <builtin>.hasattr
    - checksum_context.get
    - <builtin>.str
    - botocore.compress._set_compression_header
    - botocore.httpchecksum.apply_request_checksum
    - <builtin>.isinstance
    - params.get
    - endpoint_properties.get
    - operation_model.get_streaming_input
    - botocore.httpchecksum._register_checksum_algorithm_feature_id
    - parsed_response.get
    - COMPRESSION_MAPPING.get
    - botocore.history.HistoryRecorder.record
    - a.lower
    - <builtin>.type
    - botocore.utils.conditionally_calculate_md5
    - botocore.utils._is_s3express_request
    - botocore.httpchecksum.resolve_request_checksum_algorithm
    - <builtin>.len
    - base64.b64encode
    - request.get
    - contextvars.ContextVar.get
    - botocore.compress.maybe_compress_request
    - botocore.client.BaseClient._emit_api_params
    - botocore.awsrequest.prepare_request_dict
    - hashlib.md5
    - botocore.httpchecksum.AwsChunkedWrapper._reset
    - request_dict.pop
    - botocore.utils.calculate_md5
    - r.get
    - botocore.utils._calculate_md5_from_file
    - botocore.httpchecksum._get_request_algorithm_member_header
    - botocore.compat.get_md5
    - botocore.compress._get_body_size
    - <builtin>.iter
    - botocore.httpchecksum.AwsChunkedWrapper.seek
    - headers.get
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised:
    - error_class
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - api_params
    - operation_model
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1121
    functionName: botocore.client.BaseClient._emit_api_params
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - botocore.hooks.first_non_none_response
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f9830d87d00>
    argNames:
    - self
    - operation_model
    - params
    - request_context
    - ignore_signing_region
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1146
    functionName: botocore.client.BaseClient._resolve_endpoint_ruleset
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - endpoint_info.properties.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f9830ce3430>
    - <ast.Constant object at 0x7f9830ce3e50>
    - <ast.Constant object at 0x7f9830ce3610>
    argNames:
    - self
    - api_params
    - operation_model
    - endpoint_url
    - context
    - headers
    - set_user_agent_header
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1093
    functionName: botocore.client.BaseClient._convert_to_request_dict
    functionSourceFile: botocore.client
    functionUses: 1
    functionsReached:
    - request_dict.pop
    - urllib.parse.urlsplit
    - urllib.parse.urlunsplit
    - url_path.startswith
    - r.get
    - botocore.awsrequest.prepare_request_dict
    - botocore.awsrequest._urljoin
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - operation_model
    - request_dict
    - request_context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1082
    functionName: botocore.client.BaseClient._make_request
    functionSourceFile: ''
    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: request_context.get
    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: error_info.get
    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: request_dict.pop
    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: endpoint_info.properties.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - operation_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1198
    functionName: botocore.client.BaseClient.get_paginator
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - botocore.client.BaseClient.can_paginate
    - botocore.utils.get_service_module_name
    - botocore.docs.docstring.LazyLoadedDocstring.__init__
    - service_model.metadata.get
    - re.sub
    - <builtin>.super
    - name.replace
    - <builtin>.type
    linkageType: pythonLinkage
    raised:
    - OperationNotPageableError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - operation_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1263
    functionName: botocore.client.BaseClient.can_paginate
    functionSourceFile: ''
    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
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1225
    functionName: botocore.client.BaseClient.get_paginator.paginate
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - pagination_config.get
    - botocore.paginate.PageIterator.__init__
    - kwargs.pop
    - botocore.paginate.Paginator.paginate
    - botocore.paginate.Paginator._extract_paging_params
    - <builtin>.int
    - <builtin>.isinstance
    - input_members.get
    - <builtin>.str
    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: 0
    functionLinenumber: 1291
    functionName: botocore.client.BaseClient._get_waiter_config
    functionSourceFile: botocore.client
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - waiter_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1304
    functionName: botocore.client.BaseClient.get_waiter
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - _end_cap_regex.sub
    - botocore.xform_name
    - waiter_config.get
    - single_waiter_config.get
    - botocore.waiter.create_waiter_with_client
    - <builtin>.sorted
    - <builtin>.list
    - service_model.metadata.get
    - <builtin>.str
    - _first_cap_regex.sub
    - botocore.waiter.NormalizedOperationMethod.__init__
    - matched.lower
    - <builtin>.super
    - <builtin>.getattr
    - xform_name
    - <builtin>.len
    - botocore.waiter.WaiterModel.get_waiter
    - botocore.waiter.WaiterModel.__init__
    - _special_case_transform.search
    - re.sub
    - botocore.client.BaseClient._get_waiter_config
    - botocore.waiter.SingleWaiterConfig.__init__
    - <builtin>.type
    - botocore.utils.get_service_module_name
    - botocore.docs.docstring.LazyLoadedDocstring.__init__
    - botocore.waiter.WaiterModel._verify_supported_version
    - is_special.group
    - name.replace
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1329
    functionName: botocore.client.BaseClient.waiter_names
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - _first_cap_regex.sub
    - _end_cap_regex.sub
    - botocore.xform_name
    - waiter_config.get
    - <builtin>.len
    - matched.lower
    - botocore.waiter.WaiterModel.__init__
    - <builtin>.sorted
    - botocore.waiter.WaiterModel._verify_supported_version
    - is_special.group
    - _special_case_transform.search
    - <builtin>.list
    - botocore.client.BaseClient._get_waiter_config
    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: 1340
    functionName: botocore.client.BaseClient.exceptions
    functionSourceFile: botocore.client
    functionUses: 0
    functionsReached:
    - botocore.client.BaseClient._load_exceptions
    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: 1345
    functionName: botocore.client.BaseClient._load_exceptions
    functionSourceFile: ''
    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: 1350
    functionName: botocore.client.BaseClient._get_credentials
    functionSourceFile: botocore.client
    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: 1388
    functionName: botocore.client.ClientMeta.service_model
    functionSourceFile: botocore.client
    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: 1392
    functionName: botocore.client.ClientMeta.region_name
    functionSourceFile: botocore.client
    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: 1396
    functionName: botocore.client.ClientMeta.endpoint_url
    functionSourceFile: botocore.client
    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: 1400
    functionName: botocore.client.ClientMeta.config
    functionSourceFile: botocore.client
    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: 1404
    functionName: botocore.client.ClientMeta.method_to_api_mapping
    functionSourceFile: botocore.client
    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: 1408
    functionName: botocore.client.ClientMeta.partition
    functionSourceFile: botocore.client
    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: service_config.get
    functionSourceFile: <builtin>
    functionUses: 10
    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: botocore.retries.standard
    functionSourceFile: botocore.retries.standard
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7f9830de9a00>
    - <ast.Constant object at 0x7f9830de9fd0>
    argNames:
    - self
    - initial_capacity
    - lock
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 9
    functionName: botocore.retries.quota.RetryQuota.__init__
    functionSourceFile: botocore.retries.quota
    functionUses: 4
    functionsReached:
    - threading.Lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - quota
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 491
    functionName: botocore.retries.standard.RetryQuotaChecker.__init__
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Name object at 0x7f9831799d90>
    argNames:
    - self
    - max_attempts
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 447
    functionName: botocore.retries.standard.StandardRetryConditions.__init__
    functionSourceFile: botocore.retries.standard
    functionUses: 4
    functionsReached:
    - botocore.retries.standard.TransientRetryableChecker.__init__
    - botocore.retries.standard.ModeledRetryableChecker.__init__
    - botocore.retries.standard.OrRetryChecker.__init__
    - botocore.retries.standard.MaxAttemptsChecker.__init__
    - botocore.retries.standard.ThrottledRetryableChecker.__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 0x7f9830d172b0>
    - <ast.Attribute object at 0x7f9830d175b0>
    argNames:
    - self
    - max_backoff
    - random
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 256
    functionName: botocore.retries.standard.ExponentialBackoff.__init__
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - retry_checker
    - retry_backoff
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 241
    functionName: botocore.retries.standard.RetryPolicy.__init__
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - retry_policy
    - retry_event_adapter
    - retry_quota
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 77
    functionName: botocore.retries.standard.RetryHandler.__init__
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 82
    functionName: botocore.retries.standard.RetryHandler.needs_retry
    functionSourceFile: botocore.retries.standard
    functionUses: 0
    functionsReached:
    - botocore.retries.standard.RetryContext.get_retry_metadata
    - <builtin>.min
    - <builtin>.any
    - logger.debug
    - botocore.retries.standard.RetryQuotaChecker._is_timeout_error
    - botocore.retries.standard.MaxAttemptsChecker.is_retryable
    - checker.is_retryable
    - <builtin>.isinstance
    - botocore.retries.standard.RetryPolicy.compute_retry_delay
    - context.parsed_response.setdefault
    - <builtin>.max
    - botocore.retries.standard.RetryContext.add_retry_metadata
    - botocore.retries.standard.StandardRetryConditions.is_retryable
    - botocore.retries.quota.RetryQuota.acquire
    - botocore.retries.standard.RetryEventAdapter.create_retry_context
    - botocore.retries.standard.RetryQuotaChecker.acquire_retry_quota
    - botocore.retries.standard.OrRetryChecker.is_retryable
    - botocore.retries.standard.ExponentialBackoff.delay_amount
    - botocore.retries.standard.RetryContext.__init__
    - botocore.retries.standard.RetryEventAdapter.adapt_retry_response_from_context
    - botocore.retries.standard.RetryPolicy.should_retry
    - context.request_context.get
    - retries_context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 117
    functionName: botocore.retries.standard.RetryEventAdapter.create_retry_context
    functionSourceFile: botocore.retries.standard
    functionUses: 3
    functionsReached:
    - botocore.retries.standard.RetryContext.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 245
    functionName: botocore.retries.standard.RetryPolicy.should_retry
    functionSourceFile: botocore.retries.standard
    functionUses: 1
    functionsReached:
    - logger.debug
    - botocore.retries.standard.MaxAttemptsChecker.is_retryable
    - <builtin>.max
    - botocore.retries.standard.RetryContext.add_retry_metadata
    - botocore.retries.standard.StandardRetryConditions.is_retryable
    - checker.is_retryable
    - <builtin>.any
    - botocore.retries.standard.OrRetryChecker.is_retryable
    - context.request_context.get
    - retries_context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 496
    functionName: botocore.retries.standard.RetryQuotaChecker.acquire_retry_quota
    functionSourceFile: botocore.retries.standard
    functionUses: 1
    functionsReached:
    - botocore.retries.standard.RetryContext.add_retry_metadata
    - botocore.retries.standard.RetryQuotaChecker._is_timeout_error
    - <builtin>.isinstance
    - botocore.retries.quota.RetryQuota.acquire
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 248
    functionName: botocore.retries.standard.RetryPolicy.compute_retry_delay
    functionSourceFile: botocore.retries.standard
    functionUses: 1
    functionsReached:
    - botocore.retries.standard.ExponentialBackoff.delay_amount
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 142
    functionName: botocore.retries.standard.RetryEventAdapter.adapt_retry_response_from_context
    functionSourceFile: botocore.retries.standard
    functionUses: 1
    functionsReached:
    - context.parsed_response.setdefault
    - botocore.retries.standard.RetryContext.get_retry_metadata
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f983076e550>
    - <ast.Constant object at 0x7f983076ec70>
    - <ast.Constant object at 0x7f983076e670>
    - <ast.Constant object at 0x7f983076e7f0>
    - <ast.Constant object at 0x7f983076efa0>
    argNames:
    - self
    - attempt_number
    - operation_model
    - parsed_response
    - http_response
    - caught_exception
    - request_context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 181
    functionName: botocore.retries.standard.RetryContext.__init__
    functionSourceFile: ''
    functionUses: 4
    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: 236
    functionName: botocore.retries.standard.RetryContext.get_retry_metadata
    functionSourceFile: ''
    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: context.parsed_response.setdefault
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 212
    functionName: botocore.retries.standard.RetryContext.get_error_code
    functionSourceFile: botocore.retries.standard
    functionUses: 5
    functionsReached:
    - <builtin>.isinstance
    - error.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 225
    functionName: botocore.retries.standard.RetryContext.add_retry_metadata
    functionSourceFile: botocore.retries.standard
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 465
    functionName: botocore.retries.standard.StandardRetryConditions.is_retryable
    functionSourceFile: botocore.retries.standard
    functionUses: 2
    functionsReached:
    - logger.debug
    - botocore.retries.standard.MaxAttemptsChecker.is_retryable
    - <builtin>.max
    - botocore.retries.standard.RetryContext.add_retry_metadata
    - checker.is_retryable
    - <builtin>.any
    - botocore.retries.standard.OrRetryChecker.is_retryable
    - context.request_context.get
    - retries_context.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 261
    functionName: botocore.retries.standard.ExponentialBackoff.delay_amount
    functionSourceFile: botocore.retries.standard
    functionUses: 2
    functionsReached:
    - <builtin>.min
    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>.min
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - max_attempts
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 282
    functionName: botocore.retries.standard.MaxAttemptsChecker.__init__
    functionSourceFile: botocore.retries.standard
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 285
    functionName: botocore.retries.standard.MaxAttemptsChecker.is_retryable
    functionSourceFile: botocore.retries.standard
    functionUses: 3
    functionsReached:
    - logger.debug
    - <builtin>.max
    - botocore.retries.standard.RetryContext.add_retry_metadata
    - context.request_context.get
    - retries_context.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: context.request_context.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f9830aa8e50>
    - <ast.Constant object at 0x7f9830aa8910>
    - <ast.Constant object at 0x7f9830aa83d0>
    argNames:
    - self
    - transient_error_codes
    - transient_status_codes
    - transient_exception_cls
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 310
    functionName: botocore.retries.standard.TransientRetryableChecker.__init__
    functionSourceFile: botocore.retries.standard
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 326
    functionName: botocore.retries.standard.TransientRetryableChecker.is_retryable
    functionSourceFile: botocore.retries.standard
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - context.get_error_code
    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: context.get_error_code
    functionSourceFile: <builtin>
    functionUses: 3
    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 0x7f98301a6dc0>
    argNames:
    - self
    - throttled_error_codes
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 362
    functionName: botocore.retries.standard.ThrottledRetryableChecker.__init__
    functionSourceFile: botocore.retries.standard
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 367
    functionName: botocore.retries.standard.ThrottledRetryableChecker.is_retryable
    functionSourceFile: botocore.retries.standard
    functionUses: 2
    functionsReached:
    - botocore.retries.standard.RetryContext.get_error_code
    - <builtin>.isinstance
    - error.get
    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: 376
    functionName: botocore.retries.standard.ModeledRetryableChecker.__init__
    functionSourceFile: botocore.retries.standard
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 379
    functionName: botocore.retries.standard.ModeledRetryableChecker.is_retryable
    functionSourceFile: botocore.retries.standard
    functionUses: 0
    functionsReached:
    - botocore.retries.standard.ModeledRetryErrorDetector.detect_error_type
    - botocore.retries.standard.RetryContext.get_error_code
    - context.get_error_code
    - <builtin>.isinstance
    - error.get
    - shape.metadata.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 396
    functionName: botocore.retries.standard.ModeledRetryErrorDetector.detect_error_type
    functionSourceFile: botocore.retries.standard
    functionUses: 3
    functionsReached:
    - botocore.retries.standard.RetryContext.get_error_code
    - <builtin>.isinstance
    - error.get
    - shape.metadata.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - retry_event_adapter
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 424
    functionName: botocore.retries.standard.ThrottlingErrorDetector.__init__
    functionSourceFile: botocore.retries.standard
    functionUses: 4
    functionsReached:
    - botocore.retries.standard.ThrottledRetryableChecker.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 430
    functionName: botocore.retries.standard.ThrottlingErrorDetector.is_throttling_error
    functionSourceFile: botocore.retries.standard
    functionUses: 1
    functionsReached:
    - botocore.retries.standard.ModeledRetryErrorDetector.detect_error_type
    - botocore.retries.standard.RetryContext.get_error_code
    - botocore.retries.standard.RetryEventAdapter.create_retry_context
    - <builtin>.isinstance
    - error.get
    - botocore.retries.standard.RetryContext.__init__
    - shape.metadata.get
    - botocore.retries.standard.ThrottledRetryableChecker.is_retryable
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - checkers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 472
    functionName: botocore.retries.standard.OrRetryChecker.__init__
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 475
    functionName: botocore.retries.standard.OrRetryChecker.is_retryable
    functionSourceFile: botocore.retries.standard
    functionUses: 3
    functionsReached:
    - <builtin>.any
    - checker.is_retryable
    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: checker.is_retryable
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 511
    functionName: botocore.retries.standard.RetryQuotaChecker._is_timeout_error
    functionSourceFile: botocore.retries.standard
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - capacity_amount
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 16
    functionName: botocore.retries.quota.RetryQuota.acquire
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - context
    - http_response
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 515
    functionName: botocore.retries.standard.RetryQuotaChecker.release_retry_quota
    functionSourceFile: botocore.retries.standard
    functionUses: 0
    functionsReached:
    - botocore.retries.quota.RetryQuota.release
    - <builtin>.min
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - capacity_amount
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: botocore.retries.quota.RetryQuota.release
    functionSourceFile: botocore.retries.quota
    functionUses: 1
    functionsReached:
    - <builtin>.min
    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: botocore.retries.base
    functionSourceFile: botocore.retries.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
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 2
    functionName: botocore.retries.base.BaseRetryBackoff.delay_amount
    functionSourceFile: botocore.retries.base
    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
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 21
    functionName: botocore.retries.base.BaseRetryableChecker.is_retryable
    functionSourceFile: botocore.retries.base
    functionUses: 0
    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: botocore.retries.special
    functionSourceFile: botocore.retries.special
    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
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 22
    functionName: botocore.retries.special.RetryIDPCommunicationError.is_retryable
    functionSourceFile: botocore.retries.special
    functionUses: 0
    functionsReached:
    - context.get_error_code
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: botocore.retries.special.RetryDDBChecksumError.is_retryable
    functionSourceFile: botocore.retries.special
    functionUses: 0
    functionsReached:
    - context.http_response.headers.get
    - logger.debug
    - <builtin>.int
    - binascii.crc32
    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: context.http_response.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: botocore.retries.quota
    functionSourceFile: botocore.retries.quota
    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: 53
    functionName: botocore.retries.quota.RetryQuota.available_capacity
    functionSourceFile: botocore.retries.quota
    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: 1
    functionLinenumber: -1
    functionName: botocore.retries.adaptive
    functionSourceFile: botocore.retries.adaptive
    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: 10
    functionName: botocore.retries.bucket.Clock.__init__
    functionSourceFile: ''
    functionUses: 4
    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: 16
    functionName: botocore.retries.bucket.Clock.current_time
    functionSourceFile: botocore.retries.bucket
    functionUses: 12
    functionsReached:
    - time.time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Name object at 0x7f9830da9100>
    - <ast.Name object at 0x7f9830da9dc0>
    argNames:
    - self
    - starting_max_rate
    - start_time
    - scale_constant
    - beta
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 10
    functionName: botocore.retries.throttling.CubicCalculator.__init__
    functionSourceFile: botocore.retries.throttling
    functionUses: 4
    functionsReached:
    - botocore.retries.throttling.CubicCalculator._calculate_zero_point
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f9830f2dca0>
    argNames:
    - self
    - max_rate
    - clock
    - min_rate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 23
    functionName: botocore.retries.bucket.TokenBucket.__init__
    functionSourceFile: botocore.retries.bucket
    functionUses: 4
    functionsReached:
    - threading.Lock
    - threading.Condition
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f98312df280>
    - <ast.Name object at 0x7f98303e21c0>
    argNames:
    - self
    - clock
    - smoothing
    - time_bucket_range
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 99
    functionName: botocore.retries.adaptive.RateClocker.__init__
    functionSourceFile: botocore.retries.adaptive
    functionUses: 4
    functionsReached:
    - botocore.retries.bucket.Clock.current_time
    - time.time
    - threading.Lock
    - math.floor
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - rate_adjustor
    - rate_clocker
    - token_bucket
    - throttling_detector
    - clock
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 41
    functionName: botocore.retries.adaptive.ClientRateLimiter.__init__
    functionSourceFile: botocore.retries.adaptive
    functionUses: 4
    functionsReached:
    - threading.Lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 57
    functionName: botocore.retries.adaptive.ClientRateLimiter.on_sending_request
    functionSourceFile: botocore.retries.adaptive
    functionUses: 0
    functionsReached:
    - time.time
    - <builtin>.min
    - botocore.retries.bucket.TokenBucket._refill
    - botocore.retries.bucket.Clock.current_time
    - botocore.retries.bucket.TokenBucket._sleep_amount
    - botocore.retries.bucket.TokenBucket._acquire
    - botocore.retries.bucket.TokenBucket.acquire
    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 0x7f9830f31310>
    - <ast.Constant object at 0x7f9830f31ac0>
    argNames:
    - self
    - amount
    - block
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 67
    functionName: botocore.retries.bucket.TokenBucket.acquire
    functionSourceFile: botocore.retries.bucket
    functionUses: 1
    functionsReached:
    - time.time
    - <builtin>.min
    - botocore.retries.bucket.TokenBucket._refill
    - botocore.retries.bucket.Clock.current_time
    - botocore.retries.bucket.TokenBucket._sleep_amount
    - botocore.retries.bucket.TokenBucket._acquire
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwargs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 62
    functionName: botocore.retries.adaptive.ClientRateLimiter.on_receiving_response
    functionSourceFile: botocore.retries.adaptive
    functionUses: 0
    functionsReached:
    - botocore.retries.throttling.CubicCalculator._calculate_zero_point
    - botocore.retries.standard.RetryContext.get_error_code
    - time.time
    - botocore.retries.throttling.CubicCalculator.error_received
    - <builtin>.min
    - botocore.retries.bucket.Clock.current_time
    - math.floor
    - logger.debug
    - <builtin>.isinstance
    - botocore.retries.standard.ThrottlingErrorDetector.is_throttling_error
    - botocore.retries.standard.ModeledRetryErrorDetector.detect_error_type
    - <builtin>.float
    - botocore.retries.throttling.CubicCalculator.success_received
    - botocore.retries.standard.RetryEventAdapter.create_retry_context
    - error.get
    - botocore.retries.standard.ThrottledRetryableChecker.is_retryable
    - botocore.retries.adaptive.RateClocker.record
    - botocore.retries.standard.RetryContext.__init__
    - shape.metadata.get
    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 0x7f98303e20d0>
    argNames:
    - self
    - amount
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 113
    functionName: botocore.retries.adaptive.RateClocker.record
    functionSourceFile: botocore.retries.adaptive
    functionUses: 1
    functionsReached:
    - botocore.retries.bucket.Clock.current_time
    - <builtin>.float
    - time.time
    - math.floor
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - timestamp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 28
    functionName: botocore.retries.throttling.CubicCalculator.success_received
    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
    - current_rate
    - timestamp
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: botocore.retries.throttling.CubicCalculator.error_received
    functionSourceFile: botocore.retries.throttling
    functionUses: 1
    functionsReached:
    - botocore.retries.throttling.CubicCalculator._calculate_zero_point
    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: 131
    functionName: botocore.retries.adaptive.RateClocker.measured_rate
    functionSourceFile: botocore.retries.adaptive
    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: botocore.retries.bucket
    functionSourceFile: botocore.retries.bucket
    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
    - amount
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 13
    functionName: botocore.retries.bucket.Clock.sleep
    functionSourceFile: botocore.retries.bucket
    functionUses: 0
    functionsReached:
    - time.sleep
    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: threading.Condition
    functionSourceFile: threading
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 39
    functionName: botocore.retries.bucket.TokenBucket.max_rate
    functionSourceFile: botocore.retries.bucket
    functionUses: 0
    functionsReached:
    - <builtin>.max
    - time.time
    - <builtin>.min
    - botocore.retries.bucket.TokenBucket._refill
    - botocore.retries.bucket.Clock.current_time
    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: 2
    functionLinenumber: 106
    functionName: botocore.retries.bucket.TokenBucket._refill
    functionSourceFile: botocore.retries.bucket
    functionUses: 4
    functionsReached:
    - botocore.retries.bucket.Clock.current_time
    - time.time
    - <builtin>.min
    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: 60
    functionName: botocore.retries.bucket.TokenBucket.max_capacity
    functionSourceFile: botocore.retries.bucket
    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: 64
    functionName: botocore.retries.bucket.TokenBucket.available_capacity
    functionSourceFile: botocore.retries.bucket
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - amount
    - block
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 80
    functionName: botocore.retries.bucket.TokenBucket._acquire
    functionSourceFile: botocore.retries.bucket
    functionUses: 2
    functionsReached:
    - time.time
    - <builtin>.min
    - botocore.retries.bucket.TokenBucket._refill
    - botocore.retries.bucket.Clock.current_time
    - botocore.retries.bucket.TokenBucket._sleep_amount
    linkageType: pythonLinkage
    raised:
    - CapacityNotAvailableError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - amount
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 103
    functionName: botocore.retries.bucket.TokenBucket._sleep_amount
    functionSourceFile: ''
    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: 1
    functionLinenumber: -1
    functionName: botocore.retries.throttling
    functionSourceFile: botocore.retries.throttling
    functionUses: 0
    functionsReached:
    - collections.namedtuple
    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: 23
    functionName: botocore.retries.throttling.CubicCalculator._calculate_zero_point
    functionSourceFile: ''
    functionUses: 7
    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: 1
    functionLinenumber: 43
    functionName: botocore.retries.throttling.CubicCalculator.get_params_snapshot
    functionSourceFile: botocore.retries.throttling
    functionUses: 0
    functionsReached:
    - collections.namedtuple
    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: botocore.retries
    functionSourceFile: botocore.retries
    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: 1
    functionLinenumber: -1
    functionName: botocore.monitoring
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - logging.getLogger
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event_emitter
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 44
    functionName: botocore.monitoring.Monitor.register
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - event_emitter.register_last
    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: event_emitter.register_last
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - event_name
    - payload
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 49
    functionName: botocore.monitoring.Monitor.capture
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - logger.debug
    - botocore.monitoring.MonitorEventAdapter._get_handler
    - botocore.monitoring.CSMSerializer._get_event_type
    - botocore.compat.ensure_bytes
    - event_name.split
    - json.dumps
    - botocore.monitoring.CSMSerializer._get_base_event_dict
    - io.BytesIO.encode
    - <builtin>.isinstance
    - botocore.monitoring.CSMSerializer.serialize
    - <builtin>.len
    - botocore.monitoring.MonitorEventAdapter.feed
    - botocore.monitoring.SocketPublisher.publish
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - emitter_event_name
    - emitter_payload
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 77
    functionName: botocore.monitoring.MonitorEventAdapter.feed
    functionSourceFile: botocore.monitoring
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    - botocore.monitoring.MonitorEventAdapter._get_handler
    - event_name.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 570
    functionName: botocore.monitoring.SocketPublisher.publish
    functionSourceFile: botocore.monitoring
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    - logger.debug
    - botocore.monitoring.CSMSerializer._get_event_type
    - botocore.compat.ensure_bytes
    - json.dumps
    - botocore.monitoring.CSMSerializer._get_base_event_dict
    - io.BytesIO.encode
    - <builtin>.isinstance
    - botocore.monitoring.CSMSerializer.serialize
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 93
    functionName: botocore.monitoring.MonitorEventAdapter._get_handler
    functionSourceFile: botocore.monitoring
    functionUses: 2
    functionsReached:
    - <builtin>.getattr
    - event_name.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - model
    - context
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 98
    functionName: botocore.monitoring.MonitorEventAdapter._handle_before_parameter_build
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - botocore.monitoring.APICallEvent.__init__
    - <builtin>.int
    - <builtin>.super
    - botocore.monitoring.MonitorEventAdapter._get_current_time
    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: 160
    functionName: botocore.monitoring.MonitorEventAdapter._get_current_time
    functionSourceFile: botocore.monitoring
    functionUses: 7
    functionsReached:
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f982f891cd0>
    - <ast.Constant object at 0x7f982f891520>
    - <ast.Constant object at 0x7f982f8917f0>
    argNames:
    - self
    - service
    - operation
    - timestamp
    - latency
    - attempts
    - retries_exceeded
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 193
    functionName: botocore.monitoring.APICallEvent.__init__
    functionSourceFile: botocore.monitoring
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - request
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 105
    functionName: botocore.monitoring.MonitorEventAdapter._handle_request_created
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - botocore.monitoring.MonitorEventAdapter._get_current_time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - parsed_response
    - context
    - exception
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 114
    functionName: botocore.monitoring.MonitorEventAdapter._handle_response_received
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - parsed_response.get
    - context.pop
    - botocore.monitoring.MonitorEventAdapter._get_current_time
    - <builtin>.int
    - botocore.monitoring.MonitorEventAdapter._get_latency
    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: context.pop
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 157
    functionName: botocore.monitoring.MonitorEventAdapter._get_latency
    functionSourceFile: botocore.monitoring
    functionUses: 4
    functionsReached:
    - <builtin>.int
    - botocore.monitoring.MonitorEventAdapter._get_current_time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - context
    - parsed
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 131
    functionName: botocore.monitoring.MonitorEventAdapter._handle_after_call
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - botocore.monitoring.MonitorEventAdapter._complete_api_call
    - context.pop
    - botocore.monitoring.MonitorEventAdapter._get_current_time
    - <builtin>.int
    - botocore.monitoring.MonitorEventAdapter._get_latency
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - context
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 152
    functionName: botocore.monitoring.MonitorEventAdapter._complete_api_call
    functionSourceFile: botocore.monitoring
    functionUses: 2
    functionsReached:
    - context.pop
    - <builtin>.int
    - botocore.monitoring.MonitorEventAdapter._get_latency
    - botocore.monitoring.MonitorEventAdapter._get_current_time
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - context
    - exception
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 137
    functionName: botocore.monitoring.MonitorEventAdapter._handle_after_call_error
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - botocore.monitoring.MonitorEventAdapter._complete_api_call
    - <builtin>.tuple
    - context.pop
    - botocore.monitoring.MonitorEventAdapter._get_current_time
    - <builtin>.isinstance
    - <builtin>.int
    - botocore.monitoring.MonitorEventAdapter._is_retryable_exception
    - botocore.monitoring.MonitorEventAdapter._get_latency
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - exception
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 147
    functionName: botocore.monitoring.MonitorEventAdapter._is_retryable_exception
    functionSourceFile: botocore.monitoring
    functionUses: 1
    functionsReached:
    - <builtin>.tuple
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - service
    - operation
    - timestamp
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 165
    functionName: botocore.monitoring.BaseMonitorEvent.__init__
    functionSourceFile: botocore.monitoring
    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: 183
    functionName: botocore.monitoring.BaseMonitorEvent.__repr__
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 186
    functionName: botocore.monitoring.BaseMonitorEvent.__eq__
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - timestamp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 238
    functionName: botocore.monitoring.APICallEvent.new_api_call_attempt
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - botocore.monitoring.APICallAttemptEvent.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 11
    argDefaultValues:
    - <ast.Constant object at 0x7f9830858340>
    - <ast.Constant object at 0x7f9830858280>
    - <ast.Constant object at 0x7f9830858dc0>
    - <ast.Constant object at 0x7f9830858d90>
    - <ast.Constant object at 0x7f98308585e0>
    - <ast.Constant object at 0x7f9830858f10>
    - <ast.Constant object at 0x7f98308580d0>
    argNames:
    - self
    - service
    - operation
    - timestamp
    - latency
    - url
    - http_status_code
    - request_headers
    - response_headers
    - parsed_error
    - wire_exception
    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: 1
    functionLinenumber: 253
    functionName: botocore.monitoring.APICallAttemptEvent.__init__
    functionSourceFile: botocore.monitoring
    functionUses: 1
    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: botocore.monitoring.CSMSerializer
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - csm_client_id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 366
    functionName: botocore.monitoring.CSMSerializer._validate_client_id
    functionSourceFile: botocore.monitoring
    functionUses: 44
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 373
    functionName: botocore.monitoring.CSMSerializer.serialize
    functionSourceFile: botocore.monitoring
    functionUses: 2
    functionsReached:
    - <builtin>.getattr
    - botocore.monitoring.CSMSerializer._get_event_type
    - botocore.compat.ensure_bytes
    - json.dumps
    - botocore.monitoring.CSMSerializer._get_base_event_dict
    - io.BytesIO.encode
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 393
    functionName: botocore.monitoring.CSMSerializer._get_base_event_dict
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - event
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 496
    functionName: botocore.monitoring.CSMSerializer._get_event_type
    functionSourceFile: botocore.monitoring
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - service
    - event_dict
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 399
    functionName: botocore.monitoring.CSMSerializer._serialize_service
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - operation
    - event_dict
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 402
    functionName: botocore.monitoring.CSMSerializer._serialize_operation
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - timestamp
    - event_dict
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 405
    functionName: botocore.monitoring.CSMSerializer._serialize_timestamp
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - attempts
    - event_dict
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 408
    functionName: botocore.monitoring.CSMSerializer._serialize_attempts
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - logger.debug
    - botocore.monitoring.CSMSerializer._get_auth_match
    - botocore.monitoring.CSMSerializer._serialize_parsed_error
    - botocore.monitoring.CSMSerializer._truncate
    - botocore.compat.ensure_unicode
    - regex.match
    - botocore.monitoring.CSMSerializer._get_user_agent
    - auth_match.group
    - botocore.monitoring.CSMSerializer._add_fields_from_last_attempt
    - request_headers.get
    - botocore.monitoring.CSMSerializer._get_auth_value
    - botocore.monitoring.CSMSerializer._serialize_wire_exception
    - <builtin>.len
    - botocore.monitoring.CSMSerializer._get_region
    - <builtin>.str
    - botocore.monitoring.CSMSerializer._is_signed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - event_dict
    - last_attempt
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 413
    functionName: botocore.monitoring.CSMSerializer._add_fields_from_last_attempt
    functionSourceFile: botocore.monitoring
    functionUses: 1
    functionsReached:
    - logger.debug
    - botocore.monitoring.CSMSerializer._get_auth_match
    - botocore.monitoring.CSMSerializer._serialize_parsed_error
    - botocore.monitoring.CSMSerializer._truncate
    - botocore.compat.ensure_unicode
    - regex.match
    - botocore.monitoring.CSMSerializer._get_user_agent
    - auth_match.group
    - request_headers.get
    - botocore.monitoring.CSMSerializer._get_auth_value
    - botocore.monitoring.CSMSerializer._serialize_wire_exception
    - <builtin>.len
    - botocore.monitoring.CSMSerializer._get_region
    - <builtin>.str
    - botocore.monitoring.CSMSerializer._is_signed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request_headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 507
    functionName: botocore.monitoring.CSMSerializer._get_region
    functionSourceFile: botocore.monitoring
    functionUses: 3
    functionsReached:
    - botocore.monitoring.CSMSerializer._get_auth_match
    - regex.match
    - botocore.compat.ensure_unicode
    - auth_match.group
    - botocore.monitoring.CSMSerializer._get_auth_value
    - botocore.monitoring.CSMSerializer._is_signed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request_headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 516
    functionName: botocore.monitoring.CSMSerializer._get_user_agent
    functionSourceFile: botocore.monitoring
    functionUses: 3
    functionsReached:
    - logger.debug
    - botocore.compat.ensure_unicode
    - request_headers.get
    - <builtin>.len
    - botocore.monitoring.CSMSerializer._truncate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - parsed_error
    - event_dict
    - event_type
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 474
    functionName: botocore.monitoring.CSMSerializer._serialize_parsed_error
    functionSourceFile: botocore.monitoring
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - logger.debug
    - botocore.monitoring.CSMSerializer._truncate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - wire_exception
    - event_dict
    - event_type
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 485
    functionName: botocore.monitoring.CSMSerializer._serialize_wire_exception
    functionSourceFile: botocore.monitoring
    functionUses: 2
    functionsReached:
    - <builtin>.len
    - logger.debug
    - <builtin>.str
    - botocore.monitoring.CSMSerializer._truncate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - latency
    - event_dict
    - event_type
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 434
    functionName: botocore.monitoring.CSMSerializer._serialize_latency
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - retries_exceeded
    - event_dict
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 440
    functionName: botocore.monitoring.CSMSerializer._serialize_retries_exceeded
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - url
    - event_dict
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 445
    functionName: botocore.monitoring.CSMSerializer._serialize_url
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - urllib.parse.urlparse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - request_headers
    - event_dict
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 448
    functionName: botocore.monitoring.CSMSerializer._serialize_request_headers
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached:
    - logger.debug
    - botocore.monitoring.CSMSerializer._get_auth_match
    - botocore.compat.ensure_unicode
    - regex.match
    - botocore.monitoring.CSMSerializer._get_access_key
    - botocore.monitoring.CSMSerializer._get_user_agent
    - auth_match.group
    - request_headers.get
    - botocore.monitoring.CSMSerializer._get_auth_value
    - botocore.monitoring.CSMSerializer._truncate
    - <builtin>.len
    - botocore.monitoring.CSMSerializer._get_region
    - botocore.monitoring.CSMSerializer._is_signed
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request_headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 522
    functionName: botocore.monitoring.CSMSerializer._is_signed
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request_headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 502
    functionName: botocore.monitoring.CSMSerializer._get_access_key
    functionSourceFile: botocore.monitoring
    functionUses: 1
    functionsReached:
    - botocore.monitoring.CSMSerializer._get_auth_match
    - regex.match
    - botocore.compat.ensure_unicode
    - auth_match.group
    - botocore.monitoring.CSMSerializer._get_auth_value
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - http_status_code
    - event_dict
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 462
    functionName: botocore.monitoring.CSMSerializer._serialize_http_status_code
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - response_headers
    - event_dict
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 467
    functionName: botocore.monitoring.CSMSerializer._serialize_response_headers
    functionSourceFile: botocore.monitoring
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - text
    - max_length
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 535
    functionName: botocore.monitoring.CSMSerializer._truncate
    functionSourceFile: botocore.monitoring
    functionUses: 6
    functionsReached:
    - <builtin>.len
    - logger.debug
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - request_headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 525
    functionName: botocore.monitoring.CSMSerializer._get_auth_value
    functionSourceFile: botocore.monitoring
    functionUses: 5
    functionsReached:
    - botocore.compat.ensure_unicode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - auth_val
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 528
    functionName: botocore.monitoring.CSMSerializer._get_auth_match
    functionSourceFile: botocore.monitoring
    functionUses: 5
    functionsReached:
    - regex.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: auth_match.group
    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: request_headers.get
    functionSourceFile: <builtin>
    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: regex.match
    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: botocore.docs.translator
    functionSourceFile: botocore.docs.translator
    functionUses: 0
    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 0x7f983074fc40>
    argNames:
    - self
    - node
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 25
    functionName: botocore.docs.translator.BotoHTML5Translator.visit_admonition
    functionSourceFile: botocore.docs.translator
    functionUses: 0
    functionsReached:
    - sphinx.writers.html5.HTML5Translator.body.append
    - sphinx.writers.html5.HTML5Translator.starttag
    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: sphinx.writers.html5.HTML5Translator.starttag
    functionSourceFile: sphinx
    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: sphinx.writers.html5.HTML5Translator.body.append
    functionSourceFile: sphinx
    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:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 36
    functionName: botocore.docs.translator.BotoHTML5Translator.is_implicit_heading
    functionSourceFile: botocore.docs.translator
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - node
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 50
    functionName: botocore.docs.translator.BotoHTML5Translator.visit_paragraph
    functionSourceFile: botocore.docs.translator
    functionUses: 0
    functionsReached:
    - botocore.docs.translator.BotoHTML5Translator.is_implicit_heading
    - sphinx.writers.html5.HTML5Translator.body.append
    - <builtin>.isinstance
    - <builtin>.super
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  Function list name: All functions
Function coverage:
  '...fuzz_serialization':
  - 80
  - 79
  '...fuzz_serialization.TestOneInput':
  - 65
  - 67
  - 26
  - 59
  - 60
  - 30
  - 63
  '...fuzz_serialization.main':
  - 74
  - 75
  - 76
  botocore:
  - 33
  - 140
  - 152
  - 24
  - 25
  - 29
  - 30
  botocore.args:
  - 13
  - 39
  botocore.args.ClientArgsCreator.__init__:
  - 101
  - 102
  botocore.args.ClientArgsCreator._build_endpoint_resolver:
  - 736
  - 710
  - 743
  - 714
  - 718
  - 731
  - 702
  - 735
  botocore.args.ClientArgsCreator._compute_account_id_endpoint_mode_config:
  - 930
  - 931
  - 932
  - 936
  - 937
  - 939
  - 925
  - 926
  botocore.args.ClientArgsCreator._compute_auth_scheme_preference_config:
  - 960
  - 962
  - 966
  - 974
  - 975
  - 976
  - 977
  - 980
  - 981
  - 956
  botocore.args.ClientArgsCreator._compute_checksum_config:
  - 874
  - 879
  botocore.args.ClientArgsCreator._compute_configured_endpoint_url:
  - 376
  - 379
  - 380
  - 383
  botocore.args.ClientArgsCreator._compute_connect_timeout:
  - 625
  - 626
  - 628
  - 631
  botocore.args.ClientArgsCreator._compute_endpoint_config:
  - 441
  - 442
  - 445
  - 446
  - 447
  botocore.args.ClientArgsCreator._compute_inject_host_prefix:
  - 368
  - 364
  - 359
  botocore.args.ClientArgsCreator._compute_request_compression_config:
  - 644
  - 647
  - 648
  - 653
  - 635
  - 636
  - 637
  - 638
  botocore.args.ClientArgsCreator._compute_retry_config:
  - 572
  - 573
  botocore.args.ClientArgsCreator._compute_retry_max_attempts:
  - 585
  - 586
  - 587
  - 588
  - 590
  - 591
  - 600
  - 601
  - 602
  botocore.args.ClientArgsCreator._compute_retry_mode:
  - 608
  - 609
  - 612
  - 616
  - 617
  botocore.args.ClientArgsCreator._compute_s3_endpoint_config:
  - 452
  - 455
  - 457
  - 458
  - 466
  botocore.args.ClientArgsCreator._compute_signature_version_config:
  - 986
  - 988
  - 989
  botocore.args.ClientArgsCreator._compute_sigv4a_signing_region_set_config:
  - 864
  - 867
  - 868
  botocore.args.ClientArgsCreator._compute_socket_options:
  - 568
  - 562
  - 563
  - 567
  botocore.args.ClientArgsCreator._compute_sts_endpoint_config:
  - 506
  - 500
  - 501
  botocore.args.ClientArgsCreator._compute_user_agent_appid_config:
  - 847
  - 848
  - 849
  - 852
  - 854
  - 856
  botocore.args.ClientArgsCreator._ensure_boolean:
  - 681
  - 684
  botocore.args.ClientArgsCreator._get_sts_regional_endpoints_config:
  - 528
  - 530
  - 525
  botocore.args.ClientArgsCreator._handle_checksum_config:
  - 896
  - 898
  - 904
  - 891
  - 892
  - 893
  - 895
  botocore.args.ClientArgsCreator._ignore_configured_endpoint_urls:
  - 392
  - 386
  botocore.args.ClientArgsCreator._is_s3_service:
  - 416
  botocore.args.ClientArgsCreator._register_checksum_config_feature_ids:
  - 909
  - 911
  - 913
  - 915
  - 917
  - 918
  botocore.args.ClientArgsCreator._resolve_endpoint:
  - 552
  botocore.args.ClientArgsCreator._set_region_if_custom_s3_endpoint:
  - 491
  - 495
  botocore.args.ClientArgsCreator._should_force_s3_global:
  - 472
  - 474
  botocore.args.ClientArgsCreator._should_set_global_sts_endpoint:
  - 520
  - 514
  - 517
  botocore.args.ClientArgsCreator._validate_min_compression_size:
  - 664
  - 668
  - 671
  botocore.args.ClientArgsCreator._validate_s3_regional_config:
  - 480
  botocore.args.ClientArgsCreator.compute_client_args:
  - 256
  - 257
  - 259
  - 267
  - 275
  - 281
  - 286
  - 287
  - 288
  - 289
  - 290
  - 291
  - 322
  - 323
  - 324
  - 325
  - 326
  - 327
  - 328
  - 329
  - 330
  - 333
  - 334
  - 336
  - 338
  - 339
  - 351
  - 243
  - 245
  - 246
  - 247
  - 248
  - 250
  - 252
  botocore.args.ClientArgsCreator.compute_endpoint_resolver_builtin_defaults:
  - 768
  - 834
  - 773
  - 838
  - 809
  - 783
  - 815
  - 785
  - 788
  - 831
  - 790
  - 822
  - 824
  - 828
  - 799
  botocore.args.ClientArgsCreator.compute_s3_config:
  - 397
  - 401
  - 402
  - 403
  - 410
  - 411
  botocore.args.ClientArgsCreator.get_client_args:
  - 192
  - 185
  - 137
  - 144
  - 145
  - 178
  - 209
  - 121
  - 156
  - 157
  - 190
  - 159
  botocore.args.ClientConfigString.__new__:
  - 1000
  botocore.args.ConfigObjectWrapper:
  - 993
  botocore.auth:
  - 1225
  - 1226
  - 1199
  - 1202
  - 52
  - 1204
  botocore.auth.BearerAuth:
  - 1122
  botocore.auth.BearerAuth.add_auth:
  - 1130
  - 1134
  botocore.auth.HmacV1Auth._get_date:
  - 1012
  botocore.auth.HmacV1Auth._inject_signature:
  - 1015
  botocore.auth.HmacV1Auth.add_auth:
  - 1001
  - 1003
  - 1004
  - 1005
  - 1006
  - 1009
  botocore.auth.HmacV1Auth.canonical_custom_headers:
  - 930
  - 931
  - 932
  - 933
  - 934
  - 935
  - 937
  - 938
  - 939
  - 940
  botocore.auth.HmacV1Auth.canonical_resource:
  - 960
  - 964
  - 965
  - 966
  - 968
  - 970
  - 971
  - 972
  - 974
  botocore.auth.HmacV1Auth.canonical_standard_headers:
  - 913
  - 915
  - 916
  - 918
  - 919
  - 920
  - 921
  - 923
  - 924
  - 925
  botocore.auth.HmacV1Auth.canonical_string:
  - 980
  - 981
  - 982
  - 983
  - 985
  botocore.auth.HmacV1Auth.get_signature:
  - 994
  - 997
  - 998
  - 991
  botocore.auth.HmacV1Auth.sign_string:
  - 904
  - 905
  - 907
  - 908
  botocore.auth.HmacV1Auth.unquote_v:
  - 946
  - 949
  - 943
  botocore.auth.HmacV1PostAuth:
  - 1082
  botocore.auth.HmacV1PostAuth.add_auth:
  - 1092
  - 1097
  - 1099
  - 1106
  - 1108
  - 1111
  - 1112
  - 1115
  botocore.auth.HmacV1QueryAuth:
  - 1029
  botocore.auth.HmacV1QueryAuth._get_date:
  - 1046
  botocore.auth.HmacV1QueryAuth._inject_signature:
  - 1057
  - 1062
  - 1069
  - 1072
  - 1073
  - 1078
  - 1053
  - 1054
  botocore.auth.S3ExpressAuth.__init__:
  - 542
  botocore.auth.S3ExpressAuth._modify_request_before_signing:
  - 553
  - 549
  - 550
  botocore.auth.S3ExpressAuth.add_auth:
  - 546
  botocore.auth.S3ExpressPostAuth.add_auth:
  - 578
  - 581
  - 582
  - 583
  - 585
  - 587
  - 592
  - 561
  - 562
  - 593
  - 596
  - 565
  - 570
  - 572
  botocore.auth.S3ExpressQueryAuth.__init__:
  - 615
  botocore.auth.S3ExpressQueryAuth._modify_request_before_signing:
  - 640
  - 672
  - 674
  - 645
  - 649
  - 653
  - 654
  - 686
  - 656
  - 657
  - 626
  - 630
  - 666
  - 636
  - 669
  - 671
  botocore.auth.S3SigV4Auth._modify_request_before_signing:
  - 488
  - 484
  - 485
  botocore.auth.S3SigV4Auth._should_sha256_sign_payload:
  - 513
  - 514
  - 515
  - 517
  - 518
  - 524
  - 494
  - 495
  - 529
  - 499
  - 504
  - 505
  botocore.auth.S3SigV4PostAuth:
  - 812
  botocore.auth.S3SigV4PostAuth.add_auth:
  - 837
  - 840
  - 841
  - 842
  - 844
  - 846
  - 849
  - 850
  - 820
  - 821
  - 853
  - 824
  - 829
  - 831
  botocore.auth.S3SigV4QueryAuth:
  - 788
  botocore.auth.SigV2Auth:
  - 125
  botocore.auth.SigV2Auth.add_auth:
  - 166
  - 168
  - 177
  - 178
  - 180
  botocore.auth.SigV2Auth.calc_signature:
  - 133
  - 134
  - 136
  - 139
  - 140
  - 143
  - 147
  - 149
  - 150
  - 151
  - 152
  - 153
  - 155
  - 156
  - 157
  botocore.auth.SigV3Auth.add_auth:
  - 192
  - 194
  - 195
  - 196
  - 199
  - 200
  - 202
  - 203
  - 206
  - 208
  - 190
  botocore.auth.SigV4Auth:
  - 214
  botocore.auth.SigV4Auth._canonical_query_string_params:
  - 264
  - 265
  - 266
  - 267
  - 268
  - 273
  - 274
  - 275
  botocore.auth.SigV4Auth._canonical_query_string_url:
  - 289
  - 290
  - 291
  - 280
  - 283
  - 284
  - 285
  botocore.auth.SigV4Auth._header_value:
  - 316
  botocore.auth.SigV4Auth._inject_signature_to_request:
  - 439
  - 440
  - 441
  - 442
  - 444
  - 445
  botocore.auth.SigV4Auth._is_streaming_checksum_payload:
  - 323
  - 324
  - 325
  botocore.auth.SigV4Auth._modify_request_before_signing:
  - 449
  - 451
  - 452
  - 453
  - 457
  - 458
  botocore.auth.SigV4Auth._normalize_url_path:
  - 379
  botocore.auth.SigV4Auth._set_necessary_date_headers:
  - 466
  - 468
  - 471
  - 472
  - 474
  - 477
  botocore.auth.SigV4Auth._should_sha256_sign_payload:
  - 361
  - 355
  botocore.auth.SigV4Auth._sign:
  - 232
  - 229
  - 230
  botocore.auth.SigV4Auth.add_auth:
  - 421
  - 423
  - 424
  - 427
  - 428
  - 429
  - 430
  - 431
  - 432
  - 433
  - 434
  - 436
  botocore.auth.SigV4Auth.canonical_headers:
  - 295
  - 302
  - 303
  - 304
  - 305
  - 307
  - 308
  botocore.auth.SigV4Auth.canonical_query_string:
  - 256
  - 257
  - 259
  botocore.auth.SigV4Auth.canonical_request:
  - 364
  - 365
  - 366
  - 367
  - 368
  - 369
  - 370
  - 371
  - 374
  - 375
  - 376
  botocore.auth.SigV4Auth.credential_scope:
  - 392
  - 393
  - 394
  - 395
  - 396
  botocore.auth.SigV4Auth.headers_to_sign:
  - 236
  - 240
  - 241
  - 242
  - 243
  - 245
  - 248
  botocore.auth.SigV4Auth.payload:
  - 328
  - 330
  - 335
  - 336
  - 337
  - 340
  - 341
  - 342
  - 343
  - 344
  - 346
  - 349
  botocore.auth.SigV4Auth.scope:
  - 384
  - 385
  - 386
  - 387
  - 388
  botocore.auth.SigV4Auth.signature:
  - 416
  - 417
  - 418
  - 412
  - 413
  - 415
  botocore.auth.SigV4Auth.signed_headers:
  - 320
  - 319
  botocore.auth.SigV4Auth.string_to_sign:
  - 399
  - 405
  - 406
  - 407
  - 408
  botocore.auth.SigV4QueryAuth.__init__:
  - 712
  botocore.auth.SigV4QueryAuth._modify_request_before_signing:
  - 737
  - 764
  - 741
  - 745
  - 746
  - 778
  - 748
  - 749
  - 718
  - 722
  - 758
  - 728
  - 761
  - 763
  - 732
  - 766
  botocore.auth.TokenSigner:
  - 116
  botocore.auth._get_body_as_dict:
  - 99
  - 100
  - 101
  - 102
  botocore.auth._host_from_url:
  - 88
  - 81
  - 87
  - 79
  botocore.auth.resolve_auth_scheme_preference:
  - 1153
  - 1160
  - 1161
  - 1168
  - 1172
  - 1173
  - 1175
  - 1176
  botocore.auth.resolve_auth_type:
  - 1145
  - 1140
  - 1141
  - 1143
  botocore.awsrequest:
  - 34
  botocore.awsrequest.AWSConnection:
  - 54
  botocore.awsrequest.AWSConnection.__init__:
  - 67
  botocore.awsrequest.AWSConnection._consume_headers:
  - 161
  botocore.awsrequest.AWSConnection._convert_to_bytes:
  - 105
  - 106
  - 107
  - 109
  - 110
  botocore.awsrequest.AWSConnection._handle_expect_response:
  - 195
  - 196
  - 197
  - 167
  - 199
  - 169
  - 170
  - 171
  - 172
  - 173
  - 205
  - 176
  - 177
  - 190
  botocore.awsrequest.AWSConnection._is_100_continue_status:
  - 226
  - 229
  - 230
  botocore.awsrequest.AWSConnection._send_message_body:
  - 208
  - 209
  botocore.awsrequest.AWSConnection._send_output:
  - 129
  - 130
  - 142
  - 114
  - 115
  - 146
  - 149
  - 120
  - 123
  - 124
  - 127
  botocore.awsrequest.AWSConnection.close:
  - 80
  botocore.awsrequest.AWSConnection.request:
  - 88
  - 91
  - 96
  botocore.awsrequest.AWSConnection.send:
  - 217
  - 212
  - 213
  - 223
  botocore.awsrequest.AWSHTTPConnection:
  - 236
  botocore.awsrequest.AWSHTTPResponse.__init__:
  - 41
  - 42
  botocore.awsrequest.AWSHTTPResponse._read_status:
  - 50
  - 45
  botocore.awsrequest.AWSHTTPSConnection:
  - 240
  botocore.awsrequest.AWSPreparedRequest:
  - 492
  botocore.awsrequest.AWSPreparedRequest.reset_stream:
  - 519
  - 532
  - 535
  - 536
  - 538
  botocore.awsrequest.AWSRequest:
  - 434
  botocore.awsrequest.AWSRequest.__init__:
  - 466
  - 467
  - 460
  - 453
  botocore.awsrequest.AWSRequest.body:
  - 485
  - 486
  - 487
  botocore.awsrequest.AWSRequest.prepare:
  - 480
  - 481
  botocore.awsrequest.AWSRequestPreparer:
  - 346
  botocore.awsrequest.AWSRequestPreparer._determine_content_length:
  - 430
  botocore.awsrequest.AWSRequestPreparer._prepare_body:
  - 418
  - 420
  - 423
  - 424
  - 425
  botocore.awsrequest.AWSRequestPreparer._prepare_headers:
  - 389
  - 392
  - 396
  - 397
  - 398
  - 399
  - 403
  - 404
  botocore.awsrequest.AWSRequestPreparer._prepare_url:
  - 384
  - 385
  - 377
  - 378
  - 380
  - 381
  botocore.awsrequest.AWSRequestPreparer._to_utf8:
  - 411
  - 412
  - 413
  - 414
  botocore.awsrequest.AWSRequestPreparer.prepare:
  - 368
  - 369
  - 370
  - 373
  botocore.awsrequest.AWSResponse:
  - 543
  botocore.awsrequest.AWSResponse.__init__:
  - 558
  botocore.awsrequest.AWSResponse.content:
  - 572
  - 565
  - 567
  botocore.awsrequest.AWSResponse.text:
  - 578
  - 584
  - 585
  - 586
  - 588
  botocore.awsrequest.HeadersDict:
  - 610
  botocore.awsrequest.HeadersDict.__delitem__:
  - 623
  botocore.awsrequest.HeadersDict.__getitem__:
  - 620
  botocore.awsrequest.HeadersDict.__init__:
  - 614
  botocore.awsrequest.HeadersDict.__iter__:
  - 626
  botocore.awsrequest.HeadersDict.__len__:
  - 629
  botocore.awsrequest.HeadersDict.__repr__:
  - 632
  botocore.awsrequest.HeadersDict.__setitem__:
  - 617
  botocore.awsrequest.HeadersDict.copy:
  - 635
  botocore.awsrequest._HeaderKey.__eq__:
  - 600
  botocore.awsrequest._HeaderKey.__hash__:
  - 597
  botocore.awsrequest._HeaderKey.__init__:
  - 594
  botocore.awsrequest._HeaderKey.__repr__:
  - 606
  botocore.awsrequest._urljoin:
  - 325
  - 328
  - 332
  - 338
  - 341
  - 318
  botocore.awsrequest.create_request_object:
  - 306
  - 293
  - 311
  botocore.awsrequest.prepare_request_dict:
  - 288
  - 271
  - 274
  - 275
  - 276
  - 281
  - 282
  - 254
  botocore.client:
  - 66
  - 67
  botocore.client.BaseClient:
  - 994
  botocore.client.BaseClient.__getattr__:
  - 962
  - 966
  - 959
  botocore.client.BaseClient.__init__:
  - 952
  - 939
  - 956
  - 950
  botocore.client.BaseClient._convert_to_request_dict:
  - 1102
  - 1105
  - 1106
  - 1107
  - 1108
  - 1109
  - 1110
  - 1113
  botocore.client.BaseClient._emit_api_params:
  - 1136
  - 1129
  - 1130
  - 1138
  botocore.client.BaseClient._get_credentials:
  - 1351
  botocore.client.BaseClient._get_waiter_config:
  - 1292
  - 1294
  botocore.client.BaseClient._load_exceptions:
  - 1346
  botocore.client.BaseClient._make_api_call:
  - 1028
  - 1031
  - 1035
  - 1042
  - 1044
  - 1045
  - 1053
  - 1056
  - 1059
  - 1060
  - 1064
  - 1072
  - 1073
  - 1074
  - 1076
  - 1077
  - 996
  - 998
  - 1006
  - 1007
  - 1016
  - 1019
  botocore.client.BaseClient._make_request:
  - 1084
  - 1086
  - 1087
  botocore.client.BaseClient._register_handlers:
  - 985
  - 979
  - 980
  botocore.client.BaseClient._resolve_endpoint_ruleset:
  - 1184
  - 1153
  - 1189
  - 1191
  - 1192
  - 1167
  - 1172
  - 1182
  - 1183
  botocore.client.BaseClient.can_paginate:
  - 1264
  - 1280
  - 1278
  botocore.client.BaseClient.close:
  - 974
  - 975
  botocore.client.BaseClient.exceptions:
  - 1341
  - 1342
  botocore.client.BaseClient.get_paginator:
  - 1217
  - 1249
  - 1253
  - 1256
  - 1257
  - 1199
  - 1232
  - 1241
  botocore.client.BaseClient.get_paginator.paginate:
  - 1226
  botocore.client.BaseClient.get_waiter:
  - 1314
  - 1315
  - 1317
  - 1319
  - 1320
  - 1321
  - 1324
  - 1305
  botocore.client.BaseClient.waiter_names:
  - 1330
  - 1331
  - 1332
  - 1334
  - 1337
  botocore.client.ClientCreator:
  - 71
  botocore.client.ClientCreator._create_api_method:
  - 608
  - 604
  - 607
  botocore.client.ClientCreator._create_api_method._api_call:
  - 602
  - 597
  botocore.client.ClientCreator._create_client_class:
  - 193
  - 194
  - 197
  - 198
  - 203
  - 204
  botocore.client.ClientCreator._create_methods:
  - 576
  - 574
  - 575
  botocore.client.ClientCreator._create_name_mapping:
  - 585
  - 586
  botocore.client.ClientCreator._default_s3_presign_to_sigv2:
  - 487
  - 490
  - 493
  - 494
  - 473
  botocore.client.ClientCreator._evaluate_client_specific_token:
  - 626
  - 623
  botocore.client.ClientCreator._get_client_args:
  - 548
  - 557
  botocore.client.ClientCreator._get_retry_mode:
  - 313
  - 316
  - 311
  botocore.client.ClientCreator._inject_s3_input_parameters:
  - 466
  - 467
  botocore.client.ClientCreator._load_service_endpoints_ruleset:
  - 240
  botocore.client.ClientCreator._load_service_model:
  - 233
  - 236
  botocore.client.ClientCreator._normalize_endpoint_discovery_config:
  - 352
  - 353
  - 355
  - 356
  - 357
  - 350
  - 351
  botocore.client.ClientCreator._normalize_fips_region:
  - 208
  - 209
  - 213
  - 214
  - 215
  - 217
  - 222
  botocore.client.ClientCreator._register_endpoint_discovery:
  - 323
  - 326
  - 328
  - 330
  - 331
  - 335
  - 336
  - 338
  - 341
  - 342
  - 344
  - 319
  botocore.client.ClientCreator._register_eventbridge_events:
  - 370
  - 372
  botocore.client.ClientCreator._register_importexport_events:
  - 505
  - 507
  botocore.client.ClientCreator._register_legacy_retries:
  - 290
  - 294
  - 270
  - 274
  - 275
  - 278
  - 279
  - 281
  - 282
  - 286
  botocore.client.ClientCreator._register_retries:
  - 246
  - 247
  - 248
  - 249
  - 250
  - 251
  - 252
  - 255
  botocore.client.ClientCreator._register_s3_control_events:
  - 416
  - 418
  botocore.client.ClientCreator._register_s3_events:
  - 400
  - 401
  - 404
  - 398
  botocore.client.ClientCreator._register_s3express_events:
  - 386
  - 388
  botocore.client.ClientCreator._register_v2_adaptive_retries:
  - 265
  botocore.client.ClientCreator._register_v2_standard_retries:
  - 258
  - 260
  - 262
  botocore.client.ClientCreator._requires_endpoint_discovery:
  - 363
  botocore.client.ClientCreator._set_importexport_signature_version:
  - 520
  - 517
  - 526
  botocore.client.ClientCreator._set_s3_presign_signature_version:
  - 449
  - 453
  - 426
  - 459
  - 429
  - 438
  - 441
  botocore.client.ClientCreator._transform_legacy_retries:
  - 299
  - 301
  - 302
  - 303
  - 305
  botocore.client.ClientCreator.create_client:
  - 129
  - 135
  - 136
  - 139
  - 140
  - 142
  - 145
  - 149
  - 153
  - 157
  - 171
  - 172
  - 173
  - 180
  - 181
  - 182
  - 183
  - 116
  - 119
  - 120
  - 122
  - 125
  botocore.client.ClientCreator.create_client_class:
  - 189
  - 190
  botocore.client.ClientEndpointBridge:
  - 630
  botocore.client.ClientEndpointBridge._assume_endpoint:
  - 800
  - 781
  - 783
  - 786
  - 789
  - 796
  - 799
  botocore.client.ClientEndpointBridge._check_default_region:
  - 704
  - 707
  botocore.client.ClientEndpointBridge._create_endpoint:
  - 713
  - 716
  - 717
  - 718
  - 720
  - 722
  - 725
  - 726
  botocore.client.ClientEndpointBridge._is_s3_dualstack_mode:
  - 771
  - 772
  - 775
  - 757
  - 764
  botocore.client.ClientEndpointBridge._make_url:
  - 831
  botocore.client.ClientEndpointBridge._pick_region_values:
  - 865
  - 852
  botocore.client.ClientEndpointBridge._resolve_endpoint_variant_config_var:
  - 745
  - 741
  - 742
  - 743
  botocore.client.ClientEndpointBridge._resolve_signature_version:
  - 898
  - 899
  - 873
  - 876
  - 882
  - 885
  - 891
  - 894
  botocore.client.ClientEndpointBridge._resolve_signing_name:
  - 845
  - 839
  botocore.client.ClientEndpointBridge._resolve_use_dualstack_endpoint:
  - 752
  - 749
  - 750
  botocore.client.ClientEndpointBridge.resolve:
  - 680
  - 683
  - 696
  - 691
  - 692
  - 664
  - 665
  - 668
  - 671
  botocore.client.ClientMeta:
  - 1359
  botocore.client._get_configured_signature_version:
  - 1415
  - 1422
  - 1426
  - 1429
  - 1430
  - 1431
  - 1432
  - 1433
  botocore.compat:
  - 288
  - 289
  - 34
  - 352
  - 324
  - 355
  - 326
  - 358
  - 368
  - 146
  botocore.compat._windows_shell_split:
  - 256
  - 261
  - 262
  - 265
  - 266
  - 178
  - 197
  - 204
  - 205
  - 211
  - 212
  - 215
  - 218
  - 222
  - 234
  - 235
  - 238
  - 239
  - 244
  - 245
  - 250
  - 251
  - 253
  botocore.compat.accepts_kwargs:
  - 73
  botocore.compat.compat_shell_split:
  - 168
  - 171
  - 172
  - 174
  botocore.compat.copy_kwargs:
  - 124
  - 127
  botocore.compat.ensure_bytes:
  - 80
  - 81
  - 82
  botocore.compat.filter_ssl_warnings:
  - 95
  botocore.compat.from_dict:
  - 105
  - 106
  botocore.compat.from_pairs:
  - 113
  - 114
  botocore.compat.get_current_datetime:
  - 312
  - 313
  - 310
  - 311
  botocore.compat.get_md5:
  - 153
  - 162
  - 161
  botocore.compat.get_tzinfo_options:
  - 275
  botocore.compat.has_minimum_crt_version:
  - 296
  - 301
  - 302
  - 295
  botocore.compat.set_socket_timeout:
  - 65
  - 70
  botocore.compat.total_seconds:
  - 140
  - 132
  botocore.compress:
  - 28
  - 13
  botocore.compress._get_body_size:
  - 80
  - 81
  - 82
  botocore.compress._gzip_compress_body:
  - 96
  - 97
  - 98
  - 99
  - 100
  - 101
  - 103
  - 92
  - 93
  - 94
  - 95
  botocore.compress._gzip_compress_fileobj:
  - 107
  - 108
  - 110
  - 111
  - 113
  - 114
  - 115
  - 116
  botocore.compress._is_compressible_type:
  - 72
  - 73
  - 75
  - 76
  botocore.compress._set_compression_header:
  - 121
  - 122
  botocore.compress._should_compress_request:
  - 46
  - 51
  - 52
  - 54
  - 57
  - 58
  - 62
  botocore.compress.maybe_compress_request:
  - 32
  - 33
  - 34
  - 35
  - 36
  - 37
  - 38
  - 39
  - 42
  botocore.config.Config:
  - 26
  - 295
  botocore.config.Config.__init__:
  - 384
  - 354
  - 387
  - 389
  - 364
  - 365
  - 368
  - 369
  - 371
  - 374
  - 378
  - 381
  botocore.config.Config._record_user_provided_options:
  - 392
  - 397
  - 398
  - 406
  - 413
  - 415
  botocore.config.Config._validate_retry_configuration:
  - 451
  - 434
  - 435
  - 436
  - 441
  - 446
  botocore.config.Config._validate_s3_configuration:
  - 424
  - 425
  - 426
  botocore.config.Config.inject_host_prefix:
  - 342
  botocore.config.Config.merge:
  - 474
  - 458
  - 477
  - 471
  botocore.configloader._merge_list_of_dicts:
  - 88
  - 89
  - 90
  botocore.configloader._parse_nested:
  - 192
  - 193
  - 198
  - 199
  - 191
  botocore.configloader._parse_section:
  - 209
  - 206
  botocore.configloader._unicode_path:
  - 173
  - 177
  - 178
  - 179
  - 180
  botocore.configloader.build_profile_map:
  - 265
  - 270
  - 271
  - 272
  - 273
  - 274
  - 275
  - 276
  - 277
  - 215
  botocore.configloader.load_config:
  - 96
  - 105
  - 106
  botocore.configloader.multi_file_load_config:
  - 73
  - 75
  - 78
  - 79
  - 80
  - 81
  - 24
  botocore.configloader.raw_config_parse:
  - 163
  - 141
  - 142
  - 110
  - 144
  - 143
  - 146
  - 148
  - 154
  - 156
  - 157
  - 158
  botocore.configprovider:
  - 24
  - 13
  botocore.configprovider.BaseProvider:
  - 666
  botocore.configprovider.BaseProvider.provide:
  - 673
  botocore.configprovider.ChainProvider:
  - 678
  botocore.configprovider.ChainProvider.__deepcopy__:
  - 702
  - 703
  botocore.configprovider.ChainProvider.__init__:
  - 696
  - 685
  botocore.configprovider.ChainProvider.__repr__:
  - 743
  botocore.configprovider.ChainProvider._convert_type:
  - 738
  - 739
  botocore.configprovider.ChainProvider.provide:
  - 707
  - 713
  - 714
  - 715
  - 716
  botocore.configprovider.ChainProvider.set_default_provider:
  - 720
  - 725
  - 727
  - 728
  - 731
  - 732
  botocore.configprovider.ConfigChainFactory:
  - 344
  botocore.configprovider.ConfigChainFactory.__init__:
  - 352
  - 363
  botocore.configprovider.ConfigChainFactory._get_env_providers:
  - 435
  - 437
  - 438
  - 439
  botocore.configprovider.ConfigChainFactory._get_scoped_config_providers:
  - 448
  - 449
  - 445
  - 447
  botocore.configprovider.ConfigChainFactory.create_config_chain:
  - 419
  - 420
  - 421
  - 422
  - 423
  - 425
  - 426
  - 428
  - 375
  - 413
  - 414
  - 415
  botocore.configprovider.ConfigValueStore:
  - 458
  botocore.configprovider.ConfigValueStore.__copy__:
  - 483
  - 484
  - 485
  botocore.configprovider.ConfigValueStore.__deepcopy__:
  - 476
  - 477
  - 478
  botocore.configprovider.ConfigValueStore.__init__:
  - 472
  - 473
  - 461
  - 471
  botocore.configprovider.ConfigValueStore.clear_config_variable:
  - 564
  - 558
  botocore.configprovider.ConfigValueStore.get_config_provider:
  - 523
  - 511
  botocore.configprovider.ConfigValueStore.get_config_variable:
  - 505
  - 490
  - 508
  - 503
  botocore.configprovider.ConfigValueStore.set_config_provider:
  - 567
  botocore.configprovider.ConfigValueStore.set_config_variable:
  - 532
  botocore.configprovider.ConfiguredEndpointProvider:
  - 922
  botocore.configprovider.ConfiguredEndpointProvider.__init__:
  - 967
  - 964
  - 943
  botocore.configprovider.ConfiguredEndpointProvider._get_endpoint_url_config_global:
  - 1047
  botocore.configprovider.ConfiguredEndpointProvider._get_endpoint_url_config_service:
  - 1041
  - 1039
  botocore.configprovider.ConfiguredEndpointProvider._get_endpoint_url_environment_global:
  - 1055
  botocore.configprovider.ConfiguredEndpointProvider._get_endpoint_url_environment_service:
  - 1050
  - 1051
  botocore.configprovider.ConfiguredEndpointProvider._get_service_env_var_name:
  - 1016
  botocore.configprovider.ConfiguredEndpointProvider._get_services_config:
  - 1024
  - 1020
  - 1028
  botocore.configprovider.ConfiguredEndpointProvider._get_snake_case_service_id:
  - 1009
  - 1013
  - 1007
  botocore.configprovider.ConfiguredEndpointProvider.provide:
  - 993
  - 994
  - 1001
  - 972
  - 984
  - 985
  - 991
  botocore.configprovider.ConstantProvider:
  - 905
  botocore.configprovider.ConstantProvider.__deepcopy__:
  - 911
  botocore.configprovider.ConstantProvider.provide:
  - 914
  botocore.configprovider.DefaultConfigResolver._resolve_default_values_by_mode:
  - 320
  - 322
  - 324
  - 326
  - 314
  - 315
  - 317
  botocore.configprovider.DefaultConfigResolver.get_default_config_values:
  - 337
  - 338
  botocore.configprovider.DefaultConfigResolver.get_default_modes:
  - 333
  botocore.configprovider.EnvironmentProvider:
  - 814
  botocore.configprovider.EnvironmentProvider.__deepcopy__:
  - 829
  - 830
  botocore.configprovider.EnvironmentProvider.__init__:
  - 817
  botocore.configprovider.EnvironmentProvider.provide:
  - 834
  - 835
  botocore.configprovider.InstanceVarProvider:
  - 747
  botocore.configprovider.InstanceVarProvider.__deepcopy__:
  - 763
  - 764
  botocore.configprovider.InstanceVarProvider.__init__:
  - 750
  botocore.configprovider.InstanceVarProvider.provide:
  - 768
  - 769
  - 770
  botocore.configprovider.ScopedConfigProvider.__deepcopy__:
  - 795
  - 796
  botocore.configprovider.ScopedConfigProvider.__init__:
  - 779
  botocore.configprovider.ScopedConfigProvider.provide:
  - 800
  - 801
  - 802
  - 803
  - 804
  - 806
  - 807
  botocore.configprovider.SectionConfigProvider:
  - 844
  botocore.configprovider.SectionConfigProvider.__deepcopy__:
  - 864
  - 861
  - 862
  botocore.configprovider.SectionConfigProvider.__init__:
  - 857
  - 853
  botocore.configprovider.SectionConfigProvider.provide:
  - 868
  - 869
  - 870
  - 877
  - 878
  - 879
  - 880
  botocore.configprovider.SectionConfigProvider.set_default_provider:
  - 886
  - 887
  - 888
  - 890
  - 891
  botocore.configprovider.SmartDefaultsConfigStoreFactory._set_connectTimeoutInMillis:
  - 662
  botocore.configprovider.SmartDefaultsConfigStoreFactory._set_retryMode:
  - 651
  botocore.configprovider.SmartDefaultsConfigStoreFactory._set_s3UsEast1RegionalEndpoints:
  - 657
  botocore.configprovider.SmartDefaultsConfigStoreFactory._set_stsRegionalEndpoints:
  - 654
  botocore.configprovider.SmartDefaultsConfigStoreFactory._update_provider:
  - 627
  - 628
  - 629
  - 630
  - 631
  - 633
  - 634
  - 637
  botocore.configprovider.SmartDefaultsConfigStoreFactory._update_section_provider:
  - 642
  - 643
  - 645
  - 646
  - 648
  botocore.configprovider.SmartDefaultsConfigStoreFactory.merge_smart_defaults:
  - 593
  - 594
  - 596
  - 598
  - 600
  - 601
  - 602
  botocore.configprovider.SmartDefaultsConfigStoreFactory.resolve_auto_mode:
  - 608
  - 609
  - 610
  - 614
  - 619
  - 620
  - 606
  - 607
  botocore.configprovider._create_config_chain_mapping:
  - 296
  - 297
  botocore.configprovider.create_botocore_default_config_mapping:
  - 275
  - 276
  - 279
  - 282
  - 284
  - 287
  botocore.context:
  - 13
  - 38
  botocore.context.ClientContext:
  - 35
  - 27
  botocore.context.get_context:
  - 42
  - 43
  botocore.context.reset_context:
  - 66
  - 61
  botocore.context.set_context:
  - 56
  - 47
  botocore.context.start_as_current_context:
  - 97
  - 71
  - 88
  - 89
  - 90
  - 92
  - 93
  - 95
  botocore.context.with_current_context:
  - 101
  botocore.context.with_current_context.decorator:
  - 118
  botocore.context.with_current_context.decorator.wrapper:
  - 120
  - 121
  - 122
  - 123
  botocore.credentials:
  - 73
  - 74
  botocore.credentials.AssumeRoleCredentialFetcher.__init__:
  - 904
  - 907
  - 871
  botocore.credentials.AssumeRoleCredentialFetcher._assume_role_kwargs:
  - 928
  - 930
  - 932
  - 935
  - 937
  - 925
  - 926
  botocore.credentials.AssumeRoleCredentialFetcher._create_client:
  - 944
  - 945
  - 943
  botocore.credentials.AssumeRoleCredentialFetcher._get_credentials:
  - 916
  - 917
  - 918
  - 919
  - 920
  - 921
  botocore.credentials.AssumeRoleProvider.__init__:
  - 1616
  - 1565
  botocore.credentials.AssumeRoleProvider._get_role_config:
  - 1728
  - 1725
  - 1705
  - 1707
  - 1726
  - 1720
  - 1713
  - 1684
  - 1685
  - 1688
  - 1690
  - 1691
  - 1692
  - 1693
  - 1694
  botocore.credentials.AssumeRoleProvider._has_static_credentials:
  - 1797
  botocore.credentials.AssumeRoleProvider._load_creds_via_assume_role:
  - 1667
  - 1637
  - 1638
  - 1669
  - 1670
  - 1672
  - 1673
  - 1643
  - 1644
  - 1677
  - 1647
  - 1648
  - 1651
  - 1652
  - 1655
  - 1656
  - 1659
  botocore.credentials.AssumeRoleProvider._resolve_credentials_from_profile:
  - 1824
  - 1825
  - 1827
  - 1828
  - 1832
  - 1833
  - 1834
  - 1843
  - 1813
  - 1815
  - 1816
  - 1817
  botocore.credentials.AssumeRoleProvider._resolve_credentials_from_source:
  - 1860
  - 1863
  - 1871
  - 1874
  - 1875
  botocore.credentials.AssumeRoleProvider._resolve_source_credentials:
  - 1800
  - 1801
  - 1802
  - 1803
  - 1808
  - 1809
  - 1810
  botocore.credentials.AssumeRoleProvider._resolve_static_credentials_from_profile:
  - 1850
  - 1847
  botocore.credentials.AssumeRoleProvider._source_profile_has_credentials:
  - 1750
  botocore.credentials.AssumeRoleProvider._validate_credential_source:
  - 1741
  - 1733
  botocore.credentials.AssumeRoleProvider._validate_source_profile:
  - 1760
  - 1761
  - 1773
  - 1778
  - 1789
  botocore.credentials.AssumeRoleProvider.load:
  - 1619
  - 1620
  - 1621
  - 1622
  - 1623
  botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher.__init__:
  - 994
  - 965
  botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs:
  - 1016
  - 1017
  - 1015
  botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher._get_credentials:
  - 1003
  - 1004
  - 1005
  - 1008
  - 1009
  - 1010
  - 1011
  botocore.credentials.AssumeRoleWithWebIdentityProvider.__init__:
  - 1906
  - 1903
  botocore.credentials.AssumeRoleWithWebIdentityProvider._assume_role_with_web_identity:
  - 1956
  - 1957
  - 1960
  - 1967
  - 1969
  - 1970
  - 1940
  - 1941
  - 1974
  - 1943
  - 1945
  - 1946
  botocore.credentials.AssumeRoleWithWebIdentityProvider._get_config:
  - 1927
  - 1928
  - 1929
  - 1932
  - 1933
  - 1934
  botocore.credentials.AssumeRoleWithWebIdentityProvider._get_env_config:
  - 1921
  - 1922
  - 1919
  botocore.credentials.AssumeRoleWithWebIdentityProvider._get_profile_config:
  - 1912
  - 1913
  - 1914
  - 1915
  - 1916
  botocore.credentials.AssumeRoleWithWebIdentityProvider.load:
  - 1909
  botocore.credentials.BaseAssumeRoleCredentialFetcher.__init__:
  - 810
  - 813
  - 816
  - 818
  - 819
  - 821
  botocore.credentials.BaseAssumeRoleCredentialFetcher._add_account_id_to_response:
  - 851
  - 852
  - 853
  - 854
  - 857
  botocore.credentials.BaseAssumeRoleCredentialFetcher._create_cache_key:
  - 833
  - 837
  - 840
  - 844
  - 846
  - 847
  - 848
  - 829
  botocore.credentials.BaseAssumeRoleCredentialFetcher._generate_assume_role_name:
  - 824
  botocore.credentials.BotoProvider.__init__:
  - 1499
  - 1501
  botocore.credentials.BotoProvider.load:
  - 1507
  - 1510
  - 1514
  - 1516
  - 1520
  - 1522
  - 1523
  - 1526
  - 1529
  - 1530
  botocore.credentials.CachedCredentialFetcher.__init__:
  - 736
  - 729
  - 732
  - 733
  botocore.credentials.CachedCredentialFetcher._get_cached_credentials:
  - 772
  - 753
  - 758
  - 759
  - 760
  - 761
  - 763
  - 766
  botocore.credentials.CachedCredentialFetcher._is_expired:
  - 792
  - 793
  - 794
  botocore.credentials.CachedCredentialFetcher._load_from_cache:
  - 778
  - 779
  - 780
  - 783
  botocore.credentials.CachedCredentialFetcher._make_file_safe:
  - 744
  - 743
  botocore.credentials.CachedCredentialFetcher._write_to_cache:
  - 789
  botocore.credentials.CachedCredentialFetcher.fetch_credentials:
  - 750
  botocore.credentials.CanonicalNameCredentialSourcer._get_provider:
  - 2021
  - 2044
  - 2029
  - 2030
  - 2031
  - 2036
  - 2042
  - 2012
  botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_canonical_name:
  - 2050
  - 2058
  - 2055
  botocore.credentials.CanonicalNameCredentialSourcer._get_provider_by_method:
  - 2064
  - 2062
  - 2063
  botocore.credentials.CanonicalNameCredentialSourcer.is_supported:
  - 1985
  botocore.credentials.CanonicalNameCredentialSourcer.source_credentials:
  - 1998
  - 2006
  - 2007
  - 2008
  - 2009
  botocore.credentials.ConfigProvider:
  - 1420
  botocore.credentials.ConfigProvider.__init__:
  - 1434
  - 1444
  botocore.credentials.ConfigProvider._get_account_id:
  - 1486
  botocore.credentials.ConfigProvider._get_session_token:
  - 1481
  - 1482
  botocore.credentials.ConfigProvider.load:
  - 1449
  - 1454
  - 1457
  - 1459
  - 1460
  - 1464
  - 1467
  - 1468
  - 1469
  - 1470
  botocore.credentials.ContainerProvider.__init__:
  - 2080
  - 2077
  - 2079
  botocore.credentials.ContainerProvider._build_headers:
  - 2112
  - 2113
  - 2115
  - 2116
  - 2109
  - 2111
  botocore.credentials.ContainerProvider._create_fetcher.fetch_creds:
  - 2126
  - 2127
  - 2130
  - 2132
  - 2143
  botocore.credentials.ContainerProvider._retrieve_or_fail:
  - 2091
  - 2092
  - 2095
  - 2096
  - 2097
  - 2102
  - 2104
  botocore.credentials.ContainerProvider._validate_auth_token:
  - 2120
  botocore.credentials.ContainerProvider.load:
  - 2088
  - 2087
  botocore.credentials.CredentialProvider._extract_creds_from_mapping:
  - 1059
  - 1061
  botocore.credentials.CredentialProvider.load:
  - 1039
  botocore.credentials.CredentialResolver.__init__:
  - 2154
  botocore.credentials.CredentialResolver._get_provider_offset:
  - 2227
  botocore.credentials.CredentialResolver.get_provider:
  - 2214
  - 2223
  botocore.credentials.CredentialResolver.insert_after:
  - 2195
  - 2196
  - 2182
  botocore.credentials.CredentialResolver.insert_before:
  - 2176
  - 2162
  - 2179
  botocore.credentials.CredentialResolver.load_credentials:
  - 2240
  - 2232
  - 2237
  - 2238
  - 2239
  botocore.credentials.CredentialResolver.remove:
  - 2210
  - 2211
  - 2206
  - 2199
  botocore.credentials.Credentials:
  - 341
  botocore.credentials.Credentials.__init__:
  - 364
  - 359
  botocore.credentials.Credentials._normalize:
  - 373
  - 374
  botocore.credentials.Credentials.get_deferred_property.get_property:
  - 383
  botocore.credentials.Credentials.get_frozen_credentials:
  - 377
  botocore.credentials.DeferredRefreshableCredentials:
  - 702
  botocore.credentials.DeferredRefreshableCredentials.__init__:
  - 715
  botocore.credentials.DeferredRefreshableCredentials.refresh_needed:
  - 720
  - 722
  botocore.credentials.EnvProvider.__init__:
  - 1211
  - 1197
  - 1214
  botocore.credentials.EnvProvider._build_mapping:
  - 1219
  - 1227
  - 1230
  - 1233
  - 1234
  - 1236
  - 1239
  botocore.credentials.EnvProvider._create_credentials_fetcher.fetch_credentials:
  - 1313
  - 1319
  - 1288
  - 1289
  - 1320
  - 1295
  - 1296
  - 1303
  - 1304
  - 1305
  - 1310
  - 1311
  botocore.credentials.EnvProvider.load:
  - 1249
  - 1251
  - 1252
  - 1253
  - 1254
  - 1255
  - 1258
  - 1259
  - 1260
  - 1270
  - 1245
  botocore.credentials.InstanceMetadataProvider.load:
  - 1167
  - 1168
  - 1170
  - 1171
  - 1177
  botocore.credentials.LoginCredentialFetcher:
  - 2550
  botocore.credentials.LoginCredentialFetcher.__init__:
  - 2576
  - 2575
  botocore.credentials.LoginCredentialFetcher._load_private_key:
  - 2696
  - 2702
  - 2706
  - 2707
  - 2711
  - 2714
  botocore.credentials.LoginCredentialFetcher.load_cached_credentials:
  - 2593
  - 2598
  - 2580
  - 2581
  - 2583
  botocore.credentials.LoginCredentialFetcher.refresh_credentials:
  - 2601
  - 2602
  - 2603
  - 2605
  - 2606
  - 2609
  - 2614
  - 2615
  - 2616
  - 2617
  - 2619
  - 2622
  - 2627
  - 2629
  - 2633
  - 2641
  - 2642
  - 2644
  - 2648
  - 2657
  - 2659
  - 2660
  - 2661
  - 2664
  - 2680
  - 2682
  botocore.credentials.LoginProvider.__init__:
  - 2731
  - 2732
  - 2733
  botocore.credentials.LoginProvider.load:
  - 2758
  - 2760
  - 2766
  - 2776
  - 2770
  - 2772
  - 2742
  - 2743
  - 2744
  - 2746
  - 2749
  botocore.credentials.OriginalEC2Provider.__init__:
  - 1337
  - 1339
  botocore.credentials.OriginalEC2Provider.load:
  - 1345
  - 1348
  - 1349
  - 1352
  - 1353
  - 1354
  - 1358
  botocore.credentials.ProcessProvider._credential_process:
  - 1139
  botocore.credentials.ProcessProvider._get_account_id:
  - 1152
  - 1151
  botocore.credentials.ProcessProvider._retrieve_credentials_using:
  - 1127
  - 1128
  - 1129
  - 1104
  - 1105
  - 1108
  - 1109
  - 1113
  - 1114
  - 1115
  botocore.credentials.ProcessProvider.load:
  - 1089
  - 1093
  - 1096
  - 1098
  - 1080
  - 1083
  - 1084
  - 1085
  - 1086
  - 1087
  botocore.credentials.ProcessProvider.load.<lambda1>:
  - 1089
  botocore.credentials.ProcessProvider.profile_config:
  - 1144
  - 1145
  - 1143
  botocore.credentials.ProfileProviderBuilder:
  - 181
  botocore.credentials.ProfileProviderBuilder._create_config_provider:
  - 232
  - 233
  botocore.credentials.ProfileProviderBuilder._create_login_provider:
  - 264
  - 265
  botocore.credentials.ProfileProviderBuilder._create_process_provider:
  - 219
  - 221
  botocore.credentials.ProfileProviderBuilder._create_shared_credential_provider:
  - 225
  - 226
  botocore.credentials.ProfileProviderBuilder._create_sso_provider:
  - 256
  - 250
  - 251
  botocore.credentials.ProfileProviderBuilder._create_web_identity_provider:
  - 240
  - 241
  - 239
  botocore.credentials.ProfileProviderBuilder.providers:
  - 207
  - 211
  - 212
  - 213
  - 214
  - 215
  botocore.credentials.RefreshableCredentials:
  - 389
  botocore.credentials.RefreshableCredentials.__init__:
  - 430
  - 432
  - 435
  - 436
  - 438
  botocore.credentials.RefreshableCredentials._expiry_datetime:
  - 637
  botocore.credentials.RefreshableCredentials._is_expired:
  - 564
  botocore.credentials.RefreshableCredentials._normalize:
  - 442
  - 443
  botocore.credentials.RefreshableCredentials._protected_refresh:
  - 609
  - 618
  - 619
  - 632
  - 622
  - 600
  - 603
  botocore.credentials.RefreshableCredentials._refresh:
  - 577
  - 579
  - 581
  - 584
  - 587
  - 588
  - 592
  - 594
  - 570
  botocore.credentials.RefreshableCredentials._seconds_remaining:
  - 525
  - 526
  botocore.credentials.RefreshableCredentials._set_from_data:
  - 641
  - 646
  - 656
  - 657
  - 658
  - 661
  botocore.credentials.RefreshableCredentials.access_key:
  - 474
  - 478
  botocore.credentials.RefreshableCredentials.account_id:
  - 513
  - 517
  botocore.credentials.RefreshableCredentials.create_from_metadata:
  - 455
  - 457
  - 460
  - 464
  - 467
  botocore.credentials.RefreshableCredentials.get_frozen_credentials:
  - 664
  - 697
  botocore.credentials.RefreshableCredentials.refresh_needed:
  - 548
  - 552
  - 556
  - 559
  - 529
  botocore.credentials.RefreshableCredentials.secret_key:
  - 491
  - 487
  botocore.credentials.RefreshableCredentials.token:
  - 504
  - 500
  botocore.credentials.SSOCredentialFetcher.__init__:
  - 2278
  botocore.credentials.SSOCredentialFetcher._create_cache_key:
  - 2281
  - 2289
  - 2298
  - 2299
  - 2300
  botocore.credentials.SSOCredentialFetcher._get_credentials:
  - 2336
  - 2337
  - 2309
  - 2310
  - 2314
  - 2315
  - 2316
  - 2317
  - 2348
  - 2319
  - 2325
  - 2326
  - 2327
  botocore.credentials.SSOCredentialFetcher._parse_timestamp:
  - 2305
  - 2306
  botocore.credentials.SSOProvider:
  - 2358
  - 2359
  botocore.credentials.SSOProvider.__init__:
  - 2392
  - 2386
  - 2382
  - 2383
  botocore.credentials.SSOProvider._load_sso_config:
  - 2402
  - 2407
  - 2414
  - 2415
  - 2418
  - 2420
  - 2421
  - 2395
  - 2396
  - 2398
  - 2399
  botocore.credentials.SSOProvider._resolve_sso_session_reference:
  - 2432
  - 2436
  - 2440
  - 2442
  - 2444
  - 2431
  botocore.credentials.SSOProvider.load:
  - 2464
  - 2468
  - 2471
  - 2473
  - 2475
  - 2476
  - 2478
  - 2479
  - 2481
  - 2483
  - 2484
  - 2454
  - 2455
  botocore.credentials.SharedCredentialProvider.__init__:
  - 1377
  - 1380
  botocore.credentials.SharedCredentialProvider._get_account_id:
  - 1416
  botocore.credentials.SharedCredentialProvider._get_session_token:
  - 1411
  - 1412
  botocore.credentials.SharedCredentialProvider.load:
  - 1386
  - 1389
  - 1391
  - 1392
  - 1396
  - 1399
  - 1400
  - 1401
  - 1402
  botocore.credentials._base64_url_encode_no_padding:
  - 2491
  botocore.credentials._build_add_dpop_header_handler:
  - 2539
  botocore.credentials._build_add_dpop_header_handler._add_dpop_header_handler:
  - 2542
  botocore.credentials._build_dpop_header:
  - 2528
  - 2529
  - 2530
  - 2533
  - 2502
  - 2505
  - 2506
  - 2519
  - 2520
  - 2522
  - 2523
  - 2525
  - 2526
  - 2495
  botocore.credentials._get_client_creator.client_creator:
  - 298
  - 299
  botocore.credentials._local_now:
  - 278
  botocore.credentials._parse_if_needed:
  - 282
  - 284
  botocore.credentials._serialize_if_needed:
  - 288
  - 289
  - 290
  - 291
  botocore.credentials.create_assume_role_refresher.refresh:
  - 308
  - 316
  botocore.credentials.create_credential_resolver:
  - 128
  - 129
  - 132
  - 142
  - 147
  - 148
  - 154
  - 170
  - 171
  - 176
  - 85
  - 92
  - 93
  - 94
  - 95
  - 98
  - 101
  - 105
  - 110
  - 113
  - 114
  - 115
  - 116
  - 119
  - 124
  - 127
  botocore.credentials.create_mfa_serial_refresher:
  - 337
  botocore.credentials.create_mfa_serial_refresher._Refresher.__call__:
  - 329
  - 335
  botocore.credentials.get_credentials:
  - 273
  - 274
  botocore.crt.auth.CrtS3SigV4AsymAuth._should_sha256_sign_payload:
  - 417
  - 422
  - 392
  - 393
  - 397
  - 402
  - 403
  - 410
  - 411
  botocore.crt.auth.CrtS3SigV4AsymQueryAuth:
  - 499
  botocore.crt.auth.CrtS3SigV4Auth._should_sha256_sign_payload:
  - 193
  - 194
  - 228
  - 198
  - 203
  - 204
  - 212
  - 213
  - 214
  - 216
  - 217
  - 223
  botocore.crt.auth.CrtS3SigV4QueryAuth:
  - 596
  botocore.crt.auth.CrtSigV4AsymAuth._apply_signing_changes:
  - 339
  - 340
  botocore.crt.auth.CrtSigV4AsymAuth._crt_request_from_aws_request:
  - 323
  - 324
  - 327
  - 329
  - 308
  - 310
  - 312
  - 313
  - 314
  - 315
  - 316
  - 319
  botocore.crt.auth.CrtSigV4AsymAuth._get_existing_sha256:
  - 357
  botocore.crt.auth.CrtSigV4AsymAuth._is_streaming_checksum_payload:
  - 360
  - 361
  - 362
  botocore.crt.auth.CrtSigV4AsymAuth._modify_request_before_signing:
  - 353
  - 354
  - 349
  - 350
  botocore.crt.auth.CrtSigV4AsymAuth._should_sha256_sign_payload:
  - 372
  - 366
  botocore.crt.auth.CrtSigV4AsymAuth._should_sign_header:
  - 344
  botocore.crt.auth.CrtSigV4AsymAuth.add_auth:
  - 288
  - 258
  - 261
  - 263
  - 265
  - 302
  - 271
  - 303
  - 273
  - 274
  - 304
  - 305
  - 281
  - 254
  - 255
  botocore.crt.auth.CrtSigV4AsymQueryAuth.__init__:
  - 436
  botocore.crt.auth.CrtSigV4AsymQueryAuth._apply_signing_changes:
  - 483
  - 485
  - 486
  - 495
  botocore.crt.auth.CrtSigV4AsymQueryAuth._modify_request_before_signing:
  - 450
  - 454
  - 455
  - 463
  - 466
  - 468
  - 440
  - 444
  - 445
  - 479
  botocore.crt.auth.CrtSigV4Auth._apply_signing_changes:
  - 145
  - 146
  botocore.crt.auth.CrtSigV4Auth._crt_request_from_aws_request:
  - 129
  - 130
  - 133
  - 135
  - 114
  - 116
  - 118
  - 119
  - 120
  - 121
  - 122
  - 125
  botocore.crt.auth.CrtSigV4Auth._get_existing_sha256:
  - 163
  botocore.crt.auth.CrtSigV4Auth._is_streaming_checksum_payload:
  - 56
  - 57
  - 58
  botocore.crt.auth.CrtSigV4Auth._modify_request_before_signing:
  - 160
  - 155
  - 156
  - 159
  botocore.crt.auth.CrtSigV4Auth._should_sha256_sign_payload:
  - 173
  - 167
  botocore.crt.auth.CrtSigV4Auth._should_sign_header:
  - 150
  botocore.crt.auth.CrtSigV4Auth.add_auth:
  - 64
  - 67
  - 69
  - 71
  - 108
  - 77
  - 109
  - 79
  - 80
  - 110
  - 111
  - 87
  - 61
  - 94
  botocore.crt.auth.CrtSigV4QueryAuth.__init__:
  - 527
  botocore.crt.auth.CrtSigV4QueryAuth._apply_signing_changes:
  - 592
  - 580
  - 582
  - 583
  botocore.crt.auth.CrtSigV4QueryAuth._modify_request_before_signing:
  - 576
  - 547
  - 551
  - 552
  - 560
  - 531
  - 563
  - 565
  - 535
  - 536
  - 541
  botocore.discovery:
  - 22
  botocore.discovery.EndpointDiscoveryHandler.discover_endpoint:
  - 256
  - 258
  - 247
  - 248
  - 250
  - 253
  - 254
  botocore.discovery.EndpointDiscoveryHandler.gather_identifiers:
  - 241
  - 243
  botocore.discovery.EndpointDiscoveryHandler.handle_retries:
  - 262
  - 266
  - 267
  - 268
  - 271
  - 272
  - 273
  - 279
  botocore.discovery.EndpointDiscoveryHandler.register:
  - 233
  - 236
  - 230
  botocore.discovery.EndpointDiscoveryManager.__init__:
  - 115
  - 114
  - 107
  - 103
  botocore.discovery.EndpointDiscoveryManager._cache_item:
  - 126
  - 127
  botocore.discovery.EndpointDiscoveryManager._create_cache_key:
  - 132
  - 133
  botocore.discovery.EndpointDiscoveryManager._describe_endpoints:
  - 146
  - 148
  - 149
  - 150
  botocore.discovery.EndpointDiscoveryManager._get_current_endpoints:
  - 153
  - 155
  botocore.discovery.EndpointDiscoveryManager._parse_endpoints:
  - 120
  - 121
  - 119
  botocore.discovery.EndpointDiscoveryManager._recently_failed:
  - 171
  - 172
  - 173
  botocore.discovery.EndpointDiscoveryManager._refresh_current_endpoints:
  - 161
  - 162
  - 164
  - 167
  - 159
  botocore.discovery.EndpointDiscoveryManager.delete_endpoints:
  - 139
  - 140
  botocore.discovery.EndpointDiscoveryManager.describe_endpoint:
  - 183
  - 185
  - 187
  - 194
  - 195
  - 196
  - 197
  - 199
  - 200
  - 202
  - 203
  - 204
  - 206
  - 207
  - 208
  - 210
  - 211
  - 214
  - 216
  - 217
  - 218
  botocore.discovery.EndpointDiscoveryManager.gather_identifiers:
  - 136
  botocore.discovery.EndpointDiscoveryModel._gather_ids:
  - 87
  - 89
  - 90
  - 92
  - 95
  botocore.discovery.EndpointDiscoveryModel.discovery_operation_keys:
  - 60
  - 61
  botocore.discovery.EndpointDiscoveryModel.discovery_operation_kwargs:
  - 76
  - 77
  - 78
  - 79
  botocore.discovery.EndpointDiscoveryModel.discovery_operation_name:
  - 54
  botocore.discovery.EndpointDiscoveryModel.discovery_required_for:
  - 66
  - 69
  botocore.discovery.EndpointDiscoveryModel.gather_identifiers:
  - 82
  botocore.discovery.EndpointDiscoveryRefreshFailed:
  - 36
  botocore.discovery.EndpointDiscoveryRequired:
  - 30
  botocore.discovery.block_endpoint_discovery_required_operations:
  - 43
  botocore.docs.bcdoc.docstringparser.DataNode:
  - 244
  botocore.docs.bcdoc.docstringparser.DataNode.__init__:
  - 257
  - 260
  - 261
  - 263
  - 264
  - 249
  - 250
  - 255
  botocore.docs.bcdoc.docstringparser.DataNode.collapse_whitespace:
  - 305
  botocore.docs.bcdoc.docstringparser.DataNode.lstrip:
  - 296
  - 293
  - 295
  botocore.docs.bcdoc.docstringparser.DataNode.rstrip:
  - 299
  - 301
  - 302
  botocore.docs.bcdoc.docstringparser.DataNode.write:
  - 314
  - 315
  - 309
  - 311
  botocore.docs.bcdoc.docstringparser.DocStringParser:
  - 23
  botocore.docs.bcdoc.docstringparser.DocStringParser.__init__:
  - 32
  botocore.docs.bcdoc.docstringparser.DocStringParser.close:
  - 44
  - 46
  - 47
  botocore.docs.bcdoc.docstringparser.DocStringParser.feed:
  - 40
  - 41
  - 39
  botocore.docs.bcdoc.docstringparser.DocStringParser.handle_data:
  - 56
  botocore.docs.bcdoc.docstringparser.DocStringParser.handle_endtag:
  - 53
  botocore.docs.bcdoc.docstringparser.DocStringParser.handle_starttag:
  - 50
  botocore.docs.bcdoc.docstringparser.DocStringParser.reset:
  - 35
  - 36
  botocore.docs.bcdoc.docstringparser.HTMLTree:
  - 60
  botocore.docs.bcdoc.docstringparser.HTMLTree.__init__:
  - 68
  botocore.docs.bcdoc.docstringparser.HTMLTree._doc_has_handler:
  - 90
  - 85
  botocore.docs.bcdoc.docstringparser.HTMLTree.add_data:
  - 93
  botocore.docs.bcdoc.docstringparser.HTMLTree.add_tag:
  - 73
  - 74
  - 77
  - 78
  - 79
  botocore.docs.bcdoc.docstringparser.HTMLTree.write:
  - 96
  botocore.docs.bcdoc.docstringparser.StemNode.__init__:
  - 109
  botocore.docs.bcdoc.docstringparser.StemNode._write_children:
  - 121
  - 122
  - 123
  - 125
  botocore.docs.bcdoc.docstringparser.StemNode.add_child:
  - 114
  botocore.docs.bcdoc.docstringparser.StemNode.collapse_whitespace:
  - 160
  - 149
  - 157
  - 158
  - 159
  botocore.docs.bcdoc.docstringparser.StemNode.endswith_whitespace:
  - 134
  botocore.docs.bcdoc.docstringparser.StemNode.is_whitespace:
  - 128
  botocore.docs.bcdoc.docstringparser.StemNode.lstrip:
  - 137
  - 139
  - 140
  botocore.docs.bcdoc.docstringparser.StemNode.rstrip:
  - 145
  - 146
  - 143
  botocore.docs.bcdoc.docstringparser.StemNode.startswith_whitespace:
  - 131
  botocore.docs.bcdoc.docstringparser.StemNode.write:
  - 117
  - 118
  botocore.docs.bcdoc.docstringparser.TagNode:
  - 164
  botocore.docs.bcdoc.docstringparser.TagNode.__init__:
  - 169
  botocore.docs.bcdoc.docstringparser.TagNode._has_nested_tags:
  - 175
  botocore.docs.bcdoc.docstringparser.TagNode._write_end:
  - 240
  - 235
  - 236
  - 238
  botocore.docs.bcdoc.docstringparser.TagNode._write_start:
  - 230
  - 231
  botocore.docs.bcdoc.docstringparser.TagNode.collapse_whitespace:
  - 225
  - 226
  - 195
  - 204
  - 205
  - 206
  - 209
  - 210
  - 211
  - 212
  - 213
  - 215
  - 217
  - 218
  - 219
  - 220
  - 221
  - 223
  botocore.docs.bcdoc.docstringparser.TagNode.write:
  - 192
  - 179
  - 182
  - 186
  - 187
  - 190
  - 191
  botocore.docs.bcdoc.restdoc:
  - 36
  - 22
  botocore.docs.bcdoc.restdoc.DocumentStructure.__init__:
  - 135
  - 147
  - 149
  - 152
  - 154
  - 155
  botocore.docs.bcdoc.restdoc.DocumentStructure._generate_structure:
  - 184
  - 183
  botocore.docs.bcdoc.restdoc.DocumentStructure.add_new_section:
  - 202
  - 187
  botocore.docs.bcdoc.restdoc.DocumentStructure.add_title_section:
  - 276
  - 277
  botocore.docs.bcdoc.restdoc.DocumentStructure.available_sections:
  - 176
  botocore.docs.bcdoc.restdoc.DocumentStructure.delete_section:
  - 221
  botocore.docs.bcdoc.restdoc.DocumentStructure.flush_structure:
  - 256
  - 225
  - 260
  - 261
  - 232
  - 233
  - 234
  - 235
  - 236
  - 237
  - 239
  - 241
  - 242
  - 245
  - 247
  - 249
  - 253
  - 254
  botocore.docs.bcdoc.restdoc.DocumentStructure.get_section:
  - 214
  botocore.docs.bcdoc.restdoc.DocumentStructure.getvalue:
  - 267
  botocore.docs.bcdoc.restdoc.DocumentStructure.name:
  - 159
  botocore.docs.bcdoc.restdoc.DocumentStructure.path:
  - 164
  botocore.docs.bcdoc.restdoc.DocumentStructure.remove_all_sections:
  - 270
  botocore.docs.bcdoc.restdoc.DocumentStructure.write_to_file:
  - 281
  - 282
  - 283
  - 284
  - 285
  botocore.docs.bcdoc.restdoc.ReSTDocument.__init__:
  - 52
  - 54
  botocore.docs.bcdoc.restdoc.ReSTDocument._write:
  - 64
  - 63
  botocore.docs.bcdoc.restdoc.ReSTDocument.getvalue:
  - 98
  - 101
  - 102
  - 103
  - 104
  - 105
  botocore.docs.bcdoc.restdoc.ReSTDocument.handle_data:
  - 112
  - 111
  botocore.docs.bcdoc.restdoc.ReSTDocument.include_doc_string:
  - 115
  - 117
  - 118
  - 119
  - 120
  - 123
  - 124
  botocore.docs.bcdoc.restdoc.ReSTDocument.peek_write:
  - 79
  botocore.docs.bcdoc.restdoc.ReSTDocument.pop_write:
  - 89
  - 86
  botocore.docs.bcdoc.restdoc.ReSTDocument.push_write:
  - 92
  - 95
  botocore.docs.bcdoc.restdoc.ReSTDocument.remove_last_doc_string:
  - 128
  botocore.docs.bcdoc.restdoc.ReSTDocument.translate_words:
  - 108
  botocore.docs.bcdoc.restdoc.ReSTDocument.write:
  - 67
  - 70
  botocore.docs.bcdoc.restdoc.ReSTDocument.writeln:
  - 73
  - 76
  botocore.docs.bcdoc.style:
  - 16
  botocore.docs.bcdoc.style.BaseStyle.add_trailing_space_to_previous_write:
  - 73
  - 75
  - 70
  - 71
  botocore.docs.bcdoc.style.BaseStyle.dedent:
  - 43
  botocore.docs.bcdoc.style.BaseStyle.new_paragraph:
  - 37
  botocore.docs.bcdoc.style.ReSTStyle.__init__:
  - 80
  botocore.docs.bcdoc.style.ReSTStyle._clean_link_text:
  - 257
  - 258
  - 259
  - 252
  - 253
  - 254
  - 255
  botocore.docs.bcdoc.style.ReSTStyle._end_inline:
  - 112
  - 108
  - 109
  - 111
  botocore.docs.bcdoc.style.ReSTStyle._heading:
  - 140
  - 141
  - 142
  - 143
  botocore.docs.bcdoc.style.ReSTStyle._start_inline:
  - 99
  - 100
  - 101
  - 95
  botocore.docs.bcdoc.style.ReSTStyle.bold:
  - 129
  - 130
  - 131
  - 132
  botocore.docs.bcdoc.style.ReSTStyle.code:
  - 184
  - 185
  - 186
  - 187
  botocore.docs.bcdoc.style.ReSTStyle.codeblock:
  - 363
  - 361
  - 362
  - 355
  botocore.docs.bcdoc.style.ReSTStyle.end_a:
  - 263
  - 264
  - 265
  - 266
  - 267
  - 268
  - 269
  - 270
  - 271
  - 272
  - 278
  - 280
  - 282
  botocore.docs.bcdoc.style.ReSTStyle.end_b:
  - 126
  botocore.docs.bcdoc.style.ReSTStyle.end_bold:
  - 118
  botocore.docs.bcdoc.style.ReSTStyle.end_code:
  - 181
  botocore.docs.bcdoc.style.ReSTStyle.end_codeblock:
  - 352
  - 351
  botocore.docs.bcdoc.style.ReSTStyle.end_danger:
  - 216
  - 217
  botocore.docs.bcdoc.style.ReSTStyle.end_i:
  - 291
  botocore.docs.bcdoc.style.ReSTStyle.end_important:
  - 206
  - 207
  botocore.docs.bcdoc.style.ReSTStyle.end_italics:
  - 158
  botocore.docs.bcdoc.style.ReSTStyle.end_li:
  - 300
  botocore.docs.bcdoc.style.ReSTStyle.end_note:
  - 196
  - 197
  botocore.docs.bcdoc.style.ReSTStyle.end_ol:
  - 329
  - 330
  - 331
  botocore.docs.bcdoc.style.ReSTStyle.end_p:
  - 171
  - 172
  botocore.docs.bcdoc.style.ReSTStyle.end_sphinx_py_attr:
  - 429
  - 430
  botocore.docs.bcdoc.style.ReSTStyle.end_sphinx_py_class:
  - 406
  - 407
  botocore.docs.bcdoc.style.ReSTStyle.end_sphinx_py_method:
  - 419
  - 420
  botocore.docs.bcdoc.style.ReSTStyle.end_ul:
  - 316
  - 317
  - 318
  botocore.docs.bcdoc.style.ReSTStyle.external_link:
  - 441
  - 438
  - 439
  botocore.docs.bcdoc.style.ReSTStyle.h1:
  - 146
  botocore.docs.bcdoc.style.ReSTStyle.h2:
  - 149
  botocore.docs.bcdoc.style.ReSTStyle.h3:
  - 152
  botocore.docs.bcdoc.style.ReSTStyle.hidden_tocitem:
  - 389
  - 390
  botocore.docs.bcdoc.style.ReSTStyle.hidden_toctree:
  - 384
  - 385
  - 386
  - 383
  botocore.docs.bcdoc.style.ReSTStyle.internal_link:
  - 444
  - 445
  - 447
  botocore.docs.bcdoc.style.ReSTStyle.italics:
  - 161
  - 162
  - 163
  - 164
  botocore.docs.bcdoc.style.ReSTStyle.li:
  - 304
  - 305
  - 306
  - 303
  botocore.docs.bcdoc.style.ReSTStyle.link_target_definition:
  - 239
  botocore.docs.bcdoc.style.ReSTStyle.new_line:
  - 89
  botocore.docs.bcdoc.style.ReSTStyle.new_paragraph:
  - 86
  botocore.docs.bcdoc.style.ReSTStyle.ref:
  - 137
  - 135
  botocore.docs.bcdoc.style.ReSTStyle.sphinx_reference_label:
  - 242
  - 244
  - 245
  - 247
  botocore.docs.bcdoc.style.ReSTStyle.start_a:
  - 224
  - 225
  - 228
  - 229
  - 235
  - 222
  - 223
  botocore.docs.bcdoc.style.ReSTStyle.start_b:
  - 122
  botocore.docs.bcdoc.style.ReSTStyle.start_bold:
  - 115
  botocore.docs.bcdoc.style.ReSTStyle.start_code:
  - 176
  - 177
  botocore.docs.bcdoc.style.ReSTStyle.start_codeblock:
  - 346
  - 347
  - 348
  botocore.docs.bcdoc.style.ReSTStyle.start_danger:
  - 210
  - 211
  - 212
  - 213
  botocore.docs.bcdoc.style.ReSTStyle.start_i:
  - 287
  botocore.docs.bcdoc.style.ReSTStyle.start_important:
  - 200
  - 201
  - 202
  - 203
  botocore.docs.bcdoc.style.ReSTStyle.start_italics:
  - 155
  botocore.docs.bcdoc.style.ReSTStyle.start_li:
  - 296
  - 294
  botocore.docs.bcdoc.style.ReSTStyle.start_note:
  - 192
  - 193
  - 190
  - 191
  botocore.docs.bcdoc.style.ReSTStyle.start_ol:
  - 322
  - 323
  - 325
  botocore.docs.bcdoc.style.ReSTStyle.start_p:
  - 168
  - 167
  botocore.docs.bcdoc.style.ReSTStyle.start_sphinx_py_attr:
  - 424
  - 425
  - 426
  - 423
  botocore.docs.bcdoc.style.ReSTStyle.start_sphinx_py_class:
  - 400
  - 401
  - 402
  - 403
  botocore.docs.bcdoc.style.ReSTStyle.start_sphinx_py_method:
  - 416
  - 410
  - 412
  - 414
  - 415
  botocore.docs.bcdoc.style.ReSTStyle.start_ul:
  - 312
  - 309
  - 310
  botocore.docs.bcdoc.style.ReSTStyle.table_of_contents:
  - 393
  - 394
  - 395
  - 396
  - 397
  botocore.docs.bcdoc.style.ReSTStyle.tocitem:
  - 374
  - 375
  - 377
  - 378
  - 380
  botocore.docs.bcdoc.style.ReSTStyle.toctree:
  - 366
  - 367
  - 368
  - 369
  - 371
  botocore.docs.bcdoc.style.ReSTStyle.write_py_doc_string:
  - 433
  - 434
  - 435
  botocore.docs.client.ClientContextParamsDocumenter._add_context_params_list:
  - 449
  - 450
  - 451
  - 452
  - 453
  - 447
  botocore.docs.client.ClientContextParamsDocumenter._add_overview:
  - 432
  - 433
  - 439
  - 443
  - 444
  botocore.docs.client.ClientContextParamsDocumenter._add_title:
  - 429
  botocore.docs.client.ClientContextParamsDocumenter.document_context_params:
  - 424
  - 425
  - 426
  botocore.docs.client.ClientDocumenter.__init__:
  - 45
  botocore.docs.client.ClientDocumenter._add_class_signature:
  - 115
  botocore.docs.client.ClientDocumenter._add_client_creation_example:
  - 120
  - 121
  - 122
  - 125
  botocore.docs.client.ClientDocumenter._add_client_intro:
  - 98
  - 99
  - 104
  - 107
  - 108
  - 109
  - 110
  - 111
  - 112
  - 90
  - 92
  - 95
  botocore.docs.client.ClientDocumenter._add_client_method:
  - 161
  - 144
  - 145
  - 148
  - 149
  - 150
  - 154
  - 155
  botocore.docs.client.ClientDocumenter._add_client_methods:
  - 128
  - 130
  - 133
  - 138
  - 141
  botocore.docs.client.ClientDocumenter._add_custom_method:
  - 167
  botocore.docs.client.ClientDocumenter._add_method_exceptions_list:
  - 170
  - 171
  - 172
  - 173
  - 174
  - 178
  botocore.docs.client.ClientDocumenter._add_model_driven_method:
  - 199
  - 200
  - 203
  - 204
  - 205
  - 183
  - 187
  - 189
  botocore.docs.client.ClientDocumenter._add_title:
  - 87
  botocore.docs.client.ClientDocumenter._filter_client_method:
  - 81
  - 78
  - 79
  botocore.docs.client.ClientDocumenter._filter_client_methods:
  - 72
  - 66
  - 67
  botocore.docs.client.ClientDocumenter._get_client_methods:
  - 61
  - 62
  botocore.docs.client.ClientDocumenter.document_client:
  - 50
  - 54
  - 55
  - 56
  - 57
  - 58
  botocore.docs.client.ClientExceptionsDocumenter:
  - 219
  - 215
  botocore.docs.client.ClientExceptionsDocumenter._add_exception_catch_example:
  - 335
  - 336
  - 337
  - 338
  - 339
  - 340
  - 341
  - 342
  - 343
  - 344
  - 345
  - 346
  - 347
  - 348
  - 349
  - 350
  botocore.docs.client.ClientExceptionsDocumenter._add_exception_class:
  - 320
  - 321
  - 322
  - 323
  - 324
  - 325
  - 326
  - 314
  - 315
  - 318
  - 319
  botocore.docs.client.ClientExceptionsDocumenter._add_exception_classes:
  - 295
  - 297
  - 300
  - 303
  - 309
  botocore.docs.client.ClientExceptionsDocumenter._add_exceptions_list:
  - 288
  - 289
  - 290
  - 281
  - 282
  - 283
  - 284
  - 286
  - 287
  botocore.docs.client.ClientExceptionsDocumenter._add_overview:
  - 262
  - 263
  - 269
  - 273
  - 274
  botocore.docs.client.ClientExceptionsDocumenter._add_response_attr:
  - 353
  - 354
  - 355
  - 356
  - 357
  - 358
  botocore.docs.client.ClientExceptionsDocumenter._add_response_attr_description:
  - 368
  - 361
  - 362
  botocore.docs.client.ClientExceptionsDocumenter._add_response_example:
  - 371
  - 372
  - 373
  - 374
  - 375
  - 380
  botocore.docs.client.ClientExceptionsDocumenter._add_response_params:
  - 387
  - 388
  - 389
  - 390
  - 391
  - 396
  botocore.docs.client.ClientExceptionsDocumenter._add_title:
  - 259
  botocore.docs.client.ClientExceptionsDocumenter._add_top_level_documentation:
  - 329
  - 330
  - 331
  - 332
  botocore.docs.client.ClientExceptionsDocumenter.document_exceptions:
  - 256
  - 253
  - 254
  - 255
  botocore.docs.client._allowlist_generate_presigned_url:
  - 30
  botocore.docs.docstring.ClientMethodDocstring._write_docstring:
  - 87
  botocore.docs.docstring.LazyLoadedDocstring:
  - 20
  botocore.docs.docstring.LazyLoadedDocstring.__init__:
  - 34
  - 29
  botocore.docs.docstring.LazyLoadedDocstring.__new__:
  - 41
  botocore.docs.docstring.LazyLoadedDocstring.__str__:
  - 64
  botocore.docs.docstring.LazyLoadedDocstring._create_docstring:
  - 82
  - 76
  - 79
  botocore.docs.docstring.LazyLoadedDocstring._generate:
  - 72
  - 71
  botocore.docs.docstring.LazyLoadedDocstring.expandtabs:
  - 50
  - 59
  - 60
  - 61
  botocore.docs.docstring.PaginatorDocstring._write_docstring:
  - 97
  botocore.docs.docstring.WaiterDocstring._write_docstring:
  - 92
  botocore.docs.example.BaseExampleDocumenter._add_members_to_shape:
  - 149
  - 150
  - 151
  botocore.docs.example.BaseExampleDocumenter._end_nested_param:
  - 163
  - 164
  - 165
  - 166
  - 167
  botocore.docs.example.BaseExampleDocumenter._end_structure:
  - 173
  - 174
  - 175
  - 176
  - 178
  - 179
  botocore.docs.example.BaseExampleDocumenter._start_nested_param:
  - 160
  - 156
  - 157
  - 158
  - 159
  botocore.docs.example.BaseExampleDocumenter.document_example:
  - 38
  - 39
  - 40
  - 41
  - 42
  - 49
  - 50
  - 21
  botocore.docs.example.BaseExampleDocumenter.document_recursive_shape:
  - 53
  botocore.docs.example.BaseExampleDocumenter.document_shape_default:
  - 64
  - 58
  - 59
  - 60
  - 62
  botocore.docs.example.BaseExampleDocumenter.document_shape_type_list:
  - 81
  - 82
  - 83
  - 86
  - 89
  - 90
  - 91
  - 92
  botocore.docs.example.BaseExampleDocumenter.document_shape_type_map:
  - 132
  - 133
  - 135
  - 138
  - 139
  - 142
  - 145
  - 146
  botocore.docs.example.BaseExampleDocumenter.document_shape_type_string:
  - 69
  - 70
  - 71
  - 72
  - 73
  - 75
  botocore.docs.example.BaseExampleDocumenter.document_shape_type_structure:
  - 97
  - 98
  - 101
  - 102
  - 104
  - 106
  - 107
  - 109
  - 110
  - 112
  - 115
  - 121
  - 122
  - 125
  - 126
  - 127
  botocore.docs.example.RequestExampleDocumenter.document_shape_type_structure:
  - 224
  - 230
  - 231
  - 234
  - 235
  - 236
  - 205
  - 210
  - 211
  - 212
  - 214
  - 215
  - 217
  - 218
  - 219
  - 221
  botocore.docs.example.ResponseExampleDocumenter.document_shape_type_event_stream:
  - 188
  - 189
  - 190
  - 191
  botocore.docs.generate_docs:
  - 32
  - 33
  - 38
  - 43
  - 44
  - 50
  - 21
  - 53
  - 54
  - 31
  botocore.docs.method.document_custom_method:
  - 130
  - 131
  - 132
  - 133
  - 134
  - 135
  - 136
  - 122
  botocore.docs.method.document_custom_signature:
  - 105
  - 108
  - 109
  - 113
  - 115
  - 116
  - 117
  - 118
  - 89
  botocore.docs.method.document_model_driven_method:
  - 267
  - 268
  - 269
  - 270
  - 271
  - 272
  - 273
  - 274
  - 277
  - 278
  - 279
  - 280
  - 153
  - 281
  - 288
  - 291
  - 294
  - 295
  - 296
  - 297
  - 310
  - 313
  - 314
  - 315
  - 316
  - 190
  - 191
  - 200
  - 201
  - 202
  - 203
  - 204
  - 328
  - 209
  - 210
  - 211
  - 212
  - 213
  - 215
  - 218
  - 221
  - 222
  - 223
  - 227
  - 228
  - 229
  - 233
  - 234
  - 247
  - 248
  - 249
  - 252
  - 253
  - 254
  botocore.docs.method.document_model_driven_signature:
  - 66
  - 69
  - 71
  - 72
  - 73
  - 75
  - 76
  - 77
  - 78
  - 49
  - 81
  - 83
  botocore.docs.method.get_instance_public_methods:
  - 37
  - 39
  - 40
  - 41
  - 29
  botocore.docs.paginator.PaginatorDocumenter._add_overview:
  - 106
  - 107
  - 113
  - 117
  - 118
  botocore.docs.paginator.PaginatorDocumenter._add_paginator:
  - 97
  - 70
  - 71
  - 74
  - 75
  - 78
  - 79
  - 84
  - 85
  - 88
  - 89
  - 91
  - 92
  - 94
  botocore.docs.paginator.PaginatorDocumenter.document_paginators:
  - 65
  - 36
  - 40
  - 41
  - 42
  - 43
  - 44
  - 46
  - 51
  - 52
  - 56
  - 59
  - 62
  botocore.docs.paginator.document_paginate_method:
  - 129
  - 226
  - 195
  - 217
  - 165
  - 166
  - 229
  - 172
  - 206
  - 209
  - 146
  - 212
  - 213
  - 151
  - 153
  - 220
  - 183
  botocore.docs.params.BaseParamsDocumenter._add_members_to_shape:
  - 129
  - 130
  - 131
  botocore.docs.params.BaseParamsDocumenter._document_non_top_level_param_type:
  - 136
  - 137
  - 140
  - 143
  - 145
  - 146
  botocore.docs.params.BaseParamsDocumenter._end_nested_param:
  - 153
  - 154
  botocore.docs.params.BaseParamsDocumenter._start_nested_param:
  - 149
  - 150
  botocore.docs.params.BaseParamsDocumenter.document_params:
  - 34
  - 19
  botocore.docs.params.BaseParamsDocumenter.document_recursive_shape:
  - 44
  botocore.docs.params.BaseParamsDocumenter.document_shape_default:
  - 49
  botocore.docs.params.BaseParamsDocumenter.document_shape_type_list:
  - 66
  - 67
  - 54
  - 56
  - 59
  - 60
  botocore.docs.params.BaseParamsDocumenter.document_shape_type_map:
  - 72
  - 74
  - 77
  - 78
  - 80
  - 83
  - 84
  - 85
  - 92
  - 93
  - 94
  botocore.docs.params.BaseParamsDocumenter.document_shape_type_structure:
  - 106
  - 107
  - 108
  - 109
  - 112
  - 115
  - 116
  - 122
  - 123
  botocore.docs.params.RequestParamsDocumenter:
  - 207
  botocore.docs.params.RequestParamsDocumenter._add_member_documentation:
  - 256
  - 257
  - 260
  - 261
  - 262
  - 263
  - 264
  - 265
  - 266
  - 268
  - 269
  - 270
  - 271
  - 272
  - 273
  - 274
  - 277
  - 278
  - 279
  - 287
  - 288
  - 290
  - 291
  - 292
  - 293
  - 294
  - 248
  - 249
  - 250
  - 251
  - 252
  - 253
  - 254
  - 255
  botocore.docs.params.RequestParamsDocumenter._add_special_trait_documentation:
  - 297
  - 298
  botocore.docs.params.RequestParamsDocumenter._append_idempotency_documentation:
  - 302
  botocore.docs.params.RequestParamsDocumenter.document_shape_type_structure:
  - 225
  - 227
  - 234
  - 235
  - 236
  - 237
  - 214
  - 215
  - 216
  - 217
  - 218
  - 219
  - 222
  botocore.docs.params.ResponseParamsDocumenter:
  - 158
  botocore.docs.params.ResponseParamsDocumenter._add_member_documentation:
  - 163
  - 164
  - 165
  - 166
  - 167
  - 168
  - 169
  - 171
  - 172
  - 173
  - 174
  - 175
  - 188
  - 189
  - 194
  - 195
  - 196
  - 197
  - 198
  botocore.docs.params.ResponseParamsDocumenter.document_shape_type_event_stream:
  - 203
  botocore.docs.service.ServiceDocumenter.__init__:
  - 30
  botocore.docs.service.ServiceDocumenter.client_api:
  - 82
  - 78
  botocore.docs.service.ServiceDocumenter.client_context_params:
  - 129
  - 130
  - 123
  - 133
  botocore.docs.service.ServiceDocumenter.client_exceptions:
  - 87
  botocore.docs.service.ServiceDocumenter.document_service:
  - 64
  - 48
  - 52
  - 55
  - 56
  - 57
  - 58
  - 59
  - 60
  - 63
  botocore.docs.service.ServiceDocumenter.get_examples:
  - 115
  - 116
  botocore.docs.service.ServiceDocumenter.paginator_api:
  - 98
  - 99
  - 93
  - 102
  botocore.docs.service.ServiceDocumenter.table_of_contents:
  - 73
  botocore.docs.service.ServiceDocumenter.title:
  - 67
  - 68
  botocore.docs.service.ServiceDocumenter.waiter_api:
  - 112
  - 105
  - 106
  - 109
  botocore.docs.shape.ShapeDocumenter.__init__:
  - 32
  botocore.docs.shape.ShapeDocumenter._get_special_py_default:
  - 112
  botocore.docs.shape.ShapeDocumenter._get_special_py_type_name:
  - 122
  botocore.docs.shape.ShapeDocumenter._get_value_for_special_type:
  - 129
  - 132
  - 133
  - 125
  - 127
  botocore.docs.shape.ShapeDocumenter.traverse_and_document_shape:
  - 96
  - 97
  - 98
  - 68
  - 70
  - 71
  - 102
  - 73
  - 74
  - 75
  - 45
  - 77
  - 91
  - 92
  botocore.docs.sharedexample.SharedExampleDocumenter._document:
  - 96
  - 97
  - 99
  - 77
  - 90
  - 91
  - 92
  - 93
  - 94
  - 95
  botocore.docs.sharedexample.SharedExampleDocumenter._document_datetime:
  - 179
  - 180
  - 181
  - 182
  - 183
  botocore.docs.sharedexample.SharedExampleDocumenter._document_dict:
  - 128
  - 104
  - 105
  - 106
  - 107
  - 108
  - 109
  - 110
  - 111
  - 112
  - 113
  - 114
  - 118
  - 119
  - 120
  - 121
  - 123
  - 124
  - 125
  - 126
  - 127
  botocore.docs.sharedexample.SharedExampleDocumenter._document_list:
  - 160
  - 161
  - 162
  - 163
  - 164
  - 165
  - 166
  - 167
  - 153
  - 154
  - 156
  - 157
  - 158
  - 159
  botocore.docs.sharedexample.SharedExampleDocumenter._document_number:
  - 176
  botocore.docs.sharedexample.SharedExampleDocumenter._document_params:
  - 131
  - 132
  - 133
  - 134
  - 135
  - 136
  - 137
  - 138
  - 139
  - 140
  - 141
  - 145
  - 146
  - 147
  - 148
  - 149
  - 150
  botocore.docs.sharedexample.SharedExampleDocumenter._document_str:
  - 172
  - 173
  botocore.docs.sharedexample.SharedExampleDocumenter._end_nested_value:
  - 200
  - 201
  - 198
  - 199
  botocore.docs.sharedexample.SharedExampleDocumenter._get_comment:
  - 186
  - 187
  botocore.docs.sharedexample.SharedExampleDocumenter._start_nested_value:
  - 193
  - 194
  - 195
  botocore.docs.sharedexample.SharedExampleDocumenter.document_input:
  - 43
  - 44
  - 45
  - 46
  - 47
  - 48
  - 49
  - 50
  - 51
  - 52
  - 53
  - 54
  - 55
  - 56
  - 57
  botocore.docs.sharedexample.SharedExampleDocumenter.document_output:
  - 64
  - 65
  - 69
  - 70
  - 71
  - 72
  - 73
  - 74
  - 60
  - 61
  - 62
  - 63
  botocore.docs.sharedexample.SharedExampleDocumenter.document_shared_example:
  - 34
  - 35
  - 36
  - 37
  - 40
  - 24
  botocore.docs.sharedexample.document_shared_examples:
  - 224
  - 207
  - 217
  - 218
  - 219
  - 220
  - 221
  - 222
  botocore.docs.translator.BotoHTML5Translator:
  - 19
  botocore.docs.translator.BotoHTML5Translator.is_implicit_heading:
  - 37
  - 43
  - 44
  - 45
  - 46
  - 47
  botocore.docs.translator.BotoHTML5Translator.visit_admonition:
  - 34
  - 26
  - 27
  - 28
  - 30
  botocore.docs.translator.BotoHTML5Translator.visit_paragraph:
  - 56
  - 58
  - 51
  - 62
  botocore.docs.utils:
  - 80
  - 216
  botocore.docs.utils.AppendParamDocumentation:
  - 195
  botocore.docs.utils.AppendParamDocumentation.append_documentation:
  - 202
  - 203
  - 204
  - 205
  botocore.docs.utils.AutoPopulatedParam.__init__:
  - 126
  botocore.docs.utils.AutoPopulatedParam.document_auto_populated_param:
  - 134
  - 140
  - 141
  - 142
  - 143
  - 144
  - 145
  - 148
  - 149
  - 150
  - 151
  - 152
  botocore.docs.utils.DocumentedShape:
  - 94
  botocore.docs.utils.DocumentedShape.__new__:
  - 105
  - 107
  - 109
  - 111
  botocore.docs.utils.HideParamFromOperations:
  - 156
  botocore.docs.utils.HideParamFromOperations.__init__:
  - 164
  - 175
  - 176
  - 180
  - 181
  - 182
  botocore.docs.utils.HideParamFromOperations.hide_param:
  - 185
  - 187
  - 188
  - 190
  - 191
  botocore.docs.utils._CONTROLS_MATCH_HANDLER:
  - 221
  botocore.docs.utils.escape_controls:
  - 225
  botocore.docs.utils.get_official_service_name:
  - 65
  - 69
  - 70
  - 71
  - 73
  - 75
  botocore.docs.utils.py_default:
  - 50
  - 39
  botocore.docs.utils.py_type_name:
  - 18
  - 27
  botocore.docs.waiter.WaiterDocumenter._add_overview:
  - 97
  - 101
  - 102
  - 90
  - 91
  botocore.docs.waiter.WaiterDocumenter._add_single_waiter:
  - 64
  - 65
  - 66
  - 67
  - 72
  - 73
  - 74
  - 75
  - 77
  - 80
  - 81
  - 60
  - 61
  botocore.docs.waiter.WaiterDocumenter.document_waiters:
  - 36
  - 40
  - 41
  - 42
  - 43
  - 44
  - 45
  - 46
  - 48
  - 51
  - 54
  - 57
  botocore.docs.waiter.document_wait_method:
  - 128
  - 129
  - 131
  - 164
  - 133
  - 165
  - 170
  - 142
  - 113
  - 152
  botocore.endpoint:
  - 37
  - 38
  botocore.endpoint.Endpoint:
  - 78
  botocore.endpoint.Endpoint.__init__:
  - 99
  - 100
  - 101
  - 104
  - 105
  botocore.endpoint.Endpoint._add_modeled_error_fields:
  - 339
  - 340
  - 343
  - 344
  - 346
  - 348
  botocore.endpoint.Endpoint._calculate_ttl:
  - 160
  - 153
  - 154
  - 163
  botocore.endpoint.Endpoint._do_get_response:
  - 263
  - 264
  - 274
  - 276
  - 277
  - 278
  - 279
  - 283
  - 288
  - 291
  - 298
  - 302
  - 306
  - 312
  - 313
  - 316
  - 322
  - 323
  - 329
  botocore.endpoint.Endpoint._encode_headers:
  - 144
  - 142
  - 143
  botocore.endpoint.Endpoint._get_response:
  - 239
  - 248
  - 251
  - 254
  - 255
  botocore.endpoint.Endpoint._needs_retry:
  - 358
  - 360
  - 369
  - 370
  - 375
  - 379
  botocore.endpoint.Endpoint._send:
  - 383
  botocore.endpoint.Endpoint._send_request:
  - 195
  - 196
  - 197
  - 228
  - 200
  - 208
  - 213
  - 215
  - 216
  - 219
  botocore.endpoint.Endpoint._set_ttl:
  - 166
  - 167
  - 168
  - 170
  - 171
  - 177
  botocore.endpoint.Endpoint._update_retries_context:
  - 183
  - 185
  - 186
  - 188
  - 190
  botocore.endpoint.Endpoint.close:
  - 111
  botocore.endpoint.Endpoint.create_request:
  - 130
  - 132
  - 137
  - 122
  - 123
  - 124
  botocore.endpoint.Endpoint.make_request:
  - 114
  - 119
  botocore.endpoint.Endpoint.prepare_request:
  - 147
  - 148
  botocore.endpoint.EndpointCreator._get_proxies:
  - 436
  botocore.endpoint.EndpointCreator._get_verify_value:
  - 449
  - 445
  botocore.endpoint.EndpointCreator.create_endpoint:
  - 418
  - 425
  - 405
  - 407
  - 410
  - 411
  - 414
  - 415
  botocore.endpoint.convert_to_response_dict:
  - 65
  - 67
  - 69
  - 70
  - 71
  - 44
  botocore.endpoint_provider:
  - 42
  - 44
  - 45
  - 46
  - 14
  - 50
  - 51
  botocore.endpoint_provider.BaseRule:
  - 412
  botocore.endpoint_provider.BaseRule.evaluate_conditions:
  - 430
  - 428
  - 429
  - 422
  botocore.endpoint_provider.EndpointProvider:
  - 707
  - 702
  botocore.endpoint_provider.EndpointProvider.__init__:
  - 705
  botocore.endpoint_provider.EndpointProvider.resolve_endpoint:
  - 709
  - 714
  - 715
  - 716
  - 717
  - 718
  botocore.endpoint_provider.EndpointRule.__init__:
  - 445
  botocore.endpoint_provider.EndpointRule.evaluate:
  - 449
  - 454
  - 455
  - 456
  - 457
  - 461
  - 462
  botocore.endpoint_provider.EndpointRule.resolve_headers:
  - 499
  - 492
  - 501
  - 503
  botocore.endpoint_provider.EndpointRule.resolve_properties:
  - 481
  - 483
  - 484
  - 486
  - 487
  - 469
  - 476
  - 478
  botocore.endpoint_provider.ErrorRule.__init__:
  - 510
  botocore.endpoint_provider.ErrorRule.evaluate:
  - 520
  - 521
  - 514
  botocore.endpoint_provider.ParameterDefinition:
  - 584
  botocore.endpoint_provider.ParameterDefinition.__init__:
  - 598
  - 599
  botocore.endpoint_provider.ParameterDefinition.process_input:
  - 641
  - 647
  - 637
  - 638
  - 639
  botocore.endpoint_provider.ParameterDefinition.validate_input:
  - 613
  - 619
  - 624
  - 626
  - 627
  - 628
  - 630
  - 632
  botocore.endpoint_provider.ParameterType:
  - 576
  botocore.endpoint_provider.RuleCreator.create:
  - 563
  - 572
  - 565
  - 559
  botocore.endpoint_provider.RuleSet:
  - 652
  botocore.endpoint_provider.RuleSet.__init__:
  - 658
  - 659
  - 660
  botocore.endpoint_provider.RuleSet._ingest_parameter_spec:
  - 672
  - 674
  - 665
  - 668
  - 669
  - 670
  - 671
  botocore.endpoint_provider.RuleSet.evaluate:
  - 689
  - 693
  - 694
  - 695
  - 696
  botocore.endpoint_provider.RuleSet.process_input_parameters:
  - 682
  - 683
  - 684
  - 678
  botocore.endpoint_provider.RuleSetEndpoint:
  - 436
  botocore.endpoint_provider.RuleSetStandardLibrary:
  - 55
  botocore.endpoint_provider.RuleSetStandardLibrary._not:
  - 371
  botocore.endpoint_provider.RuleSetStandardLibrary.aws_is_virtual_hostable_s3_bucket:
  - 393
  - 395
  - 396
  - 397
  - 401
  - 379
  botocore.endpoint_provider.RuleSetStandardLibrary.aws_parse_arn:
  - 226
  - 231
  - 236
  - 238
  - 239
  - 217
  - 222
  botocore.endpoint_provider.RuleSetStandardLibrary.aws_partition:
  - 200
  - 207
  - 208
  - 209
  - 210
  - 214
  botocore.endpoint_provider.RuleSetStandardLibrary.boolean_equals:
  - 330
  - 331
  - 324
  botocore.endpoint_provider.RuleSetStandardLibrary.call_function:
  - 134
  - 142
  - 145
  - 146
  - 147
  - 148
  - 150
  botocore.endpoint_provider.RuleSetStandardLibrary.convert_func_name:
  - 128
  - 129
  - 123
  - 131
  botocore.endpoint_provider.RuleSetStandardLibrary.get_attr:
  - 167
  - 176
  - 177
  - 178
  - 179
  - 180
  - 181
  - 182
  - 183
  botocore.endpoint_provider.RuleSetStandardLibrary.is_ascii:
  - 336
  - 342
  botocore.endpoint_provider.RuleSetStandardLibrary.is_func:
  - 66
  - 61
  botocore.endpoint_provider.RuleSetStandardLibrary.is_partition_match:
  - 196
  botocore.endpoint_provider.RuleSetStandardLibrary.is_ref:
  - 74
  - 69
  botocore.endpoint_provider.RuleSetStandardLibrary.is_set:
  - 159
  botocore.endpoint_provider.RuleSetStandardLibrary.is_template:
  - 83
  - 84
  - 77
  botocore.endpoint_provider.RuleSetStandardLibrary.is_valid_host_label:
  - 256
  - 257
  - 258
  - 261
  - 244
  - 252
  - 255
  botocore.endpoint_provider.RuleSetStandardLibrary.parse_url:
  - 320
  - 292
  - 319
  - 295
  - 299
  - 306
  - 310
  - 311
  - 287
  botocore.endpoint_provider.RuleSetStandardLibrary.resolve_template_string:
  - 96
  - 98
  - 99
  - 88
  - 95
  botocore.endpoint_provider.RuleSetStandardLibrary.resolve_value:
  - 107
  - 113
  - 114
  - 115
  - 116
  - 117
  - 118
  botocore.endpoint_provider.RuleSetStandardLibrary.string_equals:
  - 264
  - 270
  - 271
  botocore.endpoint_provider.RuleSetStandardLibrary.substring:
  - 357
  - 358
  - 360
  - 363
  - 364
  - 365
  - 348
  botocore.endpoint_provider.RuleSetStandardLibrary.uri_encode:
  - 281
  - 276
  - 284
  botocore.endpoint_provider.TreeRule:
  - 527
  botocore.endpoint_provider.TreeRule.__init__:
  - 532
  - 533
  botocore.endpoint_provider.TreeRule.evaluate:
  - 544
  - 546
  - 547
  - 536
  - 543
  botocore.errorfactory.BaseClientExceptions.__getattr__:
  - 49
  botocore.errorfactory.BaseClientExceptions.__init__:
  - 21
  botocore.errorfactory.BaseClientExceptions.from_code:
  - 44
  - 31
  botocore.errorfactory.ClientExceptionsFactory._create_client_exceptions:
  - 80
  - 81
  - 82
  - 84
  - 86
  - 87
  - 90
  botocore.errorfactory.ClientExceptionsFactory.create_client_exceptions:
  - 72
  - 73
  - 62
  botocore.eventstream:
  - 13
  botocore.eventstream.ChecksumMismatch:
  - 57
  botocore.eventstream.ChecksumMismatch.__init__:
  - 61
  botocore.eventstream.DecodeUtils:
  - 77
  botocore.eventstream.DecodeUtils.unpack_byte_array:
  - 209
  - 227
  botocore.eventstream.DecodeUtils.unpack_false:
  - 115
  botocore.eventstream.DecodeUtils.unpack_int16:
  - 176
  - 167
  botocore.eventstream.DecodeUtils.unpack_int32:
  - 181
  - 190
  botocore.eventstream.DecodeUtils.unpack_int64:
  - 195
  - 204
  botocore.eventstream.DecodeUtils.unpack_int8:
  - 162
  - 154
  botocore.eventstream.DecodeUtils.unpack_prelude:
  - 281
  - 271
  botocore.eventstream.DecodeUtils.unpack_true:
  - 102
  botocore.eventstream.DecodeUtils.unpack_uint32:
  - 141
  - 149
  botocore.eventstream.DecodeUtils.unpack_uint8:
  - 128
  - 136
  botocore.eventstream.DecodeUtils.unpack_utf8_string:
  - 234
  - 252
  - 255
  botocore.eventstream.DecodeUtils.unpack_uuid:
  - 259
  botocore.eventstream.DuplicateHeader:
  - 33
  botocore.eventstream.DuplicateHeader.__init__:
  - 37
  botocore.eventstream.EventStream:
  - 540
  botocore.eventstream.EventStream.__init__:
  - 588
  botocore.eventstream.EventStream.__iter__:
  - 592
  - 593
  - 594
  - 591
  botocore.eventstream.EventStream._create_raw_event_generator:
  - 600
  - 597
  - 598
  - 599
  botocore.eventstream.EventStream._parse_event:
  - 603
  - 604
  - 605
  botocore.eventstream.EventStream.close:
  - 621
  - 622
  botocore.eventstream.EventStream.get_initial_response:
  - 612
  - 613
  - 614
  botocore.eventstream.EventStreamBuffer:
  - 439
  botocore.eventstream.EventStreamBuffer.__init__:
  - 448
  botocore.eventstream.EventStreamBuffer.__next__:
  - 533
  botocore.eventstream.EventStreamBuffer._parse_headers:
  - 476
  botocore.eventstream.EventStreamBuffer._parse_message:
  - 503
  - 504
  - 505
  - 506
  - 507
  botocore.eventstream.EventStreamBuffer._parse_message_crc:
  - 486
  botocore.eventstream.EventStreamBuffer._parse_prelude:
  - 467
  - 468
  - 470
  - 471
  botocore.eventstream.EventStreamBuffer._validate_message_crc:
  - 497
  - 498
  - 499
  botocore.eventstream.EventStreamBuffer._validate_prelude:
  - 459
  - 462
  botocore.eventstream.EventStreamBuffer.add_data:
  - 451
  botocore.eventstream.EventStreamBuffer.next:
  - 516
  - 521
  - 524
  - 525
  - 527
  - 530
  botocore.eventstream.EventStreamHeaderParser:
  - 355
  botocore.eventstream.EventStreamHeaderParser._parse_header:
  - 413
  - 414
  botocore.eventstream.EventStreamHeaderParser._parse_headers:
  - 406
  - 407
  botocore.eventstream.EventStreamHeaderParser._parse_name:
  - 418
  - 419
  botocore.eventstream.EventStreamHeaderParser._parse_type:
  - 424
  - 423
  botocore.eventstream.EventStreamHeaderParser._parse_value:
  - 428
  - 430
  - 431
  botocore.eventstream.EventStreamHeaderParser.parse:
  - 401
  - 391
  botocore.eventstream.EventStreamMessage:
  - 335
  botocore.eventstream.EventStreamMessage.to_response_dict:
  - 344
  - 345
  botocore.eventstream.InvalidHeadersLength:
  - 41
  botocore.eventstream.InvalidHeadersLength.__init__:
  - 45
  botocore.eventstream.InvalidPayloadLength:
  - 49
  botocore.eventstream.InvalidPayloadLength.__init__:
  - 53
  botocore.eventstream.MessagePrelude:
  - 293
  botocore.eventstream.MessagePrelude.headers_end:
  - 325
  botocore.eventstream.MessagePrelude.payload_end:
  - 313
  botocore.eventstream.MessagePrelude.payload_length:
  - 302
  botocore.eventstream.NoInitialResponseError:
  - 65
  botocore.eventstream.NoInitialResponseError.__init__:
  - 73
  botocore.eventstream.ParserError:
  - 27
  botocore.eventstream._validate_checksum:
  - 288
  - 287
  botocore.exceptions.AliasConflictParameterError:
  - 420
  botocore.exceptions.ApiVersionNotFoundError:
  - 83
  botocore.exceptions.BaseEndpointResolverError:
  - 234
  botocore.exceptions.BotoCoreError:
  - 32
  botocore.exceptions.BotoCoreError.__init__:
  - 41
  - 42
  botocore.exceptions.ChecksumError:
  - 453
  botocore.exceptions.ClientError.__init__:
  - 524
  - 525
  - 526
  - 527
  - 528
  - 532
  botocore.exceptions.ClientError._get_retry_info:
  - 538
  - 540
  - 541
  botocore.exceptions.ConfigNotFound:
  - 315
  botocore.exceptions.ConfigParseError:
  - 305
  botocore.exceptions.CredentialRetrievalError:
  - 200
  botocore.exceptions.DataNotFoundError:
  - 50
  botocore.exceptions.EndpointProviderError:
  - 827
  botocore.exceptions.EndpointResolutionError:
  - 833
  botocore.exceptions.EndpointVariantError:
  - 250
  botocore.exceptions.HTTPClientError.__init__:
  - 100
  botocore.exceptions.IncompleteReadError:
  - 482
  botocore.exceptions.InvalidChecksumConfigError:
  - 843
  botocore.exceptions.InvalidDNSNameError:
  - 569
  botocore.exceptions.InvalidEndpointDiscoveryConfigurationError:
  - 636
  botocore.exceptions.InvalidExpressionError:
  - 488
  botocore.exceptions.InvalidHostLabelError:
  - 605
  botocore.exceptions.InvalidMaxRetryAttemptsError:
  - 660
  botocore.exceptions.InvalidRegionError:
  - 410
  botocore.exceptions.InvalidRetryConfigurationError:
  - 651
  botocore.exceptions.InvalidRetryModeError:
  - 669
  botocore.exceptions.InvalidS3AddressingStyleError:
  - 581
  botocore.exceptions.InvalidS3UsEast1RegionalEndpointConfigError:
  - 678
  botocore.exceptions.InvalidSTSRegionalEndpointsConfigError:
  - 688
  botocore.exceptions.MissingParametersError:
  - 325
  botocore.exceptions.MissingServiceIdError.__init__:
  - 749
  - 750
  botocore.exceptions.NoAuthTokenError:
  - 169
  botocore.exceptions.NoCredentialsError:
  - 161
  botocore.exceptions.NoRegionError:
  - 244
  botocore.exceptions.PartialCredentialsError:
  - 189
  botocore.exceptions.ProfileNotFound:
  - 294
  botocore.exceptions.RangeError:
  - 379
  botocore.exceptions.ServiceNotInRegionError:
  - 223
  botocore.exceptions.TokenRetrievalError:
  - 177
  botocore.exceptions.UnknownClientMethodError:
  - 506
  botocore.exceptions.UnknownCredentialError:
  - 494
  botocore.exceptions.UnknownEndpointError:
  - 265
  botocore.exceptions.UnknownFIPSEndpointError:
  - 279
  botocore.exceptions.UnknownKeyError:
  - 365
  botocore.exceptions.UnknownParameterError:
  - 395
  botocore.exceptions.UnknownRegionError:
  - 73
  botocore.exceptions.UnknownServiceError:
  - 60
  botocore.exceptions.UnknownServiceStyle:
  - 435
  botocore.exceptions.UnknownSignatureVersionError:
  - 213
  botocore.exceptions.UnseekableStreamError:
  - 463
  botocore.exceptions.UnsupportedOutpostResourceError:
  - 614
  botocore.exceptions.UnsupportedS3AccesspointConfigurationError:
  - 630
  botocore.exceptions.UnsupportedS3ArnError:
  - 590
  botocore.exceptions.UnsupportedS3ConfigurationError:
  - 624
  botocore.exceptions.UnsupportedS3ControlArnError:
  - 599
  botocore.exceptions.UnsupportedS3ControlConfigurationError:
  - 645
  botocore.exceptions.UnsupportedServiceProtocolsError:
  - 852
  botocore.exceptions.UnsupportedSignatureVersionError:
  - 512
  botocore.exceptions.UnsupportedTLSVersionWarning:
  - 559
  botocore.exceptions.ValidationError:
  - 343
  botocore.exceptions.WaiterConfigError:
  - 500
  botocore.exceptions.WaiterError:
  - 472
  botocore.exceptions.WaiterError.__init__:
  - 477
  botocore.exceptions._exception_from_packed_args:
  - 24
  - 26
  - 28
  botocore.handlers:
  - 100
  - 104
  - 14
  - 82
  - 84
  - 85
  - 91
  - 1727
  botocore.handlers.ClientMethodAlias.__call__:
  - 994
  botocore.handlers.ClientMethodAlias.__init__:
  - 986
  botocore.handlers.DeprecatedServiceDocumenter.inject_deprecation_notice:
  - 401
  - 402
  - 403
  - 407
  - 408
  botocore.handlers.HeaderToHostHoister:
  - 1001
  - 999
  botocore.handlers.HeaderToHostHoister._ensure_header_is_valid_host:
  - 1022
  - 1023
  botocore.handlers.HeaderToHostHoister._prepend_to_host:
  - 1032
  - 1033
  - 1043
  - 1035
  botocore.handlers.HeaderToHostHoister.hoist:
  - 1016
  - 1018
  - 1013
  - 1007
  botocore.handlers.ParameterAlias._replace_content:
  - 976
  - 977
  - 980
  - 981
  botocore.handlers.ParameterAlias.alias_parameter_in_call:
  - 940
  - 943
  - 944
  - 945
  - 953
  botocore.handlers.ParameterAlias.alias_parameter_in_documentation:
  - 960
  - 961
  - 962
  - 965
  - 966
  - 967
  - 968
  - 969
  - 972
  - 973
  - 956
  - 957
  botocore.handlers._add_parameter_aliases:
  - 930
  - 931
  - 913
  - 914
  - 915
  botocore.handlers._decode_list_object:
  - 879
  - 883
  - 884
  - 885
  - 887
  - 888
  - 889
  - 890
  botocore.handlers._decode_policy_types:
  - 589
  - 590
  - 591
  - 596
  - 599
  - 600
  - 601
  - 603
  - 604
  botocore.handlers._get_cross_region_presigned_url:
  - 521
  - 514
  - 516
  botocore.handlers._get_presigned_url_source_and_destination_regions:
  - 529
  botocore.handlers._handle_200_error:
  - 1291
  - 1283
  - 1287
  botocore.handlers._handle_request_validation_mode_member:
  - 1327
  - 1328
  - 1332
  - 1333
  - 1337
  botocore.handlers._handle_sqs_compatible_error:
  - 242
  - 251
  - 252
  - 255
  botocore.handlers._has_expires_shape:
  - 1234
  - 1236
  - 1238
  - 1239
  botocore.handlers._looks_like_special_case_error:
  - 171
  - 173
  - 174
  - 176
  - 177
  - 183
  botocore.handlers._needs_s3_sse_customization:
  - 363
  botocore.handlers._quote_source_header:
  - 495
  - 496
  - 497
  - 499
  - 500
  botocore.handlers._quote_source_header_from_dict:
  - 480
  - 488
  - 489
  - 479
  botocore.handlers._resolve_sigv4a_region:
  - 261
  - 263
  botocore.handlers._set_auth_scheme_preference_signer:
  - 1382
  - 1354
  - 1387
  - 1388
  - 1358
  - 1359
  - 1364
  - 1398
  - 1367
  - 1370
  - 1404
  - 1407
  botocore.handlers._set_extra_headers_for_unsigned_request:
  - 1345
  - 1346
  - 1347
  - 1349
  botocore.handlers._should_handle_200_error:
  - 1305
  - 1306
  - 1299
  - 1308
  botocore.handlers._should_prefer_bearer_auth:
  - 1424
  - 1418
  - 1421
  botocore.handlers._sse_md5:
  - 352
  - 353
  - 354
  - 355
  - 356
  - 346
  botocore.handlers._update_status_code:
  - 1322
  - 1316
  - 1319
  botocore.handlers.add_accept_header:
  - 715
  botocore.handlers.add_expect_header:
  - 388
  - 392
  - 377
  - 379
  - 381
  - 382
  - 383
  botocore.handlers.add_glacier_checksums:
  - 741
  - 742
  - 743
  - 744
  - 747
  - 748
  - 749
  - 750
  - 721
  - 735
  botocore.handlers.add_recursion_detection_header:
  - 113
  - 114
  - 116
  - 117
  botocore.handlers.add_retry_headers:
  - 1080
  - 1090
  - 1079
  botocore.handlers.base64_encode_user_data:
  - 624
  - 625
  - 627
  - 628
  botocore.handlers.change_get_to_post:
  - 812
  - 815
  botocore.handlers.check_for_200_error:
  - 137
  - 153
  - 161
  - 158
  botocore.handlers.check_openssl_supports_tls_version_1_2:
  - 795
  - 796
  botocore.handlers.convert_body_to_file_like_object:
  - 896
  - 897
  - 898
  - 894
  - 895
  botocore.handlers.copy_source_sse_md5:
  - 336
  - 342
  botocore.handlers.customize_endpoint_resolver_builtins:
  - 1188
  - 1165
  - 1197
  - 1198
  - 1202
  - 1171
  - 1172
  - 1177
  - 1181
  botocore.handlers.decode_console_output:
  - 274
  - 275
  - 269
  - 279
  botocore.handlers.decode_list_object:
  - 835
  botocore.handlers.decode_list_object_v2:
  - 848
  botocore.handlers.decode_list_object_versions:
  - 861
  botocore.handlers.decode_quoted_jsondoc:
  - 297
  - 295
  botocore.handlers.disable_signing:
  - 369
  botocore.handlers.document_base64_encoding:
  - 639
  botocore.handlers.document_cloudformation_get_template_return_type:
  - 773
  - 774
  - 775
  - 776
  - 777
  - 778
  - 779
  - 780
  - 781
  - 782
  - 783
  botocore.handlers.document_copy_source_form:
  - 416
  - 417
  - 421
  - 422
  - 423
  - 424
  - 425
  - 426
  - 427
  - 428
  - 412
  - 413
  - 414
  - 415
  botocore.handlers.document_expires_shape:
  - 1247
  - 1248
  - 1250
  - 1251
  - 1253
  - 1254
  - 1255
  - 1256
  - 1257
  - 1258
  - 1259
  - 1261
  - 1263
  - 1264
  - 1265
  - 1268
  - 1270
  - 1271
  - 1272
  - 1273
  - 1274
  - 1275
  botocore.handlers.document_glacier_tree_hash_checksum:
  - 767
  botocore.handlers.enable_millisecond_timestamp_precision:
  - 1074
  botocore.handlers.escape_xml_payload:
  - 128
  - 129
  - 130
  - 131
  botocore.handlers.fix_route53_ids:
  - 675
  - 682
  - 687
  - 691
  - 692
  - 694
  - 695
  botocore.handlers.generate_idempotent_uuid:
  - 283
  - 284
  - 285
  - 286
  botocore.handlers.get_bearer_auth_supported_services:
  - 1435
  botocore.handlers.handle_copy_source_param:
  - 449
  - 463
  - 464
  - 469
  - 470
  - 471
  - 472
  botocore.handlers.handle_expires_header:
  - 1225
  - 1219
  - 1220
  - 1223
  botocore.handlers.handle_service_name_alias:
  - 108
  botocore.handlers.inject_account_id:
  - 699
  botocore.handlers.inject_api_version_header_if_needed:
  - 1048
  botocore.handlers.inject_presigned_url_ec2:
  - 537
  - 540
  - 535
  botocore.handlers.inject_presigned_url_rds:
  - 553
  - 556
  - 564
  - 567
  botocore.handlers.json_decode_policies:
  - 581
  - 582
  botocore.handlers.json_decode_template_body:
  - 304
  - 309
  - 302
  botocore.handlers.parse_get_bucket_location:
  - 616
  - 617
  - 618
  - 613
  botocore.handlers.remove_accid_host_prefix_from_model:
  - 1128
  - 1146
  - 1140
  - 1144
  botocore.handlers.remove_arn_from_signing_path:
  - 1154
  - 1155
  - 1156
  - 1157
  - 1159
  botocore.handlers.remove_bedrock_runtime_invoke_model_with_bidirectional_stream:
  - 1068
  - 1069
  botocore.handlers.remove_bucket_from_url_paths_from_model:
  - 1114
  - 1115
  - 1094
  - 1119
  botocore.handlers.remove_content_type_header_for_presigning:
  - 1209
  - 1210
  botocore.handlers.remove_lex_v2_start_conversation:
  - 1054
  - 1055
  botocore.handlers.remove_qbusiness_chat:
  - 1060
  - 1061
  botocore.handlers.set_list_objects_encoding_type_url:
  - 819
  botocore.handlers.set_operation_specific_signer:
  - 225
  - 226
  - 196
  - 200
  - 235
  - 205
  - 208
  - 213
  - 216
  - 217
  - 220
  - 189
  - 223
  botocore.handlers.sse_md5:
  - 332
  - 326
  botocore.handlers.switch_host_machinelearning:
  - 787
  botocore.handlers.validate_ascii_metadata:
  - 644
  - 653
  - 654
  - 661
  - 663
  - 664
  botocore.handlers.validate_bucket_name:
  - 313
  - 316
  botocore.history:
  - 16
  botocore.history.HistoryRecorder.add_handler:
  - 36
  botocore.history.HistoryRecorder.record:
  - 40
  - 42
  - 46
  - 39
  botocore.history.get_global_history_recorder:
  - 53
  - 54
  botocore.hooks:
  - 20
  - 23
  botocore.hooks.BaseEventHooks._verify_accept_kwargs:
  - 176
  - 185
  botocore.hooks.BaseEventHooks._verify_and_register:
  - 152
  - 153
  - 151
  botocore.hooks.BaseEventHooks._verify_is_callable:
  - 172
  botocore.hooks.BaseEventHooks.emit:
  - 68
  botocore.hooks.BaseEventHooks.register:
  - 100
  - 87
  botocore.hooks.BaseEventHooks.register_first:
  - 118
  - 111
  botocore.hooks.BaseEventHooks.register_last:
  - 129
  - 135
  botocore.hooks.BaseEventHooks.unregister:
  - 162
  botocore.hooks.EventAliaser.__copy__:
  - 501
  - 502
  botocore.hooks.EventAliaser.__init__:
  - 405
  botocore.hooks.EventAliaser._alias_event_name:
  - 481
  - 482
  - 455
  - 458
  - 464
  - 465
  - 469
  - 475
  - 476
  - 477
  botocore.hooks.EventAliaser._replace_subsection:
  - 497
  - 492
  - 493
  - 495
  botocore.hooks.EventAliaser.emit:
  - 411
  - 412
  botocore.hooks.EventAliaser.emit_until_response:
  - 416
  - 415
  botocore.hooks.EventAliaser.register:
  - 421
  - 422
  botocore.hooks.EventAliaser.register_first:
  - 429
  - 430
  botocore.hooks.EventAliaser.register_last:
  - 437
  - 438
  botocore.hooks.EventAliaser.unregister:
  - 449
  - 450
  botocore.hooks.HierarchicalEmitter.__copy__:
  - 394
  - 395
  - 396
  - 397
  botocore.hooks.HierarchicalEmitter.__init__:
  - 200
  botocore.hooks.HierarchicalEmitter._emit:
  - 226
  - 227
  - 228
  - 230
  - 237
  - 206
  - 238
  - 239
  - 240
  - 241
  botocore.hooks.HierarchicalEmitter._register:
  - 280
  botocore.hooks.HierarchicalEmitter._register_first:
  - 291
  botocore.hooks.HierarchicalEmitter._register_last:
  - 302
  botocore.hooks.HierarchicalEmitter._register_section:
  - 325
  - 345
  - 337
  - 309
  - 310
  - 341
  - 313
  - 314
  - 315
  botocore.hooks.HierarchicalEmitter.emit:
  - 256
  - 246
  botocore.hooks.HierarchicalEmitter.emit_until_response:
  - 272
  - 259
  - 271
  botocore.hooks.HierarchicalEmitter.unregister:
  - 386
  - 388
  - 357
  - 359
  - 364
  - 365
  - 371
  - 372
  - 379
  botocore.hooks.NodeList.__copy__:
  - 32
  - 33
  - 34
  - 31
  botocore.hooks._PrefixTrie:
  - 507
  botocore.hooks._PrefixTrie.__copy__:
  - 643
  - 644
  botocore.hooks._PrefixTrie._get_items:
  - 578
  - 579
  - 591
  - 592
  - 594
  - 595
  - 597
  - 598
  - 599
  - 600
  - 572
  botocore.hooks._PrefixTrie._recursive_copy:
  - 653
  - 654
  - 655
  - 656
  - 657
  botocore.hooks._PrefixTrie._remove_item:
  - 615
  - 617
  - 618
  - 619
  - 620
  - 621
  - 623
  - 624
  - 625
  - 626
  - 627
  - 628
  - 629
  botocore.hooks._PrefixTrie.append_item:
  - 545
  - 546
  - 552
  - 553
  - 554
  - 538
  - 543
  botocore.hooks._PrefixTrie.prefix_search:
  - 565
  - 564
  - 557
  - 567
  botocore.hooks._PrefixTrie.remove_item:
  - 610
  - 603
  - 612
  botocore.hooks.first_non_none_response:
  - 60
  - 61
  - 39
  botocore.httpchecksum:
  - 43
  - 557
  - 14
  - 48
  - 564
  - 568
  - 570
  - 571
  - 573
  botocore.httpchecksum.AwsChunkedWrapper.__init__:
  - 165
  - 167
  botocore.httpchecksum.AwsChunkedWrapper.__iter__:
  - 231
  botocore.httpchecksum.AwsChunkedWrapper._make_chunk:
  - 224
  - 215
  - 216
  - 219
  - 220
  - 222
  - 223
  botocore.httpchecksum.AwsChunkedWrapper._reset:
  - 176
  - 175
  botocore.httpchecksum.AwsChunkedWrapper.read:
  - 193
  - 197
  - 199
  - 200
  - 203
  - 204
  - 188
  botocore.httpchecksum.AwsChunkedWrapper.seek:
  - 184
  - 179
  - 183
  botocore.httpchecksum.BaseChecksum._handle_fileobj:
  - 67
  - 68
  - 69
  - 70
  botocore.httpchecksum.BaseChecksum._handle_fileobj.<lambda1>:
  - 68
  botocore.httpchecksum.BaseChecksum.b64digest:
  - 64
  - 63
  botocore.httpchecksum.BaseChecksum.handle:
  - 73
  - 74
  - 76
  - 77
  botocore.httpchecksum.Crc32Checksum.digest:
  - 88
  botocore.httpchecksum.Crc32Checksum.update:
  - 85
  botocore.httpchecksum.CrtCrc32Checksum.digest:
  - 101
  botocore.httpchecksum.CrtCrc32Checksum.update:
  - 97
  botocore.httpchecksum.CrtCrc32cChecksum.digest:
  - 114
  botocore.httpchecksum.CrtCrc32cChecksum.update:
  - 110
  botocore.httpchecksum.CrtCrc64NvmeChecksum.digest:
  - 127
  botocore.httpchecksum.CrtCrc64NvmeChecksum.update:
  - 123
  botocore.httpchecksum.Sha1Checksum.__init__:
  - 132
  botocore.httpchecksum.Sha1Checksum.digest:
  - 138
  botocore.httpchecksum.Sha1Checksum.update:
  - 135
  botocore.httpchecksum.Sha256Checksum.__init__:
  - 143
  botocore.httpchecksum.Sha256Checksum.digest:
  - 149
  botocore.httpchecksum.Sha256Checksum.update:
  - 146
  botocore.httpchecksum.StreamingChecksumBody.__init__:
  - 236
  botocore.httpchecksum.StreamingChecksumBody._validate_checksum:
  - 259
  - 262
  botocore.httpchecksum.StreamingChecksumBody.read:
  - 241
  - 242
  - 243
  - 244
  botocore.httpchecksum.StreamingChecksumBody.readinto:
  - 248
  - 249
  - 252
  - 253
  - 254
  - 255
  botocore.httpchecksum._apply_request_header_checksum:
  - 392
  - 393
  - 395
  - 398
  - 399
  - 401
  botocore.httpchecksum._apply_request_trailer_checksum:
  - 418
  - 440
  - 425
  - 427
  - 428
  - 431
  - 433
  - 435
  - 405
  - 406
  - 439
  - 408
  - 442
  - 413
  botocore.httpchecksum._get_request_algorithm_member_header:
  - 353
  - 355
  - 358
  - 362
  - 363
  botocore.httpchecksum._handle_bytes_response:
  - 545
  - 538
  - 539
  - 540
  - 542
  botocore.httpchecksum._handle_streaming_response:
  - 529
  - 530
  - 525
  - 527
  botocore.httpchecksum._register_checksum_algorithm_feature_id:
  - 456
  - 450
  - 451
  botocore.httpchecksum.apply_request_checksum:
  - 384
  - 367
  - 368
  - 370
  - 373
  - 375
  - 376
  - 377
  - 378
  - 379
  botocore.httpchecksum.handle_checksum_body:
  - 513
  - 485
  - 486
  - 518
  - 488
  - 491
  - 494
  - 500
  - 503
  - 504
  - 508
  botocore.httpchecksum.resolve_checksum_context:
  - 268
  - 269
  botocore.httpchecksum.resolve_request_checksum_algorithm:
  - 289
  - 321
  - 291
  - 292
  - 295
  - 317
  - 298
  - 299
  - 300
  - 330
  - 332
  - 334
  - 279
  - 282
  - 315
  - 311
  - 318
  botocore.httpchecksum.resolve_response_checksum_algorithms:
  - 463
  - 464
  - 465
  - 468
  - 472
  - 473
  - 475
  - 476
  - 478
  botocore.httpsession:
  - 44
  - 45
  - 80
  - 81
  - 84
  - 86
  botocore.httpsession.ProxyConfiguration:
  - 228
  botocore.httpsession.ProxyConfiguration.__init__:
  - 236
  - 238
  botocore.httpsession.ProxyConfiguration._construct_basic_auth:
  - 275
  botocore.httpsession.ProxyConfiguration._fix_proxy_url:
  - 266
  - 268
  botocore.httpsession.ProxyConfiguration._get_auth_from_url:
  - 281
  - 279
  botocore.httpsession.ProxyConfiguration.proxy_headers_for:
  - 256
  - 257
  - 253
  - 255
  botocore.httpsession.ProxyConfiguration.proxy_url_for:
  - 245
  - 246
  - 247
  - 248
  - 249
  botocore.httpsession.URLLib3Session:
  - 287
  botocore.httpsession.URLLib3Session.__init__:
  - 323
  - 325
  - 331
  - 334
  - 309
  - 316
  - 318
  - 319
  botocore.httpsession.URLLib3Session._chunked:
  - 451
  - 452
  - 453
  botocore.httpsession.URLLib3Session._get_connection_manager:
  - 424
  - 425
  botocore.httpsession.URLLib3Session._get_pool_manager_kwargs:
  - 356
  - 358
  - 351
  botocore.httpsession.URLLib3Session._get_proxy_manager:
  - 365
  - 366
  - 367
  - 368
  - 371
  - 372
  - 374
  botocore.httpsession.URLLib3Session._get_request_target:
  - 448
  - 433
  - 434
  - 439
  - 442
  - 445
  botocore.httpsession.URLLib3Session._get_ssl_context:
  - 362
  botocore.httpsession.URLLib3Session._path_url:
  - 385
  - 381
  - 383
  botocore.httpsession.URLLib3Session._proxies_kwargs:
  - 345
  - 340
  botocore.httpsession.URLLib3Session._setup_proxy_ssl_context:
  - 416
  - 417
  - 399
  - 400
  - 401
  - 404
  - 406
  - 409
  - 411
  - 412
  - 414
  - 415
  botocore.httpsession.URLLib3Session._setup_ssl_cert:
  - 392
  - 390
  botocore.httpsession.URLLib3Session.close:
  - 456
  - 457
  - 458
  botocore.httpsession.URLLib3Session.send:
  - 482
  - 486
  - 489
  - 523
  - 462
  - 463
  - 464
  - 465
  - 466
  - 467
  - 496
  - 500
  - 473
  - 476
  - 477
  botocore.httpsession._is_ipaddress:
  - 224
  - 223
  botocore.httpsession.create_urllib3_context:
  - 128
  - 129
  - 130
  - 160
  - 135
  - 186
  - 176
  - 178
  - 116
  - 180
  - 185
  - 122
  - 187
  - 125
  - 158
  - 127
  botocore.httpsession.create_urllib3_context.disable_check_hostname:
  - 164
  - 165
  botocore.httpsession.ensure_boolean:
  - 201
  - 194
  - 198
  botocore.httpsession.get_cert_path:
  - 104
  - 107
  - 108
  botocore.httpsession.mask_proxy_url:
  - 205
  - 214
  - 215
  - 216
  - 217
  - 218
  botocore.invoke_initializers:
  - 208
  - 214
  - 215
  botocore.loaders:
  - 124
  - 13
  - 118
  botocore.loaders.ExtrasProcessor:
  - 508
  botocore.loaders.ExtrasProcessor._process:
  - 523
  - 524
  - 525
  botocore.loaders.ExtrasProcessor.process:
  - 520
  - 519
  - 511
  botocore.loaders.JSONFileLoader:
  - 151
  botocore.loaders.JSONFileLoader._load_file:
  - 173
  - 178
  - 179
  - 181
  - 182
  botocore.loaders.JSONFileLoader.exists:
  - 168
  - 158
  - 167
  botocore.loaders.JSONFileLoader.load_file:
  - 185
  - 194
  - 195
  - 196
  botocore.loaders.Loader:
  - 240
  - 226
  - 237
  - 239
  botocore.loaders.Loader.__init__:
  - 256
  - 260
  - 261
  - 266
  - 267
  - 269
  - 253
  - 254
  botocore.loaders.Loader._find_extras:
  - 433
  - 427
  - 428
  - 430
  botocore.loaders.Loader._potential_locations:
  - 481
  - 482
  - 483
  - 484
  - 486
  - 487
  - 488
  - 489
  - 478
  - 479
  botocore.loaders.Loader.determine_latest_version:
  - 324
  - 343
  botocore.loaders.Loader.is_builtin_path:
  - 504
  - 492
  - 503
  botocore.loaders.Loader.list_api_versions:
  - 360
  - 361
  - 364
  - 365
  - 369
  - 370
  - 371
  - 373
  - 347
  botocore.loaders.Loader.list_available_services:
  - 320
  - 313
  - 298
  - 299
  - 307
  - 308
  - 310
  - 311
  - 312
  - 281
  - 314
  - 317
  - 318
  botocore.loaders.Loader.load_data:
  - 472
  - 457
  botocore.loaders.Loader.load_data_with_path:
  - 448
  - 449
  - 450
  - 439
  botocore.loaders.Loader.load_service_model:
  - 417
  - 418
  - 421
  - 422
  - 407
  - 408
  - 377
  - 413
  - 414
  botocore.loaders.create_loader:
  - 202
  - 215
  - 216
  - 218
  - 219
  - 220
  - 221
  - 222
  botocore.loaders.instance_cache:
  - 128
  botocore.loaders.instance_cache._wrapper:
  - 139
  - 141
  - 143
  botocore.model:
  - 32
  - 13
  botocore.model.DenormalizedStructureBuilder:
  - 820
  botocore.model.DenormalizedStructureBuilder.__init__:
  - 872
  - 869
  - 870
  - 871
  botocore.model.DenormalizedStructureBuilder._build_initial_shape:
  - 952
  - 953
  - 950
  botocore.model.DenormalizedStructureBuilder._build_list:
  - 930
  - 931
  - 933
  botocore.model.DenormalizedStructureBuilder._build_map:
  - 937
  - 938
  - 939
  - 942
  - 943
  botocore.model.DenormalizedStructureBuilder._build_model:
  - 907
  - 908
  - 909
  - 910
  - 911
  - 912
  - 913
  - 914
  botocore.model.DenormalizedStructureBuilder._build_scalar:
  - 958
  botocore.model.DenormalizedStructureBuilder._build_structure:
  - 919
  - 920
  - 923
  - 924
  - 926
  botocore.model.DenormalizedStructureBuilder._get_shape_name:
  - 961
  - 964
  botocore.model.DenormalizedStructureBuilder.build_model:
  - 898
  - 899
  - 900
  - 887
  - 893
  botocore.model.DenormalizedStructureBuilder.with_members:
  - 875
  botocore.model.ListShape.member:
  - 266
  botocore.model.MapShape.key:
  - 272
  botocore.model.MapShape.value:
  - 276
  botocore.model.OperationModel.__init__:
  - 553
  - 551
  - 519
  botocore.model.OperationModel._get_event_stream:
  - 713
  - 714
  - 717
  botocore.model.OperationModel._get_streaming_body:
  - 736
  - 737
  - 739
  - 740
  - 742
  botocore.model.OperationModel.auth:
  - 665
  botocore.model.OperationModel.auth_type:
  - 669
  botocore.model.OperationModel.context_parameters:
  - 642
  - 646
  - 650
  botocore.model.OperationModel.deprecated:
  - 586
  botocore.model.OperationModel.documentation:
  - 582
  botocore.model.OperationModel.endpoint:
  - 688
  botocore.model.OperationModel.endpoint_discovery:
  - 592
  botocore.model.OperationModel.error_shapes:
  - 683
  - 684
  botocore.model.OperationModel.get_event_stream_input:
  - 707
  botocore.model.OperationModel.get_event_stream_output:
  - 710
  botocore.model.OperationModel.get_streaming_input:
  - 730
  botocore.model.OperationModel.get_streaming_output:
  - 733
  botocore.model.OperationModel.has_event_stream_input:
  - 700
  botocore.model.OperationModel.has_event_stream_output:
  - 704
  botocore.model.OperationModel.has_streaming_input:
  - 723
  botocore.model.OperationModel.has_streaming_output:
  - 727
  botocore.model.OperationModel.http_checksum:
  - 696
  botocore.model.OperationModel.http_checksum_required:
  - 692
  botocore.model.OperationModel.idempotent_members:
  - 627
  - 622
  botocore.model.OperationModel.input_shape:
  - 600
  - 604
  botocore.model.OperationModel.is_endpoint_discovery_operation:
  - 596
  botocore.model.OperationModel.name:
  - 557
  botocore.model.OperationModel.operation_context_parameters:
  - 657
  botocore.model.OperationModel.output_shape:
  - 610
  - 615
  botocore.model.OperationModel.request_compression:
  - 661
  botocore.model.OperationModel.resolved_auth_type:
  - 673
  - 674
  botocore.model.OperationModel.static_context_parameters:
  - 634
  - 636
  - 637
  botocore.model.OperationModel.unsigned_payload:
  - 679
  botocore.model.OperationModel.wire_name:
  - 564
  - 574
  botocore.model.ServiceId.hyphenize:
  - 53
  botocore.model.ServiceModel:
  - 302
  botocore.model.ServiceModel.__init__:
  - 333
  - 331
  - 332
  - 309
  botocore.model.ServiceModel._error_code_cache:
  - 350
  botocore.model.ServiceModel.api_version:
  - 425
  botocore.model.ServiceModel.client_context_parameters:
  - 484
  - 477
  - 479
  botocore.model.ServiceModel.documentation:
  - 381
  botocore.model.ServiceModel.endpoint_discovery_operation:
  - 459
  - 460
  - 461
  botocore.model.ServiceModel.endpoint_discovery_required:
  - 466
  - 467
  - 468
  - 470
  botocore.model.ServiceModel.endpoint_prefix:
  - 455
  botocore.model.ServiceModel.error_shapes:
  - 368
  - 365
  - 366
  - 367
  botocore.model.ServiceModel.operation_model:
  - 377
  botocore.model.ServiceModel.operation_names:
  - 385
  botocore.model.ServiceModel.protocol:
  - 429
  botocore.model.ServiceModel.protocols:
  - 433
  botocore.model.ServiceModel.resolve_shape_ref:
  - 356
  botocore.model.ServiceModel.resolved_protocol:
  - 440
  - 441
  - 442
  botocore.model.ServiceModel.service_id:
  - 407
  botocore.model.ServiceModel.service_name:
  - 389
  - 399
  botocore.model.ServiceModel.shape_for:
  - 340
  botocore.model.ServiceModel.shape_for_error_code:
  - 345
  botocore.model.ServiceModel.shape_names:
  - 360
  botocore.model.ServiceModel.signature_version:
  - 500
  - 501
  botocore.model.ServiceModel.signing_name:
  - 418
  - 419
  - 413
  botocore.model.Shape:
  - 57
  botocore.model.Shape.__init__:
  - 132
  - 124
  - 126
  - 103
  botocore.model.Shape._resolve_shape_ref:
  - 211
  botocore.model.Shape.metadata:
  - 194
  - 171
  - 195
  botocore.model.Shape.required_members:
  - 208
  - 201
  botocore.model.Shape.serialization:
  - 161
  - 162
  - 165
  - 166
  - 138
  botocore.model.ShapeNameGenerator:
  - 968
  botocore.model.ShapeNameGenerator.__init__:
  - 976
  botocore.model.ShapeNameGenerator.new_shape_name:
  - 979
  - 1006
  botocore.model.ShapeResolver:
  - 751
  botocore.model.ShapeResolver.get_shape_by_name:
  - 771
  - 776
  - 777
  - 778
  - 779
  botocore.model.ShapeResolver.resolve_shape_ref:
  - 801
  - 788
  - 792
  - 794
  - 796
  botocore.model.StringShape.enum:
  - 282
  botocore.model.StructureShape.error_code:
  - 248
  - 249
  - 245
  - 247
  botocore.model.StructureShape.event_stream_name:
  - 238
  - 239
  botocore.model.StructureShape.is_document_type:
  - 256
  botocore.model.StructureShape.is_tagged_union:
  - 260
  botocore.model.StructureShape.members:
  - 224
  - 232
  - 233
  - 231
  botocore.model.UnresolvableShapeMap:
  - 805
  botocore.monitoring:
  - 21
  botocore.monitoring.APICallAttemptEvent.__init__:
  - 266
  - 310
  botocore.monitoring.APICallEvent.__init__:
  - 202
  - 234
  - 229
  botocore.monitoring.APICallEvent.new_api_call_attempt:
  - 248
  - 245
  - 239
  botocore.monitoring.BaseMonitorEvent.__eq__:
  - 187
  botocore.monitoring.BaseMonitorEvent.__init__:
  - 166
  botocore.monitoring.CSMSerializer:
  - 339
  - 334
  botocore.monitoring.CSMSerializer.__init__:
  - 363
  - 357
  botocore.monitoring.CSMSerializer._add_fields_from_last_attempt:
  - 417
  - 418
  - 420
  - 423
  - 425
  - 426
  - 429
  - 430
  - 414
  botocore.monitoring.CSMSerializer._get_access_key:
  - 504
  - 505
  - 503
  botocore.monitoring.CSMSerializer._get_auth_match:
  - 529
  - 530
  - 531
  botocore.monitoring.CSMSerializer._get_auth_value:
  - 526
  botocore.monitoring.CSMSerializer._get_event_type:
  - 497
  - 499
  botocore.monitoring.CSMSerializer._get_region:
  - 512
  - 514
  - 508
  - 510
  - 511
  botocore.monitoring.CSMSerializer._get_user_agent:
  - 517
  - 518
  botocore.monitoring.CSMSerializer._serialize_attempts:
  - 409
  - 410
  - 411
  botocore.monitoring.CSMSerializer._serialize_latency:
  - 435
  - 437
  botocore.monitoring.CSMSerializer._serialize_parsed_error:
  - 481
  - 478
  botocore.monitoring.CSMSerializer._serialize_request_headers:
  - 451
  - 452
  - 453
  - 454
  - 455
  - 457
  botocore.monitoring.CSMSerializer._serialize_response_headers:
  - 470
  - 471
  botocore.monitoring.CSMSerializer._serialize_url:
  - 446
  botocore.monitoring.CSMSerializer._serialize_wire_exception:
  - 489
  - 492
  - 493
  botocore.monitoring.CSMSerializer._truncate:
  - 536
  - 537
  botocore.monitoring.CSMSerializer._validate_client_id:
  - 367
  botocore.monitoring.CSMSerializer.serialize:
  - 385
  - 386
  - 387
  - 388
  - 391
  - 374
  - 382
  - 383
  botocore.monitoring.Monitor.__init__:
  - 34
  botocore.monitoring.Monitor.capture:
  - 50
  - 56
  - 57
  - 58
  - 60
  botocore.monitoring.Monitor.register:
  - 45
  - 46
  - 47
  botocore.monitoring.MonitorEventAdapter.__init__:
  - 70
  botocore.monitoring.MonitorEventAdapter._complete_api_call:
  - 153
  - 154
  botocore.monitoring.MonitorEventAdapter._get_current_time:
  - 161
  botocore.monitoring.MonitorEventAdapter._get_handler:
  - 94
  - 95
  botocore.monitoring.MonitorEventAdapter._get_latency:
  - 158
  botocore.monitoring.MonitorEventAdapter._handle_after_call:
  - 132
  - 135
  botocore.monitoring.MonitorEventAdapter._handle_after_call_error:
  - 144
  - 145
  botocore.monitoring.MonitorEventAdapter._handle_before_parameter_build:
  - 99
  - 102
  botocore.monitoring.MonitorEventAdapter._handle_request_created:
  - 107
  - 109
  botocore.monitoring.MonitorEventAdapter._handle_response_received:
  - 126
  - 117
  - 118
  - 119
  botocore.monitoring.MonitorEventAdapter._is_retryable_exception:
  - 148
  - 149
  botocore.monitoring.MonitorEventAdapter.feed:
  - 91
  - 78
  botocore.monitoring.SocketPublisher.__init__:
  - 550
  botocore.monitoring.SocketPublisher.publish:
  - 577
  - 578
  - 579
  - 582
  - 586
  - 571
  botocore.paginate:
  - 27
  botocore.paginate.PageIterator:
  - 358
  - 191
  botocore.paginate.PageIterator.__init__:
  - 224
  - 223
  botocore.paginate.PageIterator.__iter__:
  - 259
  - 264
  - 270
  - 272
  - 273
  - 274
  - 278
  - 279
  - 283
  - 289
  - 290
  - 292
  - 294
  - 298
  - 299
  - 306
  - 309
  - 311
  - 312
  - 314
  - 322
  - 330
  botocore.paginate.PageIterator._convert_deprecated_starting_token:
  - 581
  - 585
  - 586
  - 587
  - 589
  - 590
  - 594
  - 595
  - 596
  botocore.paginate.PageIterator._get_next_token:
  - 462
  - 463
  - 466
  - 469
  - 472
  botocore.paginate.PageIterator._handle_first_request:
  - 417
  - 426
  - 399
  - 400
  - 401
  - 405
  - 409
  - 410
  - 412
  - 413
  - 415
  botocore.paginate.PageIterator._inject_starting_params:
  - 377
  - 380
  - 381
  - 382
  botocore.paginate.PageIterator._inject_token_into_kwargs:
  - 388
  - 389
  - 391
  botocore.paginate.PageIterator._make_request:
  - 360
  botocore.paginate.PageIterator._parse_starting_token:
  - 544
  - 547
  - 535
  - 541
  - 543
  botocore.paginate.PageIterator._parse_starting_token_deprecated:
  - 577
  - 578
  - 551
  - 555
  - 559
  - 562
  - 565
  - 567
  - 573
  - 574
  - 575
  botocore.paginate.PageIterator._record_non_aggregate_key_values:
  - 368
  - 369
  - 367
  botocore.paginate.PageIterator._truncate_response:
  - 440
  - 442
  - 437
  - 438
  botocore.paginate.PageIterator.build_full_result:
  - 513
  - 487
  - 520
  - 521
  - 522
  - 524
  - 494
  - 529
  - 530
  - 500
  - 507
  - 508
  - 510
  - 511
  botocore.paginate.PageIterator.result_key_iters:
  - 481
  - 482
  - 479
  botocore.paginate.PageIterator.resume_token:
  - 232
  - 237
  - 240
  - 241
  - 243
  - 244
  - 246
  - 247
  botocore.paginate.PageIterator.search:
  - 352
  - 353
  - 356
  - 334
  - 349
  - 350
  - 351
  botocore.paginate.Paginator.__init__:
  - 608
  - 609
  - 612
  - 613
  - 606
  - 607
  botocore.paginate.Paginator._extract_paging_params:
  - 680
  - 681
  - 682
  - 683
  - 684
  - 685
  - 686
  - 692
  - 693
  - 694
  - 695
  - 697
  botocore.paginate.Paginator._get_input_tokens:
  - 636
  botocore.paginate.Paginator._get_limit_key:
  - 654
  botocore.paginate.Paginator._get_more_results_token:
  - 641
  - 642
  - 643
  botocore.paginate.Paginator._get_non_aggregate_keys:
  - 621
  - 622
  botocore.paginate.Paginator._get_output_tokens:
  - 628
  - 630
  - 631
  botocore.paginate.Paginator._get_result_keys:
  - 648
  - 650
  - 646
  - 647
  botocore.paginate.Paginator.paginate:
  - 664
  - 657
  - 665
  botocore.paginate.ResultKeyIterator:
  - 706
  botocore.paginate.ResultKeyIterator.__iter__:
  - 728
  - 724
  - 725
  - 726
  botocore.paginate.TokenDecoder:
  - 109
  botocore.paginate.TokenDecoder._decode:
  - 139
  - 140
  - 141
  - 142
  - 143
  botocore.paginate.TokenDecoder._path_get:
  - 147
  - 159
  botocore.paginate.TokenDecoder._path_set:
  - 172
  - 164
  botocore.paginate.TokenDecoder.decode:
  - 128
  - 132
  - 133
  - 136
  - 116
  - 127
  botocore.paginate.TokenEncoder:
  - 31
  botocore.paginate.TokenEncoder._encode:
  - 71
  - 72
  - 73
  - 74
  - 75
  - 76
  - 77
  botocore.paginate.TokenEncoder._encode_bytes:
  - 104
  - 105
  botocore.paginate.TokenEncoder._encode_dict:
  - 96
  - 98
  - 100
  - 93
  botocore.paginate.TokenEncoder._encode_list:
  - 82
  - 85
  - 87
  - 88
  - 89
  botocore.paginate.TokenEncoder.encode:
  - 65
  - 68
  - 42
  - 55
  - 58
  botocore.parsers:
  - 13
  - 142
  botocore.parsers.BaseCBORParser._handle_break_code:
  - 952
  - 951
  botocore.parsers.BaseCBORParser._parse_array:
  - 864
  - 865
  - 866
  - 869
  - 870
  botocore.parsers.BaseCBORParser._parse_byte_string:
  - 844
  - 845
  - 846
  - 850
  - 852
  - 854
  - 855
  - 856
  botocore.parsers.BaseCBORParser._parse_datetime:
  - 906
  - 907
  botocore.parsers.BaseCBORParser._parse_key_value_pair:
  - 888
  - 889
  - 890
  botocore.parsers.BaseCBORParser._parse_map:
  - 876
  - 877
  - 878
  - 879
  - 883
  - 884
  botocore.parsers.BaseCBORParser._parse_negative_integer:
  - 840
  botocore.parsers.BaseCBORParser._parse_simple_and_float:
  - 936
  - 938
  - 939
  - 925
  botocore.parsers.BaseCBORParser._parse_tag:
  - 896
  - 897
  - 898
  - 899
  botocore.parsers.BaseCBORParser._parse_text_string:
  - 860
  botocore.parsers.BaseCBORParser._parse_unsigned_integer:
  - 827
  - 829
  - 831
  botocore.parsers.BaseCBORParser._read_bytes_as_int:
  - 956
  - 957
  botocore.parsers.BaseCBORParser._read_from_stream:
  - 960
  - 961
  botocore.parsers.BaseCBORParser.get_peekable_stream_from_bytes:
  - 795
  botocore.parsers.BaseCBORParser.parse_data_item:
  - 800
  - 809
  - 807
  botocore.parsers.BaseEventStreamParser._do_error_parse:
  - 992
  - 996
  - 1002
  - 1003
  - 988
  - 989
  - 990
  - 991
  botocore.parsers.BaseEventStreamParser._do_parse:
  - 973
  - 974
  - 975
  - 976
  - 977
  - 981
  - 984
  botocore.parsers.BaseEventStreamParser._parse_non_payload_attrs:
  - 1034
  - 1036
  - 1037
  - 1039
  - 1042
  botocore.parsers.BaseEventStreamParser._parse_payload:
  - 1026
  - 1027
  - 1028
  - 1009
  - 1010
  - 1012
  - 1014
  - 1016
  - 1017
  - 1019
  - 1020
  botocore.parsers.BaseJSONParser._do_error_parse:
  - 739
  - 741
  - 742
  - 746
  - 747
  - 748
  - 749
  - 750
  - 751
  - 723
  - 755
  - 734
  - 735
  botocore.parsers.BaseJSONParser._handle_blob:
  - 717
  botocore.parsers.BaseJSONParser._handle_map:
  - 712
  - 710
  - 711
  botocore.parsers.BaseJSONParser._handle_structure:
  - 683
  - 687
  - 693
  - 694
  - 695
  - 696
  - 698
  - 699
  - 700
  - 701
  botocore.parsers.BaseJSONParser._handle_timestamp:
  - 720
  botocore.parsers.BaseJSONParser._inject_response_metadata:
  - 760
  - 759
  botocore.parsers.BaseJSONParser._parse_body_as_json:
  - 769
  - 765
  - 767
  botocore.parsers.BaseRestParser._add_modeled_parse:
  - 1129
  - 1123
  - 1126
  botocore.parsers.BaseRestParser._do_modeled_error_parse:
  - 1133
  botocore.parsers.BaseRestParser._do_parse:
  - 1116
  - 1119
  botocore.parsers.BaseRestParser._handle_list:
  - 1226
  - 1227
  - 1229
  - 1230
  botocore.parsers.BaseRestParser._handle_string:
  - 1220
  - 1221
  - 1222
  botocore.parsers.BaseRestParser._parse_header_map:
  - 1202
  - 1203
  - 1204
  - 1207
  botocore.parsers.BaseRestParser._parse_non_payload_attrs:
  - 1184
  - 1187
  - 1188
  - 1191
  - 1192
  - 1193
  - 1194
  - 1178
  - 1180
  - 1181
  - 1183
  botocore.parsers.BaseRestParser._parse_payload:
  - 1155
  - 1156
  - 1158
  - 1161
  - 1162
  - 1165
  - 1166
  - 1170
  - 1171
  - 1172
  - 1150
  botocore.parsers.BaseRestParser._populate_response_metadata:
  - 1146
  - 1139
  - 1141
  botocore.parsers.BaseRpcV2Parser._add_modeled_parse:
  - 1251
  - 1253
  botocore.parsers.BaseRpcV2Parser._do_modeled_error_parse:
  - 1257
  botocore.parsers.BaseRpcV2Parser._do_parse:
  - 1236
  - 1238
  - 1239
  - 1244
  - 1245
  botocore.parsers.BaseRpcV2Parser._handle_structure:
  - 1282
  - 1284
  - 1285
  - 1286
  - 1270
  - 1271
  - 1272
  - 1274
  - 1276
  botocore.parsers.BaseRpcV2Parser._parse_payload:
  - 1292
  - 1293
  - 1294
  botocore.parsers.BaseRpcV2Parser._populate_response_metadata:
  - 1263
  botocore.parsers.BaseXMLResponseParser.__init__:
  - 417
  - 418
  botocore.parsers.BaseXMLResponseParser._build_name_to_xml_node:
  - 518
  - 519
  - 521
  - 522
  - 523
  - 528
  - 529
  botocore.parsers.BaseXMLResponseParser._get_error_root:
  - 492
  - 493
  - 494
  botocore.parsers.BaseXMLResponseParser._handle_blob:
  - 585
  botocore.parsers.BaseXMLResponseParser._handle_boolean:
  - 562
  botocore.parsers.BaseXMLResponseParser._handle_float:
  - 569
  botocore.parsers.BaseXMLResponseParser._handle_integer:
  - 577
  botocore.parsers.BaseXMLResponseParser._handle_list:
  - 450
  - 452
  botocore.parsers.BaseXMLResponseParser._handle_map:
  - 424
  - 425
  - 426
  - 428
  - 429
  - 431
  - 432
  - 433
  - 434
  - 435
  botocore.parsers.BaseXMLResponseParser._handle_structure:
  - 457
  - 458
  - 459
  - 460
  - 461
  - 462
  - 463
  - 465
  - 466
  - 468
  - 473
  - 474
  - 475
  - 476
  - 479
  - 482
  - 483
  - 484
  - 487
  botocore.parsers.BaseXMLResponseParser._handle_timestamp:
  - 573
  botocore.parsers.BaseXMLResponseParser._member_key_name:
  - 503
  - 504
  - 507
  - 509
  - 510
  botocore.parsers.BaseXMLResponseParser._node_tag:
  - 442
  botocore.parsers.BaseXMLResponseParser._parse_xml_string_to_dom:
  - 539
  - 540
  - 542
  - 543
  botocore.parsers.BaseXMLResponseParser._replace_nodes:
  - 552
  - 553
  - 554
  - 555
  botocore.parsers.EC2QueryParser._do_error_parse:
  - 664
  - 665
  - 667
  botocore.parsers.EC2QueryParser._get_error_root:
  - 672
  - 673
  - 674
  - 675
  botocore.parsers.EC2QueryParser._inject_response_metadata:
  - 648
  - 646
  - 647
  botocore.parsers.EventStreamCBORParser._initial_body_parse:
  - 1067
  - 1069
  - 1070
  botocore.parsers.EventStreamJSONParser._initial_body_parse:
  - 1055
  botocore.parsers.EventStreamXMLParser._initial_body_parse:
  - 1060
  - 1061
  - 1062
  botocore.parsers.JSONParser:
  - 1077
  botocore.parsers.JSONParser._do_modeled_error_parse:
  - 1091
  botocore.parsers.JSONParser._do_parse:
  - 1081
  - 1083
  - 1084
  - 1086
  - 1087
  botocore.parsers.JSONParser._handle_event_stream:
  - 1097
  - 1101
  - 1095
  botocore.parsers.JSONParser._handle_json_body:
  - 1109
  - 1110
  botocore.parsers.QueryParser._do_error_parse:
  - 595
  - 596
  - 597
  - 603
  - 604
  - 605
  - 606
  botocore.parsers.QueryParser._do_modeled_error_parse:
  - 610
  botocore.parsers.QueryParser._do_parse:
  - 613
  botocore.parsers.QueryParser._find_result_wrapped_shape:
  - 631
  botocore.parsers.QueryParser._inject_response_metadata:
  - 635
  - 636
  - 637
  - 638
  - 639
  botocore.parsers.QueryParser._parse_body_as_xml:
  - 617
  - 619
  - 621
  - 622
  - 625
  - 626
  - 627
  botocore.parsers.ResponseParser:
  - 198
  botocore.parsers.ResponseParser.__init__:
  - 227
  - 220
  - 228
  - 223
  botocore.parsers.ResponseParser._add_checksum_response_metadata:
  - 288
  - 289
  - 290
  botocore.parsers.ResponseParser._create_event_stream:
  - 363
  - 364
  botocore.parsers.ResponseParser._default_blob_parser:
  - 236
  botocore.parsers.ResponseParser._do_generic_error_parse:
  - 324
  - 325
  - 318
  botocore.parsers.ResponseParser._do_query_compatible_error_parse:
  - 400
  - 408
  - 406
  botocore.parsers.ResponseParser._get_first_key:
  - 367
  botocore.parsers.ResponseParser._handle_list:
  - 354
  - 355
  botocore.parsers.ResponseParser._has_unknown_tagged_union_member:
  - 384
  - 387
  - 388
  - 370
  - 371
  - 372
  - 374
  - 376
  - 382
  botocore.parsers.ResponseParser._is_generic_error_response:
  - 312
  - 313
  - 308
  - 309
  botocore.parsers.ResponseParser._is_modeled_error_shape:
  - 294
  botocore.parsers.ResponseParser._parse_shape:
  - 344
  - 347
  botocore.parsers.ResponseParser.parse:
  - 256
  - 257
  - 258
  - 259
  - 260
  - 261
  - 265
  - 267
  - 270
  - 239
  - 275
  - 276
  - 282
  - 284
  - 255
  botocore.parsers.ResponseParserFactory.create_parser:
  - 165
  botocore.parsers.ResponseParserFactory.set_parser_defaults:
  - 152
  - 161
  botocore.parsers.RestJSONParser._do_error_parse:
  - 1312
  - 1311
  botocore.parsers.RestJSONParser._handle_boolean:
  - 1331
  botocore.parsers.RestJSONParser._handle_float:
  - 1337
  botocore.parsers.RestJSONParser._handle_integer:
  - 1334
  botocore.parsers.RestJSONParser._initial_body_parse:
  - 1308
  botocore.parsers.RestJSONParser._inject_error_code:
  - 1318
  - 1320
  - 1322
  - 1323
  - 1324
  - 1326
  - 1327
  botocore.parsers.RestXMLParser._do_error_parse:
  - 1432
  - 1426
  - 1428
  - 1421
  botocore.parsers.RestXMLParser._handle_string:
  - 1473
  botocore.parsers.RestXMLParser._initial_body_parse:
  - 1403
  - 1404
  - 1405
  botocore.parsers.RestXMLParser._parse_error_from_body:
  - 1450
  - 1451
  - 1452
  - 1453
  - 1456
  - 1461
  - 1462
  - 1464
  - 1466
  - 1468
  botocore.parsers.RestXMLParser._parse_error_from_http_status:
  - 1443
  - 1444
  - 1437
  - 1438
  botocore.parsers.RpcV2CBORParser._do_error_parse:
  - 1376
  - 1380
  - 1381
  - 1355
  - 1358
  - 1365
  - 1366
  - 1367
  - 1368
  - 1369
  - 1370
  - 1371
  - 1372
  - 1373
  - 1374
  - 1375
  botocore.parsers.RpcV2CBORParser._handle_event_stream:
  - 1394
  - 1388
  - 1390
  botocore.parsers.RpcV2CBORParser._initial_body_parse:
  - 1352
  - 1347
  - 1349
  botocore.parsers._text_content._get_text_content:
  - 179
  - 188
  - 181
  botocore.parsers.create_parser:
  - 169
  botocore.plugin:
  - 25
  - 37
  - 13
  botocore.plugin.PluginContext:
  - 30
  botocore.plugin.get_botocore_plugins:
  - 64
  - 57
  - 58
  - 60
  - 61
  botocore.plugin.get_plugin_context:
  - 41
  - 42
  botocore.plugin.load_client_plugins:
  - 68
  - 69
  - 75
  - 76
  - 78
  - 83
  botocore.plugin.reset_plugin_context:
  - 52
  - 53
  botocore.plugin.set_plugin_context:
  - 46
  - 47
  botocore.regions:
  - 50
  - 13
  botocore.regions.BaseEndpointResolver:
  - 56
  botocore.regions.BaseEndpointResolver.construct_endpoint:
  - 59
  botocore.regions.BaseEndpointResolver.get_available_endpoints:
  - 97
  botocore.regions.BaseEndpointResolver.get_available_partitions:
  - 88
  botocore.regions.EndpointResolver:
  - 117
  botocore.regions.EndpointResolver.__init__:
  - 122
  - 130
  botocore.regions.EndpointResolver._create_tag_list:
  - 336
  - 333
  - 334
  - 335
  botocore.regions.EndpointResolver._endpoint_for_partition:
  - 293
  - 262
  - 294
  - 297
  - 299
  - 300
  - 301
  - 302
  - 273
  - 277
  - 278
  - 309
  - 310
  - 315
  botocore.regions.EndpointResolver._expand_template:
  - 423
  botocore.regions.EndpointResolver._merge_keys:
  - 416
  - 417
  botocore.regions.EndpointResolver._region_match:
  - 320
  - 321
  - 318
  botocore.regions.EndpointResolver._resolve:
  - 387
  - 358
  - 362
  - 363
  - 394
  - 395
  - 397
  - 368
  - 369
  - 370
  - 372
  - 373
  - 404
  - 405
  - 376
  - 382
  botocore.regions.EndpointResolver._resolve_variant:
  - 344
  - 345
  - 346
  - 343
  botocore.regions.EndpointResolver._retrieve_variant_data:
  - 328
  - 325
  - 326
  - 327
  botocore.regions.EndpointResolver.construct_endpoint:
  - 227
  - 228
  - 201
  - 233
  - 208
  - 240
  - 210
  - 211
  - 214
  - 215
  botocore.regions.EndpointResolver.get_available_endpoints:
  - 162
  - 165
  - 168
  - 169
  - 172
  - 173
  - 174
  - 175
  - 158
  - 159
  botocore.regions.EndpointResolver.get_available_partitions:
  - 146
  - 147
  botocore.regions.EndpointResolver.get_partition_dns_suffix:
  - 181
  - 182
  - 183
  - 184
  - 185
  - 187
  botocore.regions.EndpointResolver.get_partition_for_region:
  - 244
  - 245
  botocore.regions.EndpointResolver.get_service_endpoints_data:
  - 136
  - 137
  - 140
  botocore.regions.EndpointRulesetResolver:
  - 464
  botocore.regions.EndpointRulesetResolver.__init__:
  - 477
  botocore.regions.EndpointRulesetResolver._does_botocore_authname_match_ruleset_authname:
  - 779
  - 804
  - 805
  - 806
  botocore.regions.EndpointRulesetResolver._get_client_context_params:
  - 656
  - 654
  botocore.regions.EndpointRulesetResolver._get_customized_builtins:
  - 664
  - 666
  - 663
  botocore.regions.EndpointRulesetResolver._get_dynamic_context_params:
  - 646
  botocore.regions.EndpointRulesetResolver._get_provider_params:
  - 547
  - 558
  - 561
  - 562
  - 567
  - 568
  - 572
  - 574
  botocore.regions.EndpointRulesetResolver._get_static_context_params:
  - 638
  botocore.regions.EndpointRulesetResolver._register_endpoint_feature_ids:
  - 866
  - 867
  - 868
  - 869
  botocore.regions.EndpointRulesetResolver._resolve_param_as_builtin:
  - 632
  - 633
  - 629
  - 631
  botocore.regions.EndpointRulesetResolver._resolve_param_as_client_context_param:
  - 616
  - 618
  - 615
  botocore.regions.EndpointRulesetResolver._resolve_param_as_dynamic_context_param:
  - 609
  - 610
  - 612
  botocore.regions.EndpointRulesetResolver._resolve_param_as_operation_context_param:
  - 624
  - 626
  botocore.regions.EndpointRulesetResolver._resolve_param_as_static_context_param:
  - 603
  - 604
  botocore.regions.EndpointRulesetResolver._resolve_param_from_context:
  - 581
  - 584
  - 586
  - 589
  - 592
  - 596
  - 598
  botocore.regions.EndpointRulesetResolver._strip_sig_prefix:
  - 776
  - 775
  botocore.regions.EndpointRulesetResolver.auth_schemes_to_signing_ctx:
  - 676
  - 688
  - 691
  - 694
  - 698
  - 702
  - 705
  - 710
  - 713
  - 724
  - 735
  - 736
  - 741
  - 752
  - 754
  - 755
  - 756
  - 759
  - 760
  - 761
  - 762
  - 766
  botocore.regions.EndpointRulesetResolver.construct_endpoint:
  - 514
  - 517
  - 521
  - 524
  - 526
  - 496
  - 497
  - 529
  - 538
  - 500
  - 503
  - 536
  - 506
  - 510
  botocore.regions.EndpointRulesetResolver.ruleset_error_to_botocore_exception:
  - 811
  - 814
  - 815
  - 818
  - 822
  - 825
  - 828
  - 829
  - 833
  - 834
  - 835
  - 836
  - 837
  - 838
  - 839
  - 840
  - 842
  - 843
  - 844
  - 845
  - 846
  - 847
  - 848
  - 849
  - 852
  - 853
  - 854
  - 855
  - 856
  - 860
  - 861
  - 862
  botocore.register_initializer:
  - 180
  - 190
  botocore.response:
  - 36
  botocore.response.StreamingBody:
  - 40
  botocore.response.StreamingBody.__exit__:
  - 146
  botocore.response.StreamingBody.__iter__:
  - 132
  - 133
  botocore.response.StreamingBody.__next__:
  - 136
  - 137
  - 138
  botocore.response.StreamingBody._verify_content_length:
  - 179
  botocore.response.StreamingBody.close:
  - 192
  - 191
  botocore.response.StreamingBody.iter_chunks:
  - 170
  - 171
  - 173
  - 166
  botocore.response.StreamingBody.iter_lines:
  - 160
  - 162
  - 163
  - 151
  - 157
  - 158
  - 159
  botocore.response.StreamingBody.read:
  - 98
  - 104
  - 105
  - 109
  - 93
  botocore.response.StreamingBody.readable:
  - 88
  botocore.response.StreamingBody.readinto:
  - 113
  - 122
  - 115
  - 125
  botocore.response.StreamingBody.readlines:
  - 129
  botocore.response.StreamingBody.set_socket_timeout:
  - 80
  - 66
  - 78
  botocore.response.StreamingBody.tell:
  - 188
  botocore.response.get_response:
  - 204
  - 206
  - 207
  - 208
  - 213
  - 214
  botocore.retries:
  - 1
  botocore.retries.adaptive:
  - 7
  botocore.retries.adaptive.ClientRateLimiter.__init__:
  - 55
  botocore.retries.adaptive.ClientRateLimiter.on_receiving_response:
  - 64
  - 66
  - 67
  - 69
  - 72
  - 75
  - 78
  - 87
  - 63
  botocore.retries.adaptive.ClientRateLimiter.on_sending_request:
  - 58
  - 59
  botocore.retries.adaptive.RateClocker:
  - 93
  botocore.retries.adaptive.RateClocker.__init__:
  - 108
  - 111
  botocore.retries.adaptive.RateClocker.record:
  - 121
  - 122
  - 115
  - 117
  botocore.retries.adaptive.register_retry_handler:
  - 11
  - 12
  - 13
  - 15
  - 16
  - 17
  - 18
  - 20
  - 27
  - 31
  botocore.retries.base.BaseRetryBackoff.delay_amount:
  - 3
  botocore.retries.base.BaseRetryableChecker:
  - 12
  botocore.retries.base.BaseRetryableChecker.is_retryable:
  - 22
  botocore.retries.bucket:
  - 1
  botocore.retries.bucket.Clock.current_time:
  - 17
  botocore.retries.bucket.Clock.sleep:
  - 14
  botocore.retries.bucket.TokenBucket.__init__:
  - 30
  - 31
  botocore.retries.bucket.TokenBucket._acquire:
  - 97
  - 98
  - 99
  - 81
  - 82
  - 86
  - 89
  botocore.retries.bucket.TokenBucket._refill:
  - 113
  - 107
  - 108
  botocore.retries.bucket.TokenBucket.acquire:
  - 68
  - 78
  botocore.retries.bucket.TokenBucket.max_rate:
  - 46
  - 47
  - 48
  - 54
  - 57
  botocore.retries.quota:
  - 1
  botocore.retries.quota.RetryQuota.__init__:
  - 12
  - 13
  botocore.retries.quota.RetryQuota.acquire:
  - 17
  - 27
  botocore.retries.quota.RetryQuota.release:
  - 33
  - 44
  - 47
  botocore.retries.special:
  - 1
  - 14
  botocore.retries.special.RetryDDBChecksumError.is_retryable:
  - 36
  - 38
  - 40
  - 41
  - 43
  - 44
  - 45
  botocore.retries.special.RetryIDPCommunicationError.is_retryable:
  - 24
  - 26
  botocore.retries.standard:
  - 40
  - 1
  botocore.retries.standard.ExponentialBackoff.delay_amount:
  - 275
  - 262
  botocore.retries.standard.MaxAttemptsChecker.is_retryable:
  - 288
  - 289
  - 290
  - 292
  - 293
  - 294
  - 287
  botocore.retries.standard.ModeledRetryErrorDetector:
  - 387
  botocore.retries.standard.ModeledRetryErrorDetector.detect_error_type:
  - 417
  - 418
  - 397
  - 406
  - 408
  - 410
  - 411
  - 415
  botocore.retries.standard.ModeledRetryableChecker:
  - 374
  botocore.retries.standard.ModeledRetryableChecker.__init__:
  - 377
  botocore.retries.standard.ModeledRetryableChecker.is_retryable:
  - 380
  - 381
  - 383
  botocore.retries.standard.OrRetryChecker.is_retryable:
  - 476
  botocore.retries.standard.RetryContext:
  - 158
  botocore.retries.standard.RetryContext.__init__:
  - 205
  botocore.retries.standard.RetryContext.add_retry_metadata:
  - 226
  - 234
  botocore.retries.standard.RetryContext.get_error_code:
  - 213
  - 218
  - 220
  - 221
  - 223
  botocore.retries.standard.RetryContext.get_retry_metadata:
  - 237
  botocore.retries.standard.RetryEventAdapter:
  - 107
  botocore.retries.standard.RetryEventAdapter.adapt_retry_response_from_context:
  - 147
  - 148
  - 149
  - 143
  botocore.retries.standard.RetryEventAdapter.create_retry_context:
  - 120
  - 132
  - 118
  botocore.retries.standard.RetryHandler:
  - 71
  botocore.retries.standard.RetryHandler.needs_retry:
  - 96
  - 101
  - 102
  - 83
  - 85
  - 86
  - 89
  - 90
  - 91
  botocore.retries.standard.RetryPolicy.compute_retry_delay:
  - 249
  botocore.retries.standard.RetryPolicy.should_retry:
  - 246
  botocore.retries.standard.RetryQuotaChecker._is_timeout_error:
  - 512
  botocore.retries.standard.RetryQuotaChecker.acquire_retry_quota:
  - 497
  - 508
  - 501
  - 502
  botocore.retries.standard.RetryQuotaChecker.release_retry_quota:
  - 524
  - 527
  - 528
  - 529
  - 532
  botocore.retries.standard.StandardRetryConditions:
  - 439
  botocore.retries.standard.StandardRetryConditions.__init__:
  - 450
  - 451
  - 453
  - 454
  - 455
  - 456
  - 458
  - 459
  botocore.retries.standard.StandardRetryConditions.is_retryable:
  - 466
  - 468
  botocore.retries.standard.ThrottledRetryableChecker.__init__:
  - 363
  botocore.retries.standard.ThrottledRetryableChecker.is_retryable:
  - 370
  botocore.retries.standard.ThrottlingErrorDetector.__init__:
  - 425
  - 426
  botocore.retries.standard.ThrottlingErrorDetector.is_throttling_error:
  - 432
  - 434
  - 431
  botocore.retries.standard.TransientRetryableChecker.__init__:
  - 320
  - 316
  - 318
  botocore.retries.standard.TransientRetryableChecker.is_retryable:
  - 327
  - 329
  - 330
  - 335
  - 336
  botocore.retries.standard.register_retry_handler:
  - 44
  - 47
  - 48
  - 52
  - 53
  - 54
  - 55
  - 57
  - 62
  botocore.retries.throttling:
  - 3
  botocore.retries.throttling.CubicCalculator.__init__:
  - 20
  botocore.retries.throttling.CubicCalculator.error_received:
  - 39
  botocore.retries.throttling.CubicCalculator.get_params_snapshot:
  - 44
  - 53
  botocore.retryhandler:
  - 28
  botocore.retryhandler.BaseChecker:
  - 215
  botocore.retryhandler.BaseChecker.__call__:
  - 244
  - 245
  - 246
  - 247
  - 223
  botocore.retryhandler.CRC32Checker._check_response:
  - 386
  - 387
  - 388
  - 391
  - 378
  - 379
  - 380
  botocore.retryhandler.ExceptionRaiser:
  - 402
  botocore.retryhandler.HTTPStatusCodeChecker._check_response:
  - 328
  - 329
  botocore.retryhandler.MaxAttemptsDecorator:
  - 261
  botocore.retryhandler.MaxAttemptsDecorator.__call__:
  - 288
  - 290
  - 294
  - 279
  - 280
  - 281
  - 284
  - 287
  botocore.retryhandler.MaxAttemptsDecorator._should_retry:
  - 320
  - 305
  - 307
  - 311
  botocore.retryhandler.MultiChecker.__call__:
  - 362
  - 363
  - 366
  botocore.retryhandler.RetryHandler:
  - 174
  botocore.retryhandler.RetryHandler.__call__:
  - 192
  - 203
  - 204
  - 205
  - 207
  - 208
  - 209
  - 211
  botocore.retryhandler.ServiceErrorCodeChecker._check_response:
  - 344
  - 345
  - 346
  - 347
  botocore.retryhandler._create_single_checker:
  - 136
  - 137
  - 140
  - 141
  botocore.retryhandler._create_single_response_checker:
  - 145
  - 146
  - 150
  - 151
  - 154
  - 155
  botocore.retryhandler._extract_retryable_exception:
  - 168
  - 169
  - 164
  - 166
  botocore.retryhandler.create_checker_from_retry_config:
  - 128
  - 131
  - 105
  - 106
  - 108
  - 110
  - 111
  - 112
  - 113
  - 114
  - 116
  - 117
  - 118
  - 121
  - 122
  - 123
  - 125
  - 127
  botocore.retryhandler.create_exponential_delay_function:
  - 73
  - 67
  botocore.retryhandler.create_retry_action_from_config:
  - 94
  - 95
  botocore.retryhandler.create_retry_handler:
  - 82
  - 85
  - 79
  botocore.retryhandler.delay_exponential:
  - 56
  - 57
  - 58
  - 44
  botocore.serialize:
  - 67
  - 13
  botocore.serialize.BaseRestSerializer:
  - 761
  botocore.serialize.BaseRestSerializer._convert_header_value:
  - 993
  - 994
  - 995
  - 996
  - 1025
  - 999
  - 1000
  - 1002
  - 1003
  - 1005
  - 1011
  - 1015
  - 1016
  - 1019
  - 1020
  - 1021
  - 1022
  - 1023
  botocore.serialize.BaseRestSerializer._do_serialize_header_map:
  - 985
  botocore.serialize.BaseRestSerializer._encode_payload:
  - 915
  - 916
  botocore.serialize.BaseRestSerializer._escape_header_list_string:
  - 1030
  - 1031
  botocore.serialize.BaseRestSerializer._get_uri_and_query_string_value:
  - 971
  - 972
  - 973
  - 974
  - 977
  - 980
  - 981
  botocore.serialize.BaseRestSerializer._has_streaming_payload:
  - 908
  botocore.serialize.BaseRestSerializer._partition_parameters:
  - 928
  - 929
  - 930
  - 964
  - 934
  - 935
  - 936
  - 937
  - 939
  - 944
  - 948
  - 950
  - 953
  - 956
  - 927
  botocore.serialize.BaseRestSerializer._render_uri_template:
  - 846
  - 847
  - 848
  - 852
  - 855
  botocore.serialize.BaseRestSerializer._requires_empty_body:
  - 901
  botocore.serialize.BaseRestSerializer._serialize_content_type:
  - 893
  botocore.serialize.BaseRestSerializer._serialize_payload:
  - 865
  - 866
  - 869
  - 870
  - 872
  - 875
  - 876
  - 877
  - 881
  - 882
  - 883
  - 886
  - 887
  botocore.serialize.BaseRestSerializer.serialize_to_request:
  - 834
  - 804
  - 805
  - 806
  - 807
  - 809
  - 810
  - 779
  - 780
  - 813
  - 816
  - 785
  - 786
  - 820
  - 789
  - 821
  - 829
  - 831
  botocore.serialize.BaseRpcV2Serializer:
  - 1037
  botocore.serialize.BaseRpcV2Serializer._serialize_payload:
  - 1069
  botocore.serialize.BaseRpcV2Serializer.serialize_to_request:
  - 1057
  - 1058
  - 1060
  - 1061
  - 1064
  - 1049
  botocore.serialize.CBORSerializer._get_additional_info_and_num_bytes:
  - 725
  - 713
  - 721
  - 717
  botocore.serialize.CBORSerializer._get_bytes_for_special_numbers:
  - 749
  - 752
  - 753
  - 754
  - 755
  - 756
  - 757
  botocore.serialize.CBORSerializer._get_initial_byte:
  - 736
  botocore.serialize.CBORSerializer._is_special_number:
  - 739
  botocore.serialize.CBORSerializer._serialize_data_item:
  - 529
  - 530
  - 535
  botocore.serialize.CBORSerializer._serialize_type_blob:
  - 576
  - 559
  - 560
  - 561
  - 564
  - 565
  - 566
  - 569
  - 572
  - 573
  - 575
  botocore.serialize.CBORSerializer._serialize_type_boolean:
  - 704
  - 705
  botocore.serialize.CBORSerializer._serialize_type_double:
  - 692
  - 693
  - 694
  - 697
  - 700
  botocore.serialize.CBORSerializer._serialize_type_float:
  - 681
  - 682
  - 683
  - 686
  - 689
  botocore.serialize.CBORSerializer._serialize_type_integer:
  - 546
  - 549
  - 550
  - 551
  - 553
  - 538
  botocore.serialize.CBORSerializer._serialize_type_list:
  - 595
  - 596
  - 599
  - 602
  - 603
  - 605
  - 606
  - 607
  botocore.serialize.CBORSerializer._serialize_type_long:
  - 556
  botocore.serialize.CBORSerializer._serialize_type_map:
  - 610
  - 611
  - 614
  - 617
  - 618
  - 620
  - 621
  - 622
  - 623
  botocore.serialize.CBORSerializer._serialize_type_string:
  - 579
  - 580
  - 581
  - 584
  - 587
  - 588
  - 590
  - 591
  botocore.serialize.CBORSerializer._serialize_type_structure:
  - 640
  - 641
  - 643
  - 644
  - 648
  - 650
  - 652
  - 653
  - 654
  - 626
  - 628
  - 631
  - 633
  - 634
  - 637
  botocore.serialize.CBORSerializer._serialize_type_timestamp:
  - 673
  - 676
  - 677
  - 659
  - 661
  - 662
  - 663
  - 667
  - 668
  - 671
  botocore.serialize.EC2Serializer:
  - 390
  botocore.serialize.EC2Serializer._get_serialized_name:
  - 408
  - 402
  - 404
  botocore.serialize.EC2Serializer._serialize_type_list:
  - 416
  - 413
  botocore.serialize.JSONSerializer._serialize:
  - 456
  - 451
  botocore.serialize.JSONSerializer._serialize_type_blob:
  - 507
  botocore.serialize.JSONSerializer._serialize_type_double:
  - 515
  botocore.serialize.JSONSerializer._serialize_type_float:
  - 512
  - 510
  - 511
  botocore.serialize.JSONSerializer._serialize_type_list:
  - 496
  - 489
  - 495
  botocore.serialize.JSONSerializer._serialize_type_map:
  - 481
  - 483
  - 484
  botocore.serialize.JSONSerializer._serialize_type_structure:
  - 459
  - 462
  - 468
  - 472
  - 474
  - 476
  botocore.serialize.JSONSerializer._serialize_type_timestamp:
  - 502
  - 503
  botocore.serialize.JSONSerializer.serialize_to_request:
  - 423
  - 428
  - 429
  - 436
  - 438
  - 440
  - 441
  - 442
  - 444
  - 445
  botocore.serialize.QuerySerializer._serialize:
  - 313
  - 318
  botocore.serialize.QuerySerializer._serialize_type_blob:
  - 366
  botocore.serialize.QuerySerializer._serialize_type_boolean:
  - 374
  botocore.serialize.QuerySerializer._serialize_type_double:
  - 386
  botocore.serialize.QuerySerializer._serialize_type_float:
  - 383
  botocore.serialize.QuerySerializer._serialize_type_list:
  - 330
  - 334
  - 336
  - 337
  - 339
  - 341
  - 343
  - 346
  botocore.serialize.QuerySerializer._serialize_type_map:
  - 356
  - 357
  - 358
  - 359
  - 360
  - 361
  - 362
  - 349
  botocore.serialize.QuerySerializer._serialize_type_structure:
  - 322
  - 324
  - 325
  - 327
  botocore.serialize.QuerySerializer._serialize_type_timestamp:
  - 369
  - 370
  botocore.serialize.QuerySerializer.serialize_to_request:
  - 292
  - 295
  - 296
  - 299
  - 300
  - 283
  - 284
  botocore.serialize.RestJSONSerializer._requires_empty_body:
  - 1088
  - 1089
  - 1084
  botocore.serialize.RestJSONSerializer._serialize_body_params:
  - 1106
  - 1107
  - 1108
  botocore.serialize.RestJSONSerializer._serialize_content_type:
  - 1094
  - 1095
  - 1096
  - 1101
  - 1102
  botocore.serialize.RestXMLSerializer._add_xml_namespace:
  - 1232
  - 1228
  - 1237
  - 1231
  botocore.serialize.RestXMLSerializer._default_serialize:
  - 1224
  - 1225
  - 1223
  botocore.serialize.RestXMLSerializer._serialize:
  - 1122
  - 1127
  botocore.serialize.RestXMLSerializer._serialize_body_params:
  - 1116
  - 1117
  - 1118
  - 1119
  botocore.serialize.RestXMLSerializer._serialize_type_blob:
  - 1201
  - 1202
  - 1203
  botocore.serialize.RestXMLSerializer._serialize_type_boolean:
  - 1192
  - 1193
  - 1198
  botocore.serialize.RestXMLSerializer._serialize_type_double:
  - 1220
  botocore.serialize.RestXMLSerializer._serialize_type_float:
  - 1216
  - 1217
  - 1215
  botocore.serialize.RestXMLSerializer._serialize_type_list:
  - 1152
  - 1156
  - 1157
  - 1158
  - 1159
  - 1160
  botocore.serialize.RestXMLSerializer._serialize_type_map:
  - 1185
  - 1186
  - 1171
  - 1172
  - 1173
  - 1175
  - 1177
  - 1178
  - 1179
  - 1181
  - 1182
  botocore.serialize.RestXMLSerializer._serialize_type_structure:
  - 1130
  - 1132
  - 1133
  - 1135
  - 1140
  - 1143
  - 1148
  botocore.serialize.RestXMLSerializer._serialize_type_timestamp:
  - 1206
  - 1207
  - 1208
  - 1209
  - 1212
  botocore.serialize.RpcV2CBORSerializer._serialize_body_params:
  - 1249
  - 1250
  - 1251
  botocore.serialize.RpcV2CBORSerializer._serialize_headers:
  - 1256
  - 1266
  - 1260
  - 1263
  botocore.serialize.RpcV2CBORSerializer.serialize_to_request:
  - 1245
  - 1246
  botocore.serialize.Serializer.__init__:
  - 113
  botocore.serialize.Serializer._convert_timestamp_to_str:
  - 206
  - 208
  - 209
  - 210
  - 211
  botocore.serialize.Serializer._expand_host_prefix:
  - 259
  - 229
  - 236
  - 241
  - 242
  - 246
  - 248
  - 249
  - 251
  botocore.serialize.Serializer._get_base64:
  - 224
  - 225
  - 223
  botocore.serialize.Serializer._get_serialized_name:
  - 217
  botocore.serialize.Serializer._handle_float:
  - 265
  - 267
  - 269
  botocore.serialize.Serializer._handle_query_compatible_trait:
  - 274
  botocore.serialize.Serializer._is_shape_flattened:
  - 262
  botocore.serialize.Serializer._timestamp_iso8601:
  - 173
  - 175
  - 178
  - 182
  - 186
  botocore.serialize.Serializer._timestamp_rfc822:
  - 201
  - 202
  - 203
  - 199
  botocore.serialize.Serializer._timestamp_unixtimestamp:
  - 192
  - 196
  - 189
  - 191
  botocore.serialize.Serializer.serialize_to_request:
  - 120
  botocore.serialize.create_serializer:
  - 97
  - 98
  - 99
  - 82
  - 94
  botocore.session:
  - 80
  - 14
  botocore.session.ComponentLocator:
  - 1192
  botocore.session.ComponentLocator.get_component:
  - 1201
  - 1199
  botocore.session.Session:
  - 846
  - 84
  - 94
  botocore.session.Session.__init__:
  - 160
  - 161
  - 130
  - 131
  - 134
  - 135
  - 136
  - 106
  - 151
  - 155
  - 156
  - 157
  - 158
  - 159
  botocore.session.Session._add_configured_endpoint_provider:
  - 1090
  - 1092
  - 1095
  botocore.session.Session._build_profile_map:
  - 309
  botocore.session.Session._create_credential_resolver:
  - 194
  botocore.session.Session._create_csm_monitor:
  - 289
  - 279
  - 280
  - 281
  - 282
  - 283
  - 284
  - 285
  - 286
  botocore.session.Session._create_token_resolver:
  - 186
  botocore.session.Session._get_config_variable_with_custom_methods:
  - 353
  - 354
  - 336
  - 337
  - 338
  - 344
  - 346
  - 348
  - 350
  botocore.session.Session._get_crt_version:
  - 298
  botocore.session.Session._get_ignored_credentials:
  - 1166
  - 1167
  - 1168
  - 1169
  - 1170
  botocore.session.Session._get_internal_component:
  - 832
  botocore.session.Session._missing_cred_vars:
  - 1101
  - 1103
  botocore.session.Session._register_builtin_handlers:
  - 256
  - 257
  - 258
  - 259
  - 250
  - 251
  - 253
  botocore.session.Session._register_client_plugins:
  - 1187
  - 1188
  - 1173
  - 1174
  - 1178
  - 1180
  - 1183
  botocore.session.Session._register_components:
  - 164
  - 165
  - 166
  - 167
  - 168
  - 169
  - 170
  - 171
  - 172
  - 173
  - 174
  - 175
  botocore.session.Session._register_config_store:
  - 265
  - 262
  - 263
  botocore.session.Session._register_credential_provider:
  - 189
  botocore.session.Session._register_data_loader:
  - 201
  - 199
  botocore.session.Session._register_data_loader.<lambda1>:
  - 201
  botocore.session.Session._register_default_config_resolver:
  - 221
  botocore.session.Session._register_default_config_resolver.create_default_config_resolver:
  - 217
  - 218
  - 219
  botocore.session.Session._register_endpoint_resolver:
  - 211
  botocore.session.Session._register_endpoint_resolver.create_default_resolver:
  - 208
  - 209
  - 206
  - 207
  botocore.session.Session._register_event_emitter:
  - 178
  botocore.session.Session._register_exceptions_factory:
  - 245
  - 246
  botocore.session.Session._register_internal_component:
  - 838
  botocore.session.Session._register_monitor:
  - 270
  botocore.session.Session._register_response_parser_factory:
  - 240
  - 241
  botocore.session.Session._register_smart_defaults_factory:
  - 235
  botocore.session.Session._register_smart_defaults_factory.create_smart_defaults_factory:
  - 227
  - 230
  - 231
  botocore.session.Session._register_token_provider:
  - 181
  botocore.session.Session._register_user_agent_creator:
  - 275
  - 276
  botocore.session.Session._resolve_defaults_mode:
  - 1072
  - 1074
  - 1077
  - 1080
  - 1081
  - 1082
  botocore.session.Session._resolve_region_name:
  - 1056
  - 1058
  - 1052
  - 1053
  botocore.session.Session.available_profiles:
  - 303
  botocore.session.Session.create_client:
  - 1031
  - 1038
  - 1043
  - 1044
  - 1045
  - 1046
  - 934
  - 937
  - 938
  - 941
  - 944
  - 948
  - 949
  - 951
  - 952
  - 956
  - 957
  - 958
  - 959
  - 961
  - 964
  - 970
  - 978
  - 981
  - 986
  - 987
  - 988
  - 861
  - 989
  - 990
  - 991
  - 992
  - 993
  - 997
  - 1002
  - 1003
  - 1004
  - 1007
  - 1011
  - 1016
  - 1018
  - 1021
  botocore.session.Session.emit:
  - 808
  botocore.session.Session.emit_first_non_none_response:
  - 811
  - 812
  botocore.session.Session.full_config:
  - 450
  - 451
  - 454
  - 456
  - 459
  - 430
  - 438
  - 440
  - 441
  botocore.session.Session.get_auth_token:
  - 526
  - 533
  - 535
  - 536
  - 537
  - 538
  - 541
  - 542
  botocore.session.Session.get_available_partitions:
  - 1113
  - 1114
  - 1108
  botocore.session.Session.get_available_regions:
  - 1153
  - 1154
  - 1157
  - 1132
  - 1150
  botocore.session.Session.get_available_services:
  - 640
  - 643
  botocore.session.Session.get_component:
  - 816
  - 825
  - 818
  - 819
  botocore.session.Session.get_config_variable:
  - 321
  - 322
  - 325
  botocore.session.Session.get_credentials:
  - 520
  - 519
  - 511
  botocore.session.Session.get_data:
  - 589
  - 583
  botocore.session.Session.get_default_client_config:
  - 465
  botocore.session.Session.get_paginator_model:
  - 616
  - 617
  - 620
  botocore.session.Session.get_partition_for_region:
  - 1117
  - 1126
  - 1127
  botocore.session.Session.get_scoped_config:
  - 418
  - 419
  - 420
  - 392
  - 413
  - 414
  botocore.session.Session.get_service_data:
  - 627
  - 631
  - 630
  - 623
  botocore.session.Session.get_service_model:
  - 592
  - 605
  - 606
  botocore.session.Session.get_waiter_model:
  - 609
  - 610
  - 613
  botocore.session.Session.instance_variables:
  - 389
  botocore.session.Session.lazy_register_component:
  - 844
  botocore.session.Session.profile:
  - 315
  - 316
  botocore.session.Session.register:
  - 726
  - 758
  botocore.session.Session.register_component:
  - 841
  botocore.session.Session.set_config_variable:
  - 381
  - 358
  botocore.session.Session.set_credentials:
  - 506
  - 487
  botocore.session.Session.set_debug_logger:
  - 648
  - 652
  botocore.session.Session.set_default_client_config:
  - 475
  botocore.session.Session.set_file_logger:
  - 707
  - 708
  - 711
  - 712
  - 715
  - 718
  - 721
  - 696
  botocore.session.Session.set_stream_logger:
  - 678
  - 679
  - 681
  - 682
  - 685
  - 687
  - 657
  - 690
  - 693
  botocore.session.Session.unregister:
  - 800
  - 772
  botocore.session.Session.user_agent:
  - 576
  - 577
  - 546
  - 570
  - 571
  - 573
  - 574
  - 575
  botocore.session.SessionVarDict.__init__:
  - 1237
  botocore.session.SessionVarDict.__iter__:
  - 1250
  botocore.session.SessionVarDict.__len__:
  - 1253
  botocore.session.SessionVarDict.__setitem__:
  - 1244
  botocore.session.SessionVarDict._update_config_store_from_session_vars:
  - 1265
  - 1267
  - 1268
  - 1270
  botocore.session.SubsetChainConfigFactory:
  - 1281
  botocore.session.SubsetChainConfigFactory.__init__:
  - 1291
  botocore.session.SubsetChainConfigFactory.create_config_chain:
  - 1313
  - 1315
  - 1317
  - 1302
  - 1311
  botocore.session.get_session:
  - 1330
  - 1327
  botocore.signers.CloudFrontSigner:
  - 369
  botocore.signers.CloudFrontSigner.__init__:
  - 393
  botocore.signers.CloudFrontSigner._build_url:
  - 447
  botocore.signers.CloudFrontSigner._url_b64encode:
  - 495
  botocore.signers.CloudFrontSigner.build_policy:
  - 480
  - 481
  - 452
  - 484
  - 485
  - 488
  - 489
  - 478
  - 479
  botocore.signers.CloudFrontSigner.generate_presigned_url:
  - 424
  - 427
  - 429
  - 430
  - 431
  - 432
  - 433
  - 435
  - 436
  - 437
  - 408
  - 443
  botocore.signers.RequestSigner:
  - 37
  botocore.signers.RequestSigner.__init__:
  - 89
  botocore.signers.RequestSigner._choose_signer:
  - 224
  - 225
  - 226
  - 227
  - 228
  - 230
  - 234
  - 235
  - 207
  - 242
  - 246
  - 248
  - 220
  botocore.signers.RequestSigner.generate_presigned_url:
  - 354
  - 355
  - 364
  - 333
  botocore.signers.RequestSigner.get_auth_instance:
  - 289
  - 290
  - 312
  - 293
  - 262
  - 296
  - 300
  - 303
  - 315
  - 311
  - 280
  - 314
  - 283
  - 284
  - 319
  botocore.signers.RequestSigner.handler:
  - 108
  botocore.signers.RequestSigner.sign:
  - 193
  - 167
  - 200
  - 173
  - 175
  - 176
  - 146
  - 178
  - 180
  - 149
  - 184
  - 119
  - 152
  - 185
  - 157
  - 158
  - 191
  botocore.signers.S3PostPresigner.generate_presigned_post:
  - 737
  - 674
  - 738
  - 741
  - 745
  - 721
  - 724
  - 731
  - 732
  - 733
  botocore.signers._dsql_generate_db_auth_token:
  - 609
  - 610
  - 617
  - 590
  - 595
  - 572
  botocore.signers._should_use_global_endpoint:
  - 994
  - 983
  - 986
  - 987
  - 989
  - 990
  botocore.signers.dsql_generate_db_connect_admin_auth_token:
  - 657
  - 644
  botocore.signers.dsql_generate_db_connect_auth_token:
  - 636
  - 623
  botocore.signers.generate_db_auth_token:
  - 516
  - 558
  - 559
  - 566
  - 534
  botocore.signers.generate_presigned_post:
  - 930
  - 962
  - 934
  - 935
  - 966
  - 967
  - 842
  - 969
  - 940
  - 974
  - 945
  - 917
  - 952
  - 920
  - 922
  - 927
  botocore.signers.generate_presigned_url:
  - 802
  - 828
  - 807
  - 780
  - 814
  - 786
  - 759
  - 824
  - 796
  - 797
  botocore.stub:
  - 43
  botocore.stub.Stubber:
  - 47
  botocore.stub.Stubber.__enter__:
  - 179
  botocore.stub.Stubber.__exit__:
  - 183
  botocore.stub.Stubber.__init__:
  - 176
  - 169
  botocore.stub.Stubber._add_response:
  - 258
  - 260
  - 261
  - 269
  - 251
  botocore.stub.Stubber._assert_expected_call_order:
  - 362
  - 373
  botocore.stub.Stubber._assert_expected_params:
  - 393
  - 395
  - 397
  - 401
  - 402
  - 412
  botocore.stub.Stubber._get_response_handler:
  - 388
  - 390
  botocore.stub.Stubber._set_account_id_for_endpoint_resolution:
  - 384
  botocore.stub.Stubber._should_not_stub:
  - 425
  botocore.stub.Stubber._validate_operation_response:
  - 440
  - 436
  - 437
  - 430
  botocore.stub.Stubber._validate_response:
  - 443
  - 444
  - 445
  botocore.stub.Stubber.activate:
  - 194
  - 186
  - 189
  - 199
  botocore.stub.Stubber.add_client_error:
  - 321
  - 331
  - 332
  - 334
  - 335
  - 337
  - 339
  - 340
  - 341
  - 343
  - 282
  - 351
  botocore.stub.Stubber.add_response:
  - 248
  - 226
  botocore.stub.Stubber.assert_no_pending_responses:
  - 354
  - 357
  - 358
  botocore.stub.Stubber.deactivate:
  - 209
  - 219
  - 214
  - 206
  botocore.stub._ANY:
  - 28
  botocore.tokens:
  - 39
  botocore.tokens.DeferredRefreshableToken.__init__:
  - 84
  botocore.tokens.DeferredRefreshableToken._is_expired:
  - 139
  - 135
  botocore.tokens.DeferredRefreshableToken._protected_refresh:
  - 109
  - 110
  - 114
  - 115
  - 116
  - 118
  - 123
  - 127
  botocore.tokens.DeferredRefreshableToken._refresh:
  - 100
  - 102
  - 104
  - 94
  - 95
  botocore.tokens.DeferredRefreshableToken._should_refresh:
  - 160
  - 143
  - 148
  - 152
  - 153
  - 156
  - 158
  botocore.tokens.DeferredRefreshableToken.get_frozen_token:
  - 89
  botocore.tokens.SSOTokenProvider:
  - 184
  - 183
  botocore.tokens.SSOTokenProvider.__init__:
  - 204
  - 197
  - 198
  - 207
  botocore.tokens.SSOTokenProvider._attempt_create_token:
  - 263
  - 269
  - 274
  - 280
  - 282
  botocore.tokens.SSOTokenProvider._client:
  - 256
  - 260
  botocore.tokens.SSOTokenProvider._load_sso_config:
  - 232
  - 233
  - 234
  - 236
  - 213
  - 214
  - 215
  - 217
  - 221
  - 223
  botocore.tokens.SSOTokenProvider._refresh_access_token:
  - 293
  - 295
  - 298
  - 299
  - 300
  - 304
  - 306
  botocore.tokens.SSOTokenProvider._refresher:
  - 320
  - 323
  - 327
  - 312
  - 313
  - 314
  - 315
  - 317
  - 318
  - 319
  botocore.tokens.SSOTokenProvider._sso_config:
  - 252
  botocore.tokens.SSOTokenProvider.load_token:
  - 332
  - 335
  botocore.tokens.ScopedEnvTokenProvider:
  - 341
  botocore.tokens.ScopedEnvTokenProvider.__init__:
  - 350
  botocore.tokens.ScopedEnvTokenProvider.load_token:
  - 355
  - 356
  - 359
  - 361
  - 362
  - 363
  botocore.tokens.TokenProviderChain.__init__:
  - 168
  botocore.tokens.TokenProviderChain.load_token:
  - 173
  - 174
  - 175
  botocore.tokens._serialize_utc_timestamp:
  - 56
  - 55
  botocore.tokens._sso_json_dumps:
  - 61
  botocore.tokens._utc_now:
  - 43
  botocore.tokens.create_token_resolver:
  - 48
  - 49
  - 51
  botocore.translate._merge_client_retry_config:
  - 43
  - 44
  botocore.translate.build_retry_config:
  - 34
  - 36
  - 37
  - 38
  - 22
  - 23
  botocore.translate.resolve_references:
  - 72
  - 73
  - 74
  - 76
  - 78
  - 62
  botocore.unregister_initializer:
  - 194
  - 204
  botocore.useragent:
  - 37
  - 13
  botocore.useragent.RawStringUserAgentComponent:
  - 242
  botocore.useragent.UserAgentComponent:
  - 176
  botocore.useragent.UserAgentComponent._truncate_string:
  - 224
  - 225
  - 226
  - 228
  - 229
  - 218
  - 223
  botocore.useragent.UserAgentComponent.to_string:
  - 195
  - 196
  - 199
  - 202
  - 205
  - 209
  - 210
  botocore.useragent.UserAgentComponentSizeConfig:
  - 157
  botocore.useragent.UserAgentComponentSizeConfig.__init__:
  - 165
  botocore.useragent.UserAgentComponentSizeConfig._validate_input:
  - 168
  botocore.useragent.UserAgentString:
  - 268
  botocore.useragent.UserAgentString.__init__:
  - 306
  botocore.useragent.UserAgentString._build_app_id:
  - 616
  - 602
  - 612
  - 613
  botocore.useragent.UserAgentString._build_architecture_metadata:
  - 528
  - 527
  - 525
  - 519
  botocore.useragent.UserAgentString._build_config_metadata:
  - 586
  - 593
  - 595
  - 596
  - 597
  - 598
  botocore.useragent.UserAgentString._build_execution_env_metadata:
  - 560
  - 561
  - 554
  botocore.useragent.UserAgentString._build_extra:
  - 640
  - 621
  - 634
  - 635
  - 636
  - 638
  - 639
  botocore.useragent.UserAgentString._build_feature_metadata:
  - 576
  - 578
  - 580
  - 581
  - 566
  - 572
  - 573
  - 574
  - 575
  botocore.useragent.UserAgentString._build_language_metadata:
  - 545
  - 547
  - 548
  - 549
  - 534
  botocore.useragent.UserAgentString._build_legacy_ua_string:
  - 648
  - 649
  - 650
  - 651
  - 652
  botocore.useragent.UserAgentString._build_os_metadata:
  - 512
  - 481
  - 513
  - 495
  - 496
  - 498
  - 499
  - 501
  - 506
  - 508
  botocore.useragent.UserAgentString._build_sdk_metadata:
  - 449
  - 457
  - 469
  - 470
  - 440
  - 473
  - 474
  - 475
  botocore.useragent.UserAgentString.from_environment:
  - 352
  - 353
  - 354
  - 355
  - 356
  - 357
  - 358
  - 350
  - 351
  botocore.useragent.UserAgentString.rebuild_and_replace_user_agent_handler:
  - 657
  - 658
  - 659
  botocore.useragent.UserAgentString.set_client_features:
  - 386
  botocore.useragent.UserAgentString.set_session_config:
  - 368
  botocore.useragent.UserAgentString.to_string:
  - 417
  - 418
  - 421
  - 422
  - 423
  - 424
  - 425
  - 426
  - 427
  - 428
  - 429
  - 430
  - 433
  - 435
  - 436
  - 407
  - 411
  - 412
  botocore.useragent.UserAgentString.with_client_config:
  - 402
  - 396
  botocore.useragent._get_crt_version:
  - 663
  botocore.useragent.register_feature_id:
  - 107
  - 113
  - 114
  - 121
  - 122
  botocore.useragent.register_feature_ids:
  - 132
  - 133
  - 126
  botocore.useragent.sanitize_user_agent_string_component:
  - 137
  - 148
  botocore.utils:
  - 98
  - 107
  - 188
  botocore.utils.ArgumentGenerator:
  - 1188
  botocore.utils.ArgumentGenerator._generate_skeleton:
  - 1249
  - 1251
  - 1252
  - 1254
  - 1231
  - 1233
  - 1234
  - 1235
  - 1236
  - 1237
  - 1238
  - 1239
  - 1240
  - 1242
  - 1243
  - 1245
  - 1247
  botocore.utils.ArgumentGenerator._generate_type_list:
  - 1273
  - 1270
  botocore.utils.ArgumentGenerator._generate_type_map:
  - 1280
  - 1282
  botocore.utils.ArgumentGenerator._generate_type_structure:
  - 1257
  - 1259
  - 1260
  - 1261
  botocore.utils.ArgumentGenerator.generate_skeleton:
  - 1218
  - 1228
  botocore.utils.ArnParser.is_arn:
  - 2144
  - 2146
  - 2148
  botocore.utils.ArnParser.parse_arn:
  - 2128
  - 2129
  botocore.utils.CachedProperty:
  - 1168
  botocore.utils.CachedProperty.__get__:
  - 1179
  - 1182
  botocore.utils.ContainerMetadataFetcher.__init__:
  - 3083
  - 3084
  botocore.utils.ContainerMetadataFetcher._check_if_whitelisted_host:
  - 3124
  botocore.utils.ContainerMetadataFetcher._get_response:
  - 3168
  - 3176
  - 3179
  - 3165
  - 3166
  - 3167
  botocore.utils.ContainerMetadataFetcher._is_loopback_address:
  - 3118
  botocore.utils.ContainerMetadataFetcher._retrieve_credentials:
  - 3142
  - 3143
  - 3147
  - 3151
  - 3157
  - 3159
  botocore.utils.ContainerMetadataFetcher._validate_allowed_url:
  - 3105
  - 3107
  - 3109
  - 3110
  - 3103
  botocore.utils.ContainerMetadataFetcher.retrieve_full_uri:
  - 3099
  - 3091
  - 3100
  botocore.utils.ContainerMetadataFetcher.retrieve_uri:
  - 3137
  - 3129
  - 3138
  botocore.utils.EventbridgeSignerSetter._get_global_endpoint:
  - 3488
  - 3489
  - 3491
  - 3494
  botocore.utils.EventbridgeSignerSetter.check_for_global_endpoint:
  - 3458
  - 3460
  - 3461
  - 3466
  - 3469
  - 3471
  - 3472
  - 3442
  - 3443
  - 3476
  - 3446
  - 3451
  botocore.utils.EventbridgeSignerSetter.register:
  - 3425
  - 3429
  botocore.utils.EventbridgeSignerSetter.set_endpoint_url:
  - 3434
  - 3436
  botocore.utils.FileWebIdentityTokenLoader.__call__:
  - 3378
  - 3379
  botocore.utils.IMDSFetcher.__init__:
  - 416
  - 417
  - 419
  - 421
  - 423
  - 425
  - 411
  - 413
  botocore.utils.IMDSFetcher._add_user_agent:
  - 549
  botocore.utils.IMDSFetcher._assert_enabled:
  - 553
  - 554
  botocore.utils.IMDSFetcher._assert_v1_enabled:
  - 558
  botocore.utils.IMDSFetcher._construct_url:
  - 464
  botocore.utils.IMDSFetcher._default_retry:
  - 564
  botocore.utils.IMDSFetcher._fetch_metadata_token:
  - 480
  - 481
  - 483
  - 485
  - 490
  - 498
  - 469
  - 470
  - 474
  - 475
  - 478
  botocore.utils.IMDSFetcher._get_request:
  - 520
  - 521
  - 522
  - 523
  - 525
  - 527
  - 529
  - 530
  - 532
  - 535
  - 536
  - 505
  - 539
  botocore.utils.IMDSFetcher._is_empty:
  - 573
  - 574
  botocore.utils.IMDSFetcher._is_non_ok_response:
  - 568
  - 567
  botocore.utils.IMDSFetcher._log_imds_response:
  - 584
  - 586
  - 587
  botocore.utils.IMDSFetcher._select_base_url:
  - 449
  - 451
  - 456
  - 457
  - 432
  - 436
  - 438
  - 440
  - 441
  - 447
  botocore.utils.IMDSRegionProvider.__init__:
  - 721
  - 737
  botocore.utils.IMDSRegionProvider._create_fetcher:
  - 768
  - 771
  - 775
  - 779
  - 758
  - 761
  - 765
  botocore.utils.IMDSRegionProvider._get_fetcher:
  - 753
  - 754
  botocore.utils.IMDSRegionProvider._get_instance_metadata_region:
  - 748
  - 749
  botocore.utils.IMDSRegionProvider.provide:
  - 744
  - 743
  botocore.utils.IdentityCache:
  - 1612
  botocore.utils.IdentityCache.build_refresh_callback:
  - 1637
  botocore.utils.IdentityCache.get_credentials:
  - 1625
  - 1626
  - 1627
  botocore.utils.InstanceMetadataFetcher._contains_all_credential_fields:
  - 674
  - 675
  - 676
  botocore.utils.InstanceMetadataFetcher._evaluate_expiration:
  - 706
  - 714
  - 684
  - 685
  - 688
  - 691
  - 694
  - 696
  - 697
  - 701
  - 703
  botocore.utils.InstanceMetadataFetcher._get_credentials:
  - 648
  - 653
  botocore.utils.InstanceMetadataFetcher._get_iam_role:
  - 641
  botocore.utils.InstanceMetadataFetcher._is_invalid_json:
  - 657
  - 660
  botocore.utils.InstanceMetadataFetcher._needs_retry_for_credentials:
  - 668
  - 669
  - 670
  botocore.utils.InstanceMetadataFetcher._needs_retry_for_role_name:
  - 664
  botocore.utils.InstanceMetadataFetcher.retrieve_iam_role_credentials:
  - 612
  - 623
  - 624
  - 631
  - 601
  - 602
  - 603
  - 604
  - 637
  botocore.utils.InstanceMetadataRegionFetcher._get_region:
  - 812
  - 813
  botocore.utils.InstanceMetadataRegionFetcher.retrieve_region:
  - 801
  - 804
  - 789
  botocore.utils.JSONFileCache:
  - 3541
  - 3534
  botocore.utils.JSONFileCache.__contains__:
  - 3553
  - 3554
  botocore.utils.JSONFileCache.__delitem__:
  - 3568
  - 3569
  - 3566
  botocore.utils.JSONFileCache.__getitem__:
  - 3560
  - 3561
  - 3557
  - 3558
  botocore.utils.JSONFileCache.__init__:
  - 3545
  botocore.utils.JSONFileCache.__setitem__:
  - 3584
  - 3587
  - 3588
  - 3589
  - 3590
  - 3592
  - 3574
  - 3576
  - 3581
  - 3582
  botocore.utils.JSONFileCache._convert_cache_key:
  - 3595
  botocore.utils.JSONFileCache._default_dumps:
  - 3550
  botocore.utils.JSONFileCache._serialize_if_needed:
  - 3600
  - 3601
  - 3602
  - 3599
  botocore.utils.LoginTokenLoader:
  - 3715
  botocore.utils.LoginTokenLoader.__init__:
  - 3718
  botocore.utils.LoginTokenLoader.load_token:
  - 3728
  - 3727
  botocore.utils.LoginTokenLoader.save_token:
  - 3723
  botocore.utils.S3ArnParamHandler:
  - 2155
  - 2158
  botocore.utils.S3ArnParamHandler.__init__:
  - 2166
  - 2167
  botocore.utils.S3ArnParamHandler._add_resource_type_and_name:
  - 2195
  - 2196
  - 2197
  - 2198
  botocore.utils.S3ArnParamHandler._get_arn_details_from_bucket_param:
  - 2184
  - 2187
  - 2188
  botocore.utils.S3ArnParamHandler._store_outpost:
  - 2227
  - 2230
  - 2221
  - 2222
  botocore.utils.S3ArnParamHandler.handle_arn:
  - 2176
  - 2178
  - 2179
  - 2180
  - 2181
  - 2173
  - 2175
  botocore.utils.S3ArnParamHandler.register:
  - 2170
  botocore.utils.S3ControlArnParamHandler:
  - 2865
  - 2861
  botocore.utils.S3ControlArnParamHandler.__init__:
  - 2869
  - 2870
  - 2871
  botocore.utils.S3ControlArnParamHandler._get_arn_details_from_param:
  - 2899
  - 2901
  - 2895
  botocore.utils.S3ControlArnParamHandler._handle_bucket_param:
  - 2961
  - 2962
  - 2964
  - 2965
  botocore.utils.S3ControlArnParamHandler._handle_name_param:
  - 2929
  - 2931
  - 2932
  - 2934
  - 2935
  botocore.utils.S3ControlArnParamHandler._handle_outpost_id_param:
  - 2923
  botocore.utils.S3ControlArnParamHandler._is_outpost_accesspoint:
  - 2944
  - 2947
  botocore.utils.S3ControlArnParamHandler._is_outpost_bucket:
  - 2976
  - 2979
  botocore.utils.S3ControlArnParamHandler._override_account_id_param:
  - 2912
  - 2911
  botocore.utils.S3ControlArnParamHandler._split_resource:
  - 2907
  botocore.utils.S3ControlArnParamHandler._store_outpost_accesspoint:
  - 2953
  botocore.utils.S3ControlArnParamHandler._store_outpost_bucket:
  - 2985
  botocore.utils.S3ControlArnParamHandler.handle_arn:
  - 2889
  - 2891
  - 2892
  - 2885
  botocore.utils.S3ControlArnParamHandler.register:
  - 2879
  botocore.utils.S3ControlArnParamHandlerv2:
  - 2994
  botocore.utils.S3ControlArnParamHandlerv2.__init__:
  - 3003
  - 3004
  botocore.utils.S3ControlArnParamHandlerv2._handle_bucket_param:
  - 3040
  - 3034
  - 3035
  - 3037
  - 3038
  - 3039
  botocore.utils.S3ControlArnParamHandlerv2._handle_name_param:
  - 3014
  - 3016
  - 3017
  - 3019
  - 3020
  - 3021
  - 3022
  botocore.utils.S3ControlArnParamHandlerv2._raise_for_accelerate_endpoint:
  - 3064
  botocore.utils.S3ControlArnParamHandlerv2._raise_for_fips_pseudo_region:
  - 3056
  botocore.utils.S3ControlArnParamHandlerv2._store_outpost_accesspoint:
  - 3031
  botocore.utils.S3ControlArnParamHandlerv2._store_outpost_bucket:
  - 3051
  botocore.utils.S3ControlArnParamHandlerv2.register:
  - 3007
  botocore.utils.S3ControlEndpointSetter:
  - 2649
  botocore.utils.S3ControlEndpointSetter.__init__:
  - 2664
  - 2668
  botocore.utils.S3ControlEndpointSetter._add_dualstack:
  - 2820
  - 2821
  botocore.utils.S3ControlEndpointSetter._add_fips:
  - 2816
  botocore.utils.S3ControlEndpointSetter._add_headers_from_arn_details:
  - 2852
  - 2853
  - 2854
  botocore.utils.S3ControlEndpointSetter._construct_netloc:
  - 2813
  botocore.utils.S3ControlEndpointSetter._construct_outpost_endpoint:
  - 2800
  - 2801
  - 2802
  - 2807
  - 2809
  - 2810
  botocore.utils.S3ControlEndpointSetter._construct_s3_control_endpoint:
  - 2785
  - 2786
  - 2787
  - 2794
  - 2795
  - 2796
  - 2797
  botocore.utils.S3ControlEndpointSetter._get_dns_suffix:
  - 2824
  - 2828
  botocore.utils.S3ControlEndpointSetter._is_valid_host_label:
  - 2777
  botocore.utils.S3ControlEndpointSetter._override_signing_name:
  - 2842
  botocore.utils.S3ControlEndpointSetter._override_signing_region:
  - 2833
  botocore.utils.S3ControlEndpointSetter._resolve_endpoint_from_arn_details:
  - 2748
  - 2751
  botocore.utils.S3ControlEndpointSetter._resolve_netloc_from_arn_details:
  - 2771
  - 2772
  - 2774
  botocore.utils.S3ControlEndpointSetter._resolve_region_from_arn_details:
  - 2738
  - 2734
  botocore.utils.S3ControlEndpointSetter._resolve_signing_name_from_arn_details:
  - 2744
  botocore.utils.S3ControlEndpointSetter._update_request_netloc:
  - 2754
  - 2755
  - 2764
  botocore.utils.S3ControlEndpointSetter._validate_endpoint_from_arn_details_supported:
  - 2721
  - 2722
  - 2694
  - 2699
  - 2701
  - 2709
  - 2717
  botocore.utils.S3ControlEndpointSetter._validate_host_labels:
  - 2780
  - 2781
  botocore.utils.S3ControlEndpointSetter._validate_outpost_redirection_valid:
  - 2725
  botocore.utils.S3ControlEndpointSetter.register:
  - 2672
  botocore.utils.S3ControlEndpointSetter.set_endpoint:
  - 2675
  - 2676
  - 2677
  - 2678
  - 2679
  - 2680
  - 2681
  - 2682
  - 2683
  - 2684
  - 2685
  botocore.utils.S3EndpointSetter.__init__:
  - 2257
  - 2261
  botocore.utils.S3EndpointSetter._addressing_style:
  - 2617
  - 2618
  - 2613
  botocore.utils.S3EndpointSetter._get_accesspoint_netloc:
  - 2496
  - 2498
  - 2499
  - 2500
  - 2501
  - 2502
  - 2503
  - 2505
  - 2507
  - 2508
  - 2509
  - 2512
  - 2514
  - 2517
  - 2518
  - 2519
  - 2520
  - 2523
  botocore.utils.S3EndpointSetter._get_accesspoint_path:
  - 2537
  botocore.utils.S3EndpointSetter._get_dns_suffix:
  - 2552
  - 2548
  botocore.utils.S3EndpointSetter._get_mrap_netloc:
  - 2479
  - 2480
  - 2481
  - 2484
  - 2491
  botocore.utils.S3EndpointSetter._get_netloc:
  - 2473
  - 2470
  - 2471
  botocore.utils.S3EndpointSetter._get_partition_dns_suffix:
  - 2540
  - 2543
  botocore.utils.S3EndpointSetter._inject_fips_if_needed:
  - 2526
  botocore.utils.S3EndpointSetter._override_signing_name:
  - 2566
  botocore.utils.S3EndpointSetter._override_signing_region:
  - 2557
  botocore.utils.S3EndpointSetter._resolve_region_for_accesspoint_endpoint:
  - 2424
  - 2426
  - 2427
  - 2432
  botocore.utils.S3EndpointSetter._resolve_signing_name_for_accesspoint_endpoint:
  - 2449
  botocore.utils.S3EndpointSetter._s3_addressing_handler:
  - 2625
  - 2626
  - 2633
  - 2634
  - 2637
  botocore.utils.S3EndpointSetter._switch_to_accesspoint_endpoint:
  - 2464
  - 2452
  - 2453
  - 2456
  - 2457
  botocore.utils.S3EndpointSetter._use_accelerate_endpoint:
  - 2594
  - 2595
  - 2603
  - 2607
  - 2580
  - 2585
  - 2589
  - 2590
  botocore.utils.S3EndpointSetter._validate_accesspoint_supported:
  - 2369
  - 2403
  - 2377
  - 2385
  - 2386
  - 2395
  - 2396
  botocore.utils.S3EndpointSetter._validate_fips_supported:
  - 2342
  - 2343
  - 2327
  - 2329
  - 2333
  botocore.utils.S3EndpointSetter._validate_global_regions:
  - 2357
  - 2359
  botocore.utils.S3EndpointSetter._validate_mrap_s3_config:
  - 2408
  - 2406
  - 2415
  botocore.utils.S3EndpointSetter.register:
  - 2265
  - 2266
  - 2267
  botocore.utils.S3EndpointSetter.set_endpoint:
  - 2304
  - 2307
  - 2308
  - 2310
  - 2311
  - 2319
  - 2320
  - 2321
  - 2300
  - 2301
  - 2302
  - 2303
  botocore.utils.S3EndpointSetter.set_signer:
  - 2437
  - 2438
  botocore.utils.S3EndpointSetter.update_endpoint_to_s3_object_lambda:
  - 2273
  - 2278
  - 2279
  - 2285
  - 2292
  - 2297
  botocore.utils.S3ExpressIdentityCache:
  - 1658
  - 1646
  botocore.utils.S3ExpressIdentityCache._serialize_if_needed:
  - 1680
  - 1681
  - 1682
  - 1679
  botocore.utils.S3ExpressIdentityCache.build_refresh_callback.refresher:
  - 1664
  - 1666
  botocore.utils.S3ExpressIdentityCache.get_credentials:
  - 1660
  botocore.utils.S3ExpressIdentityResolver.__init__:
  - 1688
  - 1690
  - 1691
  botocore.utils.S3ExpressIdentityResolver.apply_signing_cache_key:
  - 1701
  - 1702
  - 1705
  - 1706
  - 1707
  botocore.utils.S3ExpressIdentityResolver.register:
  - 1697
  - 1698
  - 1695
  botocore.utils.S3ExpressIdentityResolver.resolve_s3express_identity:
  - 1728
  - 1720
  - 1721
  - 1722
  - 1726
  botocore.utils.S3RegionRedirector:
  - 1940
  botocore.utils.S3RegionRedirector.__init__:
  - 1952
  - 1954
  - 1947
  botocore.utils.S3RegionRedirector.get_bucket_region:
  - 2081
  - 2085
  - 2086
  - 2091
  - 2096
  - 2067
  botocore.utils.S3RegionRedirector.redirect_from_cache:
  - 2112
  - 2113
  - 2105
  - 2109
  - 2111
  botocore.utils.S3RegionRedirector.redirect_from_error:
  - 2048
  - 1985
  - 1986
  - 1991
  - 1992
  - 1993
  - 2027
  - 2028
  - 2059
  - 2030
  - 2031
  - 1968
  - 1974
  - 2006
  - 2040
  - 1979
  - 1980
  - 2015
  botocore.utils.S3RegionRedirector.register:
  - 1963
  - 1964
  - 1965
  botocore.utils.S3RegionRedirector.set_request_url:
  - 2100
  - 2101
  - 2102
  botocore.utils.S3RegionRedirectorv2:
  - 1735
  botocore.utils.S3RegionRedirectorv2.__init__:
  - 1744
  botocore.utils.S3RegionRedirectorv2.annotate_request_context:
  - 1928
  - 1931
  botocore.utils.S3RegionRedirectorv2.get_bucket_region:
  - 1889
  - 1893
  - 1894
  - 1899
  - 1904
  - 1875
  botocore.utils.S3RegionRedirectorv2.redirect_from_cache:
  - 1924
  - 1922
  - 1923
  - 1916
  botocore.utils.S3RegionRedirectorv2.redirect_from_error:
  - 1798
  - 1811
  - 1824
  - 1825
  - 1827
  - 1828
  - 1837
  - 1852
  - 1857
  - 1861
  - 1862
  - 1863
  - 1758
  - 1764
  - 1769
  - 1770
  - 1771
  - 1777
  - 1778
  - 1783
  - 1784
  - 1785
  botocore.utils.S3RegionRedirectorv2.register:
  - 1753
  - 1747
  - 1749
  - 1750
  botocore.utils.S3RegionRedirectorv2.set_request_url:
  - 1913
  - 1908
  botocore.utils.SSOTokenLoader.__call__:
  - 3399
  - 3400
  - 3401
  - 3403
  - 3409
  botocore.utils.SSOTokenLoader.__init__:
  - 3384
  botocore.utils.SSOTokenLoader._generate_cache_key:
  - 3392
  - 3390
  botocore.utils.SSOTokenLoader.save_token:
  - 3395
  botocore.utils._RetriesExceededError:
  - 385
  botocore.utils._calculate_md5_from_bytes:
  - 3282
  - 3283
  - 3284
  botocore.utils._calculate_md5_from_file:
  - 3288
  - 3289
  - 3290
  - 3291
  - 3292
  - 3293
  - 3294
  botocore.utils._calculate_md5_from_file.<lambda1>:
  - 3291
  botocore.utils._epoch_seconds_to_datetime:
  - 944
  - 954
  - 955
  - 956
  botocore.utils._get_bearer_env_var_name:
  - 3627
  botocore.utils._get_new_endpoint:
  - 1575
  - 1576
  - 1563
  - 1564
  - 1566
  botocore.utils._in_pairs:
  - 1164
  - 1159
  botocore.utils._is_get_bucket_location_request:
  - 1461
  botocore.utils._is_s3express_request:
  - 3298
  - 3301
  botocore.utils._parse_timestamp_with_tzinfo:
  - 960
  - 961
  - 963
  - 966
  - 973
  botocore.utils._switch_hosts:
  - 1556
  botocore.utils.calculate_md5:
  - 3273
  - 3274
  - 3275
  - 3277
  - 3278
  botocore.utils.calculate_sha256:
  - 1091
  - 1108
  - 1109
  - 1110
  - 1111
  - 1112
  - 1114
  botocore.utils.calculate_sha256.<lambda1>:
  - 1109
  botocore.utils.calculate_tree_hash:
  - 1134
  - 1135
  - 1136
  - 1137
  - 1138
  - 1140
  - 1141
  - 1142
  - 1145
  - 1147
  - 1118
  botocore.utils.calculate_tree_hash.<lambda1>:
  - 1134
  botocore.utils.check_dns_name:
  - 1345
  - 1355
  - 1357
  - 1358
  - 1361
  - 1362
  botocore.utils.conditionally_calculate_checksum:
  - 3323
  - 3324
  - 3325
  - 3326
  botocore.utils.conditionally_calculate_md5:
  - 3363
  - 3367
  - 3368
  - 3348
  - 3353
  - 3354
  - 3355
  - 3359
  botocore.utils.conditionally_enable_crc32:
  - 3330
  - 3331
  - 3332
  - 3333
  - 3334
  botocore.utils.create_nested_client:
  - 376
  - 377
  - 379
  - 381
  botocore.utils.datetime2timestamp:
  - 1072
  - 1081
  - 1082
  - 1083
  - 1084
  - 1085
  - 1086
  - 1087
  botocore.utils.deep_merge:
  - 1583
  - 1589
  - 1591
  - 1593
  - 1594
  - 1596
  botocore.utils.determine_content_length:
  - 3232
  - 3234
  - 3235
  - 3236
  - 3237
  - 3222
  - 3227
  botocore.utils.ensure_boolean:
  - 208
  - 210
  - 211
  - 204
  botocore.utils.fix_s3_host:
  - 1386
  - 1391
  - 1374
  - 1383
  botocore.utils.generate_login_cache_key:
  - 3607
  botocore.utils.get_encoding_from_headers:
  - 3265
  - 3268
  - 3250
  - 3256
  - 3258
  - 3261
  - 3263
  botocore.utils.get_environ_proxies:
  - 3193
  - 3196
  botocore.utils.get_login_token_cache_directory:
  - 3705
  - 3706
  - 3707
  - 3708
  - 3711
  botocore.utils.get_service_module_name:
  - 266
  - 270
  - 272
  - 276
  - 277
  - 278
  botocore.utils.get_token_from_environment:
  - 3617
  - 3620
  - 3622
  - 3623
  botocore.utils.has_checksum_header:
  - 3305
  - 3315
  - 3316
  botocore.utils.has_header:
  - 256
  - 257
  - 259
  - 262
  botocore.utils.hyphenize_service_id:
  - 1608
  - 1604
  botocore.utils.instance_cache:
  - 1465
  - 1481
  botocore.utils.instance_cache._cache_guard:
  - 1484
  - 1485
  - 1487
  - 1488
  - 1490
  botocore.utils.is_global_accesspoint:
  - 368
  - 366
  - 367
  botocore.utils.is_json_value_header:
  - 248
  - 249
  - 250
  - 239
  botocore.utils.is_s3_accelerate_url:
  - 3526
  - 3530
  - 3501
  - 3506
  - 3510
  - 3511
  - 3517
  - 3518
  botocore.utils.is_s3express_bucket:
  - 3611
  - 3613
  botocore.utils.is_valid_endpoint_url:
  - 1313
  - 1315
  - 1317
  - 1319
  - 1321
  - 1325
  - 1300
  - 1311
  botocore.utils.is_valid_ipv4_endpoint_url:
  - 1296
  - 1295
  botocore.utils.is_valid_ipv6_endpoint_url:
  - 1288
  - 1290
  - 1291
  botocore.utils.is_valid_uri:
  - 1329
  botocore.utils.lowercase_dict:
  - 856
  - 853
  - 855
  botocore.utils.lru_cache_weakref:
  - 1498
  botocore.utils.lru_cache_weakref.wrapper:
  - 1515
  - 1511
  botocore.utils.lru_cache_weakref.wrapper.func_with_weakref:
  - 1513
  botocore.utils.lru_cache_weakref.wrapper.inner:
  - 1520
  - 1517
  - 1518
  - 1519
  botocore.utils.merge_dicts:
  - 832
  - 833
  - 834
  - 839
  - 842
  - 843
  - 824
  - 831
  botocore.utils.normalize_boolean:
  - 289
  - 291
  - 294
  botocore.utils.normalize_url_path:
  - 283
  - 285
  botocore.utils.parse_key_val_file:
  - 864
  - 862
  - 863
  botocore.utils.parse_key_val_file_contents:
  - 874
  - 875
  - 877
  - 878
  - 879
  botocore.utils.parse_timestamp:
  - 993
  - 995
  - 1007
  - 979
  - 1012
  - 1013
  - 1015
  - 990
  - 991
  botocore.utils.parse_to_aware_datetime:
  - 1059
  - 1027
  - 1060
  - 1065
  - 1067
  - 1053
  botocore.utils.percent_encode:
  - 935
  - 936
  - 938
  - 939
  - 940
  - 923
  botocore.utils.percent_encode_sequence:
  - 905
  - 906
  - 909
  - 910
  - 911
  - 912
  - 913
  - 916
  - 885
  - 917
  - 919
  botocore.utils.remove_dot_segments:
  - 321
  - 301
  - 303
  - 305
  - 306
  - 307
  - 308
  - 309
  - 311
  - 313
  - 317
  botocore.utils.resolve_imds_endpoint_mode:
  - 224
  - 225
  - 226
  - 233
  - 217
  - 221
  botocore.utils.set_value_from_jmespath:
  - 357
  - 341
  - 342
  - 344
  - 345
  - 347
  - 350
  - 351
  botocore.utils.should_bypass_proxies:
  - 3200
  - 3212
  botocore.utils.switch_host_s3_accelerate:
  - 1538
  - 1539
  - 1542
  - 1544
  - 1529
  - 1535
  botocore.utils.switch_host_with_param:
  - 1552
  - 1548
  - 1549
  - 1550
  botocore.utils.switch_to_virtual_host_style:
  - 1410
  - 1442
  - 1443
  - 1445
  - 1415
  - 1449
  - 1419
  - 1453
  - 1455
  - 1424
  - 1426
  - 1429
  - 1399
  - 1432
  - 1434
  - 1438
  - 1439
  botocore.utils.validate_jmespath_for_set:
  - 330
  - 331
  - 327
  botocore.utils.validate_region_name:
  - 1335
  - 1336
  - 1338
  - 1339
  - 1340
  botocore.validate:
  - 1
  botocore.validate.ParamValidationDecorator.serialize_to_request:
  - 425
  - 419
  - 420
  - 423
  botocore.validate.ParamValidator:
  - 387
  - 325
  - 359
  - 377
  - 272
  - 182
  - 313
  - 381
  - 351
  botocore.validate.ParamValidator._check_special_validation_cases:
  - 227
  - 229
  botocore.validate.ParamValidator._shape_has_constraints:
  - 205
  - 206
  botocore.validate.ParamValidator._type_check_datetime:
  - 404
  botocore.validate.ParamValidator._validate:
  - 233
  - 234
  - 235
  - 237
  botocore.validate.ParamValidator._validate_blob:
  - 370
  - 364
  - 366
  botocore.validate.ParamValidator._validate_document:
  - 256
  - 257
  - 258
  - 261
  - 263
  - 264
  - 268
  - 250
  - 253
  - 254
  - 255
  botocore.validate.ParamValidator._validate_double:
  - 383
  botocore.validate.ParamValidator._validate_integer:
  - 361
  botocore.validate.ParamValidator._validate_jsonvalue_string:
  - 245
  - 247
  botocore.validate.ParamValidator._validate_list:
  - 328
  - 332
  - 334
  - 337
  - 338
  - 339
  - 340
  - 348
  - 349
  botocore.validate.ParamValidator._validate_long:
  - 389
  botocore.validate.ParamValidator._validate_map:
  - 355
  - 356
  - 357
  botocore.validate.ParamValidator._validate_string:
  - 323
  botocore.validate.ParamValidator._validate_structure:
  - 294
  - 295
  - 296
  - 300
  - 303
  - 305
  - 274
  - 275
  - 276
  - 277
  - 278
  - 306
  - 283
  - 284
  - 285
  botocore.validate.ParamValidator._validate_timestamp:
  - 395
  - 396
  - 397
  - 398
  botocore.validate.ParamValidator.validate:
  - 209
  - 222
  - 223
  botocore.validate.ValidationErrors._format_error:
  - 128
  - 162
  - 163
  - 135
  - 107
  - 108
  - 155
  - 142
  - 143
  - 113
  - 115
  - 147
  - 149
  - 150
  - 120
  - 122
  - 123
  - 156
  botocore.validate.ValidationErrors._get_name:
  - 170
  - 172
  botocore.validate.ValidationErrors.generate_report:
  - 101
  - 102
  - 103
  botocore.validate.ValidationErrors.has_errors:
  - 95
  botocore.validate.ValidationErrors.report:
  - 178
  botocore.validate.range_check:
  - 75
  - 76
  - 78
  - 80
  - 82
  - 84
  - 86
  - 87
  botocore.validate.type_check._create_type_check_guard._on_passes_type_check:
  - 53
  - 54
  botocore.validate.type_check._create_type_check_guard._type_check:
  - 57
  - 58
  - 59
  botocore.validate.validate_parameters:
  - 25
  - 44
  - 45
  - 46
  botocore.vendored.requests.exceptions:
  - 3
  botocore.vendored.requests.exceptions.ChunkedEncodingError:
  - 87
  botocore.vendored.requests.exceptions.ConnectTimeout:
  - 56
  botocore.vendored.requests.exceptions.ConnectionError:
  - 35
  botocore.vendored.requests.exceptions.ContentDecodingError:
  - 91
  botocore.vendored.requests.exceptions.HTTPError:
  - 31
  botocore.vendored.requests.exceptions.InvalidSchema:
  - 79
  botocore.vendored.requests.exceptions.InvalidURL:
  - 83
  botocore.vendored.requests.exceptions.MissingSchema:
  - 75
  botocore.vendored.requests.exceptions.ProxyError:
  - 39
  botocore.vendored.requests.exceptions.ReadTimeout:
  - 63
  botocore.vendored.requests.exceptions.RequestException:
  - 14
  botocore.vendored.requests.exceptions.RequestException.__init__:
  - 18
  - 21
  - 23
  - 24
  - 25
  - 27
  botocore.vendored.requests.exceptions.RetryError:
  - 99
  botocore.vendored.requests.exceptions.SSLError:
  - 43
  botocore.vendored.requests.exceptions.StreamConsumedError:
  - 95
  botocore.vendored.requests.exceptions.Timeout:
  - 47
  botocore.vendored.requests.exceptions.TooManyRedirects:
  - 71
  botocore.vendored.requests.exceptions.URLRequired:
  - 67
  botocore.vendored.requests.packages.urllib3:
  - 1
  botocore.vendored.requests.packages.urllib3.exceptions.ClosedPoolError:
  - 122
  botocore.vendored.requests.packages.urllib3.exceptions.ConnectTimeoutError:
  - 112
  botocore.vendored.requests.packages.urllib3.exceptions.DecodeError:
  - 47
  botocore.vendored.requests.packages.urllib3.exceptions.EmptyPoolError:
  - 117
  botocore.vendored.requests.packages.urllib3.exceptions.HTTPError:
  - 5
  botocore.vendored.requests.packages.urllib3.exceptions.HTTPWarning:
  - 9
  botocore.vendored.requests.packages.urllib3.exceptions.HostChangedError:
  - 82
  botocore.vendored.requests.packages.urllib3.exceptions.HostChangedError.__init__:
  - 86
  botocore.vendored.requests.packages.urllib3.exceptions.InsecurePlatformWarning:
  - 163
  botocore.vendored.requests.packages.urllib3.exceptions.InsecureRequestWarning:
  - 153
  botocore.vendored.requests.packages.urllib3.exceptions.LocationParseError:
  - 132
  botocore.vendored.requests.packages.urllib3.exceptions.LocationParseError.__init__:
  - 136
  botocore.vendored.requests.packages.urllib3.exceptions.LocationValueError:
  - 127
  botocore.vendored.requests.packages.urllib3.exceptions.MaxRetryError:
  - 63
  botocore.vendored.requests.packages.urllib3.exceptions.MaxRetryError.__init__:
  - 78
  botocore.vendored.requests.packages.urllib3.exceptions.PoolError:
  - 15
  botocore.vendored.requests.packages.urllib3.exceptions.PoolError.__init__:
  - 18
  botocore.vendored.requests.packages.urllib3.exceptions.ProtocolError:
  - 52
  botocore.vendored.requests.packages.urllib3.exceptions.ProxyError:
  - 42
  botocore.vendored.requests.packages.urllib3.exceptions.ReadTimeoutError:
  - 105
  botocore.vendored.requests.packages.urllib3.exceptions.RequestError:
  - 26
  botocore.vendored.requests.packages.urllib3.exceptions.RequestError.__init__:
  - 29
  botocore.vendored.requests.packages.urllib3.exceptions.ResponseError:
  - 142
  botocore.vendored.requests.packages.urllib3.exceptions.ResponseNotChunked:
  - 168
  botocore.vendored.requests.packages.urllib3.exceptions.SSLError:
  - 37
  botocore.vendored.requests.packages.urllib3.exceptions.SecurityWarning:
  - 148
  botocore.vendored.requests.packages.urllib3.exceptions.SystemTimeWarning:
  - 158
  botocore.vendored.requests.packages.urllib3.exceptions.TimeoutError:
  - 96
  botocore.vendored.requests.packages.urllib3.exceptions.TimeoutStateError:
  - 91
  botocore.vendored.six:
  - 526
  - 21
  - 40
  - 559
  - 55
  - 57
  - 65
  - 68
  - 71
  - 585
  - 74
  - 589
  - 590
  - 591
  - 592
  - 593
  - 594
  - 597
  - 610
  - 612
  - 614
  - 628
  - 630
  - 632
  - 634
  - 635
  - 636
  - 638
  - 642
  - 650
  - 652
  - 660
  - 683
  - 690
  - 691
  - 710
  - 711
  - 737
  - 745
  - 746
  - 242
  - 757
  - 758
  - 252
  - 253
  - 254
  - 255
  - 256
  - 257
  - 258
  - 259
  - 260
  - 261
  - 262
  - 263
  - 264
  - 265
  - 266
  - 267
  - 268
  - 269
  - 270
  - 271
  - 272
  - 273
  - 274
  - 275
  - 276
  - 277
  - 278
  - 279
  - 280
  - 281
  - 282
  - 283
  - 284
  - 285
  - 286
  - 287
  - 288
  - 289
  - 290
  - 291
  - 292
  - 293
  - 294
  - 295
  - 296
  - 297
  - 298
  - 299
  - 300
  - 301
  - 302
  - 303
  - 304
  - 305
  - 306
  - 812
  - 308
  - 310
  - 311
  - 312
  - 313
  - 822
  - 315
  - 316
  - 317
  - 318
  - 319
  - 320
  - 824
  - 323
  - 325
  - 328
  - 329
  - 330
  - 331
  - 336
  - 337
  - 346
  - 347
  - 348
  - 349
  - 350
  - 351
  - 352
  - 353
  - 354
  - 355
  - 356
  - 357
  - 358
  - 359
  - 360
  - 361
  - 362
  - 363
  - 364
  - 365
  - 366
  - 367
  - 368
  - 369
  - 370
  - 372
  - 373
  - 378
  - 388
  - 389
  - 390
  - 392
  - 393
  - 398
  - 408
  - 409
  - 410
  - 411
  - 412
  - 413
  - 414
  - 415
  - 416
  - 417
  - 418
  - 419
  - 420
  - 421
  - 422
  - 423
  - 424
  - 425
  - 426
  - 427
  - 428
  - 429
  - 430
  - 431
  - 432
  - 433
  - 434
  - 435
  - 436
  - 437
  - 438
  - 439
  - 440
  - 441
  - 442
  - 444
  - 445
  - 450
  - 460
  - 461
  - 462
  - 463
  - 465
  - 466
  - 981
  - 471
  - 986
  - 987
  - 992
  - 481
  - 483
  - 484
  - 998
  - 489
  - 506
  botocore.vendored.six.Iterator.next:
  - 582
  botocore.vendored.six.Module_six_moves_urllib:
  - 495
  - 497
  - 498
  - 499
  - 500
  - 501
  botocore.vendored.six.Module_six_moves_urllib_error:
  - 384
  botocore.vendored.six.Module_six_moves_urllib_parse:
  - 342
  botocore.vendored.six.Module_six_moves_urllib_request:
  - 404
  botocore.vendored.six.Module_six_moves_urllib_response:
  - 456
  botocore.vendored.six.Module_six_moves_urllib_robotparser:
  - 477
  botocore.vendored.six.MovedAttribute.__init__:
  - 160
  - 147
  - 148
  - 149
  - 152
  - 153
  botocore.vendored.six.MovedAttribute._resolve:
  - 165
  - 166
  botocore.vendored.six.MovedModule.__getattr__:
  - 123
  - 124
  - 125
  botocore.vendored.six.MovedModule.__init__:
  - 112
  - 113
  - 111
  botocore.vendored.six.MovedModule._resolve:
  - 120
  botocore.vendored.six._LazyDescr.__get__:
  - 97
  - 98
  - 102
  botocore.vendored.six._LazyModule.__init__:
  - 132
  botocore.vendored.six._MovedItems:
  - 247
  botocore.vendored.six._SixMetaPathImporter:
  - 171
  botocore.vendored.six._SixMetaPathImporter._add_module:
  - 183
  botocore.vendored.six._SixMetaPathImporter.create_module:
  - 237
  botocore.vendored.six._SixMetaPathImporter.find_module:
  - 190
  botocore.vendored.six._SixMetaPathImporter.find_spec:
  - 195
  - 196
  botocore.vendored.six._SixMetaPathImporter.get_code:
  - 232
  - 229
  botocore.vendored.six._SixMetaPathImporter.is_package:
  - 226
  - 220
  botocore.vendored.six._SixMetaPathImporter.load_module:
  - 211
  - 212
  - 213
  botocore.vendored.six._add_doc:
  - 81
  botocore.vendored.six._import_module:
  - 86
  - 87
  botocore.vendored.six._update_wrapper:
  - 833
  - 835
  - 839
  - 840
  - 841
  botocore.vendored.six.add_metaclass:
  - 881
  botocore.vendored.six.add_metaclass.wrapper:
  - 883
  - 884
  - 885
  - 886
  - 888
  - 889
  - 890
  - 891
  - 892
  - 894
  botocore.vendored.six.add_move:
  - 512
  - 511
  botocore.vendored.six.advance_iterator:
  - 548
  botocore.vendored.six.assertCountEqual:
  - 695
  botocore.vendored.six.assertNotRegex:
  - 707
  botocore.vendored.six.assertRaisesRegex:
  - 699
  botocore.vendored.six.assertRegex:
  - 703
  botocore.vendored.six.b:
  - 644
  botocore.vendored.six.byte2int:
  - 679
  botocore.vendored.six.callable:
  - 556
  botocore.vendored.six.create_bound_method:
  - 574
  botocore.vendored.six.create_unbound_method:
  - 577
  botocore.vendored.six.ensure_binary:
  - 912
  - 899
  - 909
  - 911
  botocore.vendored.six.ensure_str:
  - 928
  - 930
  - 931
  - 932
  - 933
  - 934
  - 917
  botocore.vendored.six.ensure_text:
  - 952
  - 940
  - 950
  - 951
  botocore.vendored.six.exec_:
  - 726
  - 727
  - 728
  - 730
  - 733
  - 735
  botocore.vendored.six.indexbytes:
  - 682
  botocore.vendored.six.iteritems:
  - 605
  - 623
  botocore.vendored.six.iterkeys:
  - 617
  - 599
  botocore.vendored.six.iterlists:
  - 608
  - 626
  botocore.vendored.six.itervalues:
  - 602
  - 620
  botocore.vendored.six.print_:
  - 778
  - 779
  - 780
  - 782
  - 784
  - 785
  - 786
  - 788
  - 790
  - 792
  - 793
  - 794
  - 797
  - 798
  - 799
  - 803
  - 805
  - 807
  - 808
  - 809
  - 810
  - 811
  - 816
  - 817
  - 818
  - 819
  - 820
  - 760
  - 761
  - 762
  botocore.vendored.six.print_.write:
  - 769
  - 770
  - 772
  - 773
  - 775
  - 776
  - 766
  - 767
  botocore.vendored.six.python_2_unicode_compatible:
  - 967
  - 972
  - 966
  - 959
  botocore.vendored.six.python_2_unicode_compatible.<lambda1>:
  - 972
  botocore.vendored.six.remove_move:
  - 516
  - 518
  botocore.vendored.six.reraise:
  - 715
  - 716
  - 717
  botocore.vendored.six.u:
  - 674
  botocore.vendored.six.with_metaclass:
  - 857
  - 877
  botocore.vendored.six.with_metaclass.metaclass.__new__:
  - 864
  - 867
  - 868
  - 872
  botocore.vendored.six.with_metaclass.metaclass.__prepare__:
  - 876
  botocore.vendored.six.wraps:
  - 848
  botocore.waiter:
  - 27
  botocore.waiter.AcceptorConfig.__init__:
  - 177
  - 178
  botocore.waiter.AcceptorConfig._create_error_matcher.acceptor_matches:
  - 305
  - 307
  - 310
  botocore.waiter.AcceptorConfig._create_matcher_func:
  - 210
  - 211
  - 212
  - 213
  - 214
  - 215
  - 216
  - 217
  - 218
  - 219
  botocore.waiter.AcceptorConfig._create_path_all_matcher:
  - 237
  botocore.waiter.AcceptorConfig._create_path_all_matcher.acceptor_matches:
  - 241
  - 243
  - 244
  - 250
  - 251
  botocore.waiter.AcceptorConfig._create_path_any_matcher:
  - 258
  botocore.waiter.AcceptorConfig._create_path_any_matcher.acceptor_matches:
  - 262
  - 264
  - 265
  - 271
  - 272
  botocore.waiter.AcceptorConfig._create_path_matcher:
  - 226
  botocore.waiter.AcceptorConfig._create_path_matcher.acceptor_matches:
  - 232
  - 230
  botocore.waiter.AcceptorConfig._create_status_matcher.acceptor_matches:
  - 285
  botocore.waiter.AcceptorConfig.explanation:
  - 194
  - 196
  - 182
  - 184
  - 189
  botocore.waiter.NormalizedOperationMethod.__call__:
  - 95
  botocore.waiter.SingleWaiterConfig:
  - 146
  botocore.waiter.SingleWaiterConfig.__init__:
  - 157
  botocore.waiter.SingleWaiterConfig.acceptors:
  - 168
  - 166
  - 167
  botocore.waiter.Waiter:
  - 337
  botocore.waiter.Waiter.__init__:
  - 317
  botocore.waiter.Waiter.wait:
  - 352
  - 384
  - 376
  - 383
  - 396
  - 339
  - 371
  - 372
  - 342
  - 343
  - 344
  - 349
  - 351
  botocore.waiter.WaiterModel.__init__:
  - 104
  - 122
  - 123
  - 125
  botocore.waiter.WaiterModel._verify_supported_version:
  - 128
  botocore.waiter.WaiterModel.get_waiter:
  - 142
  botocore.waiter.create_waiter_with_client:
  - 69
  - 70
  - 74
  - 77
  - 48
  - 49
  - 50
  - 51
  - 60
  - 31
  botocore.waiter.create_waiter_with_client.wait:
  - 58
  botocore.waiter.is_valid_waiter_error:
  - 83
  - 84
  botocore.xform_name:
  - 162
  - 167
  - 168
  - 169
  - 170
  - 172
  - 173
  - 174
  - 156
Fuzzer filename: /src/fuzz_serialization.py
Inheritance:
  botocore.UNSIGNED: []
  botocore.args.ClientArgsCreator: []
  botocore.args.ClientConfigString:
  - ConfigObjectWrapper
  - str
  botocore.args.ConfigObjectWrapper: []
  botocore.auth.BaseSigner: []
  botocore.auth.BearerAuth:
  - TokenSigner
  botocore.auth.HmacV1Auth:
  - BaseSigner
  botocore.auth.HmacV1PostAuth:
  - HmacV1Auth
  botocore.auth.HmacV1QueryAuth:
  - HmacV1Auth
  botocore.auth.S3ExpressAuth:
  - S3SigV4Auth
  botocore.auth.S3ExpressPostAuth:
  - S3ExpressAuth
  botocore.auth.S3ExpressQueryAuth:
  - S3ExpressAuth
  botocore.auth.S3SigV4Auth:
  - SigV4Auth
  botocore.auth.S3SigV4PostAuth:
  - SigV4Auth
  botocore.auth.S3SigV4QueryAuth:
  - SigV4QueryAuth
  botocore.auth.SigV2Auth:
  - BaseSigner
  botocore.auth.SigV3Auth:
  - BaseSigner
  botocore.auth.SigV4Auth:
  - BaseSigner
  botocore.auth.SigV4QueryAuth:
  - SigV4Auth
  botocore.auth.TokenSigner:
  - BaseSigner
  botocore.awsrequest.AWSConnection: []
  botocore.awsrequest.AWSHTTPConnection:
  - AWSConnection
  - HTTPConnection
  botocore.awsrequest.AWSHTTPConnectionPool:
  - HTTPConnectionPool
  botocore.awsrequest.AWSHTTPResponse:
  - HTTPResponse
  botocore.awsrequest.AWSHTTPSConnection:
  - AWSConnection
  - VerifiedHTTPSConnection
  botocore.awsrequest.AWSHTTPSConnectionPool:
  - HTTPSConnectionPool
  botocore.awsrequest.AWSPreparedRequest: []
  botocore.awsrequest.AWSRequest: []
  botocore.awsrequest.AWSRequestPreparer: []
  botocore.awsrequest.AWSResponse: []
  botocore.awsrequest.HeadersDict:
  - MutableMapping
  botocore.awsrequest._HeaderKey: []
  botocore.client.BaseClient: []
  botocore.client.ClientCreator: []
  botocore.client.ClientEndpointBridge: []
  botocore.client.ClientMeta: []
  botocore.compat.HTTPHeaders:
  - HTTPMessage
  botocore.config.Config: []
  botocore.configprovider.BaseProvider: []
  botocore.configprovider.ChainProvider:
  - BaseProvider
  botocore.configprovider.ConfigChainFactory: []
  botocore.configprovider.ConfigValueStore: []
  botocore.configprovider.ConfiguredEndpointProvider:
  - BaseProvider
  botocore.configprovider.ConstantProvider:
  - BaseProvider
  botocore.configprovider.DefaultConfigResolver: []
  botocore.configprovider.EnvironmentProvider:
  - BaseProvider
  botocore.configprovider.InstanceVarProvider:
  - BaseProvider
  botocore.configprovider.ScopedConfigProvider:
  - BaseProvider
  botocore.configprovider.SectionConfigProvider:
  - BaseProvider
  botocore.configprovider.SmartDefaultsConfigStoreFactory: []
  botocore.context.ClientContext: []
  botocore.credentials.AssumeRoleCredentialFetcher:
  - BaseAssumeRoleCredentialFetcher
  botocore.credentials.AssumeRoleProvider:
  - CredentialProvider
  botocore.credentials.AssumeRoleWithWebIdentityCredentialFetcher:
  - BaseAssumeRoleCredentialFetcher
  botocore.credentials.AssumeRoleWithWebIdentityProvider:
  - CredentialProvider
  botocore.credentials.BaseAssumeRoleCredentialFetcher:
  - CachedCredentialFetcher
  botocore.credentials.BotoProvider:
  - CredentialProvider
  botocore.credentials.CachedCredentialFetcher: []
  botocore.credentials.CanonicalNameCredentialSourcer: []
  botocore.credentials.ConfigProvider:
  - CredentialProvider
  botocore.credentials.ContainerProvider:
  - CredentialProvider
  botocore.credentials.CredentialProvider: []
  botocore.credentials.CredentialResolver: []
  botocore.credentials.Credentials: []
  botocore.credentials.DeferredRefreshableCredentials:
  - RefreshableCredentials
  botocore.credentials.EnvProvider:
  - CredentialProvider
  botocore.credentials.InstanceMetadataProvider:
  - CredentialProvider
  botocore.credentials.LoginCredentialFetcher: []
  botocore.credentials.LoginProvider:
  - CredentialProvider
  botocore.credentials.OriginalEC2Provider:
  - CredentialProvider
  botocore.credentials.ProcessProvider:
  - CredentialProvider
  botocore.credentials.ProfileProviderBuilder: []
  botocore.credentials.RefreshableCredentials:
  - Credentials
  botocore.credentials.SSOCredentialFetcher:
  - CachedCredentialFetcher
  botocore.credentials.SSOProvider:
  - CredentialProvider
  botocore.credentials.SharedCredentialProvider:
  - CredentialProvider
  botocore.credentials.create_mfa_serial_refresher._Refresher: []
  botocore.crt.auth.CrtS3SigV4AsymAuth:
  - CrtSigV4AsymAuth
  botocore.crt.auth.CrtS3SigV4AsymQueryAuth:
  - CrtSigV4AsymQueryAuth
  botocore.crt.auth.CrtS3SigV4Auth:
  - CrtSigV4Auth
  botocore.crt.auth.CrtS3SigV4QueryAuth:
  - CrtSigV4QueryAuth
  botocore.crt.auth.CrtSigV4AsymAuth:
  - BaseSigner
  botocore.crt.auth.CrtSigV4AsymQueryAuth:
  - CrtSigV4AsymAuth
  botocore.crt.auth.CrtSigV4Auth:
  - BaseSigner
  botocore.crt.auth.CrtSigV4QueryAuth:
  - CrtSigV4Auth
  botocore.discovery.EndpointDiscoveryException:
  - BotoCoreError
  botocore.discovery.EndpointDiscoveryHandler: []
  botocore.discovery.EndpointDiscoveryManager: []
  botocore.discovery.EndpointDiscoveryModel: []
  botocore.discovery.EndpointDiscoveryRefreshFailed:
  - EndpointDiscoveryException
  botocore.discovery.EndpointDiscoveryRequired:
  - EndpointDiscoveryException
  botocore.docs.bcdoc.docstringparser.DataNode:
  - Node
  botocore.docs.bcdoc.docstringparser.DocStringParser:
  - HTMLParser
  botocore.docs.bcdoc.docstringparser.HTMLTree: []
  botocore.docs.bcdoc.docstringparser.Node: []
  botocore.docs.bcdoc.docstringparser.StemNode:
  - Node
  botocore.docs.bcdoc.docstringparser.TagNode:
  - StemNode
  botocore.docs.bcdoc.restdoc.DocumentStructure:
  - ReSTDocument
  botocore.docs.bcdoc.restdoc.ReSTDocument: []
  botocore.docs.bcdoc.style.BaseStyle: []
  botocore.docs.bcdoc.style.ReSTStyle:
  - BaseStyle
  botocore.docs.client.ClientContextParamsDocumenter: []
  botocore.docs.client.ClientDocumenter: []
  botocore.docs.client.ClientExceptionsDocumenter: []
  botocore.docs.docstring.ClientMethodDocstring:
  - LazyLoadedDocstring
  botocore.docs.docstring.LazyLoadedDocstring:
  - str
  botocore.docs.docstring.PaginatorDocstring:
  - LazyLoadedDocstring
  botocore.docs.docstring.WaiterDocstring:
  - LazyLoadedDocstring
  botocore.docs.example.BaseExampleDocumenter:
  - ShapeDocumenter
  botocore.docs.example.RequestExampleDocumenter:
  - BaseExampleDocumenter
  botocore.docs.example.ResponseExampleDocumenter:
  - BaseExampleDocumenter
  botocore.docs.paginator.PaginatorDocumenter: []
  botocore.docs.params.BaseParamsDocumenter:
  - ShapeDocumenter
  botocore.docs.params.RequestParamsDocumenter:
  - BaseParamsDocumenter
  botocore.docs.params.ResponseParamsDocumenter:
  - BaseParamsDocumenter
  botocore.docs.service.ServiceDocumenter: []
  botocore.docs.shape.ShapeDocumenter: []
  botocore.docs.sharedexample.SharedExampleDocumenter: []
  botocore.docs.translator.BotoHTML5Translator:
  - SphinxHTML5Translator
  botocore.docs.utils.AppendParamDocumentation: []
  botocore.docs.utils.AutoPopulatedParam: []
  botocore.docs.utils.DocumentedShape:
  - _DocumentedShape
  botocore.docs.utils.HideParamFromOperations: []
  botocore.docs.waiter.WaiterDocumenter: []
  botocore.endpoint.Endpoint: []
  botocore.endpoint.EndpointCreator: []
  botocore.endpoint_provider.BaseRule: []
  botocore.endpoint_provider.EndpointProvider: []
  botocore.endpoint_provider.EndpointRule:
  - BaseRule
  botocore.endpoint_provider.ErrorRule:
  - BaseRule
  botocore.endpoint_provider.ParameterDefinition: []
  botocore.endpoint_provider.ParameterType:
  - Enum
  botocore.endpoint_provider.RuleCreator: []
  botocore.endpoint_provider.RuleSet: []
  botocore.endpoint_provider.RuleSetEndpoint:
  - NamedTuple
  botocore.endpoint_provider.RuleSetStandardLibrary: []
  botocore.endpoint_provider.TreeRule:
  - BaseRule
  botocore.errorfactory.BaseClientExceptions: []
  botocore.errorfactory.ClientExceptionsFactory: []
  botocore.eventstream.ChecksumMismatch:
  - ParserError
  botocore.eventstream.DecodeUtils: []
  botocore.eventstream.DuplicateHeader:
  - ParserError
  botocore.eventstream.EventStream: []
  botocore.eventstream.EventStreamBuffer: []
  botocore.eventstream.EventStreamHeaderParser: []
  botocore.eventstream.EventStreamMessage: []
  botocore.eventstream.InvalidHeadersLength:
  - ParserError
  botocore.eventstream.InvalidPayloadLength:
  - ParserError
  botocore.eventstream.MessagePrelude: []
  botocore.eventstream.NoInitialResponseError:
  - ParserError
  botocore.eventstream.ParserError:
  - Exception
  botocore.exceptions.AliasConflictParameterError:
  - ValidationError
  botocore.exceptions.ApiVersionNotFoundError:
  - BotoCoreError
  botocore.exceptions.AwsChunkedWrapperError:
  - BotoCoreError
  botocore.exceptions.BaseEndpointResolverError:
  - BotoCoreError
  botocore.exceptions.BotoCoreError:
  - Exception
  botocore.exceptions.CapacityNotAvailableError:
  - BotoCoreError
  botocore.exceptions.ChecksumError:
  - BotoCoreError
  botocore.exceptions.ClientError:
  - Exception
  botocore.exceptions.ConfigNotFound:
  - BotoCoreError
  botocore.exceptions.ConfigParseError:
  - BotoCoreError
  botocore.exceptions.ConnectTimeoutError:
  - ConnectionError
  botocore.exceptions.ConnectionClosedError:
  - HTTPClientError
  botocore.exceptions.ConnectionError:
  - BotoCoreError
  botocore.exceptions.CredentialRetrievalError:
  - BotoCoreError
  botocore.exceptions.DataNotFoundError:
  - BotoCoreError
  botocore.exceptions.EndpointConnectionError:
  - ConnectionError
  botocore.exceptions.EndpointProviderError:
  - BotoCoreError
  botocore.exceptions.EndpointResolutionError:
  - EndpointProviderError
  botocore.exceptions.EndpointVariantError:
  - BaseEndpointResolverError
  botocore.exceptions.EventStreamError:
  - ClientError
  botocore.exceptions.FlexibleChecksumError:
  - BotoCoreError
  botocore.exceptions.HTTPClientError:
  - BotoCoreError
  botocore.exceptions.ImminentRemovalWarning:
  - Warning
  botocore.exceptions.IncompleteReadError:
  - BotoCoreError
  botocore.exceptions.InfiniteLoopConfigError:
  - InvalidConfigError
  botocore.exceptions.InvalidChecksumConfigError:
  - BotoCoreError
  botocore.exceptions.InvalidConfigError:
  - BotoCoreError
  botocore.exceptions.InvalidDNSNameError:
  - BotoCoreError
  botocore.exceptions.InvalidDefaultsMode:
  - BotoCoreError
  botocore.exceptions.InvalidEndpointConfigurationError:
  - BotoCoreError
  botocore.exceptions.InvalidEndpointDiscoveryConfigurationError:
  - BotoCoreError
  botocore.exceptions.InvalidExpressionError:
  - BotoCoreError
  botocore.exceptions.InvalidHostLabelError:
  - BotoCoreError
  botocore.exceptions.InvalidIMDSEndpointError:
  - BotoCoreError
  botocore.exceptions.InvalidIMDSEndpointModeError:
  - BotoCoreError
  botocore.exceptions.InvalidMaxRetryAttemptsError:
  - InvalidRetryConfigurationError
  botocore.exceptions.InvalidProxiesConfigError:
  - BotoCoreError
  botocore.exceptions.InvalidRegionError:
  - ValidationError
  - ValueError
  botocore.exceptions.InvalidRetryConfigurationError:
  - BotoCoreError
  botocore.exceptions.InvalidRetryModeError:
  - InvalidRetryConfigurationError
  botocore.exceptions.InvalidS3AddressingStyleError:
  - BotoCoreError
  botocore.exceptions.InvalidS3UsEast1RegionalEndpointConfigError:
  - BotoCoreError
  botocore.exceptions.InvalidSTSRegionalEndpointsConfigError:
  - BotoCoreError
  botocore.exceptions.LoginAuthorizationCodeError:
  - LoginError
  botocore.exceptions.LoginError:
  - BotoCoreError
  botocore.exceptions.LoginInsufficientPermissions:
  - LoginError
  botocore.exceptions.LoginRefreshRequired:
  - LoginError
  botocore.exceptions.LoginTokenLoadError:
  - LoginError
  botocore.exceptions.MD5UnavailableError:
  - BotoCoreError
  botocore.exceptions.MetadataRetrievalError:
  - BotoCoreError
  botocore.exceptions.MissingDependencyException:
  - BotoCoreError
  botocore.exceptions.MissingParametersError:
  - BotoCoreError
  botocore.exceptions.MissingServiceIdError:
  - UndefinedModelAttributeError
  botocore.exceptions.NoAuthTokenError:
  - BotoCoreError
  botocore.exceptions.NoCredentialsError:
  - BotoCoreError
  botocore.exceptions.NoRegionError:
  - BaseEndpointResolverError
  botocore.exceptions.OperationNotPageableError:
  - BotoCoreError
  botocore.exceptions.PaginationError:
  - BotoCoreError
  botocore.exceptions.ParamValidationError:
  - BotoCoreError
  botocore.exceptions.PartialCredentialsError:
  - BotoCoreError
  botocore.exceptions.ProfileNotFound:
  - BotoCoreError
  botocore.exceptions.ProxyConnectionError:
  - ConnectionError
  botocore.exceptions.RangeError:
  - ValidationError
  botocore.exceptions.ReadTimeoutError:
  - HTTPClientError
  botocore.exceptions.RefreshWithMFAUnsupportedError:
  - BotoCoreError
  botocore.exceptions.ResponseStreamingError:
  - HTTPClientError
  botocore.exceptions.SSLError:
  - ConnectionError
  botocore.exceptions.SSOError:
  - BotoCoreError
  botocore.exceptions.SSOTokenLoadError:
  - SSOError
  botocore.exceptions.ServiceNotInRegionError:
  - BotoCoreError
  botocore.exceptions.StubAssertionError:
  - AssertionError
  - StubResponseError
  botocore.exceptions.StubResponseError:
  - BotoCoreError
  botocore.exceptions.TokenRetrievalError:
  - BotoCoreError
  botocore.exceptions.UnStubbedResponseError:
  - StubResponseError
  botocore.exceptions.UnauthorizedSSOTokenError:
  - SSOError
  botocore.exceptions.UndefinedModelAttributeError:
  - Exception
  botocore.exceptions.UnknownClientMethodError:
  - BotoCoreError
  botocore.exceptions.UnknownCredentialError:
  - BotoCoreError
  botocore.exceptions.UnknownEndpointError:
  - BaseEndpointResolverError
  - ValueError
  botocore.exceptions.UnknownEndpointResolutionBuiltInName:
  - EndpointProviderError
  botocore.exceptions.UnknownFIPSEndpointError:
  - BaseEndpointResolverError
  botocore.exceptions.UnknownKeyError:
  - ValidationError
  botocore.exceptions.UnknownParameterError:
  - ValidationError
  botocore.exceptions.UnknownRegionError:
  - BotoCoreError
  botocore.exceptions.UnknownServiceError:
  - DataNotFoundError
  botocore.exceptions.UnknownServiceStyle:
  - BotoCoreError
  botocore.exceptions.UnknownSignatureVersionError:
  - BotoCoreError
  botocore.exceptions.UnseekableStreamError:
  - BotoCoreError
  botocore.exceptions.UnsupportedOutpostResourceError:
  - BotoCoreError
  botocore.exceptions.UnsupportedS3AccesspointConfigurationError:
  - BotoCoreError
  botocore.exceptions.UnsupportedS3ArnError:
  - BotoCoreError
  botocore.exceptions.UnsupportedS3ConfigurationError:
  - BotoCoreError
  botocore.exceptions.UnsupportedS3ControlArnError:
  - BotoCoreError
  botocore.exceptions.UnsupportedS3ControlConfigurationError:
  - BotoCoreError
  botocore.exceptions.UnsupportedServiceProtocolsError:
  - BotoCoreError
  botocore.exceptions.UnsupportedSignatureVersionError:
  - BotoCoreError
  botocore.exceptions.UnsupportedTLSVersionWarning:
  - Warning
  botocore.exceptions.ValidationError:
  - BotoCoreError
  botocore.exceptions.WaiterConfigError:
  - BotoCoreError
  botocore.exceptions.WaiterError:
  - BotoCoreError
  botocore.handlers.ClientMethodAlias: []
  botocore.handlers.DeprecatedServiceDocumenter: []
  botocore.handlers.HeaderToHostHoister: []
  botocore.handlers.ParameterAlias: []
  botocore.history.BaseHistoryHandler: []
  botocore.history.HistoryRecorder: []
  botocore.hooks.BaseEventHooks: []
  botocore.hooks.EventAliaser:
  - BaseEventHooks
  botocore.hooks.HierarchicalEmitter:
  - BaseEventHooks
  botocore.hooks.NodeList:
  - _NodeList
  botocore.hooks._PrefixTrie: []
  botocore.httpchecksum.AwsChunkedWrapper: []
  botocore.httpchecksum.BaseChecksum: []
  botocore.httpchecksum.Crc32Checksum:
  - BaseChecksum
  botocore.httpchecksum.CrtCrc32Checksum:
  - BaseChecksum
  botocore.httpchecksum.CrtCrc32cChecksum:
  - BaseChecksum
  botocore.httpchecksum.CrtCrc64NvmeChecksum:
  - BaseChecksum
  botocore.httpchecksum.Sha1Checksum:
  - BaseChecksum
  botocore.httpchecksum.Sha256Checksum:
  - BaseChecksum
  botocore.httpchecksum.StreamingChecksumBody:
  - StreamingBody
  botocore.httpsession.ProxyConfiguration: []
  botocore.httpsession.URLLib3Session: []
  botocore.loaders.ExtrasProcessor: []
  botocore.loaders.JSONFileLoader: []
  botocore.loaders.Loader: []
  botocore.model.ClientContextParameter:
  - NamedTuple
  botocore.model.ContextParameter:
  - NamedTuple
  botocore.model.DenormalizedStructureBuilder: []
  botocore.model.InvalidShapeError:
  - Exception
  botocore.model.InvalidShapeReferenceError:
  - Exception
  botocore.model.ListShape:
  - Shape
  botocore.model.MapShape:
  - Shape
  botocore.model.NoShapeFoundError:
  - Exception
  botocore.model.OperationModel: []
  botocore.model.OperationNotFoundError:
  - Exception
  botocore.model.ServiceId:
  - str
  botocore.model.ServiceModel: []
  botocore.model.Shape: []
  botocore.model.ShapeNameGenerator: []
  botocore.model.ShapeResolver: []
  botocore.model.StaticContextParameter:
  - NamedTuple
  botocore.model.StringShape:
  - Shape
  botocore.model.StructureShape:
  - Shape
  botocore.model.UnresolvableShapeMap: []
  botocore.monitoring.APICallAttemptEvent:
  - BaseMonitorEvent
  botocore.monitoring.APICallEvent:
  - BaseMonitorEvent
  botocore.monitoring.BaseMonitorEvent: []
  botocore.monitoring.CSMSerializer: []
  botocore.monitoring.Monitor: []
  botocore.monitoring.MonitorEventAdapter: []
  botocore.monitoring.SocketPublisher: []
  botocore.paginate.PageIterator: []
  botocore.paginate.Paginator: []
  botocore.paginate.PaginatorModel: []
  botocore.paginate.ResultKeyIterator: []
  botocore.paginate.TokenDecoder: []
  botocore.paginate.TokenEncoder: []
  botocore.parsers.BaseCBORParser:
  - ResponseParser
  botocore.parsers.BaseEventStreamParser:
  - ResponseParser
  botocore.parsers.BaseJSONParser:
  - ResponseParser
  botocore.parsers.BaseRestParser:
  - ResponseParser
  botocore.parsers.BaseRpcV2Parser:
  - ResponseParser
  botocore.parsers.BaseXMLResponseParser:
  - ResponseParser
  botocore.parsers.EC2QueryParser:
  - QueryParser
  botocore.parsers.EventStreamCBORParser:
  - BaseCBORParser
  - BaseEventStreamParser
  botocore.parsers.EventStreamJSONParser:
  - BaseJSONParser
  - BaseEventStreamParser
  botocore.parsers.EventStreamXMLParser:
  - BaseXMLResponseParser
  - BaseEventStreamParser
  botocore.parsers.JSONParser:
  - BaseJSONParser
  botocore.parsers.QueryParser:
  - BaseXMLResponseParser
  botocore.parsers.ResponseParser: []
  botocore.parsers.ResponseParserError:
  - Exception
  botocore.parsers.ResponseParserFactory: []
  botocore.parsers.RestJSONParser:
  - BaseJSONParser
  - BaseRestParser
  botocore.parsers.RestXMLParser:
  - BaseRestParser
  - BaseXMLResponseParser
  botocore.parsers.RpcV2CBORParser:
  - BaseCBORParser
  - BaseRpcV2Parser
  botocore.plugin.PluginContext: []
  botocore.regions.BaseEndpointResolver: []
  botocore.regions.EndpointResolver:
  - BaseEndpointResolver
  botocore.regions.EndpointResolverBuiltins:
  - Enum
  - str
  botocore.regions.EndpointRulesetResolver: []
  botocore.response.StreamingBody:
  - IOBase
  botocore.retries.adaptive.ClientRateLimiter: []
  botocore.retries.adaptive.RateClocker: []
  botocore.retries.base.BaseRetryBackoff: []
  botocore.retries.base.BaseRetryableChecker: []
  botocore.retries.bucket.Clock: []
  botocore.retries.bucket.TokenBucket: []
  botocore.retries.quota.RetryQuota: []
  botocore.retries.special.RetryDDBChecksumError:
  - BaseRetryableChecker
  botocore.retries.special.RetryIDPCommunicationError:
  - BaseRetryableChecker
  botocore.retries.standard.ExponentialBackoff:
  - BaseRetryBackoff
  botocore.retries.standard.MaxAttemptsChecker:
  - BaseRetryableChecker
  botocore.retries.standard.ModeledRetryErrorDetector: []
  botocore.retries.standard.ModeledRetryableChecker:
  - BaseRetryableChecker
  botocore.retries.standard.OrRetryChecker:
  - BaseRetryableChecker
  botocore.retries.standard.RetryContext: []
  botocore.retries.standard.RetryEventAdapter: []
  botocore.retries.standard.RetryHandler: []
  botocore.retries.standard.RetryPolicy: []
  botocore.retries.standard.RetryQuotaChecker: []
  botocore.retries.standard.StandardRetryConditions:
  - BaseRetryableChecker
  botocore.retries.standard.ThrottledRetryableChecker:
  - BaseRetryableChecker
  botocore.retries.standard.ThrottlingErrorDetector: []
  botocore.retries.standard.TransientRetryableChecker:
  - BaseRetryableChecker
  botocore.retries.throttling.CubicCalculator: []
  botocore.retryhandler.BaseChecker: []
  botocore.retryhandler.CRC32Checker:
  - BaseChecker
  botocore.retryhandler.ExceptionRaiser:
  - BaseChecker
  botocore.retryhandler.HTTPStatusCodeChecker:
  - BaseChecker
  botocore.retryhandler.MaxAttemptsDecorator:
  - BaseChecker
  botocore.retryhandler.MultiChecker:
  - BaseChecker
  botocore.retryhandler.RetryHandler: []
  botocore.retryhandler.ServiceErrorCodeChecker:
  - BaseChecker
  botocore.serialize.BaseRestSerializer:
  - Serializer
  botocore.serialize.BaseRpcV2Serializer:
  - Serializer
  botocore.serialize.CBORSerializer:
  - Serializer
  botocore.serialize.EC2Serializer:
  - QuerySerializer
  botocore.serialize.JSONSerializer:
  - Serializer
  botocore.serialize.QuerySerializer:
  - Serializer
  botocore.serialize.RestJSONSerializer:
  - BaseRestSerializer
  - JSONSerializer
  botocore.serialize.RestXMLSerializer:
  - BaseRestSerializer
  botocore.serialize.RpcV2CBORSerializer:
  - CBORSerializer
  - BaseRpcV2Serializer
  botocore.serialize.Serializer: []
  botocore.session.ComponentLocator: []
  botocore.session.Session: []
  botocore.session.SessionVarDict:
  - MutableMapping
  botocore.session.SubsetChainConfigFactory: []
  botocore.signers.CloudFrontSigner: []
  botocore.signers.RequestSigner: []
  botocore.signers.S3PostPresigner: []
  botocore.stub.Stubber: []
  botocore.stub._ANY: []
  botocore.tokens.DeferredRefreshableToken: []
  botocore.tokens.FrozenAuthToken:
  - NamedTuple
  botocore.tokens.SSOTokenProvider: []
  botocore.tokens.ScopedEnvTokenProvider: []
  botocore.tokens.TokenProviderChain: []
  botocore.useragent.RawStringUserAgentComponent: []
  botocore.useragent.UserAgentComponent:
  - NamedTuple
  botocore.useragent.UserAgentComponentSizeConfig: []
  botocore.useragent.UserAgentString: []
  botocore.utils.ArgumentGenerator: []
  botocore.utils.ArnParser: []
  botocore.utils.BadIMDSRequestError:
  - Exception
  botocore.utils.CachedProperty: []
  botocore.utils.ContainerMetadataFetcher: []
  botocore.utils.EventbridgeSignerSetter: []
  botocore.utils.FileWebIdentityTokenLoader: []
  botocore.utils.IMDSFetcher: []
  botocore.utils.IMDSRegionProvider: []
  botocore.utils.IdentityCache: []
  botocore.utils.InstanceMetadataFetcher:
  - IMDSFetcher
  botocore.utils.InstanceMetadataRegionFetcher:
  - IMDSFetcher
  botocore.utils.InvalidArnException:
  - ValueError
  botocore.utils.JSONFileCache: []
  botocore.utils.LoginTokenLoader: []
  botocore.utils.S3ArnParamHandler: []
  botocore.utils.S3ControlArnParamHandler: []
  botocore.utils.S3ControlArnParamHandlerv2:
  - S3ControlArnParamHandler
  botocore.utils.S3ControlEndpointSetter: []
  botocore.utils.S3EndpointSetter: []
  botocore.utils.S3ExpressIdentityCache:
  - IdentityCache
  botocore.utils.S3ExpressIdentityResolver: []
  botocore.utils.S3RegionRedirector: []
  botocore.utils.S3RegionRedirectorv2: []
  botocore.utils.SSOTokenLoader: []
  botocore.utils._RetriesExceededError:
  - Exception
  botocore.validate.ParamValidationDecorator: []
  botocore.validate.ParamValidator: []
  botocore.validate.ValidationErrors: []
  botocore.vendored.requests.exceptions.ChunkedEncodingError:
  - RequestException
  botocore.vendored.requests.exceptions.ConnectTimeout:
  - Timeout
  - ConnectionError
  botocore.vendored.requests.exceptions.ConnectionError:
  - RequestException
  botocore.vendored.requests.exceptions.ContentDecodingError:
  - BaseHTTPError
  - RequestException
  botocore.vendored.requests.exceptions.HTTPError:
  - RequestException
  botocore.vendored.requests.exceptions.InvalidSchema:
  - RequestException
  - ValueError
  botocore.vendored.requests.exceptions.InvalidURL:
  - RequestException
  - ValueError
  botocore.vendored.requests.exceptions.MissingSchema:
  - RequestException
  - ValueError
  botocore.vendored.requests.exceptions.ProxyError:
  - ConnectionError
  botocore.vendored.requests.exceptions.ReadTimeout:
  - Timeout
  botocore.vendored.requests.exceptions.RequestException:
  - IOError
  botocore.vendored.requests.exceptions.RetryError:
  - RequestException
  botocore.vendored.requests.exceptions.SSLError:
  - ConnectionError
  botocore.vendored.requests.exceptions.StreamConsumedError:
  - TypeError
  - RequestException
  botocore.vendored.requests.exceptions.Timeout:
  - RequestException
  botocore.vendored.requests.exceptions.TooManyRedirects:
  - RequestException
  botocore.vendored.requests.exceptions.URLRequired:
  - RequestException
  botocore.vendored.requests.packages.urllib3.exceptions.ClosedPoolError:
  - PoolError
  botocore.vendored.requests.packages.urllib3.exceptions.ConnectTimeoutError:
  - TimeoutError
  botocore.vendored.requests.packages.urllib3.exceptions.DecodeError:
  - HTTPError
  botocore.vendored.requests.packages.urllib3.exceptions.EmptyPoolError:
  - PoolError
  botocore.vendored.requests.packages.urllib3.exceptions.HTTPError:
  - Exception
  botocore.vendored.requests.packages.urllib3.exceptions.HTTPWarning:
  - Warning
  botocore.vendored.requests.packages.urllib3.exceptions.HostChangedError:
  - RequestError
  botocore.vendored.requests.packages.urllib3.exceptions.InsecurePlatformWarning:
  - SecurityWarning
  botocore.vendored.requests.packages.urllib3.exceptions.InsecureRequestWarning:
  - SecurityWarning
  botocore.vendored.requests.packages.urllib3.exceptions.LocationParseError:
  - LocationValueError
  botocore.vendored.requests.packages.urllib3.exceptions.LocationValueError:
  - HTTPError
  - ValueError
  botocore.vendored.requests.packages.urllib3.exceptions.MaxRetryError:
  - RequestError
  botocore.vendored.requests.packages.urllib3.exceptions.PoolError:
  - HTTPError
  botocore.vendored.requests.packages.urllib3.exceptions.ProtocolError:
  - HTTPError
  botocore.vendored.requests.packages.urllib3.exceptions.ProxyError:
  - HTTPError
  botocore.vendored.requests.packages.urllib3.exceptions.ReadTimeoutError:
  - RequestError
  - TimeoutError
  botocore.vendored.requests.packages.urllib3.exceptions.RequestError:
  - PoolError
  botocore.vendored.requests.packages.urllib3.exceptions.ResponseError:
  - HTTPError
  botocore.vendored.requests.packages.urllib3.exceptions.ResponseNotChunked:
  - ProtocolError
  - ValueError
  botocore.vendored.requests.packages.urllib3.exceptions.SSLError:
  - HTTPError
  botocore.vendored.requests.packages.urllib3.exceptions.SecurityWarning:
  - HTTPWarning
  botocore.vendored.requests.packages.urllib3.exceptions.SystemTimeWarning:
  - SecurityWarning
  botocore.vendored.requests.packages.urllib3.exceptions.TimeoutError:
  - HTTPError
  botocore.vendored.requests.packages.urllib3.exceptions.TimeoutStateError:
  - HTTPError
  botocore.vendored.six.Iterator:
  - object
  botocore.vendored.six.Module_six_moves_urllib: []
  botocore.vendored.six.Module_six_moves_urllib_error:
  - _LazyModule
  botocore.vendored.six.Module_six_moves_urllib_parse:
  - _LazyModule
  botocore.vendored.six.Module_six_moves_urllib_request:
  - _LazyModule
  botocore.vendored.six.Module_six_moves_urllib_response:
  - _LazyModule
  botocore.vendored.six.Module_six_moves_urllib_robotparser:
  - _LazyModule
  botocore.vendored.six.MovedAttribute:
  - _LazyDescr
  botocore.vendored.six.MovedModule:
  - _LazyDescr
  botocore.vendored.six.X:
  - object
  botocore.vendored.six._LazyDescr:
  - object
  botocore.vendored.six._LazyModule: []
  botocore.vendored.six._MovedItems:
  - _LazyModule
  botocore.vendored.six._SixMetaPathImporter:
  - object
  botocore.vendored.six.with_metaclass.metaclass:
  - type
  botocore.waiter.AcceptorConfig: []
  botocore.waiter.NormalizedOperationMethod: []
  botocore.waiter.SingleWaiterConfig: []
  botocore.waiter.Waiter: []
  botocore.waiter.WaiterModel: []
ep:
  func_name: TestOneInput
  module: '...fuzz_serialization'
