úÎa¾JÜÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq r s t u v w x y z { | } ~  € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒSafeL      Safe     Safe5Ž‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁSafe 9;<=DORTfSafe*+-69:;<=?ADNOQRT[cf(ÄWe use a variant of HOAS so it can be compile to DBI, which is more compositional (No Negative Occurence). It require explicit lifting of variables. Use lam to do automatic lifting of variables.> !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNjŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ !"#'+,*&.%$()-/0123456789:;<=>?@ABCDE>012#$%&'()*+,-./3456789:;<=!" >?NML@ABCDEKJIHGF& !"# $%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNSafe OPQRSTUVWsŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ !"#'+,*&.%$()-/0123456789:;<=>?@ABCDEOPQRSTUVW OPQRSTUVWOPQRSTUVWSafe XYZ[\]^_`sŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ !"#'+,*&.%$()-/0123456789:;<=>?@ABCDEXYZ[\]^_` XYZ[\]^_`XYZ[\]^_`SafeabcdnŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ !"#'+,*&.%$()-/0123456789:;<=>?@ABCDEabcdabcdabcdSafe efghijklmnopvŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ !"#'+,*&.%$()-/0123456789:;<=>?@ABCDEehjkifglmnop efghijklmnopefghijklmnop Safe qrstuvwxyz€Ž‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ !"#'+,*&.%$()-/0123456789:;<=>?@ABCDEehjkifglmnopqsuvtrwxyz qrstuvwxyzqrstuvwxyz SafeT{|}~€‚ƒ„…†‡ˆ‰‚Ž‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ !"#'+,*&.%$()-/0123456789:;<=>?@ABCDEabcdehjkifglmnop{|~}€‚‚‰ˆ‡†…„ƒ{|}~€ {|}~€‚ƒ„…†‡ˆ‰ SafeŠ‹lŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ !"#'+,*&.%$()-/0123456789:;<=>?@ABCDEЋЋЋ SafeŒŽmŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ !"#'+,*&.%$()-/0123456789:;<=>?@ABCDEŒŽŒŽŒŽ Safe{Ž‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ !"#'+,*&.%$()-/0123456789:;<=>?@ABCDEabcdehjkifglmnopSafe*+-69:;<=?ADLNOQRT[cf_‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîÔŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁ !"#'+,*&.%$()-/0123456789:;<=>?@ABCDEOPQRSTUVWXYZ[\]^_`abcdehjkifglmnopqsuvtrwxyzŠ‹ŒŽ‘’“•”–—˜ª™­š›£©¨¬§¦«œžŸ ¡¢¤¥®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇc˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­–—îíìëêé“”•”•‘’‘’èçæåäãâáàßÞÝÜÛÚÙØ×ÖÕÔÓÒÑÐÏÎÍÌËÊÉÈ®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇE‘’‘’“”•”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîSafe ïðñòóôõö÷øùúûïð ïðûúùø÷öõôóòñ ïðñòóôõö÷øùúûSafe[üýþÿ  üýþÿüýþÿ   üýþÿ  Safe-OT             Safe-AOT !"#$%&'()*+,  ! !,+*)('&%$#" !"#$%&'()*+,Safe-./0123456789:;<=>?@AB -./0123456012345B-./6A@?>=<;:987-./0123456789:;<=>?@ABSafeCDEFGHIJKLMNOPQCDEFCDEFQPONMLKJIHG CDEFGHIJKLMNOPQSafeRSTUVWXYZ[\]^_RSTRST_^]\[ZYXWVU RSTUVWXYZ[\]^_Safe-T`abcdefghijklm`ab`abmlkjihgfedc `abcdefghijklmSafe+9:;<=DNORT[anopqrnopqrnopqrnopqrSafe9;<= stuvwxyz{stuv stuv{zyxwstuvwxyz{SafeOTf|}~€‚ƒ„…†‡ˆ‰Š‹Œ|}~€‚ƒ„…†‡ˆ‰Š‹Œ}~€‚ƒ„|…†‡ˆ‰Š‹Œ|}~€‚ƒ„…†‡ˆ‰Š‹ŒÂ !"#$%%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š % ‹ & ) ' ( Œ Ž  ‘ ’ “ ” • – — ˜ ™ š › œ ž Ÿ   ¡ ¢ £ ¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-,../0123456789:;<==>?@ABCDEFGHIJKLMNOPQRRSTUVWXYZ[\]^_``abcdefghijklmmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘{’“”•–~—˜™—š›—˜œžŸ— ¡—˜¢—£¤—£¥—£¦ž§ž¨ž©—ª«¬­—˜®¬¯—°±¬²—³´—³µ—¶·—¶¸—¶¸—¶¹—¶¹—˜º—˜»¼½¾¼½¿¼½À¼½Á¼½Â¼½Ã¼½Ä¼½Å¼½Æ¼½Ç¼½È¼½É¼½Ê¼½Ë¼½Ì¼½Í¼½Í¼½Î¼½Ï¼½Ð¼½Ñ¼½Ò¼½Ó¼½ÔÕÖ×ÕØÙÚ1DeepDarkFantasy-0.2017.4.9-EqkqB8zfKgKGJ3bSSXg2TTDDF.Util DDF.Meta.DualDDF.DiffDDF.DBI DDF.Double DDF.Float DDF.OptionDDF.ProdDDF.DualDDF.MapDDF.CharDDF.Bool DDF.BimapDDF.Lang DDF.CombineDDF.Eval DDF.GWDiffDDF.ImpWDDF.ShowDDF.Size DDF.UnHOAS DDF.WDiffDDF.Poly DDF.WithDiffDDF.XorDDF.ImportMeta RandRange randRangevarsisSquare$fRandRange(,)$fRandRangeFloat$fRandRangeDouble $fRandRange() $fRandom(,) $fRandom()DualrunDualdualOrigdualDiffmkDualDiffWeight weightConProdConprodConNTSconvSNTconv BiFunctorbimapMonadbindjoin ApplicativepureapFunctormapDBIzsabsapphoascomflipidconstscombduplet_Monoidzeroplusconst1map2returnbind2map1join1bimap2bimap3flip1flip2let_2app3com2lamlam2lam3app2plus2noEnv$fProdConShowlr$fProdConRandRangelr$fProdConRandomlr $fWeight(,)$fWeightDouble $fWeight() $fNTkkreprxx $fNTkkreprlr$fNTSTYPETYPEreprl(,)Doubledouble doubleZero doubleOne doublePlus doubleMinus doubleMult doubleDivide doubleExpFloatfloat floatZerofloatOne floatPlus floatMinus floatMult floatDividefloatExpOptionnothingjust optionMatchProdmkProdzrofstswapcurryuncurryzro1fst1mkProd1mkProd2curry1dualdual1mkDual2 dualOrig1 dualDiff1Mapempty singletonlookupaltermapMapOrddiffOrd $fOrdFloat $fOrdDouble $fOrdDual $fOrdDual0$fEqDual$fOrd[]$fOrd()CharcharBoolbooliteBimapVectormultdivideGroupinvertminusReifyreifyLangfixleftrightsumMatchunitexfalsoioRetioBindioMapnilcons listMatch listAppendwriter runWriter float2Double double2Float undefinedstaterunStateputStrLncons2 listMatch2fix1fix2uncurry1 optionMatch2 optionMatch3mult1mult2divide2invert1minus1divide1reciprecip1writer1 runWriter1ioBind2minus2 float2Double1 doubleExp1 floatExp1 sumMatch2state1 runState1 runState2 $fMonadrMaybe$fApplicativeTYPErMaybe$fFunctorTYPErMaybe $fMonadrIO$fApplicativeTYPErIO$fFunctorTYPErIO$fMonadrStateT$fApplicativeTYPErStateT$fFunctorTYPErStateT$fMonadrWriterT$fApplicativeTYPErWriterT$fFunctorTYPErMap$fFunctorTYPErWriterT$fBiFunctorTYPErDual$fBiFunctorTYPEr(,)$fBiFunctorTYPErEither$fFunctorTYPEr[]$fMonoidTYPEr[] $fVectorr(->) $fGroupr(->)$fMonoidTYPEr(->)$fVectorrepr(,)$fGrouprepr(,)$fMonoidTYPErepr(,)$fVectorrFloat $fGrouprFloat$fMonoidTYPErFloat$fVectorrDouble$fGrouprDouble$fMonoidTYPErDouble $fVectorr() $fGroupr()$fMonoidTYPEr()$fProdConVectorlr$fProdConReifylr$fProdConMonoidlr$fReifyTYPErepr(,)$fReifyTYPErDouble$fReifyTYPEr()Combine $fLangCombine $fDualCombine$fBimapCombine $fMapCombine$fOptionCombine$fFloatCombine$fDoubleCombine $fProdCombine $fCharCombine $fBoolCombine $fDBICombineEvalrunEvalcomb $fLangEval $fDualEval $fBimapEval $fMapEval $fOptionEval $fFloatEval $fDoubleEval $fProdEval $fCharEval $fBoolEval $fDBIEvalGWDiff runGWDiff $fLangGWDiff $fBimapGWDiff $fMapGWDiff$fOptionGWDiff $fFloatGWDiff$fDoubleGWDiff $fDualGWDiff $fProdGWDiff $fCharGWDiff $fBoolGWDiff $fDBIGWDiffRunImpWRImpWNoImpWRunImpWrunImpWrunImpW2RunImpWRrunImpWR2RunImpW $fLangImpW $fDualImpW $fBimapImpW $fMapImpW $fOptionImpW $fFloatImpW $fDoubleImpW $fProdImpW $fCharImpW $fBoolImpW $fDBIImpWShowrunShowASTLeafAppLamappASTlamASTname $fLangShow $fDualShow $fBimapShow $fMapShow $fOptionShow $fFloatShow $fDoubleShow $fProdShow $fCharShow $fBoolShow $fDBIShow $fShowASTSizerunSizeone $fLangSize $fBimapSize $fDualSize $fProdSize $fMapSize $fFloatSize $fDoubleSize $fOptionSize $fCharSize $fBoolSize $fDBISizeUnHOAS runUnHOAS $fLangUnHOAS $fDualUnHOAS $fBimapUnHOAS $fMapUnHOAS$fOptionUnHOAS $fFloatUnHOAS$fDoubleUnHOAS $fProdUnHOAS $fCharUnHOAS $fBoolUnHOAS $fDBIUnHOASWDiffrunWDiff $fLangWDiff $fBimapWDiff $fMapWDiff $fOptionWDiff $fFloatWDiff $fDoubleWDiff $fDualWDiff $fProdWDiff $fCharWDiff $fBoolWDiff $fDBIWDiffpolyl2compsolvemainWithDiffwithDiff withDiff1 selfWithDiff$fWithDiffrepr(,)$fWithDiffrFloat$fWithDiffrDouble $fWithDiffr()$fProdConWithDifflrXOR doubleWeightsigmoidsigmoid1scaleAddwithBiasneuronneuron1hiddenxorNetl22evaldatasetlossfindXorbaseGHC.Base++ System.IOprint$ghc-prim GHC.Classes==GHC.Real/>>=GHC.Num*+-<<=compareGHC.Showshow GHC.TypesIntMaybeIO Data.EitherEither Constraint Data.VoidabsurdVoid Data.Proxy asProxyTypeOfProxyKProxy.String(constraints-0.9.1-ADQinFPdVCH5UvxP4ivxFhData.Constraint unmapDictmapDictbottomtop&&&contract strengthen2 strengthen1weaken2weaken1***refltrans\\withDictDict:-SubBottomClasscls:=>instransformers-0.5.2.0Control.Monad.Trans.State.LazyStateControl.Monad.Trans.Writer.LazyWriter