úÎ/#     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. @Update a map with a given element and increase. If the 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.          monad-codec-0.1.0Control.Monad.CodecAtomLens AtomCodectofromCodecempty maybeEncodeencodeencode' maybeDecodedecoderunCodec evalCodec execCodecidLensgetCodecsetCodec updateMap