!TaRa     (c) 2010 Bryan O'Sullivan BSD-stylebos@serpentine.com experimentalGHCNonebase64-bytestring^Encode a string into base64 form. The result will always be a multiple of 4 bytes in length.base64-bytestringVDecode a base64-encoded string. This function strictly follows the specification in  !http://tools.ietf.org/rfc/rfc4648RFC 4648.,This function takes the decoding table (for base64 or  base64url) as the first parameter.;For validation of padding properties, see note: $Validationbase64-bytestring`Decode a base64-encoded string. This function is lenient in following the specification from  !http://tools.ietf.org/rfc/rfc4648RFC 4648r, and will not generate parse errors no matter how poor its input. This function takes the decoding table (for base64 or  base64url) as the first paramert.base64-bytestring|Sanity check an index against a bitmask to make sure it's coherent. If pos & mask == 0, we're good. If not, we should fail.base64-bytestring Mask 2 bitsbase64-bytestring Mask 4 bitsbase64-bytestringdecoding table pointerbase64-bytestringsource pointerbase64-bytestringdestination pointerbase64-bytestringsource end pointerbase64-bytestring8destination foreign pointer (used for finalizing string)base64-bytestringinput to validatebase64-bytestring error msg  !"#(c) 2010 Bryan O'Sullivan BSD-stylebos@serpentine.com experimentalGHC Trustworthy"obase64-bytestring^Encode a string into base64 form. The result will always be a multiple of 4 bytes in length.base64-bytestringVDecode a base64-encoded string. This function strictly follows the specification in  !http://tools.ietf.org/rfc/rfc4648RFC 4648.(Note: this means that even  "n", "rn" as line breaks are rejected rather than ignored. If you are using this in the context of a standard that overrules RFC 4648 such as HTTP multipart mime bodies, consider using .)base64-bytestring`Decode a base64-encoded string. This function is lenient in following the specification from  !http://tools.ietf.org/rfc/rfc4648RFC 4648C, and will not generate parse errors no matter how poor its input.(c) 2012 Ian Lynagh BSD-stylebos@serpentine.com experimentalGHC Trustworthy+base64-bytestring^Encode a string into base64 form. The result will always be a multiple of 4 bytes in length.base64-bytestringWDecode a base64-encoded string. This function strictly follows the specification in  !http://tools.ietf.org/rfc/rfc4648RFC 4648.base64-bytestring`Decode a base64-encoded string. This function is lenient in following the specification from  !http://tools.ietf.org/rfc/rfc4648RFC 4648C, and will not generate parse errors no matter how poor its input.(c) 2012 Deian Stefan BSD-styledeian@cs.stanford.edu experimentalGHC Trustworthy?base64-bytestringaEncode a string into base64url form. The result will always be a multiple of 4 bytes in length.base64-bytestring-Encode a string into unpadded base64url form.base64-bytestringmDecode a base64url-encoded string applying padding if necessary. This function follows the specification in  !http://tools.ietf.org/rfc/rfc4648RFC 4648 and in 3https://tools.ietf.org/html/rfc7049#section-2.4.4.2 RFC 7049 2.4 base64-bytestring}Decode a padded base64url-encoded string, failing if input is improperly padded. This function follows the specification in  !http://tools.ietf.org/rfc/rfc4648RFC 4648 and in 3https://tools.ietf.org/html/rfc7049#section-2.4.4.2 RFC 7049 2.4 base64-bytestringtDecode a unpadded base64url-encoded string, failing if input is padded. This function follows the specification in  !http://tools.ietf.org/rfc/rfc4648RFC 4648 and in 3https://tools.ietf.org/html/rfc7049#section-2.4.4.2 RFC 7049 2.4 base64-bytestringcDecode a base64url-encoded string. This function is lenient in following the specification from  !http://tools.ietf.org/rfc/rfc4648RFC 4648C, and will not generate parse errors no matter how poor its input.  (c) 2012 Ian Lynagh BSD-stylebos@serpentine.com experimentalGHC TrustworthyR- base64-bytestring^Encode a string into base64 form. The result will always be a multiple of 4 bytes in length. base64-bytestring-Encode a string into unpadded base64url form.base64-bytestringWDecode a base64-encoded string. This function strictly follows the specification in  !http://tools.ietf.org/rfc/rfc4648RFC 4648.base64-bytestringtDecode a unpadded base64url-encoded string, failing if input is padded. This function follows the specification in  !http://tools.ietf.org/rfc/rfc4648RFC 4648 and in 3https://tools.ietf.org/html/rfc7049#section-2.4.4.2 RFC 7049 2.4base64-bytestring}Decode a padded base64url-encoded string, failing if input is improperly padded. This function follows the specification in  !http://tools.ietf.org/rfc/rfc4648RFC 4648 and in 3https://tools.ietf.org/html/rfc7049#section-2.4.4.2 RFC 7049 2.4base64-bytestring`Decode a base64-encoded string. This function is lenient in following the specification from  !http://tools.ietf.org/rfc/rfc4648RFC 4648C, and will not generate parse errors no matter how poor its input.  $        0base64-bytestring-1.2.0.0-EWOpUDY46Y6KLbL59ntjPIData.ByteString.Base64Data.ByteString.Base64.LazyData.ByteString.Base64.URLData.ByteString.Base64.URL.LazyData.ByteString.Base64.Internalencodedecode decodeLenientencodeUnpadded decodePaddeddecodeUnpadded encodeWithdecodeWithTabledecodeLenientWithTablesanityCheckPos mask_2bits mask_4bits decodeLoopvalidateLastPadPaddingPadded Don'tCareUnpaddedpeek8poke8peek8_32 mkEncodeTabledone reChunkIn