úÎ!S MÓT      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSNone06ù versioning@An uninhabited type. We define our own type instead of using  Data.Voidj because we need additional instances. Moreover this type is internal. Users are supposed to use NA to express absence.None -<>?FSTVb  versioning"A type indicating absence. The TV is a hack needed to let aeson parse a record successfully even if a field of type  is missing.%Ideally we would like to define it as  data NA = NAbut this would not work with FromJSON, instances that are derived with Generic. versioningÚThis allows us to express that a field is only present until a given version. The first parameter is the last version in which the field is present, the second parameter is the actual version of the data-type. versioningÞThis allows us to express that a field is only present since a given version. The first parameter is the version in which the field has been introduced, the second parameter is the actual version of the data-type. versioningCompare two versions versioning'Get the type-level natural of a version! versioningGet the previous version" versioningThe version of a data model% versioning+Get the version number of a versioned value& versioning"A placeholder for an absent value.!  !"$#%&!"$#! & %Safe,-FST8U versioningHA type family to compute Boolean equality. We can't use the one from Data.Type.Equality. because before 8.4 it was not poly-kinded.UNone+-;<=>?FSTVi$ŸV versioning4Upgrade from a lower to a higher version by calling +‹ on all the intermediary steps. You do not need to define any instance. They are derived automatically if all the intermediary * instances are defined.) versioning/This constraint specifies that a value of type a! can be upgraded from version v to version w.* versioningAdapt from a version to another, versioning4Upgrade from a lower to a higher version by calling +" on all the intermediary steps.)*+,*+),None+,-/;<=>?FQSTVi1Ä 3 versioning)Handy constraint synonym to be used with 94 versioning2The function that will perform the actual decoding6 versioning/The action to apply to the decoded object with ;7 versioning6The pure function to apply to the decoded object with =8 versioningRThe result type of the action that has been applied to the decoded object with = or ;.: versioninghDecode by trying all the versions decrementally and upgrade the decoded object to the newest version.; versioninguDecode by trying all the versions decrementally and apply an action to the decoded object at its original version.< versioningLike ;b, with an additional type-parameter indicating the oldest version you want to be able to decode= versioningPure version of ;.> versioningPure version of <./0123456789:;<=>876321450/9:=;<>None+,-<>?FQTViM?C versioningLike Db, with an additional type-parameter indicating the oldest version you want to be able to decodeD versioning)Handy constraint synonym to be used with EE versioningvDecode a JSON string by trying all the versions decrementally and upgrade the decoded object to the newest version.F versioningLike E but it reads from a strict  ByteStringG versioningLike E* but returns a message when decoding failsH versioningLike F* but returns a message when decoding failsI versioningLike Eb, with an additional type-parameter indicating the oldest version you want to be able to decodeJ versioningƒDecode a JSON string by trying all the versions decrementally and apply an action to the decoded object at its original version.K versioningLike J but it reads from a strict  ByteStringL versioningLike J* but returns a message when decoding failsM versioningLike K* but returns a message when decoding failsN versioningLike Jb, with an additional type-parameter indicating the oldest version you want to be able to decodeO versioning‰Decode a JSON string by trying all the versions decrementally and apply a pure function to the decoded object at its original version.P versioningLike O but it reads from a strict  ByteStringQ versioningLike O* but returns a message when decoding failsR versioningLike P* but returns a message when decoding failsS versioningLike Ob, with an additional type-parameter indicating the oldest version you want to be able to decodeW versioningDecode with the aeson X functionY versioningDecode with the aeson Z function[ versioningDecode with the aeson \ function] versioningDecode with the aeson ^ function8CDEFGHIJKLMNOPQRS8DCEFGHIOPQRSJKLMN_      !"#$%&'()*'+,-./0123456789::;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab_`cd_`ef_`gh)versioning-0.3.0.0-90n7o6issKFHJvEvlBUS2aVersioning.Internal.BaseVersioning.BaseVersioning.UpgradeVersioning.Internal.DecodingVersioning.JSONVersioning.Internal.EqualityBare $fToJSONBare$fFromJSONBare $fShowBare $fGenericBare$fEqBareV20V19V18V17V16V15V14V13V12V11V10V9V8V7V6V5V4V3V2V1V0NAUntilSinceVCmpVNatVSuccVPredVVZero versionNumberna$fEqV$fShowVUpgradeAdaptadaptupgrade$fUpgrade'Falsevwa$fUpgrade'TruevwaWithAnyVersionFromWithAnyVersionDecodeAnyVersionDecodableToFrom DecodableToDecoderApplyMApplyApplieddecodeAnyVersiondecodeAnyVersionFromwithAnyVersionMwithAnyVersionFromMwithAnyVersionwithAnyVersionFrom"$fDecodeAnyVersion'Falsefromvwadec!$fDecodeAnyVersion'Truefromvwadec $fWithAnyVersion'Falsefromvacdec$fWithAnyVersion'TruefromvacdecJsonDecodableToFromJsonDecodableTofromJsonAnyVersionfromJsonAnyVersionStrictfromJsonAnyVersionEitherfromJsonAnyVersionEitherStrictfromJsonAnyVersionFromwithJsonAnyVersionMwithJsonAnyVersionStrictMwithJsonAnyVersionEitherMwithJsonAnyVersionEitherStrictMwithJsonAnyVersionFromMwithJsonAnyVersionwithJsonAnyVersionStrictwithJsonAnyVersionEitherwithJsonAnyVersionEitherStrictwithJsonAnyVersionFrombaseGHC.BaseMaybe==Upgrade' jsonDecode$aeson-1.4.0.0-LIOMjdhUbDoEPhbHMMZ6ty Data.AesondecodejsonDecodeStrict decodeStrictjsonEitherDecode eitherDecodejsonEitherDecodeStricteitherDecodeStrict