# Path: aiobotocore/endpoint.py
# async def convert_to_response_dict(http_response, operation_model):
#     async def create_request(self, params, operation_model=None):
#     async def _send_request(self, request_dict, operation_model):
#     async def _get_response(self, request, operation_model, context):
#     async def _do_get_response(self, request, operation_model):
#     async def _add_modeled_error_fields(
#             self, response_dict, parsed_response,
#             operation_model, parser,
#     ):
#     async def _needs_retry(self, attempts, operation_model, request_dict,
#                            response=None, caught_exception=None):
#     async def _send(self, request):
#     def create_endpoint(
#             self, service_model, region_name, endpoint_url,
#             verify=None, response_parser_factory=None,
#             timeout=DEFAULT_TIMEOUT,
#             max_pool_connections=MAX_POOL_CONNECTIONS,
#             http_session_cls=AIOHTTPSession,
#             proxies=None,
#             socket_options=None,
#             client_cert=None, proxies_config=None,
#             connector_args=None
#     ):
# class AioEndpoint(Endpoint):
# class AioEndpointCreator(EndpointCreator):


import asyncio
import hashlib
import pytest
import aiohttp
import botocore
from dill.source import getsource
from itertools import chain
from yarl import URL
from aiobotocore.endpoint import ClientResponseProxy
from aiohttp.client import ClientResponse
from botocore.args import ClientArgsCreator
from botocore.client import ClientCreator, BaseClient, Config
from botocore.endpoint import convert_to_response_dict, Endpoint, \
    EndpointCreator
from botocore.paginate import PageIterator, ResultKeyIterator
from botocore.session import Session, get_session
from botocore.waiter import NormalizedOperationMethod, Waiter, \
    create_waiter_with_client
from botocore.eventstream import EventStream
from botocore.parsers import ResponseParserFactory, PROTOCOL_PARSERS, \
    RestXMLParser, EC2QueryParser, QueryParser, JSONParser, RestJSONParser, \
    create_parser
from botocore.response import StreamingBody, get_response
from botocore.signers import RequestSigner, add_generate_presigned_url, \
    generate_presigned_url, S3PostPresigner, add_generate_presigned_post, \
    generate_presigned_post, generate_db_auth_token, add_generate_db_auth_token
from botocore.hooks import EventAliaser, HierarchicalEmitter
from botocore.utils import ContainerMetadataFetcher, IMDSFetcher, \
    InstanceMetadataFetcher, S3RegionRedirector
from botocore.credentials import Credentials, RefreshableCredentials, \
    CachedCredentialFetcher, AssumeRoleCredentialFetcher, EnvProvider, \
    ContainerProvider, InstanceMetadataProvider, ProfileProviderBuilder, \
    ConfigProvider, SharedCredentialProvider, ProcessProvider, CredentialResolver, \
    AssumeRoleWithWebIdentityProvider, AssumeRoleProvider, \
    CanonicalNameCredentialSourcer, BotoProvider, OriginalEC2Provider, \
    create_credential_resolver, get_credentials, create_mfa_serial_refresher, \
    AssumeRoleWithWebIdentityCredentialFetcher, SSOCredentialFetcher, SSOProvider
from botocore.handlers import inject_presigned_url_ec2, inject_presigned_url_rds
from botocore.httpsession import URLLib3Session
from botocore.discovery import EndpointDiscoveryManager, EndpointDiscoveryHandler
from botocore.retries.adaptive import ClientRateLimiter, register_retry_handler
from botocore.retries.bucket import TokenBucket
        {'f43d79e1520b2a7b7ef85cd537f41e19d4bce806'},
    CachedCredentialFetcher._get_credentials:
        {'02a7d13599d972e3f258d2b53f87eeda4cc3e3a4'},
    CachedCredentialFetcher.fetch_credentials:
        {'0dd2986a4cbb38764ec747075306a33117e86c3d'},
    CachedCredentialFetcher._get_cached_credentials:
        {'a9f8c348d226e62122972da9ccc025365b6803d6'},
    AssumeRoleCredentialFetcher._get_credentials:
        {'5c575634bc0a713c10e5668f28fbfa8779d5a1da'},
    AssumeRoleCredentialFetcher._create_client:
        {'27c76f07bd43e665899ca8d21b6ba2038b276fbb'},
    # Referenced by AioAssumeRoleWithWebIdentityCredentialFetcher
    AssumeRoleWithWebIdentityCredentialFetcher.__init__:
        {'85c022a7237a3500ca973b2f7f91bffe894e4577'},
    AssumeRoleWithWebIdentityCredentialFetcher._get_credentials:
        {'02eba9d4e846474910cb076710070348e395a819'},
    AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs:
        {'8fb4fefe8664b7d82a67e0fd6d6812c1c8d92285'},
    # Ensure that the load method doesn't do anything we should asyncify
    EnvProvider.load: {'07cff5032b39b568505779774a1ca66efc513abb'},

    ContainerProvider.__init__: {'ea6aafb2e12730066af930fb5a27f7659c1736a1'},
    ContainerProvider.load: {'57c35569050b45c1e9e33fcdb3b49da9e342fdcf'},
    ContainerProvider._retrieve_or_fail:
        {'7c14f1cdee07217f847a71068866bdd10c3fa0fa'},
    ContainerProvider._create_fetcher:
        {'09a3ffded0fc20a574f3b34fa432a1569d5e729f'},
    InstanceMetadataProvider.load: {'4a27eb94fe220fba2b46c97bdd9e16de199ce004'},
    ProfileProviderBuilder._create_process_provider:
        {'c5eea47bcfc449a6d73a9892bd0e1897f6be0c20'},

# Path: aiobotocore/endpoint.py
# async def convert_to_response_dict(http_response, operation_model):
#     async def create_request(self, params, operation_model=None):
#     async def _send_request(self, request_dict, operation_model):
#     async def _get_response(self, request, operation_model, context):
#     async def _do_get_response(self, request, operation_model):
#     async def _add_modeled_error_fields(
#             self, response_dict, parsed_response,
#             operation_model, parser,
#     ):
#     async def _needs_retry(self, attempts, operation_model, request_dict,
#                            response=None, caught_exception=None):
#     async def _send(self, request):
#     def create_endpoint(
#             self, service_model, region_name, endpoint_url,
#             verify=None, response_parser_factory=None,
#             timeout=DEFAULT_TIMEOUT,
#             max_pool_connections=MAX_POOL_CONNECTIONS,
#             http_session_cls=AIOHTTPSession,
#             proxies=None,
#             socket_options=None,
#             client_cert=None, proxies_config=None,
#             connector_args=None
#     ):
# class AioEndpoint(Endpoint):
# class AioEndpointCreator(EndpointCreator):


# Path: tests/test_patches.py
import asyncio
import hashlib
import pytest
import aiohttp
import botocore
from dill.source import getsource
from itertools import chain
from yarl import URL
from aiobotocore.endpoint import ClientResponseProxy
from aiohttp.client import ClientResponse
from botocore.args import ClientArgsCreator
from botocore.client import ClientCreator, BaseClient, Config
from botocore.endpoint import convert_to_response_dict, Endpoint, \
    EndpointCreator
from botocore.paginate import PageIterator, ResultKeyIterator
from botocore.session import Session, get_session
from botocore.waiter import NormalizedOperationMethod, Waiter, \
    create_waiter_with_client
from botocore.eventstream import EventStream
from botocore.parsers import ResponseParserFactory, PROTOCOL_PARSERS, \
    RestXMLParser, EC2QueryParser, QueryParser, JSONParser, RestJSONParser, \
    create_parser
from botocore.response import StreamingBody, get_response
from botocore.signers import RequestSigner, add_generate_presigned_url, \
    generate_presigned_url, S3PostPresigner, add_generate_presigned_post, \
    generate_presigned_post, generate_db_auth_token, add_generate_db_auth_token
from botocore.hooks import EventAliaser, HierarchicalEmitter
from botocore.utils import ContainerMetadataFetcher, IMDSFetcher, \
    InstanceMetadataFetcher, S3RegionRedirector
from botocore.credentials import Credentials, RefreshableCredentials, \
    CachedCredentialFetcher, AssumeRoleCredentialFetcher, EnvProvider, \
    ContainerProvider, InstanceMetadataProvider, ProfileProviderBuilder, \
    ConfigProvider, SharedCredentialProvider, ProcessProvider, CredentialResolver, \
    AssumeRoleWithWebIdentityProvider, AssumeRoleProvider, \
    CanonicalNameCredentialSourcer, BotoProvider, OriginalEC2Provider, \
    create_credential_resolver, get_credentials, create_mfa_serial_refresher, \
    AssumeRoleWithWebIdentityCredentialFetcher, SSOCredentialFetcher, SSOProvider
from botocore.handlers import inject_presigned_url_ec2, inject_presigned_url_rds
from botocore.httpsession import URLLib3Session
from botocore.discovery import EndpointDiscoveryManager, EndpointDiscoveryHandler
from botocore.retries.adaptive import ClientRateLimiter, register_retry_handler
from botocore.retries.bucket import TokenBucket

        {'f43d79e1520b2a7b7ef85cd537f41e19d4bce806'},
    CachedCredentialFetcher._get_credentials:
        {'02a7d13599d972e3f258d2b53f87eeda4cc3e3a4'},
    CachedCredentialFetcher.fetch_credentials:
        {'0dd2986a4cbb38764ec747075306a33117e86c3d'},
    CachedCredentialFetcher._get_cached_credentials:
        {'a9f8c348d226e62122972da9ccc025365b6803d6'},
    AssumeRoleCredentialFetcher._get_credentials:
        {'5c575634bc0a713c10e5668f28fbfa8779d5a1da'},
    AssumeRoleCredentialFetcher._create_client:
        {'27c76f07bd43e665899ca8d21b6ba2038b276fbb'},
    # Referenced by AioAssumeRoleWithWebIdentityCredentialFetcher
    AssumeRoleWithWebIdentityCredentialFetcher.__init__:
        {'85c022a7237a3500ca973b2f7f91bffe894e4577'},
    AssumeRoleWithWebIdentityCredentialFetcher._get_credentials:
        {'02eba9d4e846474910cb076710070348e395a819'},
    AssumeRoleWithWebIdentityCredentialFetcher._assume_role_kwargs:
        {'8fb4fefe8664b7d82a67e0fd6d6812c1c8d92285'},
    # Ensure that the load method doesn't do anything we should asyncify
    EnvProvider.load: {'07cff5032b39b568505779774a1ca66efc513abb'},

    ContainerProvider.__init__: {'ea6aafb2e12730066af930fb5a27f7659c1736a1'},
    ContainerProvider.load: {'57c35569050b45c1e9e33fcdb3b49da9e342fdcf'},
    ContainerProvider._retrieve_or_fail:
        {'7c14f1cdee07217f847a71068866bdd10c3fa0fa'},
    ContainerProvider._create_fetcher:
        {'09a3ffded0fc20a574f3b34fa432a1569d5e729f'},
    InstanceMetadataProvider.load: {'4a27eb94fe220fba2b46c97bdd9e16de199ce004'},
    ProfileProviderBuilder._create_process_provider:
        {'c5eea47bcfc449a6d73a9892bd0e1897f6be0c20'},

    ProfileProviderBuilder._create_shared_credential_provider: