6      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~HEncryption methods. Unknown algorithm. Traditional PKWARE encryption. Not encrypted. Compression methods. PPMd version I, Rev 1. WavPack compressed data. IBM LZ77 z Architecture (PFS). "Compressed using IBM TERSE (new).  LZMA (EFS) "Compressed using BZIP2 algorithm. PKWARE imploding.  Deflate64.  Deflated.  Imploded. Reduced with factor 4 Reduced with factor 3 Reduced with factor 2 Reduced with factor 1 Shrunk. Stored (uncompressed). Better of deflate or store. libzip error codes. Entry has been deleted. Can't remove file. Zip archive inconsistent. Internal error. Not a zip archive. Invalid argument. Premature EOF. "Compression method not supported. !Entry has been changed. "Malloc error. # Zlib error. $"Failure to create temporary file. %Can' t open file. &File already exists. 'No such file. (#Containing zip archive was closed. ) CRC error. * Write error. + Read error. , Seek error. -Closing zip archive failed. . Renaming temporary file failed. /'Multi-disk zip archives not supported. 0 No error. 1*Flags for accessing files in the archive.  Please consult libzip documentation about their use. 2Force recompression of data. 3(Read the original data, ignore changes. 4Read the compressed data. 5Ignore directory component. 6Ignore case on name lookup. 7Flags for opening an archive. 8 Check archive'$s consistency and error on failure. 9%Error if the archive already exists. :(Create an archive if it does not exist. ;3File statistics expressed in native Haskell types. <=>?@ABCDE9Handler of data source for new files in the zip archive. F,Handler of an open file in the zip archive. GHandler of the open zip file. H Convert marshalled stat record. IH  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIHGFE;<=>?@ABCDH7:981654320/.-,+*)('&%$#"!  IH  0/.-,+*)('&%$#"!  !"#$%&'()*+,-./0165432234567:9889:; <=>?@ABCD<=>?@ABCDEFGHIJ!Wrapper to catch library errors. JJKOpen zip archive specified by path$ and return its handler on success. path of the file to open  open mode  handler of the open zip archive LClose zip archive. M+Return the number of files in the archive. NGet name of file by index. O&Open file in zip archive for reading. P+Open n-th file in zip archive for reading. QClose file in zip archive. RRead from file in zip archive. S7Open zip archive, do something, and close the archive. path of the file to open  open mode action to do on zip arhive T#Get names of the files in archive. U!Get size of the file in archive.  zip archive  name of the file in the archive file name mode VFRead uncompressed file from the archive. Produce a strict ByteString.  zip archive  name of the file in the archive file name mode W;Read uncompressed file from the archive. Produce a list of .  zip archive  name of the file in the archive file name mode XLRead beginning of the uncompressed file from the archive. Produce a list of .  zip archive  name of the file in the archive file name mode how many bytes to read YWRead beginning of the uncompressed file from the archive. Produce a strict ByteString.  zip archive  name of the file in the archive file name mode how many bytes to read ZLReturn True if path is a file name, not a directory name (does not end with ). [3Return True if path is a directory name (ends with ). 8 !"#$%&'()*+,-./0123456789:FGJKLMNOPQRSTUVWXYZ[8GF7:981654320/.-,+*)('&%$#"! STUVWYXKLMNOPQRJZ[KLMNOPQRSTUVWXYZ[5\:Wrapper for a user-provided pure function to be used with x. ' Data size should be known in advance (_). 0 The function should support reading by chunks (a). ]^Initial state of the source. _Total size of the data. `-Modification time (current time if Nothing). aRead a chunk of the data,  return Just0 the size of data read, the data themselves and ! the new state of the source, or Nothing on error. b7Monadic computation to read from open archive entries.  See  and . c,Monadic computation with a zip archive. See d. d.Top-level wrapper for operations with an open  archive. d opens and closes the file # automatically. On error it throws . %Checks for consistency or existence. Filename of the zip archive. Action to do with the archive. e*Get the number of entries in the archive. f2Get name of an entry in the archive by its index. 3 flag can be used. )Position index of a file in the archive. !Name of the file in the archive. g<Locate an entry (get its index) in the archive by its name. Filename lookup mode. !Name of the file in the archive.  position index if found. hAGet names of all entries (files and directories) in the archive. 3 flag is accepted. i#Get size of a file in the archive. Filename lookup mode, 3 can be used. !Name of the file in the archive.  File size. j.Get size of a file in the archive (by index). 3 is accepted. )Position index of a file in the archive.  File size. k-Get information about a file in the archive. Filename lookup mode, 3 can be used. !Name of the file in the archive. Infomation about the file. l8Get information about a file in the archive (by index). 3 can be used. )Position index of a file in the archive. Information about the file. mDelete file from the archive. Filename lookup mode.  Filename. n=Delete file (referenced by position index) from the archive. )Position index of a file in the archive. oRename file in the archive. Filename lookup mode.  Old name.  New name. p;Rename file (referenced by position index) in the archive. )Position index of a file in the archive.  New name. qAdd a file to the archive. Name of the file to create. )Source where file data is obtained from.  Position index of the new file. r Add a directory to the archive.  Directory's name in the archive. +Position index of the new directory entry. sReplace a file in the archive. Filename lookup mode. File to replace. 1Source where the new file data is obtained from. t>Replace a file in the archive (referenced by position index). )Position index of a file in the archive. 0Source where the new file data is obtained from u2Create a data source. Note: input is converted to [Word8] internally. v"Create a data source from a file. File to open. 'Offset from the beginning of the file.  The number of bytes to read. If 0 or -1,  the read till the end of file. w5Create a data source from a file in the zip archive. 3 and 2 can be used. Source archive. 0Position index of a file in the source archive. 'Offset from the beginning of the file.  The number of bytes to read. If 0 or -1, ! then read till the end of file. xCreate a data source from a ]\.  Note: input of [a] is converted to [Word8] internally. yGet zip archive comment. 3 can be used. zSet zip archive comment. Comment message. {Remove zip archive comment. |'Get comment for a file in the archive. Filename lookup mode.  Filename }FGet comment for a file in the archive (referenced by position index). FileUNCHANGED can be used. Position index of the file. ~'Set comment for a file in the archive. Name lookup mode.  Filename. New file comment. FSet comment for a file in the archive (referenced by position index). )Position index of a file in the archive. New file comment. *Remove comment for a file in the archive. Filename lookup mode.  Filename. IRemove comment for a file in the archive (referenced by position index). )Position index of a file in the archive. 'Undo changes to a file in the archive. Filename lookup mode.  Filename. FUndo changes to a file in the archive (referenced by position index). )Position index of a file in the archive. BUndo global changes to zip archive (revert changes to the archive  comment and global flags). #Undo all changes in a zip archive. 3Wrapper for operations with a file in the archive.  is normally  called from within an c action (see also d).   can be replaced with  to read an entire file at  once. Filename lookup mode,  4 and 3 can be used.  Name of the file in the arhive. Action with the file. FWrapper for operations with a file in the archive. File is referenced  by index (position).  is normally called from within  an c action (see also d).  can be replaced  with ! to read an entire file at once. 4 and 3 can be used. )Position index of a file in the archive. Action with the file.  Read at most n bytes from the file. The number of bytes to read.  Bytes read. Skip nB bytes from the open file. Note: this is not faster than reading. Read entire file contents. Contents of the file. Read entire file. Shortcut for  from within c monad. >Read entire file (referenced by position index). Shortcut for   from within c monad. Get archive handler. Throw  if the archive is closed. Get and throw a . if condition fails. Otherwise work normally. Get and throw a  if condition fails. See also . w  !"#$%&'()*+,-./0123456789:;<=>?@ABCDJ\]^_`abcdefghijklmnopqrstuvwxyz{|}~wcb;<=>?@ABCDdefghijklmnopqrstuvw\]^_`axyz{|}~7:98165432 0/.-,+*)('&%$#"! J2\]^_`a]^_`abcdefghijklmnopqrstuvwxyz{|}~     !"#$%&'()*+,-./0123456789:;<=>?@ABCDDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcddefghijklmnopqrstuvwxyz{|}~ LibZip-0.2.0#Codec.Archive.LibZip.LegacyZeroZeroCodec.Archive.LibZipCodec.Archive.LibZip.TypesCodec.Archive.LibZip.ErrorsbaseGHC.WordWord8 mtl-1.1.1.0Control.Monad.TransliftZipEncryptionMethodEncryptUNKNOWNEncryptTRAD_PKWARE EncryptNONE ZipCompMethodCompPPMD CompWAVPACKCompLZ77 CompTERSECompLZMA CompBZIP2CompPKWARE_IMPLODE CompDEFLATE64 CompDEFLATE CompIMPLODE CompREDUCE_4 CompREDUCE_3 CompREDUCE_2 CompREDUCE_1 CompSHRINK CompSTORE CompDEFAULTZipError ErrDELETED ErrREMOVE ErrINCONS ErrINTERNALErrNOZIPErrINVALErrEOFErrCOMPNOTSUPP ErrCHANGED ErrMEMORYErrZLIB ErrTMPOPENErrOPEN ErrEXISTSErrNOENT ErrZIPCLOSEDErrCRCErrWRITEErrREADErrSEEKErrCLOSE ErrRENAME ErrMULTIDISKErrOKFileFlagFileRECOMPRESS FileUNCHANGEDFileCOMPRESSED FileNODIR FileNOCASEOpenFlag CheckConsFlagExclFlag CreateFlagZipStatzs'namezs'indexzs'crczs'mtimezs'size zs'comp_sizezs'comp_methodzs'encryption_method ZipSourceZipFileZip toZipStatcombine catchZipErroropenclose get_num_filesget_namefopen fopen_indexfclosefreadwithZipgetFiles getFileSize readZipFile readZipFile'readZipFileHead'readZipFileHeadisFileisDir PureSourcesrcStatesrcSizesrcMTimereadSrcEntryArchive withArchivenumFilesfileName nameLocate fileNamesfileSize fileSizeIxfileStat fileStatIx deleteFile deleteFileIx renameFile renameFileIxaddFile addDirectory replaceFile replaceFileIx sourceBuffer sourceFile sourceZip sourcePure getComment setComment removeCommentgetFileCommentgetFileCommentIxsetFileCommentsetFileCommentIxremoveFileCommentremoveFileCommentIx unchangeFileunchangeFileIxunchangeArchive unchangeAllfromFile fromFileIx readBytes skipBytes readContents fileContentsfileContentsIxgetZip errFromCInt get_errorget_file_errorGHC.Real/lastMay returnNotNull Data.MaybeJust runPureSourcedoIfdoIf'