h$?5      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                          None>?!hw-bits3Number of bits in a value including ones and zeros.hw-bitsNumber of bits in a value including ones and zeros as a position.None> i hw-bits5Class of values that have bit wise logical operations hw-bits Bit-wise AND!hw-bits Bit-wise OR"hw-bits Bit-wise XOR#hw-bitsBit-wise complement$hw-bits:Bit-wise value of the given type with all bits set to zero%hw-bits9Bit-wise value of the given type with all bits set to one'hw-bits/Test whether the bit ad the given offset is set(hw-bits*Class of values that have shift operations)hw-bits!Shift left by the specified count*hw-bits"Shift right by the specified count !#"$%&'()* !#"$%()*&' 7!5"6'9 )8*8None> Xhw-bitsParsers for bit stringsYhw-bits7Version of bit string parser that can consume no inputsZhw-bitsVersion of bit string parser that must consume at least one inputXYZXYZNone> ohw-bits1Bit string reader that produces a value of a typephw-bitsRead a bit string into a valueqhw-bitsRead a bit string into a value.This function is unsafe because it is a partial function that errors if the input string is an invaild bit stringopqopq Safe-Inferred 58:> None >hw-bits)Initialise all sub-words of size k where k D { 2, 4, 8, 16 } such that the lowest bit is set to 1 and all other bits are cleared.import Numeric(showHex)showHex (l 2) """5555"showHex (l 4) """1111"showHex (l 8) """101"showHex (l 16) """1"hw-bits)Initialise all sub-words of size k where k D { 2, 4, 8, 16 } such that the highest bit is set to 1 and all other bits are cleared.import Numeric(showHex)showHex (h 2) """aaaa"showHex (h 4) """8888"showHex (h 8) """8080"showHex (h 16) """8000"hw-bits+Broadword subtraction of sub-words of size k where k D { 2, 4, 8, 16 }.The subtraction respects 2's complement so sub-words may be regarded as signed or unsigned words.import Numeric(showHex)%showHex (kBitDiff 8 0x0201 0x0101) """100"%showHex (kBitDiff 8 0x0201 0x0102) """1ff"%showHex (kBitDiff 8 0x20ff 0x10ff) """1000"hw-bits+Broadword subtraction of sub-words of size k where k= D { 2, 4, 8, 16 } where results are bounded from below by 0.import Numeric(showHex)(showHex (kBitDiffPos 8 0x0201 0x0101) """100"(showHex (kBitDiffPos 8 0x0201 0x0102) """100"(showHex (kBitDiffPos 8 0x20ff 0x10ff) """1000"hw-bits+Broadword subtraction of sub-words of size k where k6 D { 2, 4, 8, 16, 32, 64 } where all the sub-words of x and y must not have the signed bit set for the result to be meaningful.import Numeric(showHex)+showHex (kBitDiffUnsafe 8 0x0201 0x0101) """100"+showHex (kBitDiffUnsafe 8 0x0201 0x0102) """1ff"showHex (kBitDiffUnsafe 8 0x20ff 0x10ff) "" -- produces nonsense in the last sub-word"1080"None >hw-bits)Initialise all sub-words of size k where k D { 2, 4, 8, 16, 32 } such that the lowest bit is set to 1 and all other bits are cleared.import Numeric(showHex)showHex (l 2) "" "55555555"showHex (l 4) "" "11111111"showHex (l 8) "" "1010101"showHex (l 16) """10001"showHex (l 32) """1"hw-bits)Initialise all sub-words of size k where k D { 2, 4, 8, 16, 32 } such that the highest bit is set to 1 and all other bits are cleared.import Numeric(showHex)showHex (h 2) "" "aaaaaaaa"showHex (h 4) "" "88888888"showHex (h 8) "" "80808080"showHex (h 16) "" "80008000"showHex (h 32) "" "80000000"hw-bits+Broadword subtraction of sub-words of size k where k D { 2, 4, 8, 16, 32 }.The subtraction respects 2's complement so sub-words may be regarded as signed or unsigned words.import Numeric(showHex)-showHex (kBitDiff 8 0x04030201 0x02020101) "" "2010100"-showHex (kBitDiff 8 0x04030201 0x01020304) "" "301fffd"-showHex (kBitDiff 8 0x200000ff 0x100000ff) "" "10000000"hw-bits+Broadword subtraction of sub-words of size k where k D { 2, 4, 8, 16, 32 } where results are bounded from below by 0.import Numeric(showHex)0showHex (kBitDiffPos 8 0x04030201 0x02020101) "" "2010100"0showHex (kBitDiffPos 8 0x04030201 0x01020304) "" "3010000"showHex (kBitDiffPos 8 0x200000ff 0x100000ff) "" -- produces nonsense in the last sub-word "10000000"hw-bits+Broadword subtraction of sub-words of size k where k2 D { 2, 4, 8, 16, 32 } where all the sub-words of x and y must not have the signed bit set for the result to be meaningful.import Numeric(showHex)3showHex (kBitDiffUnsafe 8 0x04030201 0x02020101) "" "2010100"3showHex (kBitDiffUnsafe 8 0x04030201 0x05060708) "" "fffdfbf9"3showHex (kBitDiffUnsafe 8 0x200000ff 0x100000ff) "" "10000080"None >$hw-bits)Initialise all sub-words of size k where k D { 2, 4, 8, 16, 32, 64 } such that the lowest bit is set to 1 and all other bits are cleared.import Numeric(showHex)showHex (l 2) """5555555555555555"showHex (l 4) """1111111111111111"showHex (l 8) """101010101010101"showHex (l 16) """1000100010001"showHex (l 32) "" "100000001"showHex (l 64) """1"hw-bits)Initialise all sub-words of size k where k D { 2, 4, 8, 16, 32, 64 } such that the highest bit is set to 1 and all other bits are cleared.import Numeric(showHex)showHex (h 2) """aaaaaaaaaaaaaaaa"showHex (h 4) """8888888888888888"showHex (h 8) """8080808080808080"showHex (h 16) """8000800080008000"showHex (h 32) """8000000080000000"showHex (h 64) """8000000000000000"hw-bits+Broadword subtraction of sub-words of size k where k D { 2, 4, 8, 16, 32, 64 }.The subtraction respects 2's complement so sub-words may be regarded as signed or unsigned words.import Numeric(showHex)=showHex (kBitDiff 8 0x0807060504030201 0x0404030302020101) """403030202010100"=showHex (kBitDiff 8 0x0807060504030201 0x0102030405060708) """7050301fffdfbf9"=showHex (kBitDiff 8 0x20000000000000ff 0x10000000000000ff) """1000000000000000"hw-bits+Broadword subtraction of sub-words of size k where k D { 2, 4, 8, 16, 32, 64 } where results are bounded from below by 0.import Numeric(showHex)showHex (kBitDiffPos 8 0x0807060504030201 0x0404030302020101) """403030202010100"showHex (kBitDiffPos 8 0x0807060504030201 0x0102030405060708) """705030100000000"showHex (kBitDiffPos 8 0x20000000000000ff 0x10000000000000ff) """1000000000000000"hw-bits+Broadword subtraction of sub-words of size k where k6 D { 2, 4, 8, 16, 32, 64 } where all the sub-words of x and y must not have the signed bit set for the result to be meaningful.import Numeric(showHex)showHex (kBitDiffUnsafe 8 0x0807060504030201 0x0404030302020101) """403030202010100"showHex (kBitDiffUnsafe 8 0x0807060504030201 0x0102030405060708) """7050301fffdfbf9"showHex (kBitDiffUnsafe 8 0x20000000000000ff 0x10000000000000ff) "" -- produces nonsense in the last sub-word"1000000000000080" None >+hw-bits)Initialise all sub-words of size k where k D { 2, 4, 8, 16, 32 } such that the lowest bit is set to 1 and all other bits are cleared.import Numeric(showHex)showHex (l 2) """55"showHex (l 4) """11"showHex (l 8) """1"hw-bits)Initialise all sub-words of size k where k D { 2, 4, 8, 16, 32 } such that the highest bit is set to 1 and all other bits are cleared.import Numeric(showHex)showHex (h 2) """aa"showHex (h 4) """88"showHex (h 8) """80"hw-bits+Broadword subtraction of sub-words of size k where k D { 2, 4, 8 }.The subtraction respects 2's complement so sub-words may be regarded as signed or unsigned words.import Numeric(showHex)!showHex (kBitDiff 8 0x02 0x01) """1"!showHex (kBitDiff 8 0x01 0x02) """ff"!showHex (kBitDiff 8 0xff 0xff) """0"hw-bits+Broadword subtraction of sub-words of size k where k9 D { 2, 4, 8 } where results are bounded from below by 0.import Numeric(showHex)!showHex (kBitDiff 8 0x02 0x01) """1"!showHex (kBitDiff 8 0x01 0x02) """ff"!showHex (kBitDiff 8 0xff 0xff) """0"hw-bits+Broadword subtraction of sub-words of size k where k* D { 2, 4, 8 } where all the sub-words of x and y must not have the signed bit set for the result to be meaningful.import Numeric(showHex)'showHex (kBitDiffUnsafe 8 0x02 0x01) """1"'showHex (kBitDiffUnsafe 8 0x01 0x02) """ff"showHex (kBitDiffUnsafe 8 0xff 0xff) "" -- produces nonsense in the last sub-word"80" None>,whw-bits6Class of values that have elements of a fixed bit size0elemFixedBitSize (undefined :: DVS.Vector Word8)8hw-bitsThe element type of the elemnethw-bitsGet the bit size of an element for a given composite bit-string type.0elemFixedBitSize (undefined :: DVS.Vector Word8)8  Safe-Inferred-Ahw-bits(Class of values that have a fix bit sizehw-bits*Get the bit size of a value of given type.!fixedBitSize (undefined :: Word8)8 None-hw-bits1Value with the n least significant bits set to 1. None.hw-bits?Log base of the given value rounded down to the nearest integerNone8.|hw-bits,Type wrapper to prefer broadword operations.None8.hw-bits+Type wrapper to prefer builting operations.None>/7hw-bits"The number of 1-bits in the value.None>/hw-bits"The number of 0-bits in the value.None/None>0'hw-bits-Number of 1-bits minues the number of 0-bits.None>0hw-bits-Number of 0-bits minues the number of 1-bits.None0None1hw-bitsSplit a word equally into two smaller words in little-endian order.hw-bitsConcatenate two words in little-endian order of the same size into a word of twice the size.None>27hw-bits!Shower of a value as a bit stringhw-bitsShow a value as a bit stringNone258>2hw-bitsTag for a value describe the value as being able to be shown as a bit stringhw-bitsShow the value as a bit stringNone3$%$"# !&'()*XYZopqNone0>3hw-bits2Convert a binary byte string to a value of type @aNone >4hw-bits5  None5S   Safe-Inferred5 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                          &hw-bits-0.7.2.2-39520QUbEJNKMOIWT1GwPc HaskellWorks.Data.Bits.BitLengthHaskellWorks.Data.Bits.BitWiseHaskellWorks.Data.Bits.BitParseHaskellWorks.Data.Bits.BitRead%HaskellWorks.Data.Bits.Broadword.Type'HaskellWorks.Data.Bits.Broadword.Word16'HaskellWorks.Data.Bits.Broadword.Word32'HaskellWorks.Data.Bits.Broadword.Word64&HaskellWorks.Data.Bits.Broadword.Word8'HaskellWorks.Data.Bits.ElemFixedBitSize#HaskellWorks.Data.Bits.FixedBitSize"HaskellWorks.Data.Bits.LoBitsSizedHaskellWorks.Data.Bits.Log2&HaskellWorks.Data.Bits.Types.Broadword$HaskellWorks.Data.Bits.Types.Builtin)HaskellWorks.Data.Bits.PopCount.PopCount1)HaskellWorks.Data.Bits.PopCount.PopCount0+HaskellWorks.Data.Bits.AllExcess.AllExcess1+HaskellWorks.Data.Bits.AllExcess.AllExcess0HaskellWorks.Data.Bits.WordHaskellWorks.Data.Bits.BitShowHaskellWorks.Data.Bits.BitShown,HaskellWorks.Data.Bits.FromBitTextByteStringHaskellWorks.Data.Bits.Word64&HaskellWorks.Data.Bits.Writer.StorableHaskellWorks.Data.Bits.PopCount HaskellWorks.Data.Bits.AllExcessHaskellWorks.Data.Bits HaskellWorks.Data.Bits.Broadword Paths_hw_bits BitLength bitLength endPosition elemBitLength elemBitEnd$fBitLengthVector$fBitLengthVector0$fBitLengthVector1$fBitLengthVector2$fBitLengthVector3$fBitLengthVector4$fBitLengthVector5$fBitLengthVector6$fBitLengthVector7$fBitLengthVector8 $fBitLength[]$fBitLength[]0$fBitLength[]1$fBitLength[]2$fBitLengthNaive$fBitLengthNaive0$fBitLengthNaive1$fBitLengthNaive2$fBitLengthWord64$fBitLengthWord32$fBitLengthWord16$fBitLengthWord8$fBitLength[]3$fBitLengthBoolBitbitBitWise.&..|..^.compall0sall1sTestBit.?.Shift.<..>. $fShiftWord64 $fShiftWord32 $fShiftWord16 $fShiftWord8 $fShiftInt64 $fShiftInt32 $fShiftInt16 $fShiftInt8 $fShiftInt$fTestBitVector$fTestBitVector0$fTestBitVector1$fTestBitVector2$fTestBitVector3$fTestBitVector4$fTestBitVector5$fTestBitVector6$fTestBitVector7$fTestBitVector8$fTestBitNaive$fTestBitNaive0$fTestBitNaive1$fTestBitNaive2$fTestBitWord64$fTestBitWord32$fTestBitWord16$fTestBitWord8 $fTestBitInt $fTestBit[] $fTestBitBool$fBitWiseWord64$fBitWiseWord32$fBitWiseWord16$fBitWiseWord8 $fBitWiseInt $fBitNaive $fBitNaive0 $fBitNaive1 $fBitNaive2 $fBitWord64 $fBitWord32 $fBitWord16 $fBitWord8$fBitInt $fBitBoolBitParse bitParse0 bitParse1$fBitParseVector$fBitParseVector0$fBitParseVector1$fBitParseVector2$fBitParseVector3$fBitParseVector4$fBitParseVector5$fBitParseVector6$fBitParseVector7$fBitParseVector8 $fBitParse[] $fBitParse[]0 $fBitParse[]1 $fBitParse[]2$fBitParseByteString$fBitParseWord64$fBitParseWord32$fBitParseWord16$fBitParseWord8$fBitParseBoolBitReadbitRead unsafeBitRead $fBitRead[]$fBitReadVector$fBitReadVector0$fBitReadVector1$fBitReadVector2$fBitReadVector3$fBitReadVector4$fBitReadVector5$fBitReadVector6$fBitReadVector7$fBitReadVector8 $fBitRead[]0 $fBitRead[]1 $fBitRead[]2 $fBitRead[]3$fBitReadByteString$fBitReadWord64$fBitReadWord32$fBitReadWord16$fBitReadWord8 Broadword broadword $fEqBroadword$fShowBroadword$fFunctorBroadword$fGenericBroadword$fNFDataBroadwordlhkBitDiff kBitDiffPoskBitDiffUnsafeElemFixedBitSizeElemelemFixedBitSize$fElemFixedBitSizeVector$fElemFixedBitSizeVector0$fElemFixedBitSizeVector1$fElemFixedBitSizeVector2$fElemFixedBitSizeVector3$fElemFixedBitSizeVector4$fElemFixedBitSizeVector5$fElemFixedBitSizeVector6$fElemFixedBitSizeVector7$fElemFixedBitSizeVector8$fElemFixedBitSizeVector9$fElemFixedBitSizeVector10$fElemFixedBitSize[]$fElemFixedBitSize[]0$fElemFixedBitSize[]1$fElemFixedBitSize[]2$fElemFixedBitSize[]3 FixedBitSize fixedBitSize$fFixedBitSizeWord64$fFixedBitSizeWord32$fFixedBitSizeWord16$fFixedBitSizeWord8$fFixedBitSizeBool LoBitsSized loBitsSized$fLoBitsSizedWord8$fLoBitsSizedWord16$fLoBitsSizedWord32$fLoBitsSizedWord64Log2log2 $fLog2Word32 $fLog2Word64$fBitWiseBroadword$fStorableBroadwordBuiltin$fBitWiseBuiltin $fEqBuiltin $fShowBuiltin$fStorableBuiltin$fGenericBuiltin$fNFDataBuiltin PopCount1 popCount1$fPopCount1Vector$fPopCount1Vector0$fPopCount1Vector1$fPopCount1Vector2$fPopCount1Vector3$fPopCount1Vector4$fPopCount1Vector5$fPopCount1Vector6$fPopCount1Vector7$fPopCount1Vector8$fPopCount1Vector9$fPopCount1Vector10$fPopCount1Vector11$fPopCount1Vector12$fPopCount1Vector13$fPopCount1Vector14$fPopCount1Vector15$fPopCount1Vector16$fPopCount1Vector17$fPopCount1Vector18$fPopCount1Vector19$fPopCount1Vector20$fPopCount1Vector21$fPopCount1Vector22$fPopCount1Vector23$fPopCount1Vector24 $fPopCount1[]$fPopCount1Word64$fPopCount1Word32$fPopCount1Word16$fPopCount1Word8$fPopCount1Builtin$fPopCount1Builtin0$fPopCount1Builtin1$fPopCount1Builtin2$fPopCount1Broadword$fPopCount1Broadword0$fPopCount1Broadword1$fPopCount1Broadword2$fPopCount1Bool PopCount0 popCount0$fPopCount0Vector$fPopCount0Vector0$fPopCount0Vector1$fPopCount0Vector2$fPopCount0Vector3$fPopCount0Vector4$fPopCount0Vector5$fPopCount0Vector6$fPopCount0Vector7$fPopCount0Vector8$fPopCount0Vector9$fPopCount0Vector10$fPopCount0Vector11$fPopCount0Vector12$fPopCount0Vector13$fPopCount0Vector14$fPopCount0Vector15$fPopCount0Vector16$fPopCount0Vector17$fPopCount0Vector18$fPopCount0Vector19$fPopCount0Vector20$fPopCount0Vector21$fPopCount0Vector22$fPopCount0Vector23$fPopCount0Vector24 $fPopCount0[]$fPopCount0Builtin$fPopCount0Builtin0$fPopCount0Builtin1$fPopCount0Builtin2$fPopCount0Broadword$fPopCount0Broadword0$fPopCount0Broadword1$fPopCount0Broadword2$fPopCount0Word64$fPopCount0Word32$fPopCount0Word16$fPopCount0Word8$fPopCount0Bool AllExcess1 allExcess1$fAllExcess1Vector$fAllExcess1Vector0$fAllExcess1Vector1$fAllExcess1Vector2$fAllExcess1Vector3$fAllExcess1Vector4$fAllExcess1Vector5$fAllExcess1Vector6$fAllExcess1Vector7$fAllExcess1Vector8$fAllExcess1Word64$fAllExcess1Word32$fAllExcess1Word16$fAllExcess1Word8$fAllExcess1[] AllExcess0 allExcess0$fAllExcess0Vector$fAllExcess0Vector0$fAllExcess0Vector1$fAllExcess0Vector2$fAllExcess0Vector3$fAllExcess0Vector4$fAllExcess0Word64$fAllExcess0Word32$fAllExcess0Word16$fAllExcess0Word8$fAllExcess0[] WordSplit HalfWordsleSplit WordConcat DoubleWordsleConcat$fWordConcatWord32$fWordConcatWord16$fWordConcatWord8$fWordSplitWord16$fWordSplitWord32$fWordSplitWord64BitShowbitShowsbitShow$fBitShowVector$fBitShowVector0$fBitShowVector1$fBitShowVector2$fBitShowVector3$fBitShowVector4$fBitShowVector5$fBitShowVector6$fBitShowVector7$fBitShowVector8 $fBitShow[] $fBitShow[]0 $fBitShow[]1 $fBitShow[]2$fBitShowByteString$fBitShowByteString0 $fBitShow[]3$fBitShowInt64$fBitShowInt32$fBitShowInt16 $fBitShowInt8$fBitShowWord64$fBitShowWord32$fBitShowWord16$fBitShowWord8 $fBitShowBoolBitShown unBitShownbitShown$fFromByteStringBitShown$fShowBitShown$fIsStringBitShown $fEqBitShown$fBitReadBitShown$fBitShowBitShown$fGenericBitShown$fNFDataBitShown$fTestBitBitShown$fFunctorBitShownFromBitTextByteStringfromBitTextByteString$fFromBitTextByteStringVector$fFromBitTextByteStringVector0$fFromBitTextByteStringVector1$fFromBitTextByteStringVector2$fFromBitTextByteStringVector3$fFromBitTextByteStringVector4lsbWritervectorpositionfull newWriterunsafeWriteBitunsafeWriteLoBitsunsafeWriteBitswrittenbase Data.BitscountTrailingZerosversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName