úÎ\C     NoneBJust a type synonym for a lens between codec and codec component. <Atomic Codec component, which represents to and fro mapping  between a objects and unique intergers. @A Codec monad preserves mappings between objects and respective  codec components. *Get codec structure from the Codec monad. ,Set codec structure within the Codec monad. Empty codec component. HUpdate the map with the given element and increase the counter. If the M element has not been previously in the map it will be assigned a new unique  integer number. ?Encode the object with codec component identified by the lens. ; Return Nothing if the object is not present in the atomic  codec component. ?Encode the object with codec component identified by the lens. Version of encode which doesn' t update the return componenent ? of the atom codec. It is useful when we know that particular 2 value (e.g. value of a condition observation) won' t be decoded > afterwards so there is no need to store it and waste memory. ?Decode the number with codec component identified by the lens. ; Return Nothing if the object is not present in the atomic  codec component. ?Decode the number with codec component identified by the lens. F Report error when the number is not present in the codec component. 2Run the Codec monad with the initial codec value. 3 Return both the result and the final codec state. ; The obtained codec can be used next to perform subsequent  decoding or encoding. 7Evaluate the Codec monad with the initial codec value. ) Only the monad result will be returned. 6Execute the Codec monad with the initial codec value. . Only the final codec state will be returned. CIdentity lenses should be used whenever the structure of the codec 0 is simple, i.e. only one atomic codec is used.          monad-codec-0.2.0Control.Monad.CodecAtomLens AtomCodectofromCodecempty maybeEncodeencodeencode' maybeDecodedecoderunCodec evalCodec execCodecidLensgetCodecsetCodec updateMap$fBinaryAtomCodec