@      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$% & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            (C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableSafe9;Convenience class for creating  from other string-like types'String type swappable based on compiler$Convenience function, shorthand for       (C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableSafeOT    (C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNone5I$Related to using drop-related events'Options for handling event propagation.Type used for Checkbox events.Type used for Keyboard events.See \https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/keyCode#Browser_compatibilityDefault value for . LdefaultOptions = Options { preventDefault = False, stopPropagation = False }Default delegated events   (C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNone!")$Decoder data type for parsing events+FromJSON-based Event decoder,"Location in DOM of where to decode-Smart constructor for building.XEmpty decoder for use with events like "click" that do not return any meaningful values/;Retrieves either "keyCode", "which" or "charCode" field in )0Retrieves "value" field in )1$Retrieves "checked" field in Decoder )*+,-./01 )*+,-./01 )*+,-./10)*+,-./01(C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNone)*+,-./01(C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNone!"%&*,29;DORT$hDMJ: this used to get set on preventDefault on Options... if options are dynamic now what | Useful for  events2>H Attributes to annotate DOM, converted into Events, Props, Attrs and CSS Properties5Convert type into Key, ensure 7 is unique7Key for specific children patch9Namespace for element creation:HTML Namespace; SVG Namespace< Convenience class for using View>Core type for constructing a A, use this instead of A directly.A"Virtual DOM implemented as a Rose Vectorc. Used for diffing, patching and event delegation. Not meant to be constructed directly, see > instead.D#Element type (i.e. "div", "a", "p")E HTML or SVGFFields present on DOM NodeGKey used for child swap patchH Child nodesITextNode contentWHelper for turning JSON into Text Object, Array and Null are kind of non-sensical hereJB creationKC creationLConstructs a property on a B", used to set fields on a DOM NodeMFor defining delegated events rlet clickHandler = on "click" emptyDecoder $ \() -> Action in button_ [ clickHandler, class_ "add" ] [ text_ "+" ]N*For defining delegated events with options let clickHandler = onWithOptions defaultOptions "click" emptyDecoder $ \() -> Action in button_ [ clickHandler, class_ "add" ] [ text_ "+" ]O Constructs CSS for a DOM Element Timport qualified Data.Map as M div_ [ style_ $ M.singleton "background" "red" ] [ ] 0https://developer.mozilla.org/en-US/docs/Web/CSSConvert  to 7Convert  to 7 Convert ! to 7"Convert # to 7$Convert % to 7&Convert  to 7'Identity instance() instance* Converting > to Lucid's +,Show >- For constructing type-safe links. Converting A to Lucid's +0/234056789:;<=>?@ABCDEFGHIJKLMNO "$&'(*,-.123456789:;<=>?@ABCDEFGHIJKLMNO/234056789:;<=>?@ABCDEFGHIJKLMNO "$&'(*,-.1(C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNonehPUsed to construct B's in >QConstruct a node with a 7R =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/divS ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tableT ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/theadU ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbodyV <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/trW <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thX <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tdY ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tfootZ Ahttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/section[ @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/header\ @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/footer] @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button^ >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form_ ;https://developer.mozilla.org/en-US/docs/Web/HTML/Element/p` ;https://developer.mozilla.org/en-US/docs/Web/HTML/Element/sa <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ulb >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/spanc @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/strongd <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/lie Contains 70, inteded to be used for child replacement patch <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/lif <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h1g <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h2h <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h3i <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h4j <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h5k <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h6l <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/hrm =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/pren ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/inputo ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/labelp ;https://developer.mozilla.org/en-US/docs/Web/HTML/Element/aq >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/markr >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/rubys <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/rtt <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/rpu =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/bdiv =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/bdow =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/wbrx Ahttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/detailsy Ahttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/summaryz Bhttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/menuitem{ >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/menu| Bhttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset} @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/legend~ Bhttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist Bhttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/optgroup @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/keygen @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/output Bhttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/progress ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meter @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/center ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/track ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/embed @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/object ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/param =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ins =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/del ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/small >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/cite =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dfn >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/abbr >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/time =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/var >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/samp =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/kbd Ahttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/caption Bhttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/nav Ahttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/article ?https://developer.mozilla.org/en-US/docs/Web/HTML/Element/aside Ahttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/address >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/main >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/body @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/figure Dhttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/figcaption <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dl <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dt <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dd =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/math @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/option Bhttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/sub =https://developer.mozilla.org/en-US/docs/Web/HTML/Element/sup <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/br <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol Dhttps://developer.mozilla.org/en-US/docs/Web/HTML/Element/blockquote >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/code <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/em ;https://developer.mozilla.org/en-US/docs/Web/HTML/Element/i ;https://developer.mozilla.org/en-US/docs/Web/HTML/Element/b ;https://developer.mozilla.org/en-US/docs/Web/HTML/Element/u ;https://developer.mozilla.org/en-US/docs/Web/HTML/Element/q @https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script >https://developer.mozilla.org/en-US/docs/Web/HTML/Element/linkhPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~hPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~hPQfghijkR_lmbpcade^n]Z[\SUTYVXWo|}~`qrstuvwxyz{hPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~(C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNone,9:;<=ADORTblur" event defined with custom options 8https://developer.mozilla.org/en-US/docs/Web/Events/blur :https://developer.mozilla.org/en-US/docs/Web/Events/change 9https://developer.mozilla.org/en-US/docs/Web/Events/click 9https://developer.mozilla.org/en-US/docs/Web/Events/focus <https://developer.mozilla.org/en-US/docs/Web/Events/dblclick 9https://developer.mozilla.org/en-US/docs/Web/Events/input ;https://developer.mozilla.org/en-US/docs/Web/Events/keydown <https://developer.mozilla.org/en-US/docs/Web/Events/keypress 9https://developer.mozilla.org/en-US/docs/Web/Events/keyup ;https://developer.mozilla.org/en-US/docs/Web/Events/mouseup =https://developer.mozilla.org/en-US/docs/Web/Events/mousedown >https://developer.mozilla.org/en-US/docs/Web/Events/mouseenter >https://developer.mozilla.org/en-US/docs/Web/Events/mouseleave =https://developer.mozilla.org/en-US/docs/Web/Events/mouseover <https://developer.mozilla.org/en-US/docs/Web/Events/mouseout =https://developer.mozilla.org/en-US/docs/Web/Events/dragstart <https://developer.mozilla.org/en-US/docs/Web/Events/dragover ;https://developer.mozilla.org/en-US/docs/Web/Events/dragend =https://developer.mozilla.org/en-US/docs/Web/Events/dragenter =https://developer.mozilla.org/en-US/docs/Web/Events/dragleave 8https://developer.mozilla.org/en-US/docs/Web/Events/drag 8https://developer.mozilla.org/en-US/docs/Web/Events/drop :https://developer.mozilla.org/en-US/docs/Web/Events/submitMNMN(C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNoneV Set field to 2 value Set field to % value Set field to Text value Set field to # value Set field to 3 value Set field to ! value%Define multiple classes conditionally /div_ [ classList_ [ ("empty", null items) ] [ ] Ihttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/title Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/selected Jhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/hidden Ihttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/value Phttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/defaultValue Jhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/accept Qhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/acceptCharset Jhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/action Phttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/autocomplete Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/autosave Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/disabled Khttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/enctype Mhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/formation Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/list Mhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/maxlength Mhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/minlength Jhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/method Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/multiple Nhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/novalidate Khttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/pattern Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/readonly Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/required Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/size Ghttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/for Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/form Ghttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/max Ghttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/min Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/step Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/cols Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/rows Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/wrap Jhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/target Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/download Nhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/downloadAs Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/hreflang Ihttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/media Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/ping Ghttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/rel Ihttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/ismap Jhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/usemap Ihttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/shape Jhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/coords Ghttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/src Jhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/height Ihttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/width Ghttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/alt Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/autoplay Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/controls Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/loop Khttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/preload Jhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/poster  Khttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/default  Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/kind  Khttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/srclang  Khttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/sandbox  Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/seamless Jhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/srcdoc Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/reversed Ihttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/start Ihttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/align Khttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/colspan Khttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/rowspan Khttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/headers Ihttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/scope Ihttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/async Khttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/charset Khttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/content Ihttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/defer Mhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/httpEquiv Lhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/language Jhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/scoped Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/type Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/name Hhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/href  Fhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/id! Ohttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/placeholder" Khttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/checked#Set "autofocus" property Mhttps://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/autofocus$Set "className" property Bhttps://developer.mozilla.org/en-US/docs/Web/API/Element/classNameV      !"#$V      !"#$V$ "!#     V      !"#$(C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNone23456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$ABCDEFGHI>?@<=234JK78569:;LOMN (C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNone%&+,29:;<=DIOQRT4This is similar to the  HasServer class from servant-serverE. It is the class responsible for making API combinators routable. 5) is used to build up the handler types. 6$ is returned, to be interpretted by 7.5A route handler.8!Transform a route handler into a 6.6A 69 contains the information necessary to execute a handler.'When routing, the router may fail to match a location. Either this is an unrecoverable failure, such as failing to parse a query parameter, or it is recoverable by trying another path.9Router terminator. The 4 instance for > finalizes the router.Example: 4type MyApi = "books" :> Capture "bookId" Int :> View9> is used to split the path and query of a URI into components.:Use a handler to route a 9 . Normally *X should be used instead, unless you want custom handling of string failing to parse as ;.*4Use a handler to route a location, represented as a %). All handlers must, in the end, return m a. 7+ will choose a route and return its result.7Use a computed 6 to route a 9.< Convert a ; to a 9.-View.Path/ QueryFlag0 QueryParams1 QueryParam2Capture3 Alternative!%&4586=>?@ABC'()9DEF:*7<+,-./0123 %&'()*+, *'()%&+,%&4586=>?@ABC'()9DEF:*7<+,-./0123 None+,DQR:6Convert client route type to a server web handler type:::: (C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNone; Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/accent-height< Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/accelerate= Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/accumulate> Chttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/additive? Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/alphabetic@ Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/allowReorderA Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/amplitudeB Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/arabic-formC Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/ascentD Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/attributeNameE Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/attributeTypeF Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/autoReverseG Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/azimuthH Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/baseFrequencyI Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/baseProfileJ ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/bboxK @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/beginL ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/biasM =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/byN Chttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/calcModeO Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/cap-heightP @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/classQ Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/clipPathUnitsR Lhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/contentScriptTypeS Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/contentStyleTypeT =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/cxU =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/cyV <https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/dW Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/decelerateX Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/descentY Jhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/diffuseConstantZ Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/divisor[ >https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/dur\ =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/dx] =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/dy^ Chttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/edgeMode_ Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/elevation` >https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/enda Chttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/exponentb Thttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/externalResourcesRequiredc Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/filterResd Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/filterUnitse Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/formatf ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fromg =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fxh =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fyi =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/g1j =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/g2k Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/glyph-namel Chttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/glyphRefm Lhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/gradientTransformn Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/gradientUnitso Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/hangingp Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/heightq Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/horiz-adv-xr Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/horiz-origin-xs Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/horiz-origin-yt =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/idu Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/ideographicv =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/inw >https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/in2x Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/intercepty <https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/kz =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/k1{ =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/k2| =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/k3} =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/k4~ Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/kernelMatrix Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/kernelUnitLength Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/keyPoints Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/keySplines Chttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/keyTimes ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/lang Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/lengthAdjust Lhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/limitingConeAngle @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/local Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/markerHeight Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/markerUnits Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/markerWidth Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/maskContentUnits Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/maskUnits Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/mathematical >https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/max @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/media Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/method >https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/min ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/mode ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/name Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/numOctaves Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/offset Chttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/operator @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/order Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/orient Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/orientation Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/origin Lhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/overline-position Mhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/overline-thickness Chttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/panose-1 ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/path Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/pathLength Nhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/patternContentUnits Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/patternTransform Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/patternUnits Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/point-order Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/points Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/pointsAtX Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/pointsAtY Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/pointsAtZ Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/preserveAlpha Nhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/preserveAspectRatio Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/primitiveUnits <https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/r Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/radius ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/refX ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/refY Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/rendering-intent Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/repeatCount Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/repeatDur Mhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/requiredExtensions Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/requiredFeatures Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/restart Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/result Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/rotate =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/rx =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/ry @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/scale ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/seed @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/slope Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/spacing Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/specularConstant Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/specularExponent @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/speed Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/spreadMethod Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/startOffset Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stdDeviation @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stemh @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stemv Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stitchTiles Qhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/strikethrough-position Rhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/strikethrough-thickness Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/string @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/style Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/surfaceScale Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/systemLanguage Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/tableValues Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/target Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/targetX Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/targetY Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/textLength @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/title =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/to Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/transform ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/type =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/u1 =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/u2 Mhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/underline-position Nhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/underline-thickness Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/unicode Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/unicode-range Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/units-per-em Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/v-alphabetic Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/v-hanging Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/v-ideographic Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/v-mathematical Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/values Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/version Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/vert-adv-y Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/vert-origin-x Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/vert-origin-y Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/viewBox Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/viewTarget @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/width Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/widths <https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/x Chttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/x-height =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/x1 =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/x2 Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xChannelSelector Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xlinkActuate Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xlinkArcrole Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xlinkHref Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xlinkRole Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xlinkShow Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xlinkTitle Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xlinkType Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xmlBase Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xmlLang Chttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xmlSpace <https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/y =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/y1 =https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/y2 Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/yChannelSelector <https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/z Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/zoomAndPan Mhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/alignment-baseline Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/baseline-shift Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/clip-path Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/clip-rule ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/clip Vhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/color-interpolation-filters Nhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/color-interpolation Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/color-profile Jhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/color-rendering @https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/color Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/cursor Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/direction  Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/display  Lhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/dominant-baseline  Lhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/enable-background  Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fill-opacity  Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fill-rule ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fill Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/filter Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/flood-color Hhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/flood-opacity Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/font-family Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/font-size-adjust Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/font-size Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/font-stretch Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/font-style Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/font-variant Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/font-weight Whttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/glyph-orientation-horizontal Uhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/glyph-orientation-vertical Jhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/image-rendering Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/kerning Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/letter-spacing Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/lighting-color Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/marker-end  Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/marker-mid! Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/marker-start" ?https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/mask# Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/opacity$ Chttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/overflow% Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/pointer-events& Jhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/shape-rendering' Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stop-color( Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stop-opacity) Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stroke-dasharray* Lhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stroke-dashoffset+ Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stroke-linecap, Jhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stroke-linejoin- Lhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stroke-miterlimit. Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stroke-opacity/ Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stroke-width0 Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stroke1 Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/text-anchor2 Jhttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/text-decoration3 Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/text-rendering4 Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/unicode-bidi5 Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/visibility6 Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/word-spacing7 Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/writing-modeG;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./01234567;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./01234567;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./01234567G;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./01234567 (C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNoneQHUsed to construct a B with namespace "svg" Adocument.createElementNS('http://www.w3.org/2000/svg', 'circle');8Creates an svg tag9 Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/foreignObject: ?https://developer.mozilla.org/en-US/docs/Web/SVG/Element/circle; Bhttps__://developer.mozilla.org/en-US/docs/Web/SVG/Element/ellipse< >https://developer.mozilla.org/en-US/docs/Web/SVG/Element/image= >https://developer.mozilla.org/en-US/docs/Web/SVG/Element/image> =https://developer.mozilla.org/en-US/docs/Web/SVG/Element/path? @https://developer.mozilla.org/en-US/docs/Web/SVG/Element/polygon@ Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/polylineA =https://developer.mozilla.org/en-US/docs/Web/SVG/Element/rectB <https://developer.mozilla.org/en-US/docs/Web/SVG/Element/useC @https://developer.mozilla.org/en-US/docs/Web/SVG/Element/animateD Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/animateColorE Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/animateMotionF Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/animateMotionG >https://developer.mozilla.org/en-US/docs/Web/SVG/Element/mpathH <https://developer.mozilla.org/en-US/docs/Web/SVG/Element/setI =https://developer.mozilla.org/en-US/docs/Web/SVG/Element/descJ Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/metadataK >https://developer.mozilla.org/en-US/docs/Web/SVG/Element/titleL :https://developer.mozilla.org/en-US/docs/Web/SVG/Element/aM =https://developer.mozilla.org/en-US/docs/Web/SVG/Element/defsN :https://developer.mozilla.org/en-US/docs/Web/SVG/Element/gO ?https://developer.mozilla.org/en-US/docs/Web/SVG/Element/markerP =https://developer.mozilla.org/en-US/docs/Web/SVG/Element/maskQ Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/missingGlyphR @https://developer.mozilla.org/en-US/docs/Web/SVG/Element/patternS ?https://developer.mozilla.org/en-US/docs/Web/SVG/Element/switchT ?https://developer.mozilla.org/en-US/docs/Web/SVG/Element/symbolU Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/altGlyphV Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/altGlyphDefW Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/altGlyphItemX >https://developer.mozilla.org/en-US/docs/Web/SVG/Element/glyphY Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/glyphRefZ Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/glyphRef[ =https://developer.mozilla.org/en-US/docs/Web/SVG/Element/text\ =https://developer.mozilla.org/en-US/docs/Web/SVG/Element/tref] >https://developer.mozilla.org/en-US/docs/Web/SVG/Element/tspan^ =https://developer.mozilla.org/en-US/docs/Web/SVG/Element/font_ Bhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/font-face` Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/font-face-formata Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/font-face-nameb Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/font-face-srcc Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/font-face-urid >https://developer.mozilla.org/en-US/docs/Web/SVG/Element/hkerne >https://developer.mozilla.org/en-US/docs/Web/SVG/Element/vkernf Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/linearGradientg Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/radialGradienth =https://developer.mozilla.org/en-US/docs/Web/SVG/Element/stopi @https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feBlendj Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feColorMatrixk Lhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feComponentTransferl Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feCompositem Ihttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feConvolveMatrixn Jhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feDiffuseLightingo Jhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feDisplacementMapp @https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFloodq @https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFuncAr @https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFuncBs @https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFuncGt @https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFuncRu Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feGaussianBlurv @https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feImagew @https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feMergex Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feMergeNodey Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feMorhpologyz Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feOffset{ Khttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feSpecularLighting| ?https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feTile} Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feTurbulence~ Ghttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feDistantLight Ehttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/fePointLight Dhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/feSpotLight Ahttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/clipPath Fhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/color-profile ?https://developer.mozilla.org/en-US/docs/Web/SVG/Element/cursor ?https://developer.mozilla.org/en-US/docs/Web/SVG/Element/filter ?https://developer.mozilla.org/en-US/docs/Web/SVG/Element/script >https://developer.mozilla.org/en-US/docs/Web/SVG/Element/style =https://developer.mozilla.org/en-US/docs/Web/SVG/Element/viewQH89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~P89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~P89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~QH89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ (C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNone ,9;<=DR onBegin event onEnd eventonRepeat event onAbort event onError eventonResize eventonScroll event onLoad eventonUnload event onZoom eventonActivate eventonFocusIn eventonFocusOut eventonMouseDown eventonMouseMove eventonMouseOut eventonMouseOver eventonMouseUp event(C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNoneW;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkmnopqrstuvwxyz{|}~      !#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~(C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableSafeTIConcurrent API for SkipChan implementationJ Create a new IIKLMJIKLMJIKLMJ(C) 2016-2017 David M. Johnson!BSD3-style (see the file LICENSE)'David M. Johnson <djohnson.m@gmail.com> experimental non-portableNone!",DT[)*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$:N !""##$%&&''()*+,-./01234567889:;<=>?@ABCDEEFGHIJKKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~j      !"#$%&'()*+,-./ 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z  { | } + ~                          )                                                      [                                                                                        ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < =  > ? @ A B C D E F G H I | J K L " M N O P Q R S w T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z     [ { | } ~            "            "!  "#$% & ' ( ) * + ,-./ 0 1 2 3 4 5 6 7 + 8 9 : ;<=<>?@#miso-0.9.0.0-Bg8mw8gDzxkEwlHiXZbyUm Miso.String Miso.LensMiso.Event.TypesMiso.Event.Decoder Miso.HtmlMiso.Html.EventMiso.Html.ElementMiso.Html.Property Miso.RouterMiso.TypeLevelMiso.Svg.AttributeMiso.Svg.ElementMiso.Svg.Event Miso.EventMiso.Html.InternalMiso.SvgMiso.ConcurrentMiso ToMisoString toMisoString MisoStringms$fToMisoStringByteString$fToMisoStringByteString0$fToMisoStringText$fToMisoString[]$fToMisoStringText0GettingLens'LensgetsetmakeLens AllowDropOptionspreventDefaultstopPropagationCheckedKeyCodedefaultOptions defaultEvents $fShowKeyCode $fEqKeyCode $fOrdKeyCode$fFromJSONKeyCode $fShowChecked $fEqChecked $fOrdChecked$fFromJSONChecked $fShowOptions $fEqOptions$fGenericOptions$fShowAllowDrop $fEqAllowDrop$fFromJSONAllowDropDecoderdecoderdecodeAtat emptyDecoderkeycodeDecoder valueDecodercheckedDecoder AttributePEToKeytoKeyKeyNSHTMLSVGToViewtoViewViewrunViewVTreeVNodeVTextvTypevNsvPropsvKey vChildrenvTextnodetextpropon onWithOptionsstyle_nodeHtml nodeHtmlKeyeddiv_table_thead_tbody_tr_th_td_tfoot_section_header_footer_button_form_p_s_ul_span_strong_li_liKeyed_h1_h2_h3_h4_h5_h6_hr_pre_input_label_a_mark_ruby_rt_rp_bdi_bdo_wbr_details_summary_ menuitem_menu_ fieldset_legend_ datalist_ optgroup_keygen_output_ progress_meter_center_audio_video_source_track_embed_object_param_ins_del_small_cite_dfn_abbr_time_var_samp_kbd_caption_ colgroup_col_nav_article_aside_address_main_body_figure_ figcaption_dl_dt_dd_img_iframe_canvas_math_select_option_ textarea_sub_sup_br_ol_ blockquote_code_em_i_b_u_q_script_link_onBlur onCheckedonClickonFocus onDoubleClickonInput onKeyDown onKeyPressonKeyUp onMouseUp onMouseDown onMouseEnter onMouseLeave onMouseOver onMouseOut onDragStart onDragOver onDragEnd onDragEnter onDragLeaveonDragonDroponSubmitboolProp stringProptextPropintProp integerProp doubleProp classList_title_ selected_hidden_value_ defaultValue_accept_acceptCharset_action_ autocomplete_ autosave_ disabled_enctype_ formation_list_ maxlength_ minlength_method_ multiple_ novalidate_pattern_ readonly_ required_size_for_max_min_step_cols_rows_wrap_target_ download_ downloadAs_ hreflang_media_ping_rel_ismap_usemap_shape_coords_src_height_width_alt_ autoplay_ controls_loop_preload_poster_default_kind_srclang_sandbox_ seamless_srcdoc_ reversed_start_align_colspan_rowspan_headers_scope_async_charset_content_defer_ httpEquiv_ language_scoped_type_name_href_id_ placeholder_checked_ autofocus_class_HasURIlensURI RoutingErrorFail FailFatalrunRoutegetURIsetURI$fHasRouterTYPEmView$fHasRouterTYPEm:>$fHasRouterTYPEm:>0$fHasRouterTYPEm:>1$fHasRouterTYPEm:>2$fHasRouterTYPEm:>3$fHasRouterTYPEm:<|>$fShowLocation $fEqLocation $fOrdLocation$fShowRoutingError$fEqRoutingError$fOrdRoutingErrorToServerRoutes accentHeight_ accelerate_ accumulate_ additive_ alphabetic_ allowReorder_ amplitude_ arabicForm_ascent_attributeName_attributeType_ autoReverse_azimuth_baseFrequency_ baseProfile_bbox_begin_bias_by_ calcMode_ capHeight_class_'clipPathUnits_contentScriptType_contentStyleType_cx_cy_d_ decelerate_descent_diffuseConstant_divisor_dur_dx_dy_ edgeMode_ elevation_end_ exponent_externalResourcesRequired_ filterRes_ filterUnits_format_from_fx_fy_g1_g2_ glyphName_ glyphRef_gradientTransform_gradientUnits_hanging_ horizAdvX_ horizOriginX_ horizOriginY_ ideographic_in_'in2_ intercept_k_k1_k2_k3_k4_ kernelMatrix_kernelUnitLength_ keyPoints_ keySplines_ keyTimes_lang_ lengthAdjust_limitingConeAngle_local_ markerHeight_ markerUnits_ markerWidth_maskContentUnits_ maskUnits_ mathematical_mode_ numOctaves_offset_ operator_order_orient_ orientation_origin_overlinePosition_overlineThickness_panose1_path_ pathLength_patternContentUnits_patternTransform_ patternUnits_ pointOrder_points_ pointsAtX_ pointsAtY_ pointsAtZ_preserveAlpha_preserveAspectRatio_primitiveUnits_r_radius_refX_refY_renderingIntent_ repeatCount_ repeatDur_requiredExtensions_requiredFeatures_restart_result_rotate_rx_ry_scale_seed_slope_spacing_specularConstant_specularExponent_speed_ spreadMethod_ startOffset_ stdDeviation_stemh_stemv_ stitchTiles_strikethroughPosition_strikethroughThickness_string_ surfaceScale_systemLanguage_ tableValues_targetX_targetY_ textLength_to_ transform_type_'u1_u2_underlinePosition_underlineThickness_unicode_ unicodeRange_ unitsPerEm_ vAlphabetic_ vHanging_ vIdeographic_vMathematical_values_version_ vertAdvY_ vertOriginX_ vertOriginY_viewBox_ viewTarget_widths_x_xHeight_x1_x2_xChannelSelector_ xlinkActuate_ xlinkArcrole_ xlinkHref_ xlinkRole_ xlinkShow_ xlinkTitle_ xlinkType_xmlBase_xmlLang_ xmlSpace_y_y1_y2_yChannelSelector_z_ zoomAndPan_alignmentBaseline_baselineShift_ clipPath_ clipRule_clip_colorInterpolationFilters_colorInterpolation_ colorProfile_colorRendering_color_cursor_ direction_display_dominantBaseline_enableBackground_ fillOpacity_ fillRule_fill_filter_ floodColor_ floodOpacity_ fontFamily_fontSizeAdjust_ fontSize_ fontStretch_ fontStyle_ fontVariant_ fontWeight_glyphOrientationHorizontal_glyphOrientationVertical_imageRendering_kerning_letterSpacing_lightingColor_ markerEnd_ markerMid_ markerStart_mask_opacity_ overflow_pointerEvents_shapeRendering_ stopColor_ stopOpacity_strokeDasharray_strokeDashoffset_strokeLinecap_strokeLinejoin_strokeMiterlimit_strokeOpacity_ strokeWidth_stroke_ textAnchor_textDecoration_textRendering_ unicodeBidi_ visibility_ wordSpacing_ writingMode_svg_foreignObject_circle_ellipse_image_line_polygon_ polyline_rect_use_animate_ animateColor_animateMotion_animateTransform_mpath_set_desc_ metadata_defs_g_marker_ missingGlyph_switch_symbol_ altGlyph_ altGlyphDef_ altGlyphItem_glyph_ textPath_text_tref_tspan_font_ fontFace_fontFaceFormat_ fontFaceName_ fontFaceSrc_ fontFaceUri_hkern_vkern_linearGradient_radialGradient_stop_feBlend_feColorMatrix_feComponentTransfer_ feComposite_feConvolveMatrix_feDiffuseLighting_feDisplacementMap_feFlood_feFuncA_feFuncB_feFuncG_feFuncR_feGaussianBlur_feImage_feMerge_ feMergeNode_ feMorhpology_ feOffset_feSpecularLighting_feTile_ feTurbulence_feDistantLight_ fePointLight_ feSpotLight_view_onBeginonEndonRepeatonAbortonErroronResizeonScrollonLoadonUnloadonZoom onActivate onFocusIn onFocusOut onMouseMovebaseGHC.BaseMonoidmemptymappendmconcat Data.Monoid<>#text-1.2.2.2-KC7dWoG09dA1F6jKj5GSqhData.Text.InternalTextemptyDualgetDualEndoappEndoAllgetAllAnygetAnySumgetSumProduct getProductFirstgetFirstLastgetLastAltgetAlt Data.Textcopy stripSuffixcommonPrefixes stripPrefix isInfixOf isSuffixOf isPrefixOfunwordsunlineslineswordszipWithzipcount findIndexindex breakOnAll breakOnEndbreakOnfilter partitionfindchunksOfsplitsplitOntailsinitsgroupgroupBybreakspansplitAtstripstripEnd stripStart dropAround dropWhileEnd dropWhile takeWhileEnd takeWhiledropEnddroptakeEndtakeunfoldrNunfoldr replicate mapAccumR mapAccumLscanr1scanrscanl1scanlminimummaximumallany concatMapconcatfoldr1foldrfoldl1'foldl1foldl'foldl transposecenter justifyRight justifyLefttoTitletoUppertoLower toCaseFoldreplacereverse intersperse intercalatemap compareLengthlengthnullinittaillastunconsheadappendsnocconspackData.Text.Show singletonunpackCString#unpackPropstoHtmlFromJSON $fToKeyWordghc-prim GHC.TypesWord $fToKeyFloatFloat $fToKeyDoubleDouble $fToKeyIntInt $fToKey[]String $fToKeyText $fToKeyKey$fIsStringView Data.StringIsString $fToHtmlView"lucid-2.9.9-BQQPyK1RpcLI6FKRexnkFT Lucid.BaseHtml $fShowView$fHasLinkTYPEView $fToHtmlVTree $fShowVTreeBool integer-gmpGHC.Integer.TypeInteger HasRouterRouteTRouterrouteLocrouteLocation runRouteLoc*network-uri-2.6.1.0-Hz1OR91jXzHIcSp1mipvg3 Network.URIURI uriToLocationRChoiceRCapture RQueryParam RQueryParams RQueryFlagRPathRPagelocPathlocQueryattrnodeSvg_Notify newNotifywaitnotify