úÎ%"õ     &Leon P Smith <leon@melding-monads.com>The = type represents syntax for a json array. It has been given  a singleton constructor element and an instance of  , so that   represents the empty array and  concatinates two arrays. < Arbitrary arrays can be constructed using these operators. The ? type represents syntax for a json object. It has a singleton  constructor row, and an instance of  , so that  represents the  empty object and 2 concatinates two objects. Arbitrary objects can ' be constructed using these operators. GNote that duplicate field names will appear in the output, so it is up ? to the user of this interface to avoid duplicate field names. The : type represents json string syntax. The purpose of this K type is so that json strings can be efficiently constructed from multiple D Haskell strings without superfluous conversions or concatinations. Internally, it is just a * value which must produce a UTF-8 encoded M bytestring with backslashes, quotes, and control characters appropriately I escaped. It also must not render the opening or closing quote, which  are instead rendered by .  The 9 typeclass represents types that render into json string J syntax. They are special because only strings can appear as field names  of json objects. The  ; type represents valid json syntax. It cannot be directly - analyzed, however it can be rendered into a  and used to G as a component of an array or an object to build a bigger json value. The  1 typeclass represents types that can be rendered  into valid json syntax.       &Leon P Smith <leon@melding-monads.com>The 9 function constructs a json object consisting of exactly 5 one field. These objects can be concatinated using . The 8 function constructs a json array consisting of exactly 4 one value. These arrays can be concatinated using .  !renders as an  "renders as an  #renders as an  $must be UTF-8 encoded %must be UTF-8 encoded & renders as true or false ' renders as null     (        !"#$%&'()*+,-json-builder-0.1.1Data.Json.Builder.InternalData.Json.Builder CommaMonoidCommaEmptyArrayObjectEscapedJsStringescapeJsonValuetoJson toBuildertoJsonByteStringtoJsonLazyByteStringrowelementbase Data.MonoidMonoidmemptymappendblaze-builder-0.3.0.1'Blaze.ByteString.Builder.Internal.TypesBuilderGHC.BaseStringbytestring-0.9.1.10Data.ByteString.Internal ByteString++ quoteNeeded quoteChar quoteCharW hexEscapechar$fValueHashMap $fValueMap $fValue[]$fJsStringByteString$fJsStringByteString0 $fValueBool $fValue()