_}J      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ (c) 2013-2015 Brendan HayMozilla Public License, v. 2.0.%Brendan Hay <brendan.g.hay@gmail.com> provisionalnon-portable (GHC extensions)None 3456789:;<= ;:897=<6543(c) 2013-2015 Brendan HayMozilla Public License, v. 2.0.%Brendan Hay <brendan.g.hay@gmail.com> provisionalnon-portable (GHC extensions)None4?ePresign an URL that is valid from the specified time until the number of seconds expiry has elapsed.See: @, A@nPresign an HTTP request that is valid from the specified time until the number of seconds expiry has elapsed.See: AA A variant of @# that allows modifying the default + definition used to configure the request.? Signing time. Expiry time.Request to presign.@ Signing time. Expiry time.Request to presign.A)Modify the default service configuration. Signing time. Expiry time.Request to presign.?@A?@A?@A(c) 2013-2015 Brendan HayMozilla Public License, v. 2.0.%Brendan Hay <brendan.g.hay@gmail.com> provisionalnon-portable (GHC extensions)NoneB@This is a primitive logger which can be used to log builds to a .Note:/ A more sophisticated logging library such as  *http://hackage.haskell.org/package/tinylogtinylog or  -http://hackage.haskell.org/package/FastLogger fast-logger$ should be used in production code.B34BB (c) 2013-2015 Brendan HayMozilla Public License, v. 2.0.%Brendan Hay <brendan.g.hay@gmail.com> provisionalnon-portable (GHC extensions)NoneC C6Convenience function for obtaining the size of a file.D Connect a  to a response stream.E Construct a - from a , calculating the  hash and file size.Note: While this function will perform in constant space, it will enumerate the entirety of the file contents _twice_. Firstly to calculate the SHA256 and lastly to stream the contents to the socket during sending.See: 0.F Construct a -) from a source, manually specifying the  hash and file size.See: 0.GSomething something.Will intelligently revert to -, if the file is smaller than the specified +.)Add note about how it selects chunk size.See: 2.HSomething something.[Marked as unsafe because it does nothing to enforce the chunk size. Typically for conduit ( functions, it's whatever ByteString's defaultBufferSize is, around 32 KB. If the chunk size is less than 8 KB, the request will error. 64 KB or higher chunk size is recommended for performance reasons.QNote that it will always create a chunked body even if the request is too small.See: 2.IIncrementally calculate a  .JIncrementally calculate a  ..A cryptonite compatible incremental hash sink. CDEFGHIJ CDEFGHIJ CDEFGHIJ(c) 2013-2015 Brendan HayMozilla Public License, v. 2.0.%Brendan Hay <brendan.g.hay@gmail.com> provisionalnon-portable (GHC extensions)None+4U3LReturns information about the last time the instance profile was updated, including the instance's LastUpdated date, InstanceProfileArn, and InstanceProfileId.MvWhere role-name is the name of the IAM role associated with the instance. Returns the temporary security credentials.See:  for JSON deserialisation.OThe device number associated with that interface. Each interface must have a unique device number. The device number serves as a hint to device naming in the instance; for example, device-number is 2 for the eth2 device.PkThe private IPv4 addresses that are associated with each public-ip address and assigned to that interface.QThe interface's local hostname.R7The private IP addresses associated with the interface.SThe instance's MAC address.TThe 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.UThe interface's public DNS. If the instance is in a VPC, this category is only returned if the enableDnsHostnames attribute is set to true. For more information, see Using DNS with Your VPC.VkThe Elastic IP addresses associated with the interface. There may be multiple IP addresses on an instance.WiSecurity groups to which the network interface belongs. Returned only for instances launched into a VPC.XIDs of the security groups to which the network interface belongs. Returned only for instances launched into a VPC. For more information on security groups in the EC2-VPC platform, see Security Groups for Your VPC.YfThe ID of the subnet in which the interface resides. Returned only for instances launched into a VPC.ZnThe CIDR block of the subnet in which the interface resides. Returned only for instances launched into a VPC.[cThe ID of the VPC in which the interface resides. Returned only for instances launched into a VPC.\kThe CIDR block of the VPC in which the interface resides. Returned only for instances launched into a VPC.^;The virtual device that contains the root/boot file system._The 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).`vThe virtual devices associated with ephemeral devices, if present. The N indicates the index of the ephemeral volume.aThe 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.b=The virtual devices associated with swap. Not always present.d'The AMI ID used to launch the instance.eIf 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.fThe 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.gThe 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.hSee: ]iThe private 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).jSee: KkyNotifies the instance that it should reboot in preparation for bundling. Valid values: none | shutdown | bundle-pending.lThe ID of this instance.mThe type of instance.See:  InstanceTypen@The ID of the kernel launched with this instance, if applicable.oThe private 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).pThe private IP 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).qThe 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).rSee: Ns5The Availability Zone in which the instance launched.t3Product codes associated with the instance, if any.uThe instance's public DNS. If the instance is in a VPC, this category is only returned if the enableDnsHostnames attribute is set to true. For more information, see Using DNS with Your VPC.vThe public IP address. If an Elastic IP address is associated with the instance, the value returned is the Elastic IP address.w?Public key. Only available if supplied at instance launch time.x?The ID of the RAM disk specified at launch time, if applicable.yID of the reservation.z9The names of the security groups applied to the instance.|]Value showing whether the customer has enabled detailed one-minute monitoring in CloudWatch.!Valid values: enabled | disabled.}SJSON containing instance attributes, such as instance-id, private IP address, etc.~NUsed to verify the document's authenticity and content against the signature.QTest whether the underlying host is running on EC2 by making an HTTP request to  http://instance-data/latest.Retrieve the specified { data.Throws  if HTTP communication fails.Retrieve the specified c.Throws  if HTTP communication fails. Retrieve the user data. Returns . if no user data is assigned to the instance.Throws  if HTTP communication fails.AKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~9KLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~9{|}~cdefghijklmnopqrstuvwxyz]^_`abKLMNOPQRSTUVWXYZ[\KLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~(c) 2013-2015 Brendan HayMozilla Public License, v. 2.0.%Brendan Hay <brendan.g.hay@gmail.com> provisionalnon-portable (GHC extensions)None+4U A general authentication error.QAn error occured while communicating over HTTP with the local metadata endpoint.9An error occured looking up a named environment variable.2The specified credentials file could not be found..An error occured parsing the credentials file.=The specified IAM profile could not be found or deserialised.@An error thrown when attempting to read AuthN/AuthZ information.4Determines how AuthN/AuthZ information is retrieved.%Explicit access and secret keys. See .9Explicit access key, secret key and a session token. See .nLookup specific environment variables for access key, secret key, and an optional session token respectively.An IAM Profile name to lookup from the local EC2 instance-data. Environment variables to lookup for the access key, secret key and optional session token.FA credentials profile name (the INI section) and the path to the AWS  zhttp://blogs.aws.amazon.com/security/post/Tx3D6U6WSFGOK2H/A-New-and-Standardized-Way-to-Manage-Credentials-in-the-AWS-SDKs credentials file.6Attempt credentials discovery via the following steps: Read the  and & from the environment if they are set.Read the credentials file if  exists.;Retrieve the first available IAM profile if running on EC2.An attempt is made to resolve  http://instance-data" rather than directly retrieving  http://169.254.169.254r for IAM profile information. This assists in ensuring the DNS lookup terminates promptly if not running on EC2.(Default access key environment variable.(Default secret key environment variable.+Default session token environment variable.)Credentials profile environment variable.)Credentials INI file access key variable.)Credentials INI file secret key variable.,Credentials INI file session token variable.1Credentials INI default profile section variable.<Default path for the credentials file. This looks in in the HOME! directory as determined by the  ,http://hackage.haskell.org/package/directory directory library.UNIX OSX: @$HOME.aws/credentials@ Windows: C:/Users//<user>.awscredentialsNote:6 This does not match the default AWS SDK location of %USERPROFILE%.awscredentials on Windows. (Sorry.) Explicit access and secret keys.EA session containing the access key, secret key, and a session token.6Retrieve authentication information via the specified  mechanism.Throws r when environment variables or IAM profiles cannot be read, and credentials files are invalid or cannot be found.]Retrieve access key, secret key, and a session token from the default environment variables.Throws h if either of the default environment variables cannot be read, but not if the session token is absent.See: , , YRetrieve access key, secret key and a session token from specific environment variables.Throws n if either of the specified key environment variables cannot be read, but not if the session token is absent.Loads the default  credentials) INI file using the default profile name.Throws  if  is missing, or $ if an error occurs during parsing.See: , , and cRetrieve the access, secret and session token from the specified section (profile) in a valid INI  credentials file.Throws & if the specified file is missing, or $ if an error occurs during parsing.BRetrieve the default IAM Profile from the local EC2 instance-data.cThe default IAM profile is determined by Amazon as the first profile found in the response from:  Ahttp://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.GLookup a specific IAM Profile by name from the local EC2 instance-data.\The resulting IONewRef wrapper + timer is designed so that multiple concurrent accesses of  from the AWSW environment are not required to calculate expiry and sequentially queue to update it.hThe forked timer ensures a singular owner and pre-emptive refresh of the temporary session credentials.ZA weak reference is used to ensure that the forked thread will eventually terminate when  is no longer referenced.Throws  if the HTTP call fails, or . if the specified IAM profile cannot be read.,AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYAWS_SESSION_TOKEN AWS_PROFILEaws_access_key_idaws_secret_access_keyaws_session_tokendefault Access key environment variable. Secret key environment variable.#Session token environment variable.,,(c) 2013-2015 Brendan HayMozilla Public License, v. 2.0.%Brendan Hay <brendan.g.hay@gmail.com> provisionalnon-portable (GHC extensions)None4INUThe current region.)The function used to output log messages.%The function used to determine if an  should be retried.'The currently applied overrides to all  configuration.The 1 used to create and manage open HTTP connections.BThe credentials used to sign requests for authentication with AWS.HA memoised predicate for whether the underlying host is an EC2 instance.HThe environment containing the parameters required to make AWS requests.pProvide a function which will be added to the existing stack of overrides applied to all service configuration.?To override a specific service, it's suggested you use either  or : with a modified version of the default service, such as Network.AWS.DynamoDB.dynamoDB.Configure a specific service. All requests belonging to the supplied service will use this configuration instead of the default.KIt's suggested you use a modified version of the default service, such as Network.AWS.DynamoDB.dynamoDB.See: .}Scope an action such that all requests belonging to the supplied service will use this configuration instead of the default.KIt's suggested you use a modified version of the default service, such as Network.AWS.DynamoDB.dynamoDB.See: .$Scope an action within the specific '.2Scope an action such that any retry logic for the 8 is ignored and any requests will at most be sent once.HScope an action such that any HTTP response will use this timeout value.+Default timeouts are chosen by considering:This  , if set. The related 3 timeout for the sent request if set. (Usually 70s)The  timeout if set. The default  timeout. (Approximately 30s)%Creates a new environment with a new ! without debug logging and uses ! to expand/discover the supplied . Lenses from 0 can be used to further configure the resulting .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  using  lens to (\_ _ -> False).Throws ; when environment variables or IAM profiles cannot be read.See: .See: Throws ; when environment variables or IAM profiles cannot be read.rRetry the subset of transport specific errors encompassing connection failure up to the specific number of times.Initial region to operate in.Credential discovery mechanism.Initial region to operate in.Credential discovery mechanism.ADictate if the instance is running on EC2. (Preload memoisation.)  (c) 2013-2015 Brendan HayMozilla Public License, v. 2.0.%Brendan Hay <brendan.g.hay@gmail.com> provisionalnon-portable (GHC extensions)None  4>ILNUThe ) is configured + unwrapped at this point.      (c) 2013-2015 Brendan HayMozilla Public License, v. 2.0.%Brendan Hay <brendan.g.hay@gmail.com> provisionalnon-portable (GHC extensions)None&3457>CILNU ?An alias for the constraints required to send requests, which  implicitly fulfils.Run an ' action with the specified environment.@Send a request, returning the associated response if successful.Throws  .qRepeatedly send a request, automatically setting markers and paginating over multiple responses while available.Throws  .8Poll the API with the supplied request until a specific   condition is fulfilled.Throws  .ePresign an URL that is valid from the specified time until the number of seconds expiry has elapsed.nPresign an HTTP request that is valid from the specified time until the number of seconds expiry has elapsed.Test whether the underlying host is running on EC2. This is memoised and any external check occurs for the first invocation only.Retrieve the specified Dynamic data.Throws .Retrieve the specified Metadata.Throws . Retrieve the user data. Returns . if no user data is assigned to the instance.Throws . Signing time. Expiry time.Request to presign. Signing time. Expiry time.Request to presign.  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOP QRSTUVWXYZ[\] ^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./012>BCDEFGHIJcdefghijklmnopqrstuvwxyz{|}~>'&%$#"! 0/EF21+*(GHDCIJ{|}~cdefghijklmnopqrstuvwxyzB .-,)(c) 2013-2015 Brendan HayMozilla Public License, v. 2.0.%Brendan Hay <brendan.g.hay@gmail.com> provisionalnon-portable (GHC extensions)None345INMonads in which  actions may be embedded.Lift a computation to the  monad.A specialisation of the  transformer.Run the ( monad. Any outstanding HTTP responses' ResumableSource will be closed when the  computation is unwrapped with >.Throws  , which will include HTTPExceptionsY, serialisation errors, or any particular errors returned by the respective AWS service.See: , >.}Scope an action such that all requests belonging to the supplied service will use this configuration instead of the default.KIt's suggested you use a modified version of the default service, such as Network.AWS.DynamoDB.dynamoDB.See: .$Scope an action within the specific '.2Scope an action such that any retry logic for the 8 is ignored and any requests will at most be sent once.HScope an action such that any HTTP response will use this timeout value.@Send a request, returning the associated response if successful.qRepeatedly send a request, automatically setting markers and paginating over multiple responses while available.8Poll the API with the supplied request until a specific   condition is fulfilled.ePresign an URL that is valid from the specified time until the number of seconds expiry has elapsed.Test whether the underlying host is running on EC2. This is memoised and an HTTP request is made to the host's metadata endpoint for the first call only.Retrieve the specified Dynamic data.Retrieve the specified Metadata. Retrieve the user data. Returns . if no user data is assigned to the instance. Signing time. Expiry time.Request to presign.  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOP QRSTUVWXYZ[\] ^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./012>BCDEFGHIJcdefghijklmnopqrstuvwxyz{|}~~>'&%$#"! 0/EF21+*(GHDCIJ{|}~cdefghijklmnopqrstuvwxyzB .-,)  !"##$$%%&'()*+,-./01234546474748494:4;4<4=4>?@?ABCBDEFEGEHEIEJEKELMNOPQRS T U V W X Y Z [ \]^_`abcdefghijklmnopqrstuvwxyz{|}~PQP?             !"#$%&'()(*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSSTTUUVWXYZ[\W]^_`abcVdefghijjklmmnopqqrstuvwxyz{|}~&Mamazo_IbbD56cmESfINYC2tUcRoNControl.Monad.Trans.AWSNetwork.AWS.AuthNetwork.AWS.DataNetwork.AWS.PresignNetwork.AWS.EC2.MetadataNetwork.AWS.Env Network.AWSNetwork.AWS.Internal.LoggerNetwork.AWS.Internal.BodyNetwork.AWS.Internal.HTTPlens_9vp33svFMbG5Twkzc0sPXFControl.Exception.Lenscatchingtryingamazo_Jvy9FXUs8xM9HDZvwbuDg4Network.AWS.Endpoint setEndpointNetwork.AWS.Types _ServiceError_SerializeError_TransportError_ErrorAsError_endpointScope _endpointPort_endpointSecure _endpointHostEndpointTraceDebugErrorInfoLogLevelLogger AccessKey SecretKey SessionTokenAuthSaoPaulo GovCloudFIPSGovCloudOregonNorthCalifornia NorthVirginiaBeijingSydney SingaporeTokyo FrankfurtIrelandRegionNetwork.AWS.Data.BodydefaultChunkSizeRsBody ChunkSize ChunkedBody HashedBodyRqBodytoHashed ToHashedBodytoBodyToBodyNetwork.AWS.Data.LogbuildToLogNetwork.AWS.Data.ByteStringtoBS ToByteStringNetwork.AWS.Data.Text takeLowerTextfromText fromTextErrorparserFromTexttoTextToTextresou_5dZgZMYiA0Q8JAIyQrczuNControl.Monad.Trans.Resource runResourceT presignURLpresign presignWith newLogger getFileSizesinkBody hashedFile hashedBody chunkedFileunsafeChunkedBodysinkMD5 sinkSHA256Info'SecurityCredentials Interface IDeviceNumberIIPV4AssociationsILocalHostname ILocalIPV4sIMACIOwnerIdIPublicHostname IPublicIPV4sISecurityGroupsISecurityGroupIds ISubnetIdISubnetIPV4_CIDRBlockIVPCIdIVPCIPV4_CIDRBlockMappingAMIEBS EphemeralRootSwapMetadataAMIIdAMILaunchIndexAMIManifestPathAncestorAMIIds BlockDeviceHostnameIAMInstanceAction InstanceId InstanceTypeKernelId LocalHostname LocalIPV4MACNetworkAvailabilityZone ProductCodesPublicHostname PublicIPV4 OpenSSHKey RAMDiskId ReservationIdSecurityGroupsDynamicFWSDocumentPKCS7 SignatureisEC2dynamicmetadatauserdata AsAuthError _AuthError_RetrievalError_MissingEnvError_MissingFileError_InvalidFileError_InvalidIAMError AuthErrorRetrievalErrorMissingEnvErrorMissingFileErrorInvalidFileErrorInvalidIAMError CredentialsFromKeys FromSessionFromEnv FromProfileFromFileDiscover envAccessKey envSecretKeyenvSessionToken credAccessKey credSecretKeycredSessionToken credProfilecredFilefromKeys fromSessiongetAuthfromEnv fromEnvKeysfromFile fromFilePath fromProfilefromProfileNameHasEnv environment envRegion envLogger envRetryCheck envOverride envManagerenvAuthenvEC2Env _envRegion _envLogger_envRetryCheck _envOverride _envManager_envEC2_envAuthoverride configure reconfigurewithinoncetimeoutnewEnv newEnvWithretryConnectionFailure AWSConstraintAWST'AWSTrunAWSTsendpaginateawaitMonadAWSliftAWSAWSrunAWSServicebaseGHC.IO.Handle.TypesHandlelogErrorlogInfologDebuglogTrace buildLinescondu_45tiELg0iTSBn0FnBSBqZxData.Conduit.Internal.ConduitSinkGHC.IOFilePathcrypt_EcXB9nPiYzLCXhzuNtOjZOCrypto.Hash.SHA256SHA256ghc-prim GHC.TypesIOCrypto.Hash.MD5MD5Crypto.Hash.TypesDigestsinkHashsourceFileChunkshttpc_1Goxd6umddEAB8ercviXZKNetwork.HTTP.Client.Types HttpExceptionGHC.BaseNothinglatestgetrequest $fToTextInfo$fToTextInterface$fToTextMapping$fToTextMetadata$fToTextDynamic envProfileAuthEnv$fAsAuthErrorAuthError$fAsAuthErrorSomeException$fToLogAuthError$fExceptionAuthError$fShowCredentials$fToLogCredentialsManager ClientRequest $fToLogEnv $fHasEnvEnvperformretrierwaiter configured retryStream retryServiceNetwork.AWS.WaiterWaitunAWST hoistError$fMFunctorAWST'$fMonadStatesAWST'$fMonadWriterwAWST'$fMonadReaderrAWST'$fMonadErroreAWST'$fMonadResourceAWST'$fMonadBaseControlbAWST'$fMonadTransControlAWST'$fMonadBasebAWST'$fMonadMaskAWST'$fMonadCatchAWST'$fMonadThrowAWST'AcceptNetwork.AWS.PagerpageAWSPager_Default_Coerce microsecondssecondswithAuth rqPresignrqSignrqQueryrqPathrqMethod rqHeadersrqBody rqService clientRequest serviceRetry serviceCheckserviceTimeoutserviceEndpoint serviceSigner retryCheck retryAttemptsexponentGrowth exponentBase endpointScope endpointPortendpointSecure endpointHostserviceRequestIdserviceMessage serviceCodeserviceHeaders serviceStatus serviceAbbrevserializeMessageserializeStatusserializeAbbrev errorCodeClientResponse ResponseBodyAbbrev ErrorCode ErrorMessage RequestId ServiceErrorSerializeErrorTransportError_serializeMessage_serializeStatus_serializeAbbrevSerializeError'_serviceRequestId_serviceMessage _serviceCode_serviceHeaders_serviceStatus_serviceAbbrev ServiceError' _retryCheck_retryAttempts _retryGrowth _retryBase ExponentialRetryMeta sgRequestsgMetaSigned Algorithm sgPresignsgSignSigner _svcRetry _svcError _svcCheck _svcTimeout _svcEndpoint _svcVersion _svcPrefix _svcSigner _svcAbbrev_rqBody _rqHeaders_rqQuery_rqPath _rqMethod _rqServiceRequestResponseresponseRs AWSRequest _authExpiry _authToken _authSecret _authAccessRefSeconds%Control.Monad.Trans.Resource.Internal ResourceT$fMonadAWSRWST$fMonadAWSRWST0$fMonadAWSWriterT$fMonadAWSWriterT0$fMonadAWSStateT$fMonadAWSStateT0$fMonadAWSReaderT$fMonadAWSExceptT$fMonadAWSMaybeT$fMonadAWSListT$fMonadAWSIdentityT$fMonadAWSAWST'