h&֫q      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                   (c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=?amazonkaA general authentication error.amazonkaAn error occured while communicating over HTTP with the local metadata endpoint.amazonka-The named environment variable was not found.amazonka2The specified credentials file could not be found.amazonka.An error occured parsing the credentials file.amazonka=The specified IAM profile could not be found or deserialised.amazonkaAn error thrown when attempting to read AuthN/AuthZ information.(c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred%"%&'()*/1589:;<=? amazonkaImplements the background fetching behavior used by (among others) fromProfileName and  fromContainer . Given an  action that produces an (, this spawns a thread that mutates the  returned in the resulting . to keep the temporary credentials up to date.(c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred%"%&'()*/1589:;<=?Tamazonka+Represents an instance's identity document.Note: Fields such as  _instanceType are represented as unparsed , and will need to be manually parsed using 1 when the relevant types from a library such as  Amazonka.EC2 are brought into scope.amazonkaMetadata keys for tags/*.amazonkaThe instance tags associated with the instance. Only available if you explicitly allow access to tags in instance metadata. For more information, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#allow-access-to-tags-in-IMDS)Allow access to tags in instance metadata.amazonkaMetadata keys for spot/*.amazonkaThe action (hibernate, stop, or terminate) and the approximate time, in UTC, when the action will occur. This item is present only if the Spot Instance has been marked for hibernate, stop, or terminate. For more information, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-instance-termination-notices.html#instance-action-metadatainstance-action.amazonkaThe approximate time, in UTC, that the operating system for your Spot Instance will receive the shutdown signal. This item is present and contains a time value (for example, 2015-01-05T18:02:00Z) only if the Spot Instance has been marked for termination by Amazon EC2. The termination-time item is not set to a time if you terminated the Spot Instance yourself. For more information, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-instance-termination-notices.html#termination-time-metadatatermination-time.amazonkaMetadata keys for  services/*.amazonka,The domain for AWS resources for the Region.amazonkaThe partition that the resource is in. For standard AWS Regions, the partition is aws?. If you have resources in other partitions, the partition is aws-${partitionname}. For example, the partition for resources in the China (Beijing) Region is aws-cn.amazonkaMetadata keys for  placement/*.amazonka5The Availability Zone in which the instance launched.amazonkaThe static Availability Zone ID in which the instance is launched. The Availability Zone ID is consistent across accounts. However, it might be different from the Availability Zone, which can vary by account.amazonkaThe name of the placement group in which the instance is launched.amazonkaThe ID of the host on which the instance is launched. Applicable only to Dedicated Hosts.amazonka>The number of the partition in which the instance is launched.amazonka1The AWS Region in which the instance is launched.amazonkaMetadata keys for  network/interfaces/macs/${mac}/*.amazonkaThe unique device number associated with that interface. The device number corresponds to the device name; for example, a  device-number of 2 is for the eth2 device. This category corresponds to the  DeviceIndex and  device-index fields that are used by the Amazon EC2 API and the EC2 commands for the AWS CLI.amazonka The ID of the network interface.amazonkaThe private IPv4 addresses that are associated with each public-ip address and assigned to that interface.amazonkaThe IPv6 addresses associated with the interface. Returned only for instances launched into a VPC.amazonkaThe private IPv4 DNS hostname of the instance. In cases where multiple network interfaces are present, this refers to the eth0 device (the device for which the device number is 0). If this is a IPv6-only instance, this is the resource-based name. For more information about IPBN and RBN, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html"Amazon EC2 instance hostname types.amazonkaThe private IPv4 addresses associated with the interface. If this is an IPv6-only network interface, this item is not set and results in an HTTP 404 response.amazonkaThe instance's MAC address.amazonkaThe index of the network card. Some instance types support multiple network cards.amazonkaThe ID of the owner of the network interface. In multiple-interface environments, an interface can be attached by a third party, such as Elastic Load Balancing. Traffic on an interface is always billed to the interface owner.amazonkaThe interface's public DNS (IPv4). This category is only returned if the enableDnsHostnames attribute is set to true. For more information, see  =https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.htmlUsing DNS with Your VPC in the Amazon VPC User Guide. If the instance only has a public-IPv6 address and no public-IPv4 address, this item is not set and results in an HTTP 404 response.amazonkaThe Elastic IP addresses associated with the interface. There may be multiple IP addresses on an instance.amazonka7Security groups to which the network interface belongs.amazonkaThe IDs of the security groups to which the network interface belongs.amazonka4The ID of the subnet in which the interface resides.amazonkaThe IPv4 CIDR block of the subnet in which the interface resides.amazonkaThe IPv6 CIDR block of the subnet in which the interface resides.amazonka1The ID of the VPC in which the interface resides.amazonka'The primary IPv4 CIDR block of the VPC.amazonka!The IPv4 CIDR blocks for the VPC.amazonka>The IPv6 CIDR block of the VPC in which the interface resides.amazonkaMetadata keys for identity-credentials/ec2/*.amazonka&Information about the credentials in identity-credentialsec2!security-credentials/ec2-instance.amazonkaCredentials for the instance identity role that allow on-instance software to identify itself to AWS to support features such as EC2 Instance Connect and AWS Systems Manager Default Host Management Configuration. These credentials have no policies attached, so they have no additional AWS API permissions beyond identifying the instance to the AWS feature. For more information, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-identity-roles.htmlInstance identity roles.amazonkaMetadata keys for iam/*.amazonkaIf there is an IAM role associated with the instance, contains information about the last time the instance profile was updated, including the instance's LastUpdated date, InstanceProfileArn, and InstanceProfileId. Otherwise, not present.amazonka7If there is an IAM role associated with the instance,  role-name is the name of the role, and  role-name contains the temporary security credentials associated with the role (for more information, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#instance-metadata-security-credentials4Retrieve security credentials from instance metadata). Otherwise, not present.See: Auth for JSON deserialisation.amazonkaMetadata keys for events/recommendations/*.amazonkaThe approximate time, in UTC, when the EC2 instance rebalance recommendation notification is emitted for the instance. The following is an example of the metadata for this category: &{"noticeTime": "2020-11-05T08:22:00Z"}. This category is available only after the notification is emitted. For more information, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/rebalance-recommendations.html&EC2 instance rebalance recommendations.amazonkaMetadata keys for events maintenance*.amazonkaIf there are completed or canceled maintenance events for the instance, contains a JSON string with information about the events. For more information, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-instances-status-check_sched.html#viewing-event-history8To view event history about completed or canceled events.amazonkaIf there are active maintenance events for the instance, contains a JSON string with information about the events. For more information, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-instances-status-check_sched.html#viewing_scheduled_eventsView scheduled events.amazonkaMetadata keys for events/*.amazonkaMetadata keys for elastic-inference/*.amazonkaIf there is an Elastic Inference accelerator attached to the instance, contains a JSON string with information about the Elastic Inference accelerator, including its ID and type.amazonkaMetadata keys for elastic-gpus/*.amazonkaIf there is an Elastic GPU attached to the instance, contains a JSON string with information about the Elastic GPU, including its ID and connection information.amazonkaMetadata keys for block-device-mapping/*.amazonka;The virtual device that contains the root/boot file system.amazonkaThe virtual devices associated with Amazon EBS volumes, if present. This value is only available in metadata if it is present at launch time. The N indicates the index of the Amazon EBS volume (such as ebs1 or ebs2).amazonkaThe virtual devices associated with ephemeral devices, if present. The N indicates the index of the ephemeral volume.amazonkaThe virtual devices or partitions associated with the root devices, or partitions on the virtual device, where the root (/ or C:) file system is associated with the given instance.amazonka=The virtual devices associated with swap. Not always present.amazonkaMetadata keys for  autoscaling/*.amazonkaValue showing the target Auto Scaling lifecycle state that an Auto Scaling instance is transitioning to. Present when the instance transitions to one of the target lifecycle states after March 10, 2022. Possible values: Detached |  InService | Standby |  Terminated | Warmed:Hibernated | Warmed:Running | Warmed:Stopped | Warmed:Terminated. See  https://docs.aws.amazon.com/autoscaling/ec2/userguide/retrieving-target-lifecycle-state-through-imds.html=Retrieve the target lifecycle state through instance metadata in the "Amazon EC2 Auto Scaling User Guide.amazonkaInstance metadata categories. The list of supported categories are listed in the  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-data-categories.htmlEC2 Documentation.amazonka'The AMI ID used to launch the instance.amazonkaIf you started more than one instance at the same time, this value indicates the order in which the instance was launched. The value of the first instance launched is 0.amazonkaThe path to the AMI's manifest file in Amazon S3. If you used an Amazon EBS-backed AMI to launch the instance, the returned result is unknown.amazonkaThe AMI IDs of any instances that were rebundled to create this AMI. This value will only exist if the AMI manifest file contained an  ancestor-amis key.amazonkaSee: amazonkaSee: amazonkaSee: amazonkaSee amazonkaSee amazonkaIf the EC2 instance is using IP-based naming (IPBN), this is the private IPv4 DNS hostname of the instance. If the EC2 instance is using Resource-based naming (RBN), this is the RBN. In cases where multiple network interfaces are present, this refers to the eth0 device (the device for which the device number is 0). For more information about IPBN and RBN, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html"Amazon EC2 instance hostname types.amazonkaSee: amazonkaSee: amazonkaNotifies the instance that it should reboot in preparation for bundling. Valid values: none | shutdown | bundle-pending.amazonkaThe ID of this instance.amazonkaThe purchasing option of this instance. For more information, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-purchasing-options.htmlInstance purchasing options.amazonka1The type of instance. For more information, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.htmlInstance types.amazonkaThe IPv6 address of the instance. In cases where multiple network interfaces are present, this refers to the eth0 device (the device for which the device number is 0) network interface and the first IPv6 address assigned. If no IPv6 address exists on network interface[0], this item is not set and results in an HTTP 404 response.amazonkaThe ID of the kernel launched with this instance, if applicable.amazonkaIn cases where multiple network interfaces are present, this refers to the eth0 device (the device for which the device number is 0). If the EC2 instance is using IP-based naming (IPBN), this is the private IPv4 DNS hostname of the instance. If the EC2 instance is using Resource-based naming (RBN), this is the RBN. For more information about IPBN, RBN, and EC2 instance naming, see  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html"Amazon EC2 instance hostname types.amazonkaThe private IPv4 address of the instance. In cases where multiple network interfaces are present, this refers to the eth0 device (the device for which the device number is 0). If this is an IPv6-only instance, this item is not set and results in an HTTP 404 response.amazonkaThe instance's media access control (MAC) address. In cases where multiple network interfaces are present, this refers to the eth0 device (the device for which the device number is 0).amazonkaSee: amazonkaSee: amazonkaAWS Marketplace product codes associated with the instance, if any.amazonkaThe instance's public DNS (IPv4). This category is only returned if the enableDnsHostnames attribute is set to true. For more information, see  =https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.htmlUsing DNS with Your VPC in the Amazon VPC User Guide. If the instance only has a public-IPv6 address and no public-IPv4 address, this item is not set and results in an HTTP 404 response.amazonkaThe public IP address. If an Elastic IP address is associated with the instance, the value returned is the Elastic IP address.amazonka?Public key. Only available if supplied at instance launch time.amazonka?The ID of the RAM disk specified at launch time, if applicable.amazonkaID of the reservation.amazonka9The names of the security groups applied to the instance.After launch, you can change the security groups of the instances. Such changes are reflected here and in .network/interfaces/macs/${mac}/security-groups.amazonkaSee: amazonkaSee: amazonkaSee: amazonkaValue showing whether the customer has enabled detailed one-minute monitoring in CloudWatch.Valid values: enabled | disabled.amazonkaJSON containing instance attributes, such as instance-id, private IP address, etc. See: , InstanceDocument.amazonkaUsed to verify the document's authenticity and content against the signature.amazonkaData that can be used by other parties to verify its origin and authenticity.amazonkaTest whether the underlying host is running on EC2 by making an HTTP request to  http://instance-data/latest.amazonkaRetrieve the specified  data.Throws  HttpException if HTTP communication fails.amazonkaRetrieve the specified .Throws  HttpException if HTTP communication fails.amazonka Retrieve the user data. Returns . if no user data is assigned to the instance.Throws  HttpException if HTTP communication fails.amazonkaRetrieve the instance's identity document, detailing various EC2 metadata.You can alternatively retrieve the raw unparsed identity document by using  and the  path.See:  http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-identity-documents.htmlAWS Instance Identity Documents.(c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=?ZamazonkaInfo messages supplied by the user - this level is not emitted by the library.amazonkaError messages only.amazonka/Useful debug information + info + error levels.amazonkaIncludes potentially sensitive signing metadata, and non-streaming response bodies.amazonkaA logging function called by various default hooks to log informational and debug messages.amazonkaThis is a primitive logger which can be used to log builds to a Handle.Note:/ A more sophisticated logging library such as  *http://hackage.haskell.org/package/tinylogtinylog or  .http://hackage.haskell.org/package/fast-logger fast-logger$ should be used in production code.(c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=?hamazonkaThe environment containing the parameters required to make AWS requests.This type tracks whether or not we have credentials at the type level, to avoid "presigning" requests when we lack auth information.amazonkaAn environment with no auth credentials. Used for certain requests which need to be unsigned, like sts:AssumeRoleWithWebIdentity, and you can create one with  if you need it.amazonkaAn environment with auth credentials. Most AWS requests need one of these, and you can create one with .amazonka%Creates a new environment with a new  without debug logging and uses the provided function to expand/discover credentials. Record updates or lenses can be used to further configure the resulting .Since: 1.5.0( - The region is now retrieved from the  AWS_REGION environment variable (identical to official SDKs), or defaults to  us-east-1. You can override the  region by updating its  field.Since: 1.3.6" - The default logic for retrying  s now uses  to retry specific connection failure conditions up to 3 times. Previously only service specific errors were automatically retried. This can be reverted to the old behaviour by resetting the s  field to (\_ _ -> False).Throws  AuthError; when environment variables or IAM profiles cannot be read.See: .amazonka0Creates a new environment, but with an existing .amazonkaGenerate an environment without credentials, which may only make unsigned requests. Sets the region based on the  AWS_REGION environment variable, or h if unset.%This lets us support calls like the  https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.htmlsts:AssumeRoleWithWebIdentity operation, which needs to make an unsigned request to pass the token from an identity provider.amazonkaGenerate an environment without credentials, passing in an explicit .amazonka Get "the"  from an  , if we can.amazonkaLook up the region in the  AWS_REGION environment variable.amazonkaRetry the subset of transport specific errors encompassing connection failure up to the specific number of times.amazonkaProvide a function which will be added to the existing stack of overrides applied to all service configurations.amazonkaConfigure a specific service. All requests belonging to the supplied service will use this configuration instead of the default.It's suggested you modify the default service configuration, such as  Amazonka.DynamoDB.defaultService.amazonka$Override the timeout value for this .+Default timeouts are chosen by considering:This timeout , if set. The related 3 timeout for the sent request if set. (Usually 70s)The  timeout if set. The default  timeout. (Approximately 30s)amazonkaDisable any retry logic for an 2, so that any requests will at most be sent once.amazonka&Credential discovery mechanism, often .amazonkaCredential discovery mechanism.(c) 2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay highly experimentalnon-portable (GHC extensions) Safe-Inferred%"%&'()*/1589:;<=?famazonkaCalled at the start of request processing, before the request is configured. This is always the first hook that runs, and argument is usually a request record type like  amazonka-s3's GetObjectRequest.amazonkaCalled after the request has been configured into an abstract HTTP request, but before it is converted to a signed Network.HTTP.Client..0If you want to add additional headers (e.g., a  https://docs.aws.amazon.com/xray/latest/devguide/xray-concepts.html#xray-concepts-tracingheaderTrace ID for AWS X-Ray), do it with this hook.amazonkaCalled at the start of waiter processing, just after the request is configured.amazonkaCalled just after a request is signed, containing signature metadata and a Network.HTTP.Client..amazonka Called on a Network.HTTP.Client.4, just before it is sent. While you can retrieve a  from the 1 hook, this hook captures unsigned requests too.Changing the contents of a signed request is highly likely to break its signature.amazonkaCalled on the raw Network.HTTP.Client., as soon as it comes back from the HTTP client. The body is replaced with ()0 to prevent its accidental consumption by hooks.amazonkaCalled on the raw response body, after it has been sunk from the Network.HTTP.Client..amazonka=Called when Amazonka decides to retry a failed request. The  argument is an error code like  "http_error", "request_throttled_exception"6. Check the retry check function for your particular Service , usually found somewhere like  Amazonka.S3.Types.defaultService.amazonkaCalled when Amazonka decides to retry a request while resolving an  operation.amazonkaCalled when a response from AWS is successfully deserialised. Because the  type family is not injective, we include the original request.amazonka*Called whenever an AWS request returns an 2, even when the corresponding request is retried.On the final error after all retries, this hook will be called twice: once with NotFinal and once with Final0. This behavior may change in a future version.amazonkaIndicates whether an error hook is potentially going to be retried.See: amazonka=A hook that cannot return an updated version of its argument.amazonka8A hook that returns an updated version of its arguments.amazonkaTurn a  a into another  a that does nothing.&- Example: remove all request hooks: ( requestHook noHook :: Hooks -> Hooks amazonkaTurn a  a into another  a that does nothing. -- Example: Remove all response hooks: responseHook noHook_ :: Hooks -> Hooks amazonkaUnconditionally add a  a to the chain of hooks. If you need to do something with specific request types, you want  , instead.amazonkaUnconditionally add a  a to the chain of hooks. If you need to do something with specific request types, you want  , instead.amazonkaLike 8, adds an unconditional hook, but it also captures the  a constraint. Useful for handling every AWS request type in a generic way.amazonka is  but for s.amazonkaaddHookFor @a newHook oldHook When a and b are the same type, run the given 'Hook a' after all others, otherwise only run the existing hooks. -- Example: Run getObjectRequestHook on anything that is a GetObjectRequest: requestHook (addHookFor @GetObjectRequest getObjectRequestHook) :: Hooks -> Hooks amazonkaWhen a and b are the same type, run the given 'Hook_ a' after all other hooks have run. -- Example: Run aSignedRequestHook on anything that is a Signed GetObjectRequest: requestHook (addHookFor_ @(Signed GetObjectRequest) aSignedRequestHook) :: Hooks -> Hooks amazonkaWhen a and b/ are the same type, do not call any more hooks. =-- Example: Prevent any request hooks from running against a PutObjectRequest: requestHook (removeHooksFor @PutObjectRequest) :: Hooks -> Hooks amazonkaWhen a and b/ are the same type, do not call any more hooks. -- Example: Prevent any error hooks from running against errors caused by a PutObjectRequest: errorHook (removeHooksFor @(Finality, Request PutObjectRequest, Error)) :: Hooks -> Hooks amazonka&Run the wrapped hook unless the given Fold or  Traversal matches the error. You will probably want to use this with the error matchers defined by each service binding, allowing you to selectively silence specific errors: -- Assuming `env :: Amazonka.Env` and `putRequest :: DynamoDB.PutRequest`, -- this silences a single type of error for a single call: send (env & #hooks %~ errorHook (silenceError DynamoDB._ConditionalCheckFailedException))  :: Getter Error e ->  (, Request a, Error) ->  (, Request a, Error)  :: Fold Error e ->  (, Request a, Error) ->  (, Request a, Error)  :: Iso' Error e ->  (, Request a, Error) ->  (, Request a, Error)  :: Lens' Error e ->  (, Request a, Error) ->  (, Request a, Error)  :: Traversal' Error e ->  (, Request a, Error) ->  (, Request a, Error) amazonka'Add default logging hooks. The default  from  already has logging hooks installed, so you probably only want this if you are building your own  from scratch.amazonkaEmpty / structure which returns everything unmodified.** (c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=?zamazonka3Make a one-shot request to AWS, using a configured  (which contains the , plus any overrides). (c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=?amazonka Explicit access and secret keys.amazonkaTemporary credentials from a STS session consisting of the access key, secret key, and session token.See: amazonkaTemporary credentials from a STS session consisting of the access key, secret key, session token, and expiration time.See: amazonkaRetrieve access key, secret key and a session token from environment variables. We copy the behaviour of the SDKs and respect the following variables:AWS_ACCESS_KEY_ID (and its alternate name, AWS_ACCESS_KEY)AWS_SECRET_ACCESS_KEY (and its alternate name, AWS_SECRET_KEY)AWS_SESSION_TOKEN (if present)Throws MissingEnvError7 if a required environment variable is empty or unset. (c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=?amazonkaRetrieve the default IAM Profile from the local EC2 instance-data.The default IAM profile is determined by Amazon as the first profile found in the response from:  http://169.254.169.254/latest/meta-data/iam/security-credentials/Throws  if the HTTP call fails, or , if the default IAM profile cannot be read.amazonkaLookup a specific IAM Profile by name from the local EC2 instance-data.Additionally starts a refresh thread for the given authentication environment.The resulting IORef wrapper + timer is designed so that multiple concurrent accesses of AuthEnv from the AWS environment are not required to calculate expiry and sequentially queue to update it.The forked timer ensures a singular owner and pre-emptive refresh of the temporary session credentials before expiration.A weak reference is used to ensure that the forked thread will eventually terminate when Auth is no longer referenced.If no session token or expiration time is present the credentials will be returned verbatim. (c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=?amazonkaObtain credentials exposed to a task via the ECS container agent, as described in the  http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.htmlIAM Roles for Tasks section of the AWS ECS documentation. The credentials are obtained by making a request to the given URL.The ECS container agent provides an access key, secret key, session token, and expiration time. As these are temporary credentials, this function also starts a refresh thread that will periodically fetch fresh credentials before the current ones expire.amazonka>Obtain credentials from the ECS container agent, by querying  http://169.254.170.2 at the path contained by the &AWS_CONTAINER_CREDENTIALS_RELATIVE_URI environment variable.Throws  if the &AWS_CONTAINER_CREDENTIALS_RELATIVE_URI% environment variable is not set or  if the payload returned by the ECS container agent is not of the expected format.NOTE:" We do not currently respect the "AWS_CONTAINER_CREDENTIALS_FULL_URI or "AWS_CONTAINTER_AUTHORIZATION_TOKEN environment variable. If you need support for these, please file a PR.amazonka Absolute URL (c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred%"%&'()*/1589:;<=?amazonkaPresign an URL that is valid from the specified time until the number of seconds expiry has elapsed.See: , amazonkaPresign an HTTP request that is valid from the specified time until the number of seconds expiry has elapsed.See: , amazonka A variant of # that allows modifying the default + definition used to configure the request.See: amazonka;Modification to the headers that is applied by default (in ); removes the Expect header which is added to every  PutObject.amazonka A variant of # that allows modifying the default Headers and the default * definition used to configure the request.amazonka Signing time.amazonka Expiry time.amazonkaRequest to presign.amazonka Signing time.amazonka Expiry time.amazonkaRequest to presign.amazonka)Modify the default service configuration.amazonka Signing time.amazonka Expiry time.amazonkaRequest to presign.amazonkaModify the default headers.amazonka)Modify the default service configuration.amazonka Signing time.amazonka Expiry time.amazonkaRequest to presign. Safe-Inferred$"%&'()*/1589:;<=?amazonkaSend a request, returning the associated response if successful.See .amazonkaSend a request, returning the associated response if successful.Errors are thrown in .See .amazonkaMake a request without signing it. You will almost never need to do this, but some authentication methods (e.g. sts:AssumeRoleWithWebIdentity and sso:GetRoleCredentials) require you to exchange a token using an unsigned request. Amazonka's support for these authentication methods calls , and we re-export these functions in case you need to support similar authentication methods in your code.See .amazonkaMake an unsigned request, returning the associated response if successful.Errors are thrown in .See .amazonkaRepeatedly send a request, automatically setting markers and performing pagination.%Exits on the first encountered error.See .amazonkaRepeatedly send a request, automatically setting markers and performing pagination. Exits on the first encountered error.Errors are thrown in .See .amazonka8Poll the API with the supplied request until a specific Wait condition is fulfilled.See .amazonka8Poll the API with the supplied request until a specific Wait condition is fulfilled.Errors are thrown in .See .(c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=?jamazonkaAssume a role using the sts:AssumeRole API.This is a simplified interface suitable for most purposes, but if you need the full functionality of the sts:AssumeRole6 API, you will need to craft your own requests using  amazonka-sts#. If you do this, remember to use  so that your application does not get stuck holding temporary credentials which have expired.amazonka https://aws.amazon.com/blogs/opensource/introducing-fine-grained-iam-roles-service-accounts/$ Obtain temporary credentials from sts:AssumeRoleWithWebIdentity.The STS service provides an access key, secret key, session token, and expiration time. Also spawns a refresh thread that will periodically fetch fresh credentials before the current ones expire.0The implementation is modelled on the C++ SDK: https://github.com/aws/aws-sdk-cpp/blob/6d6dcdbfa377393306bf79585f61baea524ac124/aws-cpp-sdk-core/source/auth/STSCredentialsProvider.cpp#L33amazonka#Obtain temporary credentials from sts:AssumeRoleWithWebIdentity:, sourcing arguments from standard environment variables: AWS_WEB_IDENTITY_TOKEN_FILE  AWS_ROLE_ARNAWS_ROLE_SESSION_NAME (optional)Throws 7 if a required environment variable is empty or unset.amazonkaRole ARNamazonkaRole session nameamazonkaPath to token fileamazonkaRole ARNamazonkaRole Session Name(c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=?amazonka!Assume a role using an SSO Token.%The user must have previously called  aws sso login, and pass in the path to the cached token file, along with SSO region, account ID and role name. ( understands the sso_7 variables used by the official AWS CLI and will call  for you.) This function uses 9 to refresh the credentials as long as the token in the  sso/cache: file is not expired. When it has, the user will need to  aws sso login again. https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.htmlamazonka)Return the cached token file for a given  sso_start_url Matches  https://github.com/boto/botocore/blob/c02f3561f56085b8a3f98501d25b9857b916c10e/botocore/utils.py#L2596-L2597botocore&, so that we find tokens produced by  aws sso login.amazonka Account IDamazonka Role Name(c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=? 1234567;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abde(c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=?^amazonka Recognizes aws_access_key_id, aws_secret_access_key, and optionally aws_session_token.amazonka Recognizes role_arn and source_profile.amazonka Recognizes role_arn and credential_source.amazonka Recognizes role_arn, role_session_name, and web_identity_token_file.amazonka Recognizes  sso_start_url,  sso_region, sso_account_id, and  sso_role_name.amazonkaRetrieve credentials from the AWS config/credentials files, as Amazonka currently understands them:AWS recommends credentials do not live in the config file, but allows it. type, to understand the methods Amazonka currently supports.amazonkaLoads the default config/credentials INI files and selects a profile by environment variable ( AWS_PROFILE).Throws  if credFile is missing, or $ if an error occurs during parsing.This looks in in the HOME! directory as determined by the  ,http://hackage.haskell.org/package/directory directory library. Not Windows: $HOME/.aws/credentials Windows: %USERPROFILE%\.aws\credentialsamazonka Profile nameamazonkaCredentials fileamazonka Config fileamazonka CredentialsamazonkaConfig(c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=?amazonkaAttempt to fetch credentials in a way similar to the official AWS SDKs. The  https://github.com/aws/aws-sdk-cpp/blob/fb8cbebf2fd62720b65aeff841ad2950e73d8ebd/Docs/Credentials_Providers.md#default-credential-provider-chainC++ SDK lists the following sequence:=Check environment variables for keys provided directly (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, optionally AWS_SESSION_TOKEN)Check credentials/config files for authentication information, respecting the  AWS_PROFILE environment variable.7Exchange a Web Identity for AWS Credentials using sts:AssumeRoleWithWebIdentity, respecting the AWS_WEB_IDENTITY_TOKEN_FILE,  AWS_ROLE_ARN, and optionally the AWS_ROLE_SESSION_NAME environment variables.>Retrieve credentials from the ECS Container Agent if the &AWS_CONTAINER_CREDENTIALS_RELATIVE_URI" environment variable is set.If we think we're running on EC2, retrieve the first available IAM profile from the instance identity document, and use this to set the . We attempt to resolve  http://instance-data& rather than directly retrieving  http://169.254.169.254 for IAM profile information. This ensures that the DNS lookup terminates promptly if not running on EC2, but means that your VPC must have enableDnsSupport and enableDnsHostnames set.NOTE: This is not 100% consistent with the AWS SDKs, which does not attempt to query the ECS service if either &AWS_CONTAINER_CREDENTIALS_RELATIVE_URI or "AWS_CONTAINER_CREDENTIALS_FULL_URI are set.See: https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/EC2ContainerCredentialsProviderWrapper.htmlamazonkaCompose a list of credential-providing functions by testing each until one returns successfully. If they throw 9, the next function in the chain will be tried. Throws  if the list is exhausted.3030(c) 2013-2023 Brendan HayMozilla Public License, v. 2.0..Brendan Hay  provisionalnon-portable (GHC extensions) Safe-Inferred$"%&'()*/1589:;<=?amazonkaPresign an URL that is valid from the specified time until the number of seconds expiry has elapsed.amazonkaPresign an HTTP request that is valid from the specified time until the number of seconds expiry has elapsed.amazonka Signing time.amazonka Expiry time.amazonkaRequest to presign.amazonka Signing time.amazonka Expiry time.amazonkaRequest to presign.  !"#$%&'()+*-,./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef~}|{zyxwvutsrqponmlkjihg~}|{zyxwvutsrqponmlkjihg~}|{zyxwvutsrqponmlkjihg'$#"  !"#$%&'()+*-,./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ghijklmnopqrstuvwxyz{|}~ !"!#!$!%!&!'!(!)!*!+!,!-!.!/!0!1!2!3!4!5!6!67879:;:<:=:>:?:@:A:B:C:D:E:F:GHIHJHKHLHMHNOPOQOROSOTOUOVOWOXOYOZO[O\O]O^O_O`OaObOcOdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzO{O|O}O~OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO                   #amazonka-2.0-48plDWnPMAk3PGO79vdSa0Amazonka Amazonka.AuthAmazonka.LoggerAmazonka.Auth.ExceptionAmazonka.Auth.BackgroundAmazonka.EC2.MetadataAmazonka.Env.Hooks Amazonka.Env Amazonka.HTTPAmazonka.Auth.KeysAmazonka.Auth.InstanceProfileAmazonka.Auth.ContainerAmazonka.Presign Amazonka.SendAmazonka.Auth.STSAmazonka.Auth.SSOAmazonka.Auth.ConfigFilediscoverNetwork.HTTP.ClientRequestResponseawaitnewEnv fromFilePath Amazonka.Lens time-1.11.1.1 Data.Time.Clock.Internal.UTCTimeUTCTime(amazonka-core-2.0-BFuA7FRvuklLoYhn4b6A6p Amazonka.Coremay.!@Amazonka.Waiter nonEmptyText matchError matchStatus matchNonEmptymatchAnymatchAllacceptwait_acceptors wait_delay wait_attempts wait_nameAcceptor AcceptRetry AcceptFailure AcceptSuccessAccept$sel:acceptors:Wait$sel:delay:Wait$sel:attempts:Wait$sel:name:WaitWaitAmazonka.EndpointdefaultEndpoint setEndpointAmazonka.Error decodeErrorparseRESTError parseXMLErrorparseJSONError getErrorCode getRequestId serviceErrorhasCode hasStatus hasService _HttpStatus statusSuccess_MatchServiceErrorAmazonka.PagerchoicestoppageAWSPager truncated AWSTruncatedAmazonka.TypestoMicroseconds toSecondswithAuthauthEnv_expirationauthEnv_sessionTokenauthEnv_secretAccessKeyauthEnv_accessKeyId _SessionToken _SecretKey _AccessKeyrequestUnsignedrequestPresign requestSign request_bodyrequest_headers request_query request_pathrequest_methodrequest_service service_retry service_error service_checkservice_timeoutservice_endpointservice_endpointPrefixservice_s3AddressingStyleservice_versionservice_signingNameservice_signerservice_abbrevsigned_signedRequestsigned_signedMeta retry_checkretry_attempts retry_growth retry_baseendpoint_scope endpoint_portendpoint_secureendpoint_basePath endpoint_hostserviceError_requestIdserviceError_messageserviceError_codeserviceError_headersserviceError_statusserviceError_abbrevserializeError_messageserializeError_bodyserializeError_statusserializeError_abbrev _RequestId _ErrorMessage newErrorCode _ErrorCode_AbbrevnewClientRequestOhio NorthVirginiaNorthCaliforniaOregonCapeTownHongKong HyderabadJakarta MelbourneMumbaiOsakaSeoul SingaporeSydneyTokyoMontreal FrankfurtIrelandLondonMilanParisSpain StockholmZurichBahrainUAESaoPaulo GovCloudEast GovCloudWestBeijingNingxia ClientRequestClientResponse ClientBodyAbbrev ErrorCode"$sel:fromErrorMessage:ErrorMessage ErrorMessage$sel:fromRequestId:RequestId RequestId ServiceErrorSerializeErrorTransportErrorError$sel:message:SerializeError'$sel:body:SerializeError'$sel:status:SerializeError'$sel:abbrev:SerializeError'SerializeError'$sel:requestId:ServiceError'$sel:message:ServiceError'$sel:code:ServiceError'$sel:headers:ServiceError'$sel:status:ServiceError'$sel:abbrev:ServiceError' ServiceError' _ServiceError_SerializeError_TransportError_ErrorAsError$sel:scope:Endpoint$sel:port:Endpoint$sel:secure:Endpoint$sel:basePath:Endpoint$sel:host:EndpointEndpoint$sel:check:Exponential$sel:attempts:Exponential$sel:growth:Exponential$sel:base:Exponential ExponentialRetryMeta$sel:signedRequest:Signed$sel:signedMeta:SignedSigned Algorithm$sel:sign:SignerSigner$sel:retry:Service$sel:error:Service$sel:check:Service$sel:timeout:Service$sel:endpoint:Service$sel:endpointPrefix:Service$sel:s3AddressingStyle:Service$sel:version:Service$sel:signingName:Service$sel:signer:Service$sel:abbrev:ServiceServiceS3AddressingStyleVirtualS3AddressingStylePathS3AddressingStyleAutoS3AddressingStyle$sel:body:Request$sel:headers:Request$sel:query:Request$sel:path:Request$sel:method:Request$sel:service:Requestresponserequest AWSResponse AWSRequest AccessKey SecretKey SessionToken$sel:expiration:AuthEnv$sel:sessionToken:AuthEnv$sel:secretAccessKey:AuthEnv$sel:accessKeyId:AuthEnvAuthEnvAuthRef$sel:fromRegion:Region'Region'RegionSecondsAmazonka.Data.Base64_Base64$sel:unBase64:Base64Base64Amazonka.Data.Sensitive _Sensitive$sel:fromSensitive:Sensitive SensitiveAmazonka.Data.Body contentLength toRequestBody isStreaming md5Base64 hashedBodyhashedFileRange hashedFile sha256Base16sourceFileRangeChunkssourceFileChunksunsafeChunkedBodychunkedFileRange chunkedFileremainderBytes fullChunks fuseChunkschunkedBody_bodychunkedBody_lengthchunkedBody_sizedefaultChunkSize _ChunkSizesinkBody fuseStream _ResponseBody getFileSize$sel:body:ResponseBody ResponseBody ChunkSize$sel:body:ChunkedBody$sel:length:ChunkedBody$sel:size:ChunkedBody ChunkedBody HashedBytes HashedStream HashedBodyHashedChunked RequestBodytoHashed ToHashedBodytoBodyToBodyAmazonka.Data.Log buildLinesbuildToLogAmazonka.Data.Time_Time POSIXFormat AWSFormat BasicFormat ISO8601Format RFC822FormatFormat$sel:fromTime:TimeTimeRFC822ISO8601 BasicTimeAWSTimePOSIXAmazonka.Crypto sinkSHA256sinkMD5!lens-5.2.2-BBWcDLfwYXz2ZnKGS8IXgNControl.Exception.Lenscatchingtrying+http-client-0.7.13.1-JwOlk3BwWeMB3IVAjKPLs0Network.HTTP.Client.Types HttpException&resourcet-1.3.0-A6NymxaN5yD2guSinOmkB6Control.Monad.Trans.Resource runResourceT AsAuthError _AuthError_RetrievalError_MissingEnvError_MissingFileError_InvalidFileError_InvalidIAMError AuthErrorRetrievalErrorMissingEnvErrorMissingFileErrorInvalidFileErrorInvalidIAMErrorCredentialChainExhausted$fToLogAuthError$fExceptionAuthError$fAsAuthErrorAuthError$fAsAuthErrorSomeException$fShowAuthError$fGenericAuthErrorfetchAuthInBackgroundIdentityDocument($sel:devpayProductCodes:IdentityDocument%$sel:billingProducts:IdentityDocument$sel:version:IdentityDocument$sel:privateIp:IdentityDocument&$sel:availabilityZone:IdentityDocument$sel:region:IdentityDocument $sel:instanceId:IdentityDocument"$sel:instanceType:IdentityDocument$sel:accountId:IdentityDocument$sel:imageId:IdentityDocument$sel:kernelId:IdentityDocument$sel:ramdiskId:IdentityDocument"$sel:architecture:IdentityDocument!$sel:pendingTime:IdentityDocumentTagsInstanceSpotSInstanceActionSTerminationTimeServicesDomain Partition PlacementAvailabilityZoneAvailabilityZoneId GroupNameHostIdPartitionNumber Interface IDeviceNumber IInterfaceIdIIPV4AssociationsIIPV6sILocalHostname ILocalIPV4sIMACINetworkCardIndexIOwnerIdIPublicHostname IPublicIPV4sISecurityGroupsISecurityGroupIds ISubnetIdISubnetIPV4_CIDRBlockISubnetIPV6_CIDRBlockIVPCIdIVPCIPV4_CIDRBlockIVPCIPV4_CIDRBlocksIVPCIPV6_CIDRBlocksIdentityCredentialsEC2ICEInfoICESecurityCredentialsIAMInfoSecurityCredentialsRecommendations Rebalance MaintenanceHistory ScheduledEventsElasticInferenceEIAssociations ElasticGpusEGAssociationsMappingAMIEBS EphemeralRootSwap AutoscalingTargetLifecycleStateMetadataAMIIdAMILaunchIndexAMIManifestPathAncestorAMIIds BlockDeviceHostnameInstanceAction InstanceIdInstanceLifeCycle InstanceTypeIPV6KernelId LocalHostname LocalIPV4MACNetwork ProductCodesPublicHostname PublicIPV4 OpenSSHKey RAMDiskId ReservationIdSecurityGroupsDynamicFWSDocumentPKCS7 SignatureisEC2dynamicmetadatauserdata#identityDocument_devpayProductCodes identityDocument_billingProductsidentityDocument_versionidentityDocument_privateIp!identityDocument_availabilityZoneidentityDocument_regionidentityDocument_instanceIdidentityDocument_instanceTypeidentityDocument_accountIdidentityDocument_imageIdidentityDocument_kernelIdidentityDocument_ramdiskIdidentityDocument_architectureidentityDocument_pendingTimeidentity$fToTextDynamic$fToTextAutoscaling$fToTextMapping$fToTextElasticGpus$fToTextElasticInference$fToTextMaintenance$fToTextRecommendations$fToTextEvents $fToTextIAM$fToTextIdentityCredentialsEC2$fToTextInterface$fToTextPlacement$fToTextServices $fToTextSpot $fToTextTags$fToTextMetadata$fToJSONIdentityDocument$fFromJSONIdentityDocument$fEqIdentityDocument$fShowIdentityDocument$fGenericIdentityDocument $fEqMetadata $fOrdMetadata$fShowMetadata$fGenericMetadata$fEqTags $fOrdTags $fShowTags $fGenericTags$fEqSpot $fOrdSpot $fShowSpot $fGenericSpot $fEqServices $fOrdServices$fShowServices$fGenericServices $fEqPlacement$fOrdPlacement$fShowPlacement$fGenericPlacement $fEqInterface$fOrdInterface$fShowInterface$fGenericInterface$fEqIdentityCredentialsEC2$fOrdIdentityCredentialsEC2$fShowIdentityCredentialsEC2$fGenericIdentityCredentialsEC2$fEqIAM$fOrdIAM $fShowIAM $fGenericIAM $fEqEvents $fOrdEvents $fShowEvents$fGenericEvents$fEqRecommendations$fOrdRecommendations$fShowRecommendations$fGenericRecommendations$fEqMaintenance$fOrdMaintenance$fShowMaintenance$fGenericMaintenance$fEqElasticInference$fOrdElasticInference$fShowElasticInference$fGenericElasticInference$fEqElasticGpus$fOrdElasticGpus$fShowElasticGpus$fGenericElasticGpus $fEqMapping $fOrdMapping $fShowMapping$fGenericMapping$fEqAutoscaling$fOrdAutoscaling$fShowAutoscaling$fGenericAutoscaling $fEqDynamic $fOrdDynamic $fShowDynamic$fGenericDynamicHooksLogLevelDebugTraceLogger newLoggerlogErrorlogInfologDebuglogTrace$fToByteStringLogLevel$fToTextLogLevel$fFromTextLogLevel $fEqLogLevel $fOrdLogLevel$fEnumLogLevel$fShowLogLevel$fGenericLogLevelEnv'Env$sel:region:Env$sel:logger:Env$sel:hooks:Env$sel:retryCheck:Env$sel:overrides:Env$sel:manager:Env $sel:auth:Env$sel:request:Hooks$sel:configuredRequest:Hooks$sel:wait:Hooks$sel:signedRequest:Hooks$sel:clientRequest:Hooks$sel:clientResponse:Hooks$sel:rawResponseBody:Hooks$sel:requestRetry:Hooks$sel:awaitRetry:Hooks$sel:response:Hooks$sel:error:HooksFinalityNotFinalFinalHook_Hook requestHookwaitHookconfiguredRequestHooksignedRequestHookclientRequestHookclientResponseHookrawResponseBodyHookrequestRetryHookawaitRetryHook responseHook errorHooknoHooknoHook_addHookaddHook_addAWSRequestHookaddAWSRequestHook_ addHookFor addHookFor_removeHooksForremoveHooksFor_ silenceErroraddLoggingHooksnoHooks$fBoundedFinality$fEnumFinality $fEqFinality $fOrdFinality$fShowFinality$fGenericFinality EnvNoAuth env_region env_logger env_hooksenv_retryCheck env_overrides env_managerenv_authnewEnvFromManager newEnvNoAuthnewEnvNoAuthFromManager authMaybe lookupRegionretryConnectionFailureoverrideServiceconfigureService globalTimeoutonce $fGenericEnv' retryRequest awaitRequest httpRequestconfigureRequest retryStream retryServicefromKeys fromSessionfromTemporarySession fromKeysEnvfromDefaultInstanceProfilefromNamedInstanceProfile fromContainerfromContainerEnv presignURLpresign presignWithdefaultHeaderspresignWithHeaders sendEithersendsendUnsignedEither sendUnsignedpaginateEitherpaginate awaitEitherfromAssumedRolefromWebIdentityfromWebIdentityEnvCachedAccessToken$sel:startUrl:CachedAccessToken$sel:region:CachedAccessToken"$sel:accessToken:CachedAccessToken $sel:expiresAt:CachedAccessTokencachedAccessToken_startUrlcachedAccessToken_regioncachedAccessToken_accessTokencachedAccessToken_expiresAtfromSSOrelativeCachedTokenFilereadCachedAccessTokenroleCredentialsToAuthEnv$fShowCachedAccessToken$fEqCachedAccessToken$fGenericCachedAccessToken$fFromJSONCachedAccessTokenCredentialSource EnvironmentEc2InstanceMetadata EcsContainer ConfigProfile ExplicitKeysAssumeRoleFromProfileAssumeRoleFromCredentialSourceAssumeRoleWithWebIdentityAssumeRoleViaSSO mergeConfigsparseConfigProfile fromFileEnvconfigPathRelative$fEqConfigProfile$fShowConfigProfile$fGenericConfigProfile$fEqCredentialSource$fShowCredentialSource$fGenericCredentialSourcerunCredentialChainghc-prim GHC.TypesIObase GHC.IORefIORef text-1.2.5.0Data.Text.InternalTextAmazonka.Data.TextfromText GHC.MaybeNothingManager