úÎ2J-UV      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUNone     Safe-InferedVmonadic serialization & deserialization . !"#$%&'()*+,-./0123456789:;<=WV, !"#$%&'()*+,-./0123456789:;<=,# !%"$23765489:;<=&'()*+-,/1.0- !"#$%&'()*+,-./0123456789:;<=WVNoneB6insert a reference (a variable in the where section). D.return the serialized list of variable values d useful for delayed deserialzation of expresions, in case of dynamic variables were deserialization 2 is done when needed, once the type is known with L E.use the rshowp parser to serialize the object   rShow c= runW $ rshowp c F&deserialize trough the rreadp parser   rRead str= runR rreadp $ str IGif a is an instance of Show, showpText can be used as the showp method M the drawback is that the data inside is not inspected for common references W so it is recommended to create your own readp method for your complex data structures JGif a is an instance of Read, readpText can be used as the readp method M the drawback is that the data inside is not inspected for common references W so it is recommended to create your own readp method for your complex data structures K'deserialize the string with the parser LQread an expression with the variables definedd in a context passed as parameter. Mserialize x with the parser N-output the string of the serialized variable OLinsert a variable at this position. The expression value is inserted in the where section if it is not already c created. If the address of this object being parsed correspond with an address already parsed and A it is in the where section, then the same variable name is used  6runW showp (1::Int) -> 1 G runW (insertVar showp) (1::Int) -> v1 where { v1=1} & runW (insertVar showp) [(1::Int) ,1] -> [v1.v1] where { v1=1} ; This is useful when the object is referenced many times PQdeserialize a variable serialized with insertVar. Memory references are restored QVWrite a String in the serialized output with an added whitespace. Deserializable with ; R2Write a char in the serialized output (no spaces) S1serialize a variable which has a Binary instance T%deserialize a variable serialized by S Xdefualt instances !>?@shows the content of a expression, must be defined bu the user @7read the content of a expression, must be user defined ABCDEFGHIJKLMNOPQRSTUXYZ[\]^_`F !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTU>?@ABCNIJUSTQREFOPKLMGHD>?@ABCDEFGHIJKLMNOPQRSTUXYZ[\]^_`a      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abRefSerialize-0.2.8.1Data.RefSerialize.SerializeData.RefSerialize.ParserData.RefSerializeStatErrorContextShowFVarNameMFunemptyassocsinsertlookuptoListfromList readContexthashtvarNamenumVarST<|>charanyCharupperspacedigitoneOfnoneOfsepBybetweenchoiceoption notFollowedBymanyTillstringboolmanyparensbracesanglesbracketssemicommadotcoloncommaSepsemiSep commaSep1semiSep1 charLiteral stringLiteralnaturalOrFloatfloatintegernaturaldecimal hexadecimaloctalsymbollexeme whiteSpace Serializeshowpreadp newContextrshowprreadp getContextrShowrReadreadHexpshowHexp showpText readpTextrunRrunRCrunWshowps insertVarreadVar insertString insertChar showpBinary readpBinarytakep $fMonadST $fMonadPlusST $fSerializea$fSerializeEither$fSerializeMaybe$fSerializeMap$fSerialize(,,,)$fSerialize(,,)$fSerialize(,) $fSerialize[]$fSerialize[]0