HOOG*#!+1SS2TT3UU4VV5WW6XX<a-%%'(-.0057BBEFHHLPYY]]bcefhhlmpprrtxb$**00<=BBMM]]hhvwc!!%:GHOO^^ccuud! !''++/099;DIIMMYY[[ggkkqqvvyye4  !##&-/088;@BBDILNQQY[]^acfmqqvwyy{}f ;;>?HOabffklg '(22::<=PRZZbbmmttxyh*+77::==EEOOSjss|}i) %%'(,,..::>?ACEEIIOORRZ_juzjk *+..\_vv~~l. !!##&(-.1577==?@BCII\_bbdissuuw~m..67==DFKNdilmrs{}n# $%')5578>>GGJJQQ[_bbggkknqssxy|o#!$%**/:JKMM\_ggssvv|}p%%'(..2256::EGccjjnnrrqjjr)  "))--239:AADDFFKNPQYY]]_beeiiklppvvs# ((004599??BCEEIINO]^ccooqsuu||t+ #%)),,68::==??CDFGIJNNZZ\_dknnppsu|}u#$22<=OORR]]__jjnnv jjwx**qqy ::FGPPvvzEE$H1+l()+->+Alll+AnyK+ArithException>+ArrayException1+AsyncException$+Bool* BufferMode* BufferState*CChar*CClockd*CDev2*CDouble)CFloat)CIno8)CInt(CIntMax(CIntPtr`(CLDouble(CLLong'CLongw'CMode/'COff&CPid&CPtrdiffW&CSChar&CShort% CSigAtomic%CSize7%CSsize$CTime$CUCharu$CUInt-$CUIntMax#CUIntPtr#CULLongU#CULong #CUShort"CWchar}"Chanr"Char1"Complex&" ConsoleEvent"Constr! ConstrRep!DataRep!DataType!Doublex!Dynamici!E12Z!E6K!ErrnoG! Exception>!ExitCode,!FDType(!Fd Fixity Floatx GeneralCategoryV HandleH HandlePosn? HandleType9 HashData0 Html% HtmlTable HtmlTree IO IOErrorType IOExceptionIOModeIdInsertsIntPInt16Int32Int64]Int8 IntPtrIntegerLexemevMaybe'OrderingPQSemQSemNReadPReadPrecSTMSeekModeo StableNamedTVarYThreadId>Timeout1TyCon+TypeRep%UniqueVersionWeakWordWord16UWord32Word64Word8bWordPtrZipList[::][] TraversableFoldableMonadFix Applicative Alternative MonadPlusFunctorMonadFunctorMonadFunctor Applicative ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq PrintfArgStorableDataShowNumRealEnumIntegralBoundedIxReadBitsOrdEq PrintfArgStorableDataEqOrdNumEnumIntegralBitsShowRealBoundedIxRead PrintfArgStorableDataNumEnumIntegralBitsShowRealBoundedIxReadOrdEq PrintfArgStorableDataShowNumRealEnumIntegralBoundedIxReadBitsOrdEq PrintfArgStorableDataShowNumRealEnumIntegralBoundedIxReadBitsOrdEq Typeable1EqOrdShowReadTypeableOrdEqDataDataEqTypeableDataShowEqOrdTypeable Typeable1 Typeable1ShowReadEnumIxOrdEq Typeable1FunctorMonadFunctorMonad MonadPlusFunctorMonad MonadPlusTypeableTypeableMonad MonadPlus MonoidDataReadShowBoundedEnumIxOrdEq TraversableFoldableMonadFix Applicative AlternativeFunctorMonad MonadPlusShowEqRead PrintfArgBitsDataReadEqOrdNumEnumShowIxRealIntegral ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq PrintfArgStorableDataShowNumRealEnumIntegralBoundedIxReadBitsOrdEq PrintfArgStorableDataEqOrdShowNumEnumIntegralReadBitsRealBoundedIx PrintfArgStorableDataShowNumEnumIntegralReadBitsRealBoundedIxOrdEq PrintfArgStorableDataShowNumRealEnumIntegralBoundedIxReadBitsOrdEq PrintfArgBitsStorableDataReadShowNumBoundedEnumIxRealIntegralEqOrdEqFunctor ApplicativeShowReadEnumIxOrdEqEqShowEqShowMonadFix ApplicativeFunctorMonadHTML HTMLTABLEHTMLShow HTMLTABLEShowEqShowEqShowDataEqShowIxBoundedShowReadEnumOrdEq PrintfArgStorableDataEqOrdNumReal FractionalRealFracFloating RealFloatShowEnumReadShowEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEqEqShowReadOrdEqShowEqEq HasResolution HasResolutionTypeableShow PrintfArgStorableDataEqOrdNumReal FractionalFloatingRealFrac RealFloatShowEnumReadTypeableDataShowShowEqShowEqShowEqReadShowEnumOrdEqTypeable Typeable1 PrintfArgIsCharStorableDataReadShowBoundedEnumIxEqOrd Typeable1 ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeable RealFloatRealFracFloating FractionalRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEq ReadShowTypeable RealFloatRealFracFloating FractionalRealStorableEnumNumOrdEq ReadShowTypeable RealFloatRealFracFloating FractionalRealStorableEnumNumOrdEq ReadShowTypeableRealStorableEnumNumOrdEq ReadShowTypeableRealStorableEnumNumOrdEq ReadShowTypeableBitsIntegralBoundedRealStorableEnumNumOrdEqEqShowReadOrdEq StorableDataReadShowBoundedEnumIxOrdEqShowOrdEqShowOrdEqShowOrdEqMonoidBoundedShowReadOrdEqMonoidBoundedShowReadOrdEqArrow ArrowChoice ArrowApply ArrowLoop MonoidDataReadShowBoundedEnumIxEqOrd+5 ByteCount@1CDir;1CDirent61CFLock11CGroup,1CLconv'1CPasswd"1 CSigaction1CSigset1CStat1CString1 CStringLen0CTermios0CTm0CTms0CUtimbuf0CUtsname0CWString0 CWStringLen0 ClockTick0ConIndex0DeviceID0 EpochTime0FD0FileIDx0FileModep0 FileOffseti0FilePath\0FinalizerEnvPtr)0 FinalizerPtr0Generic/GenericB/GenericM/GenericQ/GenericR/GenericT/HandlePosition/IOError/IPr/Limit/Micro/Picot/Precn/ProcessGroupIDg/ ProcessID`/RationalM/ RawBuffer,/ReadS.STRep. SampleVar.ShowS.String.URL{.[]Char[]Char[]Char[]CharaMVar(,)IntMVarasaState#s(#,#)State#saa[]Char[](,)a[]CharMutableByteArray# RealWorldRatioIntegerCPidCPidIntFixedE12FixedE6CLong(,)IntInt IOExceptionIntegeraammararmamaacacaaFunPtrPtraIO()envaFunPtrPtrenvPtraIO()[]CharCOffCModeCInoCIntCTimeCDevIntCClock(,)PtrCWcharIntPtrCWchar()()()()()(,)PtrCCharIntPtrCChar()()()()()()()()()CSize(:݇[a\b}cqdmejfdgbh^i5XjXkWl UmRnNoKpGqoGr,As;tg8u5vG5w 2z1i1p1l1i1s1t1ZipList#=51#53 56484e4o3r62a2iB2tI2eP2b2h2ma2oh2do2ev2IOModea2n2d2l2e2 HandleTypeu2f2f2e2r2 BufferStatep2a3m3p3e3d3aM3m3o"3n)3a03d73 WrappedMonadrT3r[3ob3wi3 WrappedArrowo3n3a3d3 WrappedMonadr3r3o3w3 WrappedArrowr3d3Word#4143p46C4844p4t4r#4WordPtrWord84J4Word64#_4Word64#2w4Word3264Word16Word#a4k4Weak#4Weak##4Word844#4Word6425#5Word326*5#15Word16WordeN5rU5s\5ic5oj5nq5Versionn^6p5r5s5e5r5e5r5r5o5r5 IOErrorTypel5URLp5e5r6c 6a6s6e6l&6e-6t46t;6eB6rI6GeneralCategoryd7i7so6a6u{6p6p6o6r6t6e6d6o6p6e6r6a6t6i6o6n6 IOErrorTypet7i 7s7f7i7e&7d-7c47o;7nB7sI7tP7rW7a^7ie7nl7ts7sz7 IOErrorTypeq7t7Unitu7e7Uniquee7f8r7f7l7o7w7ArithExceptioni 8n8e8d"8e)8l08e78m>8eE8nL8tS8ArrayExceptionh:i2:r9v9y8c9p8e8a8r8e8p8TypeRepb8l8e8Typeable1|92i93V94C9509697 9 Typeable7 Typeable6 Typeable5 Typeable4 Typeable3 Typeable2 Typeable1o9n9TyCona9r9TVara9u9e9Boolv9e9r9s:a:b:l:e: Traversablem:t>:lE:eL:cS:aZ:sa:eh:lo:ev:t}:t:e:r:GeneralCategorye:e:x:p:i:r:e:d: IOErrorTyper:e:a;d ;iO;k;i;l&;l-;e4;d;;AsyncExceptiondV;ThreadId#m; ThreadId##Aa@e?h?p>tx<u <y;m;s;t;e;m;e;r;r;o;r; IOErrorTypeb<o <l<Lexememk<r,<r3<o:<gA<aH<tO<eV<GeneralCategorySumSTa=m=oo=r<e=i<n<g<Stringc<r<e<p<DataRepo<n<s<t=r = ConstrRepa\=fM=p>=t/=STretSTRepSTRefmc=FDTyperv=a}=b=l=e=StorableSTMb^>c >r=t=e=#=State#r=a=y=STArrayk>o>v >e'>r.>f5>l<>oC>wJ>AsyncExceptionle>el>n>px>t>r> StablePtr#> StablePtr#a>m>e> StableNamea>c>es?i>n>g?c ?o?m?b?i&?n-?i4?n;?gB?mI?aP?rW?k^?GeneralCategoryGeneralCategoryo?u?t?d?o?w?n? ConsoleEventw?Shows?ShowSei@m?i@c @l@o@s!@e(@d/@h6@a=@nD@dK@lR@eY@ HandleTypekp@f@m|@o@d@e@SeekModer@o@m@e@n@d@SeekModem@p@l@e@v@aAr A SampleVarIntegeraFe^Ai=AgDAhKAtRAEitheraDcCgwCl*CqBsAtAuArAnAiAnAoArAdAeArAArgOrderoAuArAcAeAbBeMBv BaBnBi Bs'Bh.Be5BdHrEHrLHoSHrZH IOErrorTypeurHcyHtHProducteHsHsHgHiHdH ProcessIDrHoHuHpHiHdHProcessGroupIDnYIvIa!It(Ie/Iu6Is=IeDIGeneralCategoryt`IfgIaItsIyzIpIeI PrintfTyperIgI PrintfArgcIfIiIxIFixityPrecoIlIPoolcJoJPicor0Jm7Ji_JuCJtJJeQJArgOrdersfJsmJitJo{JnJdJeJnJiJeJdJ IOErrorTyper3KtJtJeJrJnJmJaJtJcKhKfKaKiKl$K Exceptiona:KgAKrHKaOKpVKh]KsdKekKprKayKrKaKtKoKrKGeneralCategoryOpaquebNpMrtMtLvKeKrKfKlKoKwLArithExceptionhLe"Lr)LeGMlMnLp|LsDLyKLmRLbYLo`LlgLGeneralCategoryuLnLcLtLuLaLtLiLoLnLGeneralCategoryuLmLbLeLrLGeneralCategoryeMtMt$Me+Mr2MGeneralCategoryrNMrUMo\MrcM IOErrorTyped{MOrdeMrMiMnMgMOrderingaNeCNtMa'NdMiMoMnMOptDescreNsNcNrNOptDescrr.Ng5NArgDescrnJNpQNuXNn_NcfNtmNutNa{NtNiNoNnNGeneralCategoryqNuNeNOpaquejNeNcNtNObjecteQo"OuOmONumavQb.QmPnPrPsOtGOasOhSOiZOnaOghOMaybeszOsOiOgOnOeOdOGeneralCategoryuOcOhOtOhOiOnOgO IOErrorTypee PpPDataReps~Pt)Pe0Pr7Pm>PiEPnLPaSPtZPiaPohPnoP ExceptionpPaPcPiPnPgPmPaPrPkPGeneralCategoryePtPhPoPdPeQr QrQoQrQ Exceptionu5QfVo5Ut'UOrderinggVsUwFUeMUrTUc[UabUsiUepUlwUe~UtUtUeUrUGeneralCategorysUoUfUpUrUeUcUiUsUiUoUnVArithExceptionoVf%Vf,V ConsoleEventmVnJVeQVbVs]VedVpkVarVryVaVtVoVrVGeneralCategoryuVfVfVeVrViVnVgV BufferModeiVtWLimitfWtEWx We'Wm.We5WLexemetLWeSWrZWnaWuhWmoWbvWe}WrWGeneralCategorytWEithersWtWLastlWeWiWsWlWiWKleisli#(XuXsXtXMaybeInteger #^1^3^6^8^dd^g;^l]n4ZoXpXsXxxXIxcXsXtXrXiXnXgXIsStringhXaXrXIsCharrXIPrIOaZe`Ym;YrYe%Yf,YIORefoBYdIYePYIOModerYxlYcsYezYpYtYiYoYnY IOExceptionrYoYrYIOErrortYyYpYeY IOErrorTyperZrZaZy#ZIOArrayaU]d\f\ix\lo\rf\tZv^ZaeZllZisZdzZaZrZgZuZmZeZnZtZ IOErrorTypeInt #X\1B\3,\6\8[c[e6[p[rZe[p [DataRept[r&[IntPtrg}[rB[rI[uP[pW[t^[ee[dl[ IOErrorTypee[r[a[l[Integralr[Integero[n[s[t[r[ ConstrRepInt84\Int64#\Int64#23\Int326I\Int16Int#:+::+:t\i\a\l\q\u\o\t\e\GeneralCategoryi\x\Fixitye\x\o\u]t ]o]f]b]o%]u,]n3]d:]sA]ArrayExceptionp\]pc]rj]oq]px]r]i]a]t]e]t]y]p]e] IOErrorTypel]e]g]a]l]o]p]e^r^a^t^i^o#^n*^ IOErrorTypenB^oI^rP^eW^Handlerek^nr^ty^Lexeme#^Int84^#^Int642^#^Int326^#^Int16Inta`e`oa`p `t_m _l_HtmlHTMLa_l_n_t>_aj_rJ_eQ_eX_HtmlTreebq_lx_e_ HtmlTable HTMLTABLEo_d_e_HtmlTreee_a_f_HtmlTreet_t_r_HtmlAttrr`i`n"`t)`f0`t7`y>`pE`eL` HPrintfTypeth`lo`iv`n}`k`HotLinka`p`o`v`e`r`f`l`o`w`AsyncExceptionnarasahbar aeasao!al(au/at6ai=aoDanKa HasResolutiontiaapabwal~aea HashTabledawaaaraeafaaaualata IOErrorTypedalaebHandle_bpbbrQbt(by/bp6be=b HandleTypeHandleroibspbibn|b HandlePosntbibobnbHandlePosition_bHandle__ecmcqctbOrdering GenericQ' GenericM'n&ce-cr4ca*di@ccGcGeneric'dbdmcqcrctvcGenericT'c GenericT'GenericRGenericQ'c GenericQ'GenericM'c GenericM'GenericBGeneric'l1dc8da?dtFdeMdgTdo[drbdyidGeneralCategory #vjaWjdjf5ii glTfoTereudndcdpdtdrdFunPtrtdodrdFunctoraecetei$eo+en2ea9el@e Fractionallfr`eeemleasetzeGeneralCategoryiegenepetere ForeignPtrceoeneteeenetesfForeignPtrContentsd&fa-fb4fl;feBfFoldableo[fabftifFloat#fcfifrfefpfDataRepnfgfFloatingofnfsftfrf ConstrRepFloat#lHhn|gr_gxgeIgi+gt2gy9gFixitydPgFixedsfgtmgFirstaglgigqgugogtgegGeneralCategoryzgegrge hpgtgrg FinalizerPtrnhvhp!ht(hr/hFinalizerEnvPtreOhhiihmhohpjhaqhtxhhhFilePathfhfhshehth FileOffsetohdhehFileModedhFileIDa inidil"ie)iHandleeif~igFieMinTie[irbiiiicpiFFFormatiioirimiaitiFFFormatxieidiFFFormatxipioinieinjt jFFFormatFDFdt2jy9jp@jeGjFDTypel^jsejeljBoolFloat 1m6}miQmnlolpdlqOlrkxjckijtjckeIkfksjujcjcjejsjskExitCodeakikl&ku-kr4ke;kExitCodexPkcWke^kpektlkiskozknk ExceptionokdkekExitCodeekpktkikoknk Exceptionrkn9lolrlclall#ll*l Exceptiono@lErrnoOrderingEqoklcrlhyltlilmlel EpochTimeflLexemecldlulmlEnumolEndolloms mimnmg mm'ma.mr5mksuEsfLsCUtimbufhesolsrsstzsCUShortrsesnscsysssysmsbsoslsGeneralCategoryltosntgtCULongotn%tg,tCULLongnDttKtCUIntmtpdttktrrtCUIntPtratxtCUIntMaxhtatrtCUChareuitmtCTmstCTmsmueuCTimerum%ui,uo3us:uCTermioscvhviusutguaursuizunuguCStringlueunu CStringLentuCStatiuzueuCSsizegvzvevCSizeaHvs)ve0vt7vCSigsetcvtTvo[vmbviivcpv CSigAtomictvivovnv CSigactionovrvtvCShorthvavrvCSCharaYwiDwtwrwdwi$wf+wf2wCPtrdiffdKwCPids`wsgwwnwduwCPasswdfkym>ynwiynxswtwrwowlwGeneralCategorycw ConsoleEventoDxtwConstrxConstrr#xe*xp1x ConstrReplKxeRxeYxv`xegxnnxtux ConsoleEventexcxtxoxrxpxuxnxcxtxuxaxtxixoxnxGeneralCategorynydye%yx,yConIndexpEylLyeSyxZyComplexfryCOffoydyeyCModec){dzlzoycznzsyey ConsoleEventdIzpyuynyczt zuzaztzi&zo-zn4zGeneralCategoryhPzaWzn^zdezllzesz HandleTypegzCLongkztzizczkz ClockTickoznzgzCLLongozu{b {l{e{CLDoubleo0{n7{v>{CLconvmU{p\{bc{uj{fq{CJmpBufn{o{t{CIntm{p{t{r{CIntPtra{x{CIntMaxCInoa|n.|r |Char#|Char#ChanrC|oJ|uQ|pX|CGroupi|l|py|o|s|CFposo|a|c|k|CFLockt|CFloatl|e|CFileek}i2}o}u }b}l}e!}CDoubler9}CDireL}nS}tZ}CDirentvr}CDevh}l}o}c}k}CClocka}r}CChart}c}h}HandlerChari@loru~y~t!~e(~ac~c4~o;~uB~nI~tP~ ByteCountrj~rq~ax~y~#~ ByteArray#f~f~e~r~Bufferl/ms~t~a~t~e~ BufferStateo de BufferModei6s=tD BufferListcnbiilp BufferListons BufferListeak ConsoleEventoundedBoundedl Boolo!c(k/be;dBioNnUd\ecajdqmxvar ExceptionndefinƀìtԀeۀly Exceptionuff eri"n)g0 BufferModetGsNBitsbUdlޅnʅprUssyncexceptŁíoӁnځAsyncExceptionertionf#a*i1l8e?dF Exceptiongi6rfaorwyArrowacNl&mp΂zero ArrowZerolՂu܂s ArrowPlusona d ArrowMonado-o4p; ArrowLoophUo\iccjeq ArrowChoicepply ArrowApplyyArray#&eփx݃ceptionArrayExceptionArray#t=hDeKxRcYe`pgtniuo|nArithExceptiondՄorderÄArgOrdere܄scrArgDescrp e\lic$a+t2i9v@eG Applicativencdjhmvo}deIOModeandle HandleTypeyхAnyglrAtern ativ%e, AlternativeeHaOdVy]edxkirsyts IOErrorTypeAllc̆repDataRepoӆnچstr ConstrRepda'r#Addr#t.t5r<sCADDATTRSs\ocljuqtxeseekSeekMode:][]:ȇ]χ[::]*+::+:::*:)()(ډJBoolHotLink Html"!   HtmlAttr  HtmlTable$#HtmlTreea bChar[]%HtmlAttr[]Char[][]|bN) HotLinkHtml  HtmlTreeInta"! b"ht#ht1$ht2$html%Char[]   Html[] HtmlAttr[]  HtmlTree[]a[]ht[]ba(,)[]Char[][]Html[][]%TR1ٖu[ʕslR6+ђvڎM/؍QHTMLhtmlString HTMLTABLEht1 HTMLTABLEht2c HTMLTABLEht HTMLaHTMLb?@AHTMLa ADDATTRSaQRSdefghiIJKLNOPe HTMLa  ./01>?@CDEGHIKLMNOP]^_`abjqrs|}~ !/01234567;<=>?@abklmpqrstuwxyz{|   !"&'()*+,-./012678EFGJKLMNOP`ab)*+URLA HTMLTABLEht }~BCDQRSHTMLaHTMLhtmlString"#$String$%&'()*+,-3459:;<BTUVtxyz{89:HWXY]^_#String$%3459:;<=>WXYZ[\]^_cdjkl   StringStringURLURL!"#uvw,-.EFG   StringQRSStringStringklmStringghiStringStringIStringBCDStringHTMLaHTMLbnop&'(Z[\cdeijno&678=WXYZ[\%TUVfgh2FJAM`vfmStringHStringjP8̹fH*ظjN.ܷ·xP< b@,صz^H$Ҵ|Z@ֳ~`@βlF$ر|N4 ذx`@ U-ծU9ԭnP2ܬ~\8ޫƫ`L$hD(ԩpV>ƨnH*ħh<$֦\$ХpP.̤t\:ڣpX,ܢjA'١šgI1͠kI'˟aC#۞{cE'ǝeK5ɜyellowyellowmxhtmlXHtmlxhtmlwidthӜwidthjklwidgetwidgetghiwhitewhitefvspace(vspaceevlink?vlinkdversionWversioncvariablervariable`abvaluevalue]^_valignvalignZ[\usemapҝusemapWXYurlURLTUV unordlist unordListQRS underline5 underlinePulistOulistMNOttjttJKLtreehtmltreeHtmlI treecolors treeColorsH transitionalȞ TransitionaltrtrEFGtohtmlfromlisttoHtmlFromListBCDtohtml.toHtml?@AtitleMtitle<=>thetypemthetype9:;thetitlethetitle678thestylethestyle345thespanןthespan012themenuthemenu/themapthemap,-.thelink3thelink)*+thehtmlUthehtml&'(theforvthefor#$%thedivthediv !"thecodethecodetheclassڠtheclassthebasethebasetheadtheadth8thtfootStfoot textfieldu textfield   textareatextarea  texttexttealΡtealtdtdtbodytbodytargettargettag/tagtableKTabletablesuprsupsubmitsubmitsubsubstyleȢstylestrongstrongstringtohtmlstringstringToHtmlString stringtohtml= stringToHtmlstrikecstrikestrict{StrictstrattrstrAttrstartstartsrcȣsrc spacehtml spaceHtmlsmall smallsize'size simpletableJ simpleTablesilvergsilvershowhtmlfragmentshowHtmlFragmentshowhtmlshowHtmlshape֤shapeselectedselectedselectselect scrolling< scrollingscript[scriptsample{samplerulesrulesrowspanrowspanrows٥rowsrevrevresetresetrenderhtmlwithlanguage?renderHtmlWithLanguagerenderhtmlfragmentsrenderHtmlFragment renderhtml renderHtmlrelĦrelredަredradioradioquotequotepurple/purple primhtmlcharM primHtmlCharprimhtmluprimHtmlprettyhtmlfragmentprettyHtmlFragment prettyhtmlӧ prettyHtmlpreprepasswordpasswordparam4param paragraphV paragraphptpordlistordList}~optionoptionz{|optgroupӨoptgroupwxyoliveolivevolist oliststuobject)objectpqrnowrapInowraponoshadebnoshadennoscript}noscriptklmnoresizenoresizeijnohtmlnoHtmlfghnohrefߩnohrefcdenoframesnoframesabnavynavy`name1name]^_multipleQmultipleZ[\methodsmethodWXYmetametaTUVmenumenuQRS maxlengthΪ maxlengthNOPmaroonmaroonM marginwidth marginwidthKL marginheight5 marginheightIJlinkUlinkH linetohtmlo lineToHtmlEFG linestohtml linesToHtmlBCDlimelimeAliͫli>?@legendlegend;<=langlang89:label$label567keyboardEkeyboard234italicshitalics/01itagitag,-.isnohtmlisNoHtml)*+ismapȬismap&'(isindexisindex%intattrintAttr"#$ins ins !input<inputimageZimageiframeyiframe identifier identifier httpequiv httpequivhtmltreeHtmlTree htmltable HTMLTABLE HtmlTablehtmlnode*HtmlNodehtmlleafFHtmlLeaf htmlattrbHtmlAttr htmlAttr   htmlHTMLHtmlhspaceȮhspacehreflanghreflanghrefhrefhrhr hotlinkurl< hotLinkURLhotlinkcontentsihotLinkContentshotlinkattributeshotLinkAttributeshotlinkɯHotLinkhotlinkhidden hiddenheight+heightheaderKheaderh6gh6h5h5h4h4h3h3h2ǰh2h1߰h1guiguigreengreengray)grayfuchsia@fuchsiaframeset[Framesetframeset frameborder frameborderframeframeforműformfontfontfieldsetfieldsetfacefaceenctype0enctype emptyattrT emptyAttr emphasizez emphasizedtermdtermdlistdlistdisabled۲disableddirdirdel deldeflist*defListdefineKdefine debughtmln debugHtmldebugDebugddefddef copyright copyrightcoordscoordscontentcontent concathtml' concatHtmlcompactLcompactcolspanfcolspancolscolscolorcolorcolgroupcolgroupcolڴcol|}~codebasecodebaseyz{codecodexclickmap1clickmapuvwclearRcleartcitegciteqrscheckedcheckednopcheckboxcheckboxklmcenter˵centerj cellspacing cellspacingghi cellpadding cellpaddingdefcell5cellccaptionLcaption`abbuttonmbutton]^_bulletbulletZ[\brbrWXY bordercolorʶ bordercolorTUVborderborderQRSbold boldNOPbody)bodyKLMblueEblueJ blockquote_ blockquoteGHIblackblackFbigbigCDEbgcolorbgcolorBbesidesηbesidesAbdobdo>?@basefontbasefont=basebase:;< background= background9areaWarea678archivevarchive345aquaaqua2appletapplet1anchorøanchor./0altcodealtcode+,-altalt()*alinkalink'align4align$%&afileRafile!"#addressraddress addattrsADDATTRSactionactionacronymعacronymabovesabovesaboveaboveabbr%abbr<NkUPNL2ԫz ƪdLPP~Fޥ&ʤ<kϡ5٠}AQaSy=ŚqəsǘP$\.Bp В"ƑjN8D6ڌ~"ƋjȊUo I)׆3CIM+Lb8~~B~}}D}||*|{^{zz8zyy,yxx4xwwBwvv(vuxu6uttTtss8srrTrrqpq$qpp@poo\oonxn,nmm0mlpllk,kjjii*ihbhgggffe&edNdcc.cbbb6ba~aa`R`_/_f^]q]E]]\q\\[)[ZOZYyYCXxWWVFVUvUUTTFT TSS^SSRtRQQQPPPPPONsNMCMLULKKQKJJOJIIOIHHCHGGOGGF{FEDCCqBAuAA@E@??A?>>>=+=<<<#<;c;;::/:9w9;988G887k776{63655+544M433S332q221i110m00/&/.^.--F-,,x,>,++*+**@*(.'%#!kcm/ =qE~D4 |   h   N   R   V 6FXu" *rr tj<D$XBJ\*j|*F"p4PH.8T^ @x"v"zZXVZX:~&l J+eo\>Zd (MX8zfT^.8|<yellowyellow :: StringxoStringwidthwidth :: String -> HtmlAttrStringHtmlAttrwidthwidth :: String -> HtmlAttr4StringHtmlAttrwidthwidth :: String -> HtmlAttr}StringHtmlAttrwidget widget :: String -> String ->  [HtmlAttr] -> Html*StringString[]HtmlAttrHtmlwidget widget :: String -> String ->  [HtmlAttr] -> HtmlStringString[]HtmlAttrHtmlwidget widget :: String -> String ->  [HtmlAttr] -> HtmlZ1StringString[]HtmlAttrHtmlwhitewhite :: StringStringvspacevspace :: Int -> HtmlAttrIntHtmlAttrvlinkvlink :: String -> HtmlAttrP;StringHtmlAttrversionversion :: String -> HtmlAttrStringHtmlAttrvariablevariable :: Html -> Html HtmlHtmlvariablevariable :: Html -> HtmlbSHtmlHtmlvariablevariable :: Html -> HtmlHtmlHtmlvaluevalue :: String -> HtmlAttrStringHtmlAttrvaluevalue :: String -> HtmlAttrvaStringHtmlAttrvaluevalue :: String -> HtmlAttrStringHtmlAttrvalignvalign :: String -> HtmlAttr4StringHtmlAttrvalignvalign :: String -> HtmlAttrStringHtmlAttrvalignvalign :: String -> HtmlAttrStringHtmlAttrusemapusemap :: String -> HtmlAttrT?StringHtmlAttrusemapusemap :: String -> HtmlAttrStringHtmlAttrusemapusemap :: String -> HtmlAttrStringHtmlAttrURLtype URL = StringIURLtype URL = String~URLtype URL = String unordList unordList ::  HTML a => [a] -> Html$HTMLa[]aHtml unordList unordList ::  HTML a => [a] -> HtmlxHTMLa[]aHtml unordList unordList ::  HTML a => [a] -> HtmlHTMLa[]aHtml underline underline :: Html -> Html`QHtmlHtmlulistulist :: Html -> HtmlHtmlHtmlulistulist :: Html -> HtmlHtmlHtmlulistulist :: Html -> HtmlVGHtmlHtmltttt :: Html -> HtmlHtmlHtmltttt :: Html -> HtmlHtmlHtmltttt :: Html -> Html:+HtmlHtmltreeHtmltreeHtml :: [String] -> HtmlTree -> Html[]StringHtmlTreeHtml treeColors treeColors :: [String] []Stringtrtr :: Html -> HtmlXIHtmlHtmltrtr :: Html -> HtmlHtmlHtmltrtr :: Html -> HtmlHtmlHtmltoHtmlFromListtoHtmlFromList ::  HTML a => [a] -> HtmlkNHTMLa[]aHtmltoHtmlFromListtoHtmlFromList ::  HTML a => [a] -> HtmlHTMLa[]aHtmltoHtmlFromListtoHtmlFromList ::  HTML a => [a] -> HtmlaDHTMLa[]aHtmltoHtmltoHtml ::  HTML a => a -> HtmlHTMLaaHtmltoHtmltoHtml ::  HTML a => a -> Html'HTMLaaHtmltoHtmltoHtml ::  HTML a => a -> HtmlsHTMLaaHtmltitletitle :: String -> HtmlAttrStringHtmlAttrtitletitle :: String -> HtmlAttrF1StringHtmlAttrtitletitle :: String -> HtmlAttrStringHtmlAttrthetypethetype :: String -> HtmlAttrStringHtmlAttrthetypethetype :: String -> HtmlAttrhSStringHtmlAttrthetypethetype :: String -> HtmlAttrStringHtmlAttrthetitlethetitle :: Html -> Html"HtmlHtmlthetitlethetitle :: Html -> HtmlzkHtmlHtmlthetitlethetitle :: Html -> HtmlHtmlHtmlthestylethestyle :: String -> HtmlAttr6!StringHtmlAttrthestylethestyle :: String -> HtmlAttrStringHtmlAttrthestylethestyle :: String -> HtmlAttrStringHtmlAttrthespanthespan :: Html -> HtmlTEHtmlHtmlthespanthespan :: Html -> HtmlHtmlHtmlthespanthespan :: Html -> HtmlHtmlHtmlthemenuthemenu :: Html -> HtmlVGHtmlHtmlthemapthemap :: Html -> HtmlHtmlHtmlthemapthemap :: Html -> HtmlHtmlHtmlthemapthemap :: Html -> HtmlRCHtmlHtmlthelinkthelink :: Html -> HtmlHtmlHtmlthelinkthelink :: Html -> HtmlHtmlHtmlthelinkthelink :: Html -> HtmlTEHtmlHtmlthehtmlthehtml :: Html -> HtmlHtmlHtmlthehtmlthehtml :: Html -> HtmlHtmlHtmlthehtmlthehtml :: Html -> HtmlVGHtmlHtmltheforthefor :: String -> HtmlAttrStringHtmlAttrtheforthefor :: String -> HtmlAttrStringHtmlAttrtheforthefor :: String -> HtmlAttrvaStringHtmlAttrthedivthediv :: Html -> HtmlHtmlHtmlthedivthediv :: Html -> HtmlHtmlHtmlthedivthediv :: Html -> HtmlrcHtmlHtmlthecodethecode :: Html -> HtmlHtmlHtmlthecodethecode :: Html -> HtmlHtmlHtmlthecodethecode :: Html -> HtmlteHtmlHtmltheclasstheclass :: String -> HtmlAttrStringHtmlAttrtheclasstheclass :: String -> HtmlAttr<'StringHtmlAttrtheclasstheclass :: String -> HtmlAttrStringHtmlAttrthebasethebase :: HtmlHtmlthebasethebase :: HtmlHtmlthebasethebase :: HtmlZSHtmltheadthead :: Html -> HtmlHtmlHtmltheadthead :: Html -> HtmlHtmlHtmltheadthead :: Html -> HtmlPAHtmlHtmlthth :: Html -> HtmlHtmlHtmlthth :: Html -> HtmlHtmlHtmlthth :: Html -> Html4%HtmlHtmltfoottfoot :: Html -> HtmlwHtmlHtmltfoottfoot :: Html -> HtmlHtmlHtmltfoottfoot :: Html -> Html*HtmlHtml textfield textfield :: String -> HtmlwStringHtml textfield textfield :: String -> HtmlStringHtml textfield textfield :: String -> HtmlD3StringHtmltextareatextarea :: Html -> HtmlHtmlHtmltextareatextarea :: Html -> HtmlHtmlHtmltextareatextarea :: Html -> HtmlL=HtmlHtmltexttext :: String -> HtmlAttrStringHtmlAttrtealteal :: StringStringtdtd :: Html -> Html0!HtmlHtmltdtd :: Html -> Html|mHtmlHtmltdtd :: Html -> HtmlHtmlHtmltbodytbody :: Html -> Html HtmlHtmltbodytbody :: Html -> Htmll]HtmlHtmltbodytbody :: Html -> HtmlHtmlHtmltargettarget :: String -> HtmlAttr StringHtmlAttrtagtag :: String -> Html -> HtmloStringHtmlHtml*Constructs an element with a custom name. tagtag :: String -> Html -> HtmlStringHtmlHtml*Constructs an element with a custom name. tagtag :: String -> Html -> HtmlStringHtmlHtml*Constructs an element with a custom name. tabletable :: Html -> Html&HtmlHtmltabletable :: Html -> HtmlxiHtmlHtmltabletable :: Html -> HtmlHtmlHtmlsupsup :: Html -> Html HtmlHtmlsupsup :: Html -> HtmlfWHtmlHtmlsupsup :: Html -> HtmlHtmlHtmlsubmitsubmit :: String -> String -> Html& StringStringHtmlsubmitsubmit :: String -> String -> HtmlStringStringHtmlsubmitsubmit :: String -> String -> Html StringStringHtmlsubsub :: Html -> HtmlXIHtmlHtmlsubsub :: Html -> HtmlHtmlHtmlsubsub :: Html -> HtmlHtmlHtmlstylestyle :: Html -> HtmlF7HtmlHtmlstylestyle :: Html -> HtmlHtmlHtmlstylestyle :: Html -> HtmlHtmlHtmlstrongstrong :: Html -> Html>/HtmlHtmlstrongstrong :: Html -> HtmlHtmlHtmlstrongstrong :: Html -> HtmlHtmlHtmlstringToHtmlStringstringToHtmlString :: String -> StringZGStringString.Processing Strings into Html friendly things.  stringToHtml stringToHtml :: String -> HtmlStringHtmlhConvert a String to Html, converting characters that need to be escaped to HTML entities.  stringToHtml stringToHtml :: String -> HtmlStringHtmlhConvert a String to Html, converting characters that need to be escaped to HTML entities.  stringToHtml stringToHtml :: String -> HtmlsStringHtmlhConvert a String to Html, converting characters that need to be escaped to HTML entities. strikestrike :: Html -> Html@1HtmlHtmlstrAttrstrAttr :: String -> String -> HtmlAttrStringStringHtmlAttrstrAttrstrAttr :: String -> String -> HtmlAttr8StringStringHtmlAttrstrAttrstrAttr :: String -> String -> HtmlAttrStringStringHtmlAttrstartstart :: Int -> HtmlAttr IntHtmlAttrsrcsrc :: String -> HtmlAttrfQStringHtmlAttrsrcsrc :: String -> HtmlAttrStringHtmlAttrsrcsrc :: String -> HtmlAttrStringHtmlAttr spaceHtml spaceHtml :: Html\UHtmlNon-breaking space.  spaceHtml spaceHtml :: HtmlHtmlNon-breaking space.  spaceHtml spaceHtml :: HtmlHtmlNon-breaking space. smallsmall :: Html -> Htmln_HtmlHtmlsmallsmall :: Html -> HtmlHtmlHtmlsmallsmall :: Html -> HtmlHtmlHtmlsizesize :: String -> HtmlAttrnYStringHtmlAttrsizesize :: String -> HtmlAttrStringHtmlAttrsizesize :: String -> HtmlAttr&StringHtmlAttr simpleTable  simpleTable ::  [HtmlAttr] ->  [HtmlAttr] -> [[Html]] -> Html[]HtmlAttr[]HtmlAttr[][]HtmlHtmlIf you can't be bothered with the above, then you can build simple tables with simpleTable. Just provide the attributes for the whole table, attributes for the cells (same for every cell), and a list of lists of cell contents, and this function will build the table for you. It does presume that all the lists are non-empty, and there is at least one list. Different length lists means that the last cell gets padded. If you want more power, then use the system above, or build tables explicitly. silversilver :: String StringshowHtmlFragmentshowHtmlFragment ::  HTML html => html -> StringzHTMLhtmlhtmlStringpRender a piece of HTML without adding a DOCTYPE declaration or root element. Does not add any extra whitespace. showHtmlFragmentshowHtmlFragment ::  HTML html => html -> StringqHTMLhtmlhtmlStringpRender a piece of HTML without adding a DOCTYPE declaration or root element. Does not add any extra whitespace. showHtmlFragmentshowHtmlFragment ::  HTML html => html -> StringhHTMLhtmlhtmlStringpRender a piece of HTML without adding a DOCTYPE declaration or root element. Does not add any extra whitespace. showHtmlshowHtml ::  HTML html => html -> StringnOHTMLhtmlhtmlStringOutput the HTML without adding newlines or spaces within the markup. This should be the most time and space efficient way to render HTML, though the ouput is quite unreadable. showHtmlshowHtml ::  HTML html => html -> StringvHTMLhtmlhtmlStringThe DOCTYPE for XHTML 1.0 Strict. Output the HTML without adding newlines or spaces within the markup. This should be the most time and space efficient way to render HTML, though the ouput is quite unreadable. showHtmlshowHtml ::  HTML html => html -> StringHTMLhtmlhtmlStringOutput the HTML without adding newlines or spaces within the markup. This should be the most time and space efficient way to render HTML, though the ouput is quite unreadable. shapeshape :: String -> HtmlAttrStringHtmlAttrshapeshape :: String -> HtmlAttrT?StringHtmlAttrshapeshape :: String -> HtmlAttrStringHtmlAttrselectedselected :: HtmlAttrHtmlAttrselectedselected :: HtmlAttrB7HtmlAttrselectedselected :: HtmlAttrHtmlAttrselectselect :: Html -> HtmlHtmlHtmlselectselect :: Html -> Html2#HtmlHtmlselectselect :: Html -> HtmlwHtmlHtml scrolling scrolling :: String -> HtmlAttrStringHtmlAttr scrolling scrolling :: String -> HtmlAttrR = StringHtmlAttrscriptscript :: Html -> Html  HtmlHtmlscriptscript :: Html -> Html  HtmlHtmlscriptscript :: Html -> HtmlN ? HtmlHtmlsamplesample :: Html -> Html  HtmlHtmlsamplesample :: Html -> Html  HtmlHtmlsamplesample :: Html -> HtmlJ ; HtmlHtmlrulesrules :: String -> HtmlAttr  StringHtmlAttrrulesrules :: String -> HtmlAttr  StringHtmlAttrrulesrules :: String -> HtmlAttrd O StringHtmlAttrrowspanrowspan :: Int -> HtmlAttr  IntHtmlAttrrowspanrowspan :: Int -> HtmlAttr  IntHtmlAttrrowspanrowspan :: Int -> HtmlAttrx f IntHtmlAttrrowsrows :: String -> HtmlAttr  StringHtmlAttrrowsrows :: String -> HtmlAttr0StringHtmlAttrrowsrows :: String -> HtmlAttrwStringHtmlAttrrevrev :: String -> HtmlAttrStringHtmlAttrrevrev :: String -> HtmlAttr@+StringHtmlAttrrevrev :: String -> HtmlAttrStringHtmlAttrresetreset :: String -> String -> Html StringStringHtmlresetreset :: String -> String -> HtmlzaStringStringHtmlresetreset :: String -> String -> HtmlStringStringHtmlrenderHtmlWithLanguagerenderHtmlWithLanguage ::  HTML html => String -> html -> StringpHTMLhtmlStringhtmlStringROutputs indented XHTML. Because space matters in HTML, the output is quite messy. renderHtmlFragmentrenderHtmlFragment ::  HTML html => html -> StringtUHTMLhtmlhtmlStringRender a piece of indented HTML without adding a DOCTYPE declaration or root element. Only adds whitespace where it does not change the meaning of the document. renderHtmlFragmentrenderHtmlFragment ::  HTML html => html -> StringHTMLhtmlhtmlStringRender a piece of indented HTML without adding a DOCTYPE declaration or root element. Only adds whitespace where it does not change the meaning of the document. renderHtmlFragmentrenderHtmlFragment ::  HTML html => html -> StringHTMLhtmlhtmlStringRender a piece of indented HTML without adding a DOCTYPE declaration or root element. Only adds whitespace where it does not change the meaning of the document.  renderHtml renderHtml ::  HTML html => html -> StringHTMLhtmlhtmlStringQOutputs indented HTML. Because space matters in HTML, the output is quite messy.  renderHtml renderHtml ::  HTML html => html -> StringHTMLhtmlhtmlStringQOutputs indented HTML. Because space matters in HTML, the output is quite messy.  renderHtml renderHtml ::  HTML html => html -> StringaHTMLhtmlhtmlStringQOutputs indented HTML. Because space matters in HTML, the output is quite messy. relrel :: String -> HtmlAttr+StringHtmlAttrrelrel :: String -> HtmlAttrpStringHtmlAttrrelrel :: String -> HtmlAttrStringHtmlAttrredred :: StringStringradioradio :: String -> String -> HtmlpStringStringHtmlradioradio :: String -> String -> HtmlStringStringHtmlradioradio :: String -> String -> HtmliPStringStringHtmlquotequote :: Html -> HtmlHtmlHtmlquotequote :: Html -> Html HtmlHtmlquotequote :: Html -> Html_PHtmlHtmlpurplepurple :: StringString primHtmlChar primHtmlChar :: String -> HtmlStringHtml primHtmlChar primHtmlChar :: String -> HtmlgVStringHtml primHtmlChar primHtmlChar :: String -> HtmlStringHtmlprimHtmlprimHtml :: String -> Html'StringHtmlThis is not processed for special chars. use stringToHtml or lineToHtml instead, for user strings, because they understand special chars, like <. primHtmlprimHtml :: String -> Html(StringHtmlThis is not processed for special chars. use stringToHtml or lineToHtml instead, for user strings, because they understand special chars, like <. primHtmlprimHtml :: String -> Html)StringHtmlThis is not processed for special chars. use stringToHtml or lineToHtml instead, for user strings, because they understand special chars, like <. prettyHtmlFragmentprettyHtmlFragment ::  HTML html => html -> StringY : HTMLhtmlhtmlStringfRender a piece of indented HTML without adding a DOCTYPE declaration or a root element. The indentation is done inside elements. This can change the meaning of the HTML document, and is mostly useful for debugging the HTML output. The implementation is inefficient, and you are normally better off using showHtmlFragment or renderHtmlFragment. prettyHtmlFragmentprettyHtmlFragment ::  HTML html => html -> StringJ"+"HTMLhtmlhtmlStringfRender a piece of indented HTML without adding a DOCTYPE declaration or a root element. The indentation is done inside elements. This can change the meaning of the HTML document, and is mostly useful for debugging the HTML output. The implementation is inefficient, and you are normally better off using showHtmlFragment or renderHtmlFragment. prettyHtmlFragmentprettyHtmlFragment ::  HTML html => html -> String;$$HTMLhtmlhtmlStringfRender a piece of indented HTML without adding a DOCTYPE declaration or a root element. The indentation is done inside elements. This can change the meaning of the HTML document, and is mostly useful for debugging the HTML output. The implementation is inefficient, and you are normally better off using showHtmlFragment or renderHtmlFragment.  prettyHtml prettyHtml ::  HTML html => html -> String&%HTMLhtmlhtmlStringOutputs indented HTML, with indentation inside elements. This can change the meaning of the HTML document, and is mostly useful for debugging the HTML output. The implementation is inefficient, and you are normally better off using showHtml or renderHtml.  prettyHtml prettyHtml ::  HTML html => html -> String''HTMLhtmlhtmlStringOutputs indented HTML, with indentation inside elements. This can change the meaning of the HTML document, and is mostly useful for debugging the HTML output. The implementation is inefficient, and you are normally better off using showHtml or renderHtml.  prettyHtml prettyHtml ::  HTML html => html -> String.))HTMLhtmlhtmlStringOutputs indented HTML, with indentation inside elements. This can change the meaning of the HTML document, and is mostly useful for debugging the HTML output. The implementation is inefficient, and you are normally better off using showHtml or renderHtml. prepre :: Html -> Html*{*HtmlHtmlprepre :: Html -> Html**HtmlHtmlprepre :: Html -> Html&++HtmlHtmlpasswordpassword :: String -> Html+q+StringHtmlpasswordpassword :: String -> Html++StringHtmlpasswordpassword :: String -> Html:,),StringHtmlparamparam :: Htmlt,m,Htmlparamparam :: Html,,Htmlparamparam :: Html,,Html paragraph paragraph :: Html -> HtmlB-3-HtmlHtml paragraph paragraph :: Html -> Html--HtmlHtml paragraph paragraph :: Html -> Html--HtmlHtmlpp :: Html -> Html@.1.HtmlHtmlSame as paragraph. pp :: Html -> Html..HtmlHtmlSame as paragraph. pp :: Html -> Html/.HtmlHtmlSame as paragraph. ordListordList ::  HTML a => [a] -> Html/r/HTMLa[]aHtmlordListordList ::  HTML a => [a] -> Html//HTMLa[]aHtmlordListordList ::  HTML a => [a] -> Htmli0L0HTMLa[]aHtmloptionoption :: Html -> Html00HtmlHtmloptionoption :: Html -> Html11HtmlHtmloptionoption :: Html -> Htmle1V1HtmlHtmloptgroupoptgroup :: Html -> Html11HtmlHtmloptgroupoptgroup :: Html -> Html22HtmlHtmloptgroupoptgroup :: Html -> Htmlm2^2HtmlHtmloliveolive :: String22Stringolistolist :: Html -> Html22HtmlHtmlolistolist :: Html -> HtmlO3@3HtmlHtmlolistolist :: Html -> Html33HtmlHtmlobjectobject :: Html -> Html33HtmlHtmlobjectobject :: Html -> HtmlI4:4HtmlHtmlobjectobject :: Html -> Html44HtmlHtmlnowrapnowrap :: HtmlAttr44HtmlAttrnoshadenoshade :: HtmlAttr'55HtmlAttrnoscriptnoscript :: Html -> Html5p5HtmlHtmlnoscriptnoscript :: Html -> Html55HtmlHtmlnoscriptnoscript :: Html -> Html/6 6HtmlHtmlnoresizenoresize :: HtmlAttrw6l6HtmlAttrnoresizenoresize :: HtmlAttr66HtmlAttrnoHtmlnoHtml :: Html66HtmlAn empty piece of HTML. noHtmlnoHtml :: HtmlO7H7HtmlAn empty piece of HTML. noHtmlnoHtml :: Html77HtmlAn empty piece of HTML. nohrefnohref :: HtmlAttr77HtmlAttrnohrefnohref :: HtmlAttrC888HtmlAttrnohrefnohref :: HtmlAttr8|8HtmlAttrnoframesnoframes :: Html -> Html88HtmlHtmlnoframesnoframes :: Html -> Html79(9HtmlHtmlnavynavy :: Strings9j9Stringnamename :: String -> HtmlAttr99StringHtmlAttrnamename :: String -> HtmlAttr+::StringHtmlAttrnamename :: String -> HtmlAttr:r:StringHtmlAttrmultiplemultiple :: HtmlAttr::HtmlAttrmultiplemultiple :: HtmlAttr; ;HtmlAttrmultiplemultiple :: HtmlAttr_;T;HtmlAttrmethodmethod :: String -> HtmlAttr;;StringHtmlAttrmethodmethod :: String -> HtmlAttr< <StringHtmlAttrmethodmethod :: String -> HtmlAttr<j<StringHtmlAttrmetameta :: Html<<Htmlmetameta :: Html<<Htmlmetameta :: Html'= =Htmlmenumenu :: String -> [Html] -> Html=|=String[]HtmlHtmlmenumenu :: String -> [Html] -> Html >=String[]HtmlHtmlmenumenu :: String -> [Html] -> Html}>`>String[]HtmlHtml maxlength maxlength :: Int -> HtmlAttr>>IntHtmlAttr maxlength maxlength :: Int -> HtmlAttr=?+?IntHtmlAttr maxlength maxlength :: Int -> HtmlAttr??IntHtmlAttrmaroonmaroon :: String??String marginwidth marginwidth :: Int -> HtmlAttrA@/@IntHtmlAttr marginwidth marginwidth :: Int -> HtmlAttr@@IntHtmlAttr marginheight marginheight :: Int -> HtmlAttr A@IntHtmlAttr marginheight marginheight :: Int -> HtmlAttrqA_AIntHtmlAttrlinklink :: String -> HtmlAttrAAStringHtmlAttr lineToHtml lineToHtml :: String -> Html-BBStringHtml@This converts a string, but keeps spaces as non-line-breakable.  lineToHtml lineToHtml :: String -> HtmlBBStringHtml@This converts a string, but keeps spaces as non-line-breakable.  lineToHtml lineToHtml :: String -> HtmlmC\CStringHtml@This converts a string, but keeps spaces as non-line-breakable.  linesToHtml linesToHtml :: [String] -> HtmlDD[]StringHtmlThis converts a string, but keeps spaces as non-line-breakable, and adds line breaks between each of the strings in the input list.  linesToHtml linesToHtml :: [String] -> HtmlED[]StringHtmlThis converts a string, but keeps spaces as non-line-breakable, and adds line breaks between each of the strings in the input list.  linesToHtml linesToHtml :: [String] -> HtmlEE[]StringHtmlThis converts a string, but keeps spaces as non-line-breakable, and adds line breaks between each of the strings in the input list. limelime :: StringFFStringlili :: Html -> HtmlFFHtmlHtmllili :: Html -> HtmlKG HtmlGGHtmlHtmllegendlegend :: Html -> HtmlGGHtmlHtmllegendlegend :: Html -> Html?H0HHtmlHtmllegendlegend :: Html -> HtmlHHHtmlHtmllanglang :: String -> HtmlAttrHHStringHtmlAttrlanglang :: String -> HtmlAttrKI6IStringHtmlAttrlanglang :: String -> HtmlAttrIIStringHtmlAttrlabellabel :: Html -> HtmlIIHtmlHtmllabellabel :: Html -> HtmlKJ HtmlJJHtmlHtmlkeyboardkeyboard :: Html -> HtmlJJHtmlHtmlkeyboardkeyboard :: Html -> HtmlMK>KHtmlHtmlkeyboardkeyboard :: Html -> HtmlKKHtmlHtmlitalicsitalics :: Html -> HtmlKKHtmlHtmlitalicsitalics :: Html -> HtmlQLBLHtmlHtmlitalicsitalics :: Html -> HtmlLLHtmlHtmlitagitag :: String -> HtmlLLStringHtmlDConstructs an element with a custom name, and without any children. itagitag :: String -> HtmlMMStringHtmlDConstructs an element with a custom name, and without any children. itagitag :: String -> Html+NNStringHtmlDConstructs an element with a custom name, and without any children. isNoHtmlisNoHtml :: Html -> BoolNNHtmlBool1Checks whether the given piece of HTML is empty. isNoHtmlisNoHtml :: Html -> BoolPOAOHtmlBool1Checks whether the given piece of HTML is empty. isNoHtmlisNoHtml :: Html -> BoolOOHtmlBool1Checks whether the given piece of HTML is empty. ismapismap :: HtmlAttrLPAPHtmlAttrismapismap :: HtmlAttrPPHtmlAttrismapismap :: HtmlAttrPPHtmlAttrisindexisindex :: HtmlQQHtmlintAttrintAttr :: String -> Int -> HtmlAttrQjQStringIntHtmlAttrintAttrintAttr :: String -> Int -> HtmlAttrQQStringIntHtmlAttrintAttrintAttr :: String -> Int -> HtmlAttrpRVRStringIntHtmlAttrinsins :: Html -> HtmlRRHtmlHtmlinsins :: Html -> Html SRHtmlHtmlinsins :: Html -> HtmlZSKSHtmlHtmlinputinput :: HtmlSSHtmlinputinput :: HtmlSSHtmlinputinput :: HtmlTTHtmlimageimage :: HtmlBT;THtmlimageimage :: Html|TuTHtmlimageimage :: HtmlTTHtmliframeiframe :: Html -> Html UTHtmlHtml identifier identifier :: String -> HtmlAttrrU]UStringHtmlAttr identifier identifier :: String -> HtmlAttrUUStringHtmlAttr identifier identifier :: String -> HtmlAttrBV-VStringHtmlAttr httpequiv httpequiv :: String -> HtmlAttrVVStringHtmlAttr httpequiv httpequiv :: String -> HtmlAttrWVStringHtmlAttr httpequiv httpequiv :: String -> HtmlAttrtW_WStringHtmlAttrHtmlTreedata HtmlTreeWThe basic idea is you render your structure in the form of this tree, and then use treeHtml to turn it into a Html object with the structure explicit.  HtmlTabledata  HtmlTableuXWe internally represent the Cell inside a Table with an object of the type
Int -> Int -> Html
When we render it later, we find out how many columns or rows this cell will span over, and can include the correct colspan/rowspan command.  HTMLTABLEclass  HTMLTABLE htYHtmlNode HtmlNode :: Html ->  [HtmlTree] -> Html -> HtmlTreeKZ"ZHtml[]HtmlTreeHtmlHtmlTreeHtmlLeafHtmlLeaf :: Html -> HtmlTreeZZHtmlHtmlTreehtmlAttrhtmlAttr :: String -> Html -> HtmlAttr%[ [StringHtmlHtmlAttrhtmlAttrhtmlAttr :: String -> Html -> HtmlAttr[[StringHtmlHtmlAttrhtmlAttrhtmlAttr :: String -> Html -> HtmlAttr\[StringHtmlHtmlAttrHtmlAttrdata HtmlAttrM\ Attributes with name and value. HtmlAttrdata HtmlAttr\ Attributes with name and value. HtmlAttrdata HtmlAttr\ Attributes with name and value. Htmldata HtmlA]Htmldata Htmlm]Htmldata Html]HTMLclass HTML a]HTML is the class of things that can be validly put inside an HTML tag. So this can be one or more Html elements, or a String, for example. HTMLclass HTML a^HTML is the class of things that can be validly put inside an HTML tag. So this can be one or more Html elements, or a String, for example. HTMLclass HTML aZ_HTML is the class of things that can be validly put inside an HTML tag. So this can be one or more Html elements, or a String, for example. hspacehspace :: Int -> HtmlAttrN`<`IntHtmlAttrhreflanghreflang :: String -> HtmlAttr``StringHtmlAttrhreflanghreflang :: String -> HtmlAttraaStringHtmlAttrhreflanghreflang :: String -> HtmlAttrzaeaStringHtmlAttrhrefhref :: String -> HtmlAttraaStringHtmlAttrhrefhref :: String -> HtmlAttr2bbStringHtmlAttrhrefhref :: String -> HtmlAttrbybStringHtmlAttrhrhr :: HtmlbbHtmlhrhr :: HtmlbbHtmlhrhr :: Html*c#cHtml hotLinkURL hotLinkURL :: HotLink -> URLcycHotLinkURL hotLinkURL hotLinkURL :: HotLink -> URLccHotLinkURL hotLinkURL hotLinkURL :: HotLink -> URLJd9dHotLinkURLhotLinkContentshotLinkContents :: HotLink -> HtmlddHotLinkHtmlhotLinkContentshotLinkContents :: HotLink -> Html"eeHotLinkHtmlhotLinkContentshotLinkContents :: HotLink -> Htmle|eHotLinkHtmlhotLinkAttributeshotLinkAttributes :: HotLink ->  [HtmlAttr]feHotLink[]HtmlAttrhotLinkAttributeshotLinkAttributes :: HotLink ->  [HtmlAttr]frfHotLink[]HtmlAttrhotLinkAttributeshotLinkAttributes :: HotLink ->  [HtmlAttr]gfHotLink[]HtmlAttrhotlinkhotlink :: URL -> Html -> HotLink~gggURLHtmlHotLinkhotlinkhotlink :: URL -> Html -> HotLinkggURLHtmlHotLinkhotlinkhotlink :: URL -> Html -> HotLink^hGhURLHtmlHotLinkHotLink HotLink :: URL -> Html ->  [HtmlAttr] -> HotLinkhhURLHtml[]HtmlAttrHotLinkHotLinkdata HotLink&iHotLink HotLink :: URL -> Html ->  [HtmlAttr] -> HotLinkiiURLHtml[]HtmlAttrHotLinkHotLinkdata HotLinkiHotLink HotLink :: URL -> Html ->  [HtmlAttr] -> HotLinkj]jURLHtml[]HtmlAttrHotLinkHotLinkdata HotLinkjhiddenhidden :: String -> String -> Html(kkStringStringHtmlhiddenhidden :: String -> String -> HtmlkkStringStringHtmlhiddenhidden :: String -> String -> Html lkStringStringHtmlheightheight :: String -> HtmlAttrllWlStringHtmlAttrheightheight :: String -> HtmlAttrllStringHtmlAttrheightheight :: String -> HtmlAttr,mmStringHtmlAttrheaderheader :: Html -> HtmlmqmHtmlHtmlheaderheader :: Html -> HtmlmmHtmlHtmlheaderheader :: Html -> Html(nnHtmlHtmlh6h6 :: Html -> HtmltnenHtmlHtmlh6h6 :: Html -> HtmlnnHtmlHtmlh6h6 :: Html -> Html onHtmlHtmlh5h5 :: Html -> HtmlXoIoHtmlHtmlh5h5 :: Html -> HtmlooHtmlHtmlh5h5 :: Html -> HtmlooHtmlHtmlh4h4 :: Html -> Html HtmlpypHtmlHtmlh4h4 :: Html -> HtmlppHtmlHtmlh3h3 :: Html -> Html qqHtmlHtmlh3h3 :: Html -> Htmllq]qHtmlHtmlh3h3 :: Html -> HtmlqqHtmlHtmlh2h2 :: Html -> HtmlrqHtmlHtmlh2h2 :: Html -> HtmlPrArHtmlHtmlh2h2 :: Html -> HtmlrrHtmlHtmlh1h1 :: Html -> HtmlrrHtmlHtmlh1h1 :: Html -> Html4s%sHtmlHtmlh1h1 :: Html -> HtmlsqsHtmlHtmlguigui :: String -> Html -> HtmlssStringHtmlHtmlguigui :: String -> Html -> HtmlPt9tStringHtmlHtmlguigui :: String -> Html -> HtmlttStringHtmlHtmlgreengreen :: StringttStringgraygray :: String2u)uStringfuchsiafuchsia :: StringtukuStringframesetframeset :: Html -> HtmluuHtmlHtmlframesetframeset :: Html -> Html$vvHtmlHtml frameborder frameborder :: Int -> HtmlAttrvvvIntHtmlAttr frameborder frameborder :: Int -> HtmlAttrvvIntHtmlAttrframeframe :: Html -> Html>w/wHtmlHtmlframeframe :: Html -> HtmlwwHtmlHtmlformform :: Html -> HtmlwwHtmlHtmlformform :: Html -> Html0x!xHtmlHtmlformform :: Html -> HtmlxqxHtmlHtmlfontfont :: Html -> HtmlxxHtmlHtmlfieldsetfieldset :: Html -> Html(yyHtmlHtmlfieldsetfieldset :: Html -> HtmlyqyHtmlHtmlfieldsetfieldset :: Html -> HtmlyyHtmlHtmlfaceface :: String -> HtmlAttr4zzStringHtmlAttrenctypeenctype :: String -> HtmlAttrzzStringHtmlAttrenctypeenctype :: String -> HtmlAttrzzStringHtmlAttrenctypeenctype :: String -> HtmlAttrZ{E{StringHtmlAttr emptyAttr emptyAttr :: String -> HtmlAttr{{StringHtmlAttr emptyAttr emptyAttr :: String -> HtmlAttr&||StringHtmlAttr emptyAttr emptyAttr :: String -> HtmlAttr|w|StringHtmlAttr emphasize emphasize :: Html -> Html||HtmlHtml emphasize emphasize :: Html -> Html@}1}HtmlHtml emphasize emphasize :: Html -> Html}}HtmlHtmldtermdterm :: Html -> Html}}HtmlHtmldtermdterm :: Html -> Html>~/~HtmlHtmldtermdterm :: Html -> Html~~HtmlHtmldlistdlist :: Html -> Html~~HtmlHtmldlistdlist :: Html -> Html4%HtmlHtmldlistdlist :: Html -> HtmlwHtmlHtmldisableddisabled :: HtmlAttrHtmlAttrdisableddisabled :: HtmlAttr HtmlAttrdisableddisabled :: HtmlAttr^SHtmlAttrdirdir :: Html -> HtmlHtmlHtmldeldel :: Html -> HtmlHtmlHtmldeldel :: Html -> HtmlH9HtmlHtmldeldel :: Html -> HtmlHtmlHtmldefListdefList :: (HTML a, HTML b) => [(a, b)] -> Html'HTMLaHTMLb[](,)abHtmldefListdefList :: (HTML a, HTML b) => [(a, b)] -> HtmlHTMLaHTMLb[](,)abHtmldefListdefList :: (HTML a, HTML b) => [(a, b)] -> HtmlIHTMLaHTMLb[](,)abHtmldefinedefine :: Html -> HtmlHtmlHtmldefinedefine :: Html -> HtmlHtmlHtmldefinedefine :: Html -> HtmlE6HtmlHtml debugHtml debugHtml ::  HTML a => a -> HtmlHTMLaaHtmlThis uses the above tree rendering function, and displays the Html as a tree structure, allowing debugging of what is actually getting produced. ddefddef :: Html -> HtmlHtmlHtmlddefddef :: Html -> Html߅ЅHtmlHtmlddefddef :: Html -> Html/ HtmlHtml copyright copyright :: HtmlqjHtmlCopyright sign.  copyright copyright :: HtmlÆHtmlCopyright sign.  copyright copyright :: HtmlHtmlCopyright sign. coordscoords :: String -> HtmlAttrpStringHtmlAttrcoordscoords :: String -> HtmlAttrЇStringHtmlAttrcoordscoords :: String -> HtmlAttrE0StringHtmlAttrcontentcontent :: String -> HtmlAttrStringHtmlAttrcontentcontent :: String -> HtmlAttr StringHtmlAttrcontentcontent :: String -> HtmlAttrkVStringHtmlAttr concatHtml concatHtml ::  HTML a => [a] -> HtmlމHTMLa[]aHtml concatHtml concatHtml ::  HTML a => [a] -> HtmlQ4HTMLa[]aHtml concatHtml concatHtml ::  HTML a => [a] -> HtmlĊHTMLa[]aHtmlcompactcompact :: HtmlAttr HtmlAttrcolspancolspan :: Int -> HtmlAttrfTIntHtmlAttrcolspancolspan :: Int -> HtmlAttr‹IntHtmlAttrcolspancolspan :: Int -> HtmlAttr IntHtmlAttrcolscols :: String -> HtmlAttrzeStringHtmlAttrcolscols :: String -> HtmlAttr֌StringHtmlAttrcolscols :: String -> HtmlAttr2StringHtmlAttrcolorcolor :: String -> HtmlAttr{StringHtmlAttrcolgroupcolgroup :: Html -> HtmlٍHtmlHtmlcolgroupcolgroup :: Html -> Html@1HtmlHtmlcolgroupcolgroup :: Html -> HtmlHtmlHtmlcolcol :: Html -> Html׎HtmlHtmlcolcol :: Html -> Html4%HtmlHtmlcolcol :: Html -> HtmlsHtmlHtmlcodebasecodebase :: String -> HtmlAttrяStringHtmlAttrcodebasecodebase :: String -> HtmlAttrJ5StringHtmlAttrcodebasecodebase :: String -> HtmlAttrStringHtmlAttrcodecode :: String -> HtmlAttr StringHtmlAttrclickmapclickmap :: String -> HtmlfUStringHtmlclickmapclickmap :: String -> Html‘StringHtmlclickmapclickmap :: String -> Html StringHtmlclearclear :: String -> HtmlAttr|gStringHtmlAttrcitecite :: Html -> Html̒HtmlHtmlcitecite :: Html -> Html HtmlHtmlcitecite :: Html -> Htmll]HtmlHtmlcheckedchecked :: HtmlAttrHtmlAttrcheckedchecked :: HtmlAttrHtmlAttrcheckedchecked :: HtmlAttr>3HtmlAttrcheckboxcheckbox :: String -> String -> HtmlStringStringHtmlcheckboxcheckbox :: String -> String -> Html*StringStringHtmlcheckboxcheckbox :: String -> String -> HtmlStringStringHtmlcentercenter :: Html -> HtmlHtmlHtml cellspacing cellspacing :: Int -> HtmlAttrXFIntHtmlAttr cellspacing cellspacing :: Int -> HtmlAttrIntHtmlAttr cellspacing cellspacing :: Int -> HtmlAttr IntHtmlAttr cellpadding cellpadding :: Int -> HtmlAttrrIntHtmlAttr cellpadding cellpadding :: Int -> HtmlAttr֗IntHtmlAttr cellpadding cellpadding :: Int -> HtmlAttrL:IntHtmlAttrcellcell :: HTMLTABLE ht => ht ->  HtmlTableØ HTMLTABLEhtht HtmlTablecaptioncaption :: Html -> Html HtmlHtmlcaptioncaption :: Html -> Htmlo`HtmlHtmlcaptioncaption :: Html -> HtmlřHtmlHtmlbuttonbutton :: Html -> Html HtmlHtmlbuttonbutton :: Html -> Htmlm^HtmlHtmlbuttonbutton :: Html -> HtmlHtmlHtmlbulletbullet :: HtmlHtmlbulletbullet :: Html92Htmlbulletbullet :: HtmlunHtmlbrbr :: HtmlHtmlbrbr :: Htmlݛ֛Htmlbrbr :: Html Html bordercolor bordercolor :: String -> HtmlAttr{fStringHtmlAttr bordercolor bordercolor :: String -> HtmlAttrМStringHtmlAttr bordercolor bordercolor :: String -> HtmlAttrO:StringHtmlAttrborderborder :: Int -> HtmlAttrIntHtmlAttrborderborder :: Int -> HtmlAttrIntHtmlAttrborderborder :: Int -> HtmlAttr]KIntHtmlAttrboldbold :: Html -> HtmlHtmlHtmlboldbold :: Html -> HtmlHtmlHtmlboldbold :: Html -> HtmlM>HtmlHtmlbodybody :: Html -> HtmlHtmlHtmlbodybody :: Html -> HtmlޟHtmlHtmlbodybody :: Html -> Html=.HtmlHtmlblueblue :: StringypString blockquote blockquote :: Html -> HtmlՠƠHtmlHtml blockquote blockquote :: Html -> Html1"HtmlHtml blockquote blockquote :: Html -> Html~HtmlHtmlblackblack :: Stringˡ¡Stringbigbig :: Html -> Html HtmlHtmlbigbig :: Html -> HtmlgXHtmlHtmlbigbig :: Html -> HtmlHtmlHtmlbgcolorbgcolor :: String -> HtmlAttrStringHtmlAttrbesidesbesides :: HTMLTABLE ht => [ht] ->  HtmlTables HTMLTABLEht[]ht HtmlTablebdobdo :: Html -> HtmlۣHtmlHtmlbdobdo :: Html -> Html8)HtmlHtmlbdobdo :: Html -> HtmlwHtmlHtmlbasefontbasefont :: HtmlƤHtmlbasebase :: String -> HtmlAttr" StringHtmlAttrbasebase :: String -> HtmlAttr~iStringHtmlAttrbasebase :: String -> HtmlAttrڥťStringHtmlAttr background background :: String -> HtmlAttrB-StringHtmlAttrareaarea :: HtmlzsHtmlareaarea :: HtmlHtmlareaarea :: HtmlHtmlarchivearchive :: String -> HtmlAttrL7StringHtmlAttrarchivearchive :: String -> HtmlAttrStringHtmlAttrarchivearchive :: String -> HtmlAttrStringHtmlAttraquaaqua :: StringLCStringappletapplet :: Html -> HtmlHtmlHtmlanchoranchor :: Html -> HtmlHtmlHtmlanchoranchor :: Html -> HtmlH9HtmlHtmlanchoranchor :: Html -> HtmlHtmlHtmlaltcodealtcode :: String -> HtmlAttrStringHtmlAttraltcodealtcode :: String -> HtmlAttr`KStringHtmlAttraltcodealtcode :: String -> HtmlAttrªStringHtmlAttraltalt :: String -> HtmlAttrStringHtmlAttraltalt :: String -> HtmlAttrvaStringHtmlAttraltalt :: String -> HtmlAttrЫStringHtmlAttralinkalink :: String -> HtmlAttr.StringHtmlAttralignalign :: String -> HtmlAttrwStringHtmlAttralignalign :: String -> HtmlAttrլStringHtmlAttralignalign :: String -> HtmlAttrH3StringHtmlAttrafileafile :: String -> HtmlStringHtmlafileafile :: String -> HtmlStringHtmlafileafile :: String -> HtmlJ9StringHtmladdressaddress :: Html -> HtmlHtmlHtmladdressaddress :: Html -> HtmlHtmlHtmladdressaddress :: Html -> HtmlL=HtmlHtmlADDATTRSclass ADDATTRS aADDATTRSclass ADDATTRS aADDATTRSclass ADDATTRS aactionaction :: String -> HtmlAttrQ<StringHtmlAttractionaction :: String -> HtmlAttrStringHtmlAttractionaction :: String -> HtmlAttrStringHtmlAttracronymacronym :: Html -> HtmlgXHtmlHtmlacronymacronym :: Html -> HtmlHtmlHtmlacronymacronym :: Html -> HtmlHtmlHtmlabovesaboves :: HTMLTABLE ht => [ht] ->  HtmlTablem HTMLTABLEht[]ht HtmlTableaboveabove :: "(HTMLTABLE ht1, HTMLTABLE ht2) => ht1 -> ht2 ->  HtmlTableJ HTMLTABLEht1 HTMLTABLEht2ht1ht2 HtmlTableabbrabbr :: Html -> HtmlHtmlHtmlabbrabbr :: Html -> Html۳HtmlHtmlabbrabbr :: Html -> Html:+HtmlHtml<< (<<) ::  HTML a => Html -> b -> a -> bHTMLaHtmlbab&Put something inside an HTML element. << (<<) ::  HTML a => Html -> b -> a -> bbEHTMLaHtmlbab&Put something inside an HTML element. << (<<) ::  HTML a => Html -> b -> a -> b HTMLaHtmlbab&Put something inside an HTML element. +++ (+++) :: (HTML a, HTML b) => a -> b -> HtmlHTMLaHTMLbabHtml]Create a piece of HTML which is the concatenation of two things which can be made into HTML. +++ (+++) :: (HTML a, HTML b) => a -> b -> HtmlwHTMLaHTMLbabHtml]Create a piece of HTML which is the concatenation of two things which can be made into HTML. +++ (+++) :: (HTML a, HTML b) => a -> b -> Html\HTMLaHTMLbabHtml]Create a piece of HTML which is the concatenation of two things which can be made into HTML. ! (!) :: ADDATTRS a => a ->  [HtmlAttr] -> ae=ADDATTRSaa[]HtmlAttra! (!) :: ADDATTRS a => a ->  [HtmlAttr] -> aĹADDATTRSaa[]HtmlAttra! (!) :: ADDATTRS a => a ->  [HtmlAttr] -> asKADDATTRSaa[]HtmlAttraxhtmlpackage xhtmlAn XHTML combinator library This package provides combinators for producing XHTML 1.0, including the Strict, Transitional and Frameset variants. XHtmlmodule Text.XHtml_An XHTML combinator library. Based on the original Text.Html library by Andy Gill. See http://www.cse.ogi.edu/~andy/html/intro.htm for an introduction to that library. This module re-exports Text.XHtml.Transitional, which produces XHTML 1.0 Transitional. Use Text.XHtml.Strict if you want XHTML 1.0 Strict, and Text.XHtml.Frameset if you want to produce XHTML 1.0 Frameset. See http://www.w3.org/TR/xhtml1/ for more information about XHTML 1.0.  Transitionalmodule Text.XHtml. Transitional!Produces XHTML 1.0 Transitional. Tablemodule Text.XHtml.Table߽Table combinators for XHTML. Strictmodule Text.XHtml.Strict5Produces XHTML 1.0 Strict. Framesetmodule Text.XHtml.FramesetProduces XHTML 1.0 Frameset. Debugmodule Text.XHtml.DebugEThis module contains functions for displaying HTML as a pretty tree. nYFTextXHtmlStrictTextXHtmlFramesetTextXHtmlDebugTextXHtmlTableTextXHtml TransitionalTextXHtmlxhtml 3000.2.0.0Fhttp://hackage.haskell.org/packages/archive/xhtml/3000.2.0.0/doc/html/@http://hackage.haskell.org/cgi-bin/hackage-scripts/package/xhtml