QKq      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnop{This type is used by ' when a concrete string type is needed "Polymorphic container of a string 'When operations take place on multiple s, they are first  converted to the type , which are lazy bytestrings, E whenever absolutely necessary (which includes testing for equality, G appending strings, concatenating lists of strings, empty strings with  <?, and unfolding), making them the most efficient type for this  polymorphic container. Minimal complete definition: , , , and  ERead n bytes *or* characters, depending on the implementation into a 0 ByteString, directly from the specified Handle GWhether or not this function is lazy depends on the instance; laziness  is preferred. !Read a single line from a handle Write a string to a handle 2Write a string to a handle, followed by a newline FN.B.: implementations might not define this atomically. If the state E of being atomic is necessary, one possible solution is to convert a ' string to an efficient type for which  is atomic. 5Take a function of type Text -> Text as its argument BThe entire input from the standard input device is passed to this E function as its argument, and the resulting string is output on the  standard output device. Read all user input on stdin as a single string &Read a single line of user input from stdin Write a string to stdout Write a string to stdout, followed by a newline =Read a file and returns the contents of the file as a string EDepending on the instance, this function might expect the file to be * non-binary. The default definition uses openFile to open the file. Write a string to a file <The file is truncated to zero length before writing begins.  The default definition uses withFile to open the file. $Write a string to the end of a file The default definition uses withFile to open the file.  !"#$%&'()*+,Minimal complete definition: StringCellChar; StringCellAltChar; toStringCells; fromStringCells; toMainChar; toAltChar; cons; snoc; either all of head, tail, last, and init, or all of uncons and unsnoc; take, take64 or genericTake; drop, drop64, or genericDrop; and length, length64, or genericLength ,-./0123456789:Append two strings ;<=>?@ABCDVConstruction of a string; implementations should behave safely with incorrect lengths The default implementation of undfoldr is independent from that of E,  as well as F as and G. EFGH(Get the character at the given position  Just like N, O+, and the variants of those functions, the E default definitions of these three variants are independent of each $ other, and are defined in terms of > and ?, which can be  inefficient. IJIndex a string at any location Just like the other generic) functions of this module, this function " can be significantly slower than H, since the function must be < able to support arbitrarily large indices. Consider using H or  I-, even if you need to coerce the index to an q. KLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopString super class r*Type-restricted string conversion used by s instance definition for  s*Type-restricted string conversion used by s instance definition for  tu%Untag a type with a type restriction ?The first argument is guaranteed to be ignored; thus the value v  can be passed in its place. w3Phantom, undefined value only used for convenience LUsers should be careful that this value is never evaluated when using this. xSee  Data.Text.IO! for documentation of behaviour. ySee Data.ByteString.Lazy! for documentation of behaviour.  and  z are defined in terms of . and the equivalent methods of Data.ByteString.   is defined non-atomically: it is defined as an action that puts the string and then separately puts a newline character string. {See Data.ByteString! for documentation of behaviour. |See '*System.IO for documentation of behaviour. }This is minimally defined with . q  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqp+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmno !"#$%&'()* q    !"#$%&'()*!"#$%&'()*+D,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmno,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnop~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~y string-class-0.1.5.1Data.String.ClassGenStringDefault GenString gen_string StringRWIO hGetContentshGetLinehPutStr hPutStrLninteract getContentsgetLineputStrputStrLnreadFile writeFile appendFileConvTexttoTextfromTextConvLazyByteStringtoLazyByteStringfromLazyByteStringConvStrictByteStringtoStrictByteStringfromStrictByteString ConvStringtoString fromString ConvGenString toGenString fromGenString StringCelltoChartoWord8toWord16toWord32toWord64fromChar fromWord8 fromWord16 fromWord32 fromWord64 StringCellsStringCellCharStringCellAltChar toStringCellsfromStringCellsconsunconssnocunsnocaltCons altUnconsaltSnoc altUnsnoc toMainChar toAltCharappendconcatemptynullheadtaillastinitaltHeadaltLastunfoldr altUnfoldrunfoldrN altUnfoldrNindexindex64 genericIndextaketake64 genericTakedropdrop64 genericDroplengthlength64 genericLength safeUncons safeUnsnoc safeAltUncons safeAltUnsnocsafeHeadsafeTailsafeLastsafeInit safeAltHead safeAltLast safeIndex safeIndex64safeGenericIndexsafeTake safeTake64safeGenericTakesafeDrop safeDrop64safeGenericDrop safeUncons2 safeUncons3 safeUncons4cons2cons3cons4uncons2uncons3uncons4Stringyghc-prim GHC.TypesIntgenStringConConvgenStringFromConConvtoGenDefaultString untagTypeOfbaseGHC.Err undefinedgenStringPhantom$fStringRWIOText$fStringRWIOByteString System.IO$fStringRWIOByteString0$fStringRWIO[]$fStringRWIOGenString