!S      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Safem1None,EXm2eronInstancel 3 m467 2NO !"#$PQ%&'()*+,-./01234589:;<=>?@ABCDEFGHIJKLMghiHjkln8576qporstuvwxyz{|}~VWXYZ[\]^_`abcdefRSTU      !"#$%&'()*+,-./01:9;=>?@ABCDEFGIJKLMNOPQRSTUVWXYZ[\]^_`acdefghijklmlefghijklm 3 m467 2NO !"#$PQ%&'()*+,-./01234589:;<=>?@ABCDEFGHIJKLMghiHjkln8576qporstuvwxyz{|}~VWXYZ[\]^_`abcdefRSTU      !"#$%&'()*+,-./01:9;=>?@ABCDEFGIJKLMNOPQRSTUVWXYZ[\]^_`acdm0None_m?aoronData block descriptorron"Does the descriptor refer to an opo~}|{zyxwvutsrqpo~}|{zyxwvutsrqpNonemBron adapter to iron Variant of  with a more debuggable message.ronFApply parser and check it is applied successfully. Kinda opposite to  .>     3None@AMagkmJ ron& smart constructor dropping upper bitsron& smart constructor dropping upper bitsron& smart constructor dropping upper bitsron specialized for  ron& smart constructor dropping upper bitsron specialized for !ron& smart constructor dropping upper bitsron specialized for "ron& smart constructor dropping upper bitsron specialized for #ron" smart constructor checking domain2 !"#2 !"#None_amXronBase64 alphabetron/Check if a character is in the Base64 alphabet.ron*Convert a Base64 letter to a number [0-63]ron;Convert a subset [0-F] of Base64 letters to a number [0-15]ron"Decode a blob from a Base64 stringron+Decode a 60-bit number from a Base64 stringron+Decode a 60-bit number from a Base32 stringron+Decode a 64-bit number from a Base64 stringron+Decode a 64-bit number from a Base32 stringron Encode a blob to a Base64 stringron0Convert a number from [0..63] to a single letterron0Convert a number from [0..15] to a single letterron)Encode a 60-bit number to a Base64 stringronCEncode a 60-bit number to a Base64 string, dropping trailing zeroesronCEncode a 64-bit number to a Base32 string, dropping trailing zeroesron)Encode a 64-bit number to a Base64 stringNone$MmY5<     5     <None "#$%279Xgmf,ronUUID split in parts3ron)Universally unique identifier of anything5ronUUID with all zero fields6ronSplit UUID into parts7ronBuild UUID from parts8ron'Build former 64 bits of UUID from parts9ron'Build latter 64 bits of UUID from parts:ron#Make an unscoped (unqualified) name;ronMake a scoped (qualified) name<ronConvert UUID to a name=ronUUID with all zero fields>ronIncrement field / of a UUID?ron Encode a UUID to a Base32 string@ron"Decode a UUID from a Base32 stringAronRON-Text-encoding:ronname, max 10 Base64 letters;ronscope, max 10 Base64 lettersron!local name, max 10 Base64 letters<ron (scope, name) for a scoped name;  (name, "") for a global name,-12/0.3456789:;<=>?@34,-12/0.7896>=5<:;@?None$279_mqNJron8Specific field or item in an object, identified by UUID.Oron&Reference to an object inside a frame.Sron"Frame containing only state chunksTronCReduced chunk representing an object state (i. e. high-level value)XronA pair of (type, object)Yron Op terminator^ron Common frame_ron Common chunkcronCommon reduced chunkgron$ Reduced  op (op from reduced chunk)ironevent id (usually timestamp)jron;reference to other op; actual semantics depends on the typekronpayloadlronRaw opnrontypeoron object idpron7other keys and payload, that are common with reduced opqronAtom  a payload element.34JKLMNOPRQSTUVWXY\]Z[^_ab`cdefghijklmnopqrstu.qrstuOPRQXJKLMNghijkY\]Z[lmnopTUVWS34_ab`^cdef None"#$_`mw ronSerialize a frameronSerialize a chunkronSerialize a raw opronSerialize a reduced opron Serialize a 3ronEncode descriptorron(Prepend serialized bytes with descriptorron Serialize an qronSerialize a float atomronSerialize a reduced chunkronSerialize a string atomronbody None "#PX_`amron for descriptor ron for extended length fieldron Parse frame!ron for frame"ron for chunk sequence#ronClear upper bit of "$ron for a chunk%ronAssert that is such as expected&ron for a sequence of reduced ops'ron< for raw op, returning the op's terminator along with the op(ron@ for reduced op, returning the op's terminator along with the op)ron for raw op without terminator*ron" for reduced op without terminator+ron2 for an op key (type, object, event, or reference),ron for UUID-ron" for a payload (sequence of atoms).ron for an atomron Parse an q/ron for a float atom0ron for an integer atom1ron for an stringronParse a string atom$ronexpected input length,ronexpected input length/ronexpected input length0ronexpected input length1ronexpected input lengthNonem None "#%X_gmron.Serialize UUID without context (used for test)ron Serialize UUID in op key contextron)Serialize UUID in op value (atom) contextron(same key in the previous op (default is =)ron(previous key of the same op (default is =)ronthisronpreviousronthis None"#$_agm ronSerialize a common frameron%Serialize a sequence of common frames2ronSerialize a common chunk3ronSerialize a reduced chunkronSerialize a context-free raw op4ron5Serialize a raw op with compression in stream context5ron9Serialize a reduced op with compression in stream contextronSerialize a context-free atom6ron=Serialize an atom with compression for UUID in stream contextronSerialize a string atom7ron%Serialize a payload in stream contextronSerialize a state frameronESerialize an object. Return object id that must be stored separately.5ronenclosing object7ronprevious UUID (default is =) None"#$_`ampronParse a common frame8ron%Returns a chunk and the last op in it9ron8Returns a chunk and the last op (converted to raw) in itron!Parse a sequence of common framesronParse a single context-free opron Parse a single context-free UUIDronParse a UUID in key positionron%Parse a UUID in value (atom) positionron Parse an atomronParse a string atom:ronReturn l and  chunkIsQueryronParse a state frameron Parse a state frame as an object;ron)Extract object states from a common frameron(same key in the previous op (default is =)ron(previous key of the same op (default is =)ronprevious  NonemNone"#$_agmOronGet current replica idronGet sequential timestamps.Laws:  ) t <- getEvents n (t !! i) == head t + i  t1 <-  t2 <-  t2 >= t1 + 1 getEvents 0 == getEvents 1ron"Make local time not less than thisron1Epoch-based Lamport time event, specific case of .ron4Calendar-based Lamport time event, specific case of .ron'Generic Lamport time event. Cannot be <b because we can't compare different types of clocks. If you want comparable events, use specific .ronReplica identifierronReplica id assignment styleronEClock type is encoded in 2 higher bits of variety, value in uuidValueron +https://en.wikipedia.org/wiki/Logical_clockronMRFC 4122 epoch, hundreds of nanoseconds since 1582. Year range is 1582 5235.ronCalendar format. See  (https://github.com/gritzko/ron/issues/191. Year range is 2010 2350. Precision is 100 ns.ron variant for any UUIDronGet a single eventronGet a single event as UUIDronGet event sequence as UUIDsron%Make a calendar timestamp from a dateron4Make a calendar timestamp from a date and a day timeronHMake a calendar timestamp from a date, a day time, and a second fractionronMake an ! replica id from arbitrary numberronnumber of needed timestampsron(date as (year, month [1..12], day [1..])ron(date as (year, month [1..12], day [1..])ron%day time as (hours, minutes, seconds)ron(date as (year, month [1..12], day [1..])ron%day time as (hours, minutes, seconds)ron/fraction of a second in hundreds of nanosecond,,NoneM_mron+ReplicaSim inside Lamport clock simulation.ron!Lamport clock simulation. Key is 3. Non-present value is equivalent to (0, initial).ronExecute network simulationUsage: runNetworkSim $ do  r1 $ do actions...  r2 $ do actions...  r1 $ ... Each X starts its own networks. One shouldn't use in one network events generated in another.NoneMkm-ronNReal epoch clock. Uses kind of global variable to ensure strict monotonicity.ronRun $ action with explicit time variable.ronLike 6, but initialize time variable with current wall time.ronGet current time in B format (with 100 ns resolution). Monotonicity is not guaranteed.=ron?Convert unix time in hundreds of milliseconds to RFC 4122 time. ron?Convert unix time in hundreds of milliseconds to RFC 4122 time.  None "#SX_gkmrontInstances of this class are encoded as objects. An enclosing object's payload will be filled with this object's id.ronUUID of the typeron Encode dataron Decode dataron4Instances of this class are encoded as payload only.ron Encode dataron Decode dataronBase class for typed encodingronInstances SHOULD implement  either as = or as >%ron~Untyped-reducible types. Untyped means if this type is a container then the types of data contained in it is not considered.&ronUUID of the type'ronLoad a state from a state chunk(ronStore a state to a state chunk)ron&Merge a state with patches and raw ops*ronCMerge patches and raw ops into bigger patches or throw obsolete ops+ronUnapplied patches and raw ops0ron:Reduce all chunks of specific type and object in the frame;ron=Encode typed data to a payload with possible addition objects<ronoDecode typed data from a payload. The implementation may use other objects in the frame to resolve references.=ronStandard implementation of  for  types.>ronStandard implementation of  for  types.@ronEHelper to build an object frame using arbitrarily nested serializers.5 !$#"%*)('&+,-/.0123456789:;<=>?@ABC50,-/.+%*)('& !$#"56789:;<=>?@ABC4321None"#mRronDVersion Vector type. May be used both in typed and untyped contexts.>ron/Name-UUID to use as Version Vector type marker.RRNone "#$>M_gm [ronSpeciaization of \ to ?1. This is the recommended way to store a string.\ron Typed RGA@ron@the key is the parent event, the value is a non-empty VertexListAron=the key is the target event, the value is the tombstone event^ron Untyped RGABronopEvent = vertex id opRef: 0 = value is alive, _ = tombstone event, value is backup for undo opPayload: the value_ron$Name-UUID to use as RGA type marker.`ronCReplace content of the RGA throug introducing changes detected by C.aronSpeciaization of ` for bronCreate an RGA from a listcron Create an [ from a textdronRead elements from RGAeronRead characters from [ [\]^_`abcde \]^[`adebc_None"#>Xgm wron2Type-directing wrapper for typed OR-Set of objectsyron8Type-directing wrapper for typed OR-Set of atomic values{rongUntyped OR-Set. Implementation: a map from the last change (creation or deletion) to the original op.Dron'Name-UUID to use as OR-Set type marker.Eron'XXX Internal. Common implementation of | and }.|ronAdd atomic value to the OR-Set}ron+Add a reference to the object to the OR-Set~ron8Encode an object and add a reference to it to the OR-Setron&Remove an atomic value from the OR-Setron*Remove an object reference from the OR-Set wxyz{|}~ yzwx{~}|None "#>MXkmron(Untyped LWW. Implementation: a map from j to the original op.Fron/Last-Write-Wins: select an op with latter eventron$Name-UUID to use as LWW type marker.ron.Create LWW object from a list of named fields.ronDecode field valueronDecode field valueronAssign a value to a fieldron/Anti-lens to an object inside a specified fieldron Field nameronLWW object chunkron Field nameron Field nameronValue (from untyped world)ron Field nameronNested object modifierNone "#$X_`gkmronAReduce object with frame from another version of the same object.%&'()*;<=>%&'()*<;=>None $>PX_kmronIResult of DB reading, loaded document with information about its versionsron Merged value.GronrA thing (e.g. document) was fixed during loading. It it was fixed during loading it must be saved to the storage.ronStorage backend interfaceron Must return [] for non-existent collectionron Must return [] for non-existent documentron0Must create collection and document if not existron[A type that intended to be put in a separate collection must define a Collection instance.ronCalled when RON parser fails.ronCollection (directory name)ronODocument identifier (directory name), should be a RON-Base32-encoded RON-UUID.ron'Document version identifier (file name)ron Try decode UUID from a file nameron"Load document version as an objectronLoad all versions of a documentHronValidation-like version of sconcat.ron7Load document, apply changes and put it back to storageronaCreate new version of an object/document. If the document doesn't exist yet, it will be created.ron.Create document assuming it doesn't exist yet.ron+Bool = is document id a valid UUID encodingronO, if document exists already; N otherwise.None$/MX_km3None $/=?@AMXkmron+Storage handle (uses the Handle pattern ).ronEnvironment is the dataDirronRun a  actionronCreate new storage handleNone"#$_mron&Generate Haskell types from RON-SchemaIronType-directing newtype6<     None_mronRON-Schema type for bbbJ ! "#$%&'#(#)#*#+#,-.#/#0#1#2#3#4#5#6789:;<;=;>;?;@ABCDEFEGEHEIJKLMLNLOLPQR;S;T;U;V;W;X;Y;Z;[;\;];^;_;`;a;b;c;d;e;f;g;h;i;j;k;l%mn%moApAqArAsAtCuAvAwAxAyCz%m{C|J}J~QQCCCC;;;;;;;;;;;;;;;;;#####--------------9999999999777777777777777777777777777777777777;;;g;;h;;i;;j;;k;;l;T;;U;;V;;W;;X;;;Z;;;; ; ; ; ; ;;;;;;;;;;;;;;;;;;C C!C"C#C$C%C&C'C'C(A)A*A*A+,-,.,/,0Q1Q2Q3Q4Q5Q6Q7Q89:9;9;9<9<=>=?=@ABCDEDFDGDHDIDJDKDLDM N O P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_#`#a#b#c#d#e#f#g#hijklmnopnoqnornosnotnounovnownoxnoynoz{|}~      !"#$%&'())*+,-..//012234556789:;<=>?@A>9%ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]]^_`abccdefghijklmnopqrstuvwxyyz{|}}~                                !"#$%&'()*+,-./01234566789:;;<=>>?@ABCDEFGHIIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxxyz{|}~1      !I"#$%&'()*+,E- .  /  0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E  . 3 F G H I J K L M%NOPQ%mRSTUVWXYZ[\]^_ron-0.2-CBCinHkYKtkAjoH6xEEAHvRON.Internal.Prelude RON.Schema RON.Data.TimeRON.Binary.TypesRON.Internal.Word RON.Base64RON.UUID RON.TypesRON.Binary.SerializeRON.Binary.ParseRON.Text.Serialize.UUIDRON.Text.SerializeRON.Text.Parse RON.EventRON.Event.Simulation RON.EpochRON.Data.InternalRON.Data.VersionVector RON.Data.RGARON.Data.ORSet RON.Data.LWWRON.Data RON.StorageRON.Storage.TestRON.Storage.IO RON.Schema.TH Data.ZigZagAttoparsec.Extra RON.BinaryRON.Textbase Data.TuplefstsndGHC.Base$ghc-primGHC.Primcoercefail>>=>>fmapreturn Control.Monadguard<>join<*>pure*>MonadFunctor Applicative Data.FoldableFoldableData.Traversable Traversable GHC.GenericsGenericGeneric1Datatype ConstructorSelector GHC.TypeNatsKnownNat GHC.TypeLits KnownSymbolGHC.IntInt8Int16Int32Int64 GHC.MaybeMaybeGHC.WordWord8Word16Word32Word64 Data.EitherEitherV1U1Par1Rec1K1M1:+::*::.:RDCSRec0D1C1S1RepRep1URecUAddrUCharUDoubleUFloatUIntUWord GHC.TypesNatSymbol+*^<=?- CmpSymbolCmpNatDivModLog2 TypeError Coercible AppendSymbolNothingJustLeftRightText:<>::$$:ShowTypePrefixIInfixILeftAssociativeRightAssociativeNotAssociative SourceUnpackSourceNoUnpackNoSourceUnpackedness SourceLazy SourceStrictNoSourceStrictness DecidedLazy DecidedStrict DecidedUnpackMetaDataMetaConsMetaSelbytestring-0.10.8.2Data.ByteString.Internal ByteString Data.Functor<$>'hashable-1.2.7.0-2SI038axTEd7AEZJ275kpiData.Hashable.ClassHashable text-1.2.3.1Data.Text.Internal2unordered-containers-0.2.9.0-I6OVG4HR3i6hFXdo933HbData.HashMap.BaseHashMapcontainers-0.6.0.1Data.Map.InternalMap<* Alternativemplusmzero MonadPlusData.List.NonEmptynonEmptymfilter<$!>unless replicateM_ replicateMfoldM_foldM zipWithM_zipWithM mapAndUnzipMforever<=<>=>filterMfoldMapDefault fmapDefault mapAccumR mapAccumLforMforsequencemapM sequenceAtraverseControl.Applicativeoptional unwrapMonad WrapMonad WrappedMonad unwrapArrow WrapArrow WrappedArrow getZipListZipListData.Functor.Identity runIdentityIdentityData.Functor.ConstgetConstConstfindnotElem minimumBy maximumByallanyorand concatMapconcatmsumasum sequence_ sequenceA_forM_mapM_for_ traverse_foldlMfoldrMproductsumminimummaximumelemlengthnulltoListfoldl1foldr1foldl'foldlfoldr'foldrfoldMapfoldprecuAddr#uChar#uDouble#uFloat#uInt#uWord#unPar1unRec1unK1unM1R1L1unComp1Comp1 isNewtype packageName moduleName datatypeName conIsRecord conFixityconNameInfixPrefixFixityFixityI AssociativitySourceUnpackednessSourceStrictnessDecidedStrictnessselDecidedStrictnessselSourceStrictnessselSourceUnpackednessselNametofromto1from1Meta sameSymbol someSymbolVal someNatVal symbolVal'natVal' symbolValnatVal SomeSymbol ErrorMessagesameNatSomeNat<= Data.OldListsortOnsortBysort partition fromRightfromLeftisRightisLeftpartitionEithersrightsleftseither Data.Proxy asProxyTypeOfProxyKProxy Data.Function&onfixvoid$><&> Data.MaybemapMaybe catMaybes listToMaybe maybeToList fromMaybefromJust isNothingisJustmaybeswapuncurrycurryflip.constidapliftM5liftM4liftM3liftM2liftMwhen=<<liftA3liftA<**>sconcat<$liftA2manysome<|>empty:|NonEmptyData.Set.InternalSet1data-default-class-0.1.2.0-FeIQ5tLoVZBHMSgrT9zptQData.Default.Classdef#extra-1.6.13-Fm1NztujpwgLxaJInpJGfjData.Tuple.Extrauncurry3curry3thd3snd3fst3bothdupe&&&***secondfirst hashWithSalt mtl-2.2.2Control.Monad.Error.Class throwError"safe-0.3.17-43oyx4B630gDZMbTh3Ttji Safe.Foldable findJustSafe foldr1Safe foldl1Safe findJustNote findJustDeffindJust maximumByNote minimumByNote maximumByDef minimumByDef maximumByMay minimumByMay maximumNote minimumNote maximumDef minimumDef maximumMay minimumMay foldr1Def foldl1Def foldr1Note foldl1Note foldr1May foldl1May time-1.8.0.2Data.Time.Calendar.DaysDay Data.HashSetHashSet&vector-0.12.0.1-KAZQ3Nmj85LLvErDPMKv7R Data.VectorVectorIMaxOnFst ByteStringLmaxOnminOn listSingleton-:$fSemigroupMaxOnFstDescDOpRaw DOpReduced DOpHeaderDOpQueryHeader DUuidType DUuidObject DUuidEventDUuidRef DAtomUuidZipDUuidZipObject DUuidZipEvent DUuidZipRef DAtomUuid DAtomInteger DAtomString DAtomFloatSizedescIsOp $fEnumDesc$fEqDesc $fShowDescSafeCastsafeCastWord60Word24Word12Word6W6Word4Word2B0000B11B10B01B00b00b01b10b11leastSignificant2b0000b0001b0010b0011b0100b0101b0110b0111b1000b1001b1010b1011b1100b1101b1110b1111leastSignificant4leastSignificant6ls6leastSignificant12ls12leastSignificant24ls24leastSignificant60ls60toWord60 word60add$fHashableWord60$fBoundedWord60$fSafeCastWord64Fixed$fSafeCastWord64Integer$fSafeCastWord60Word64$fSafeCastWord24Word32$fSafeCastWord24Word64$fSafeCastWord12Word64$fSafeCastWord8Word64$fSafeCastWord8Word32$fSafeCastWord6Word64$fSafeCastWord6Word60$fSafeCastWord6Word8$fSafeCastWord6Int$fSafeCastWord4Word8$fSafeCastWord4Word64$fSafeCastWord4Int$fSafeCastWord2Word64$fSafeCastWord2Word8$fSafeCastWord2Word4$fSafeCastWord2Int $fEqWord2 $fOrdWord2 $fShowWord2 $fEqWord4 $fOrdWord4 $fShowWord4 $fEqWord6 $fOrdWord6 $fShowWord6 $fEqWord12 $fOrdWord12 $fShowWord12 $fEqWord24 $fOrdWord24 $fShowWord24 $fEnumWord60 $fEqWord60 $fOrdWord60 $fShowWord60alphabetisLetter decodeLetter decodeLetter4decodedecode60decode60base32decode64decode64base32encode encodeLetter encodeLetter4encode60 encode60shortencode64base32shortencode64TOpaqueOpaqueopaqueIsObjectopaqueAnnotationsOpaqueAnnotations oaHaskellTypeSchema Declaration DStructLwwFieldAnnotationsField fieldTypefieldAnnotationsStructAnnotationssaHaskellDerivingsaHaskellFieldPrefix StructLww structName structFieldsstructAnnotationsTObjectTORSetTRga TStructLwwTVersionVector TCompositeTOptionRonTypeTAtom TAIntegerTAStringfieldchar rgaString opaqueObject opaqueAtomsoption structLww atomString atomIntegerorSet versionVectorboole$fDefaultStructAnnotations$fDefaultFieldAnnotations $fShowTAtom$fShowStructAnnotations$fShowFieldAnnotations$fDefaultOpaqueAnnotations$fShowOpaqueAnnotations $fShowTOpaque $fShowRonType $fShowTObject$fShowStructLww $fShowField$fShowTComposite UuidFields uuidVariety uuidValue uuidVariant uuidVersion uuidOriginUUIDZerosplitbuildbuildXbuildYmkName mkScopedNamegetNamezero succValue encodeBase32 decodeBase32 $fShowUUID $fDataUUID$fEqUUID $fGenericUUID$fHashableUUID $fNFDataUUID $fOrdUUID$fEqUuidFields$fShowUuidFields ObjectPart partObject partLocation partFrameObjectobjectId objectFrame StateFrame StateChunk stateVersion stateBodyObjectIdOpTermTRawTReducedTHeaderTQuery WireFrame WireChunkRawValueQueryWireReducedChunk wrcHeaderwrcBodyOpopEventopRef opPayloadRawOpopTypeopObjectopAtomAFloatAIntegerAStringAUuid $fShowRawOp $fDataAtom$fEqAtom $fGenericAtom$fHashableAtom $fNFDataAtom $fShowAtom$fDataOp$fEqOp $fGenericOp $fHashableOp $fNFDataOp$fShowOp $fDataRawOp $fEqRawOp$fGenericRawOp $fNFDataRawOp$fDataWireReducedChunk$fEqWireReducedChunk$fGenericWireReducedChunk$fNFDataWireReducedChunk$fShowWireReducedChunk$fDataWireChunk $fEqWireChunk$fGenericWireChunk$fNFDataWireChunk$fShowWireChunk $fEqOpTerm $fShowOpTerm$fEqStateChunk$fShowStateChunk $fEqObject $fShowObject serialize serializeAtomserializeStringparse parseAtom parseString serializeUuidserializeUuidKeyserializeUuidAtomserializeWireFrameserializeWireFramesserializeRawOpserializeStateFrameserializeObjectparseWireFrameparseWireFramesparseOp parseUuid parseUuidKey parseUuidAtomparseStateFrame parseObject ReplicaClockgetPid getEventsadvance EpochEvent CalendarEventEvent ReplicaIdNaming TrieForked CryptoForked RecordForkedApplicationSpecific LocalTime TCalendarTLogicalTEpochTUnknown EpochTime CalendarTimemonthsdayshoursminutessecondsnanosecHundredsfromCalendarEventfromEpochEvent toEpochEvent advanceToUuidgetEvent getEventUuid getEventUuids encodeEvent decodeEventmkCalendarDatemkCalendarDateTimemkCalendarDateTimeNanoapplicationSpecific$fHashableNaming$fHashableReplicaId$fOrdCalendarEvent$fOrdEpochEvent$fReplicaClockStateT$fReplicaClockExceptT$fEqCalendarTime$fOrdCalendarTime$fShowCalendarTime $fEqLocalTime$fShowLocalTime$fBoundedNaming $fEnumNaming $fEqNaming $fShowNaming $fEqReplicaId$fShowReplicaId $fEqEvent $fShowEvent$fEqCalendarEvent$fShowCalendarEvent$fEqEpochEvent$fShowEpochEvent ReplicaSim ReplicaSimT NetworkSim NetworkSimT runNetworkSimrunNetworkSimT runReplicaSimrunReplicaSimT$fMonadTransNetworkSimT$fReplicaClockReplicaSimT$fMonadTransReplicaSimT$fApplicativeNetworkSimT$fFunctorNetworkSimT$fMonadNetworkSimT$fApplicativeReplicaSimT$fFunctorReplicaSimT$fMonadReplicaSimT EpochClock runEpochClockrunEpochClockFromCurrentTimegetCurrentEpochTimelocalEpochTimeFromUnix$fReplicaClockEpochClock$fApplicativeEpochClock$fFunctorEpochClock$fMonadEpochClock$fMonadIOEpochClockReplicatedAsObject objectOpType newObject getObjectReplicatedAsPayload toPayload fromPayloadEncodingencodingNewRonencodingFromRon ReplicatedencodingPatchpatchRef patchValue ReducedChunk rcVersionrcRefrcBody ReduciblereducibleOpTypestateFromChunk stateToChunk applyPatchesreduceUnappliedPatches UnappliedReducer wireReducer stateReducer WireReducerAFalseATrueSomeNonemkChunkVersionmkRC mkStateChunkpatchFromRawOppatchFromChunk patchToChunknewRonfromRonobjectEncodingpayloadEncoding objectFromRon collectFramegetObjectStateChunkeqRef eqPayload$fSemigroupPatch$fReplicatedBool$fReplicatedMaybe$fReplicatedChar$fReplicatedText$fReplicatedUUID$fReplicatedInt64$fReplicatedAsPayloadBool$fReplicatedAsPayloadMaybe$fReplicatedAsPayloadChar$fReplicatedAsPayloadText$fReplicatedAsPayloadUUID$fReplicatedAsPayloadInt64$fShowReducedChunk VersionVector!$fReplicatedAsObjectVersionVector$fReplicatedVersionVector$fReducibleVersionVector$fMonoidVersionVector$fSemigroupVersionVector$fHashableVersionVector$fEqVersionVector$fShowVersionVector RgaStringRGARgaRawrgaTypeediteditText newFromList newFromTextgetListgetText$fSemigroupVertexList$fReducibleRgaRaw$fMonoidPatchSet$fSemigroupPatchSet$fReplicatedAsObjectRGA$fReplicatedRGA$fEqVertexListItem$fShowVertexListItem$fEqVertexList$fShowVertexList $fEqRgaRaw$fMonoidRgaRaw$fSemigroupRgaRaw $fShowRgaRaw $fEqPatchSet$fShowPatchSet$fEqRGA ObjectORSetORSetORSetRawaddValueaddRef addNewRef removeValue removeRef$fSemigroupSetItem$fReducibleORSetRaw$fMonoidORSetRaw$fSemigroupORSetRaw$fReplicatedAsObjectORSet$fReplicatedORSet$fReplicatedAsObjectObjectORSet$fReplicatedObjectORSet $fEqSetItem $fShowSetItem $fEqORSetRaw$fShowORSetRaw LwwPerFieldlwwType viewField readField assignField zoomField$fReducibleLwwPerField$fSemigroupLwwPerField$fEqLwwPerField$fMonoidLwwPerField$fShowLwwPerFieldreduceWireFramereduceStateFrame reduceObjectDocumentvalueversions isTouched MonadStoragegetCollections getDocumentsgetDocumentVersionssaveVersionContentloadVersionContent deleteVersion changeDocId CollectioncollectionName fallbackParseCollectionNameDocId DocVersion decodeDocId readVersion loadDocumentmodify createVersioncreateDocument $fShowDocId$fShowIsTouched$fShowDocumentTestDB runStorageSim$fMonadStorageStorageSim$fApplicativeStorageSim$fFunctorStorageSim$fMonadStorageSim$fMonadErrorStorageSim$fReplicaClockStorageSimHandleStorage runStorage newHandle$fMonadStorageStorage$fReplicaClockStorage$fApplicativeStorage$fFunctorStorage$fMonadStorage$fMonadErrorStorage$fMonadIOStorage mkReplicatedday$fReplicatedAsPayloadDay$fReplicatedDayzzEncodezzEncodeIntegerzzDecode zzDecode8 zzDecode16 zzDecode32 zzDecode64zzDecodeIntegertakeL*attoparsec-0.13.2.2-6OoSLtLgOo41amaT3bsAtl#Data.Attoparsec.ByteString.Internaltake endOfInputExData.Attoparsec.Internal endOfInput isSuccessfulData.Attoparsec.ByteString.Lazy eitherResult maybeResult parseTestResultFailDonematch parseOnly peekWord8' peekWord8notWord8word8anyWord8 notInClassinClass takeWhile1 runScannerscantakeLazyByteStringtakeByteString takeWhiletakeTill skipWhilestring satisfyWithskipsatisfyParserData.Attoparsec.CombinatorfeedeitherPcount skipMany1skipMany manyTill'manyTillsepBy1'sepBy1sepBy'sepBymany1'many1many'choicetryatEndcompareResults parseOnlyLgetPos withInputSizelabellabel'??<+>serializeChunkserializeReducedOp encodeDescserializeWithDescserializeFloatserializeReducedChunk parseDescextendedLength parseFrame parseChunksleastSignificant31 parseChunk assertSizeparseReducedOpsparseDescAndRawOpparseDescAndReducedOp parseRawOpparseReducedOp parseOpKeyuuid parsePayloadatomfloatintegerserializeRawOpZipserializeReducedOpZipserializeAtomZipserializePayloadpChunkwireStateChunkheader findObjects GHC.ClassesOrdepochTimeFromUnixvvTypeChar psPatches psRemovalsVertex!Diff-0.3.4-Isdcu3XDRoL1Fkaeabn3wSData.Algorithm.DiffgetGroupedDiffBysetTypeaddlww IsTouchedvsconcat fieldWrapperC