m]      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef+Instance for special casing null pointers. ghi;Given a bit pattern, yield all bit masks that it contains. I This does *not* attempt to compute a minimal set of bit masks that when G combined yield the bit pattern, instead all contained bit masks are  produced. jIntegral conversion kFloating conversion lObtain C value from Haskell m. nObtain Haskell m from C value. o$Convert a C enumeration to Haskell. p$Convert a Haskell enumeration to C. Xqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~]^_`abcdefghijklnop]^_`abcdefghijklnop      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\f    !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZf    !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ 'Input handle for an indexed fasta file ]Name of the fasta file ^Open an indexed fasta file _BFetch a region specified by sequence name and coordinates, or the . empty string when the sequence is not found. Sequence name &(Starting, ending) position, 0-based ` SAM/BAM format alignment abc *Target sequences from a SAM alignment set de =Information about one target sequence in a SAM alignment set Target sequence name Target sequence lengh fNumber of target sequences %Returns the list of target sequences :Returns a target sequence by ID, which is a 0-based index %Returns a target sequence name by ID abc de fabcabc dede  fCigar entry including length Cigar entry types Deletion from padded reference 'Trimmed nucleotides, removed from read +Trimmed nucleotides, still present in read &Skipped reference bases, i.e., splice )Deletion from read relative to reference (Insertion in read relative to reference /Aligned nucleotide, may be a match or mismatch gh  Convert a BAM binary cigar integer to a  !i" !" !" !";#Handle for writing SAM/BAM format alignments jkl$'Target sequence set for the alignments %Handle for reading SAM/BAM format alignments mno&'Target sequence set for the alignments 'p8 the reference target sequence ID in the target set, or  q for an unmapped read (p the target sequence name, or q for an unmapped  read )p- the total length of the target sequence, or q for  an unmapped read *p; the 0-based index of the leftmost aligned position on the  target sequence, or q for an unmapped read r+Is the read paired ,RIs the pair properly aligned (usually based on relative orientation and distance) -Is the read unmapped .)Is the read paired and the mate unmapped /Is the fragment'+s reverse complement aligned to the target 0Is the read paired and the mate'+s reverse complement aligned to the target 14Is the fragment from the first read in the template 25Is the fragment from the second read in the template 3$Is the fragment alignment secondary 4#Did the read fail quality controls 5"Is the read a technical duplicate 6#CIGAR description of the alignment 7Name of the query sequence 8p& the length of the query sequence, or q when it is  unavailable. 9p the query sequence, or q when it is unavailable :p the query qualities, or q when it is 8 unavailable. These are returned in ASCII format, i.e., q + 33. s;p6 the target ID of the mate alignment target reference  sequence, or q* when the mate is unmapped or the read is  unpaired. <p; the name of the mate alignment target reference sequence,  or q4 when the mate is unmapped or the read is unpaired. =p3 the length of the mate alignment target reference  sequence, or q* when the mate is unmapped or the read is  unpaired. >'=Just the 0-based coordinate of the left-most position in the " mate alignment on the target, or q when the read is # unpaired or the mate is unmapped. ?p the total insert length, or q when the length is B unavailable, e.g. because the read is unpaired or the mated read B pair do not align in the proper relative orientation on the same  strand. @p* the match descriptor alignment field, or q when it  is absent Ap' the number of reported alignments, or q when this  information is not present. Bp/ the number of mismatches in the alignemnt, or q & when this information is not present Cp0 the reference sequence location covered by the D alignment. This includes nucleotide positions that are reported to = be deleted in the read, but not skipped nucleotide position ? (typically intronic positions in a spliced alignment). If the E reference location is unavailable, e.g. for an unmapped read or for 9 a read with no CIGAR format alignment information, then q. Dp) the reference sequence location (as per C) on  the target reference (as per () tE1Open a TAM (tab-delimited text) format file with @SQ headers  for the target sequence set. FAOpen a TAM format file with a separate target sequence set index G Open a BAM (binary) format file uH Close a SAM/"BAM format alignment input handle ATarget sequence set data is still available after the file input  has been closed. IBRun an IO action using a handle to a TAM format file that will be  opened (see E) and closed for the action. JAs I0 with a separate target sequence index set (see  F) KAs I for BAM (binary) format files L5Reads one alignment from an input handle, or returns Nothing for end-of-file vMOpen a TAM format file with @SQ headers for writing alignments N.Open a BAM format file for writing alignments O!Close an alignment output handle PQR)Writes one alignment to an input handle. BThere is no validation that the target sequence set of the output : handle matches the target sequence set of the alignment. < #$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQR> '()*+,-./0123456789:;<=>?BA@CD%&&EFGHIJKL#$$MNOPQR0#$$%&&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSwTxU@Handle for fetching alignments by region from a sorted, indexed  BAM file. yV%Filename of sorted, indexed BAM file zWTarget sequences X/Open a sorted, indexed BAM file. Y{Z[|\ STUVWXYZ[\ UVWVWXYZSTT[\ STTUVWVWXYZ[\}      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\  ]^_`abcdefghijklmnopqrstuvwxpqyvz{vz|vz}vz~vwvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv v v v v vvvvvvvvvvvvvvvvvvv v!v"v#v$v%v&v'v(v)v*v+v,v-v.v/v0v1v2v3v4v5v6v7v8v9v:v;<v;=v;>v;?v;@v;Av;Bv;Cv;Dv;Ev;Fv;Gv;Hv;Iv;Jv;Kv;Lv;Mv;Nv;OvPQvPRvPSvPTvPUvPVvPWvPXvPYvPZv[\v[]v[^v[_v[`v[avbcvbdvbevbfvbgvbhvbivbjvbkvlmvnovnpvnqvnrvnsvtuvtvvtwvtxvtyvtzvt{v|v}v~vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvwvwvwvwvvvvvvvvvvvvvvvvvvvvvvvvvvv      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|})~vvXZsamtools-0.2.0.1Bio.SamTools.FaIdxBio.SamTools.BamBio.SamTools.CigarBio.SamTools.BamIndexC2HSBio.SamTools.LowLevelBio.SamTools.InternalInHandlefilenameopenclosewithFastaIndexfetchfetchLocreadLocBam1Header HeaderSeqnamelennTargets targetSeqList targetSeq targetSeqName targetSeqLen lookupTargetCigarcigarlength CigarTypePadHardClipSoftClipRefSkipDelInsMatchtoCigar cigarToSpLoccigarToAlignment OutHandle outHeaderinHeadertargetID targetName targetLenpositionisPaired isProperPairisUnmap isMateUnmap isReverse isMateReverseisRead1isRead2 isSecondaryisQCFailisDupcigars queryName queryLengthquerySeq queryQual mateTargetIDmateTargetName mateTargetLen matePosition insertSize matchDescnHits nMismatchrefSpLoc refSeqLoc openTamInFileopenTamInFileWithIndex openBamInFile closeInHandle withTamInFilewithTamInFileWithIndex withBamInFileget1openTamOutFileopenBamOutFilecloseOutHandlewithTamOutFilewithBamOutFileput1QueryqyHandle IdxHandle idxFilename idxHeader withIndexquerynext withIntConv withFloatConv peekIntConv peekFloatConvwithBoolpeekBoolwithEnumpeekEnum nothingIf nothingIfNullcombineBitMaskscontainsBitMaskextractBitMaskscIntConv cFloatConv cFromBoolghc-prim GHC.TypesBoolcToBoolcToEnum cFromEnumbase GHC.Stable newStablePtrIntGHC.IntInt8Int16Int32Int64 StablePtrGHC.WordWord8Word16Word32Word64GHC.PtrPtrFunPtrGHC.ForeignPtr ForeignPtrForeignunsafePerformIOForeign.MarshalunsafeLocalStateForeign.Marshal.PoolpooledNewArray0pooledNewArray pooledNewpooledReallocArray0pooledReallocArraypooledMallocArray0pooledMallocArraypooledReallocBytes pooledReallocpooledMallocBytes pooledMallocwithPoolfreePoolnewPoolPoolForeign.C.ErrorerrnoToIOErrorthrowErrnoPathIfMinus1_throwErrnoPathIfMinus1throwErrnoPathIfNullthrowErrnoPathIf_throwErrnoPathIfthrowErrnoPaththrowErrnoIfNullRetryMayBlockthrowErrnoIfNullRetrythrowErrnoIfNull throwErrnoIfMinus1RetryMayBlock_throwErrnoIfMinus1RetryMayBlockthrowErrnoIfMinus1Retry_throwErrnoIfMinus1RetrythrowErrnoIfMinus1_throwErrnoIfMinus1throwErrnoIfRetryMayBlock_throwErrnoIfRetry_throwErrnoIfRetryMayBlockthrowErrnoIfRetry throwErrnoIf_ throwErrnoIf throwErrno resetErrnogetErrno isValidErrnoeXDEV eWOULDBLOCKeUSERSeTXTBSY eTOOMANYREFS eTIMEDOUTeTIMEeSTALEeSRMNTeSRCHeSPIPEeSOCKTNOSUPPORT eSHUTDOWNeRREMOTE eRPCMISMATCHeROFSeREMOTEeREMCHGeRANGE ePROTOTYPEePROTONOSUPPORTePROTO ePROGUNAVAIL ePROGMISMATCH ePROCUNAVAILePROCLIMePIPE ePFNOSUPPORTePERM eOPNOTSUPPeNXIOeNOTTYeNOTSOCK eNOTEMPTYeNOTDIReNOTCONNeNOTBLKeNOSYSeNOSTReNOSReNOSPC eNOPROTOOPTeNONETeNOMSGeNOMEMeNOLINKeNOLCKeNOEXECeNOENTeNODEVeNODATAeNOBUFSeNFILE eNETUNREACH eNETRESETeNETDOWN eNAMETOOLONG eMULTIHOPeMSGSIZEeMLINKeMFILEeLOOPeISDIReISCONNeIOeINVALeINTR eINPROGRESSeILSEQeIDRM eHOSTUNREACH eHOSTDOWNeFTYPEeFBIGeFAULTeEXISTeDQUOTeDOMeDIRTY eDESTADDRREQeDEADLK eCONNRESET eCONNREFUSED eCONNABORTEDeCOMMeCHILDeBUSYeBADRPCeBADMSGeBADFeALREADYeAGAIN eAFNOSUPPORTeADV eADDRNOTAVAIL eADDRINUSEeACCESe2BIGeOKErrnoForeign.C.StringwithCWStringLen withCWStringnewCWStringLen newCWStringpeekCWStringLen peekCWStringwithCAStringLen withCAStringnewCAStringLen newCAStringpeekCAStringLen peekCAStringcastCharToCSCharcastCSCharToCharcastCharToCUCharcastCUCharToCharcastCharToCCharcastCCharToCharcharIsRepresentablewithCStringLen withCString newCStringLen newCStringpeekCStringLen peekCStringCString CStringLenCWString CWStringLenForeign.Marshal.Array advancePtr lengthArray0 moveArray copyArray withArrayLen0 withArray0 withArrayLen withArray newArray0newArray pokeArray0 pokeArray peekArray0 peekArray reallocArray0 reallocArray allocaArray0 allocaArray mallocArray0 mallocArrayForeign.Marshal.Utils moveBytes copyByteswithMany maybePeek maybeWithmaybeNewtoBoolfromBoolwithnewForeign.Marshal.Errorvoid throwIfNull throwIfNeg_ throwIfNegthrowIf_throwIfForeign.Marshal.Allocfree reallocBytesreallocallocaBytesAligned allocaBytesalloca mallocBytesmalloc finalizerFreeForeign.ForeignPtrunsafeForeignPtrToPtrForeign.ForeignPtr.ImpmallocForeignPtrArray0mallocForeignPtrArraynewForeignPtrEnvwithForeignPtr newForeignPtr Foreign.Ptr intPtrToPtr ptrToIntPtr wordPtrToPtr ptrToWordPtrfreeHaskellFunPtrWordPtrIntPtrfinalizeForeignPtrcastForeignPtrtouchForeignPtrnewForeignPtr_addForeignPtrFinalizerEnvaddForeignPtrFinalizermallocForeignPtrBytesmallocForeignPtr FinalizerPtrFinalizerEnvPtrForeign.C.TypesCCharCSCharCUCharCShortCUShortCIntCUIntCLongCULongCLLongCULLongCFloatCDoubleCPtrdiffCSizeCWchar CSigAtomicCClockCTime CUSeconds CSUSecondsCFileCFposCJmpBufCIntPtrCUIntPtrCIntMaxCUIntMaxForeign.Storablepokepeek pokeByteOff peekByteOff pokeElemOff peekElemOff alignmentsizeOfStorablecastPtrToStablePtrcastStablePtrToPtrdeRefStablePtr freeStablePtrcastPtrToFunPtrcastFunPtrToPtr castFunPtr nullFunPtrminusPtralignPtrplusPtrcastPtrnullPtr Data.BitsrotateRrotateLshiftRshiftLisSignedbitSizetestBit complementBitclearBitsetBitbitrotateshift complementxor.|..&.BitswithCStringLenIntConvpeekCStringLenIntConvFaIdxPtrFaIdxInt SamFilePtr SamFileInt BamIterPtr BamIterInt BamFetchFPtr BamIndexPtr BamIndexIntBam1PtrBam1IntBamCigar unBamCigarBamFlag unBamFlag BamHeaderPtr BamHeaderInt BamFilePtr BamFileInt TamFilePtr TamFileInt faiFetchSeq'_ faiDestroy'_ faiLoad'_ sbamWrite'_ sbamRead'_ sbamClose'_ sbamOpen'_bamIterDestroy'_ bamIterRead'_bamIterQuery'_ bamFetch'_bamIndexDestroy'_bamIndexLoad'_ bamFormat1'_ bamDup1'_ bamDestroy1'_ bamInit1'_ bamAux2i'_ bamAux2Z'_ bamAuxGet'_ bamWrite1'_ bamRead1'_bamInitHeaderHash'_bamHeaderWrite'_bamHeaderRead'_bamHeaderDestroy'_bamHeaderInit'_ bamGetTid'_samHeaderRead'_samHeaderRead2'_ samRead1'_ samClose'_ samOpen'_ bam1Seqi'_ bam1Qual'_ bam1Seq'_ bam1QName'_ bam1Cigar'_ bam1MStrand'_ bam1Strand'_bam_cigar_length bam_cigar_opbam_cpadbam_chard_clipbam_csoft_clip bam_cref_skipbam_cdelbam_cins bam_cmatchbam_fdup bam_fqcfailbam_fsecondary bam_fread2 bam_fread1 bam_fmreverse bam_freverse bam_fmunmap bam_funmapbam_fproper_pair bam_fpaired bamClose'_ bamOpen'_mkBamFetchFPtrbamDestroy1PtrbamHeaderDestroyPtrbamOpenbamClose getNTargets setNTargets getTargetName setTargetName getTargetLen setTargetLen flagPairedflagProperPair flagUnmap flagMUnmap flagReverse flagMReverse flagRead1 flagRead2 flagSecondary flagQCFailflagDup cigarMatchcigarInscigarDel cigarRefSkip cigarSoftClip cigarHardClipcigarPadcigarOp cigarLengthgetTIDgetPosgetFlag getNCigargetLQSeqgetMTIDgetMPosgetISize bam1Strand bam1MStrand bam1Cigar bam1QNamebam1Seqbam1Qualbam1SeqisamOpensamClosesamRead1samHeaderRead2 samHeaderRead bamGetTid bamHeaderInitbamHeaderDestroy bamHeaderReadbamHeaderWritebamInitHeaderHashbamRead1 bamWrite1 bamAuxGetbamAux2ZbamAux2ibamInit1 bamDestroy1bamDup1 bamFormat1 bamIndexLoadbamIndexDestroybamFetch bamIterQuery bamIterReadbamIterDestroy getSbamHeadersbamOpen sbamClosesbamRead sbamWritefaiLoad faiDestroy faiFetchSeq packCString useAsCStringfaidx finalizeFaIdx fetchContigptrBam1headerunHeader newHeader cigarTypes toCigarTypemergeAdj outFilenameoutfile inFilenamesamfile Data.MaybeJustNothing isFlagSet seqiToChar newInHandlefinalizeSamFile newOutHandleiterbamindexfinalizeBamIndexfinalizeBamIter