úÎ8K4›#      !"(c) Levent ErkokBSD3erkokl@gmail.com experimental Safe-Inferred<Complete internal representation for a floating-point numberBThe value as represented as a full Integer. Storage purposes only. FP precision.0Sign. If True then negative, otherwise positive.The exponent as it is stored."The implicit bias of the exponent.The actual exponent.Bits in the fractional part Layout representation !Floating-point kind (i.e., value) Kinds of floating point values  Normal value. /Denormalized number, i.e., leading bit is not 1The quiet-NaN.The screaming-NaN.>Infinity: oo. If Bool is true, then this is -oo, otherwie +oo.8Zero: 0. If Bool is true, then this is -0; otherwise +0.Integer/Word precision 64-bit signed64-bit unsigned (quad-word) 32-bit signed32-bit unsigned (double-word) 16-bit signed16-bit unsigned (word) 8-bit signed8-bit unsigned (byte)Floating point precision>Double precision; 64 bits = 1 sign + 11 exponent + 52 mantissa>Single precision; 32 bits = 1 sign + 8 exponent + 23 mantissa>Half precision; 16 bits = 1 sign + 5 exponent + 10 mantissa#$Show instance for integer-precisions  #    #(c) Levent ErkokBSD3erkokl@gmail.com experimental Safe-Inferred!$"Returns True if all bits are False%!Returns True if all bits are True&Returns True if any bit is True'ILay out a sequence of separated bools as a nicely formatted binary number(Binary to String conversion)Test whether a digit is binary*'Convert from binary char digit to value+Read a number in base 16,Read a number in base 2-&Display a binary number in groups of 4.Group in chunks of 44/=Display a binary number in groups of 4, in hexadecimal format0%Cluster a list into given size chunks1Big-endian num converter2\Drop unnecessary parts from input. This enables the user to be able to give data more easily3Half-precision ruler, line 14Half-precision ruler, line 25Half-precision ruler, line 36Single-precision ruler, line 17Single-precision ruler, line 28Single-precision ruler, line 39Double-precision ruler, line 1:Double-precision ruler, line 2;Double-precision ruler, line 3<=Byte-precision ruler, line 2 (note that no line 1 is needed!)=Word-precision ruler, line 1>Word-precision ruler, line 2?#Double-word-precision ruler, line 1@#Double-word-precision ruler, line 2A!Quad-word-precision ruler, line 1B'QuadDouble-word-precision ruler, line 2C@Convert Floating point precision to corresponding number of bitsDBConvert Integer precision to whether it's signed and how many bits!$%&'()*+,-./0123456789:;<=>?@ABCD!$%&'()*+,-./0123456789:;<=>?@ABCD!$%&'()*+,-./0123456789:;<=>?@ABCD(c) Levent ErkokBSD3erkokl@gmail.com experimentalNoneCCrack a Haskell Integer value as the given precision floating valueE!Use Haskell Float to represent SPF"Use Haskell Double to represent DPG-Assemble a FP from the given bits and pieces. 9Display a Floating-point number in a nicely formatted way!DDisplay a Integer (signed/unsigned) number in a nicely formatted way"EConvert the given string to a IEEE number with the required precisionEFG !"#  !"#   " !EFG !"H      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK crackNum-1.1Data.Numbers.CrackNumData.Numbers.CrackNum.DataData.Numbers.CrackNum.UtilsFPintValprecsignstExptbiasexptfracBits bitLayOutkindKindNormalDenormalQNaNSNaNInftyZero IPrecisionI64W64I32W32I16W16I8W8 PrecisionDPSPHPcrackFP displayFP displayInt convertToIEEE$fShowIPrecisionall0all1any1layOutb2s isBinDigitbinDigitreadB16readB2binDispgrpBy4hexDispclusterbvcleanUphpInds1hpInds2hpInds3spInds1spInds2spInds3dpInds1dpInds2dpInds3bInds2wInds1wInds2dInds1dInds2qInds1qInds2fpSzsgSzspValdpValcrack