5`      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ Safe-Inferred+-3Result and remainder. The remainder is wrapped in Maybe to avoid a Monoid constraint on t Invariant: When t is a Monoid(, the empty remainder should always be Nothing instead of  Just mempty!Not found, description of element6Override the last backtrace level in the error report.+Add a back trace level to the error report.& `abcdefghijklmnopqr! `abcdefghijklm   `abcdefghijklmnopqrl Safe-Inferred=Try to extract the remainig elements, fail if there are none.Combines 2 picklers.Combines 3 picklers.Combines 4 picklers.Combines 5 picklers.'You guessed it ... Combines 6 picklers. Safe-Inferred+-2346APickle a tree.Unpickle a tree.Isomorphic pickler.4Doesn't create or consume anything, always succeeds. *Returns everything (remaining), untouched.! . (compat)"'Converts Booleans to XML boolean values"true" and "1" are read as True"false" and "0" are read as False+All other values generate an unpickle errorGWill always generate "true" or "false" (not "0" or "1") when pickling.#5Apply a bijection before pickling / after unpickling.$Like xpWrap, but strips Just (and treats Nothing" as a failure) during unpickling.%Like xpWrap, but strips Just (and treats NothingD as a failure) during unpickling, with specified error message for Nothing value.&Lift a pickler. Nothing is returned when the given pickler doesn't return a value (e.g. the element isn't found). Does not affect unpickling errors. Nothing is pickled to mempty.A typical example is: @xpElemAttributes "score" $ xpOption $ xpAttribute "value" xpPrim in which Just 5 is encoded as <score value="5"/> and Nothing as <score/>.'Return one element, untouched.('. (compat))Specialised version of  . (compat)*Convert Text to/from String.+`Test predicate when unpickling. Fails with given error message when the predicate return false.NB*: The predicate will only be tested while  unpickling!. When pickling, this is a noop.,Like ), but fails on non-empty input.->Transforms a pickler on lists to a pickler on single elements.NBI: Will error when the given pickler doesn't produce exactly one element..Pickle to/from attribute./. (compat)0Pickle attribute if Just is given, on unpickling return Just val when the attribute is found, Nothing otherwise.2nPickle an attribute with the specified name and value, fail if the same attribute is not present on unpickle.32 (compat)4Merge successive  NodeContent values.5When unpickling, tries to find the first element with the supplied name. Once such an element is found, it will commit to it and fail% if any of the picklers don't match.6kHandle all elements with a given name. The unpickler will fail when any of the elements fails to unpickle.7\Tries to apply the pickler to all the remaining elements; fails if any of them don't match.8eFor unpickling, apply the given pickler to a subset of the elements determined by a given predicate. Pickles like 7.99Apply unpickler to all elements with the given namespace. Pickles like 7.:Pickle se without a restriction on the name. The name as taken / returned as the first element of the triple.;1Find element by name space, prefixes are ignored.< Pickler returns the first found s untouched.Unpickler wraps element in t.=A helper variant of 59 for elements that contain attributes but no child tags.>A helper variant of 5: for elements that contain child nodes but no attributes.?A helper variant of 50 for elements that contain only character data.@ Helper for s$ values that don't contain anything.A9When pickling, creates an empty element iff parameter is True.bWhen unpickling, checks whether element exists. Generates an error when the element is not empty.BGet the first non-element u from a node.CUnlift a pickler on v values to a pickler on s7 values. Nodes generated during pickling that are not s$ values will be silently discarded.D'Optional conversion with default value.Unlike E the default value is not encoded in the XML document, during unpickling the default value is inserted if the pickler doesn't return a value.EmAttempt to use a pickler. Return a default value when the pickler doesn't return anything (doesn't touch on ).Unlike D, the default value is encoded in the XML document.F. (compat)G.H. (compat)IJWhen unpickling, don't consume the matched element(s), noop when pickling.JNoop when pickling.7When unpickling, only give access to the first element.K@Select a single element from the list and apply unpickler to it.7Returns no value when no element matches the predicate.0Fails when the unpickler doesn't return a value.When pickling, this is a noop.L5Ignore input/output and replace with constant values.M.Convert text to/from any type that implements w and x. Fails on unpickle if y fails.NkWhen unpickling, tries to apply the pickler to all elements returning and consuming only matched elements.O7. (compat)PLike R], but only succeed during unpickling if at least a minimum number of elements are unpickled.QWhen unpickling, successively applies pickler to single elements until it doesn't return anything; returns all matched elements.RQ. (compat)SStandard pickler for maps<This pickler converts a map into a list of pairs of the form <elt attr="key">value</elt>TLike xpWrap, except it strips Right (and treats Left" as a failure) during unpickling.Not to be confused with W.U'Execute one of a list of picklers. The selector functionj is used during pickling, and the integer returned is taken as a 0-based index to select a pickler from pickler optionsO. Unpickling is done by trying each list element in order until one returns a Result (the selector is not used).This is typically used to handle each constructor of a data type. However, it can be used wherever multiple serialization strategies apply to a single type.NB: This function will ignore all errors as long as one of the branches returns a result. Also, it will produce an error when all branches return NoResult. Use V& for a saner version of this function.V'Execute one of a list of picklers. The selector functionj is used during pickling, and the integer returned is taken as a 0-based index to select a pickler from pickler optionsO. Unpickling is done by trying each list element in order until one returns a Result or an Error.This is typically used to handle each constructor of a data type. However, it can be used wherever multiple serialization strategies apply to a single type.This function is similar to UA but it will stop unpickling on the first error. It will return NoResult iff all of the picklers return NoResult% (or the list of picklers is empty).WgTry the left pickler first and if that doesn't produce anything the right one. Wrapping the result in Left or Right, respectively.Not to be confused with T.XPickler that during pickling always uses the first pickler, and during unpickling tries the first, and on failure then tries the second.YThe zero pickler.:Encodes nothing, always fails during unpickling. (Same as Z "got xpZero").Z]No output when pickling, always generates an error with the specified message on unpickling.[$Add an attribute with a fixed value.^5Instead of failing the pickler will return no result._9Run unpickler and consume and discard remaining elements.When pickling, this is a noop.Hz !"#$%&'()*+,-{./012345 Name of the sPickler for attributesPickler for child nodes6 Name of the s valuesPickler for attributesPickler for child nodes78Predicate to select the subsetPickler to apply on the subset9:Pickler for attributesPickler for child nodes; NamespacePickler for the local namePickler for attributesPickler for child nodes<=>?@ABCDEFGHIJKLMNOPQRSElement name (elt)Attribute name (attr)Pickler for keys (key)Pickler for values (value)TUSelector functionList of picklersVSelector functionList of picklersWXYZ Error message[\]^_`  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`  YZ \]!'(),*-M.02/13[5:;<=>?@A6B"&DESUVWXNK789OQRPFGH#LT$%+^CJI_4Hz !"#$%&'()*+,-{./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_|       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvtuwtuxtuyz{|z}~zxml-picklers-0.3.6Data.XML.PickleData.XML.Pickle.BasicData.XML.Pickle.TuplesUnresolvedEntityException UnpickleErrorVariants TraceStep ErrorMessageUnpickleResultResultNoResultPU unpickleTree pickleTree<++>ppUnpickleErrorgetResttErrxp2Tuplexp3Tuplexp4Tuplexp5Tuplexp6Tuple AttributepickleunpicklexpIso xpPartialxpUnitxpIdxpTreesxpBoolxpWrap xpWrapMaybe xpWrapMaybe_xpOptionxpHeadxpTreexpText0xpStringxpAssertxpTextxpRoot xpAttributexpAttr xpAttribute' xpAttrImplied xpAttribute_ xpAttrFixedflattenContentxpElemxpElemsxpAll xpSubsetAllxpAllByNamespacexpElemWithNamexpElemByNamespacexpElemVerbatim xpElemAttrs xpElemNodes xpElemText xpElemBlank xpElemExists xpContent xpUnliftElems xpDefault xpWithDefaultxpPair<#>xpTriplexpPeek xpIsolate xpFindFirstxpConstxpPrim xpFindMatchesxpList0 xpListMinLen xpSeqWhilexpListxpMap xpWrapEitherxpAltxpChoicexpEither xpTryCatchxpZeroxpThrowxpAddFixedAttrxpFstxpSnd xpMayFailxpCleanmapUnpickleErrormissingmissingEupeshowTrprintUPE leftoverEchildchild'leftoverremListmapError<++.>ppName $fCategory*PU$$fExceptionUnresolvedEntityException$fExceptionUnpickleError$fMonadUnpickleResult$fApplicativeUnpickleResultxml-types-0.3.4Data.XML.TypesElement NodeElement NodeContentNodebaseGHC.ReadReadGHC.ShowShow Text.ReadreadforgetFirst