úÎ.T$eŽ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ĄąŁ€„Чš©Ș«Ź­źŻ°±Čł Safe-Inferred‚  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰‚  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰‚ˆ‰†‡„…‚ƒ€~|}z{xyvwturspqnolmjkhifgdebc`a^_\]Z[XYVWTURSPQNOLMJKHIFGDEBC@A>?<=:;8967452301./,-*+()&'$%"# !  A    !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰ Safe-Inferred6=JK’IExplanation of all these operators. They are basically an assortment of Ž and ”I functions. I.e., '[1,2,3] *> (+1)' === map (+1) [1,2,3]' The asterisk ¶ indicates where the Ž, ”Ú is. And the greather than (smaller than) indicates in which direction the argument is going. So you could also have '[(+1),(+2),(+3)] *< 1 === map ($ 1) [(+1),(+2),(+3)]'. If there are asterisks on both sides the Ž has to be ”Š‹ŒŽ‘’“”•–—˜™šŠ‹ŒŽ‘’“”•–—˜™šŽ‹ŒŠ‘’“”•–—˜™šŠ‹ŒŽ‘’“”•–—˜™š ‹ Œ ސ’“”•–—˜™šNone 246=FJK›takes lower case fooR and makes 'type Foo = Method (T_f,T_o,T_o)' 'foo = Method (T_f,T_o,T_o) :: Foo'·-returns (typeName, variableNames, and fields)œvtakes a Type with one record constructor 'setGetFunctional ''Foo' and produces set and get instances for all fieldsž implements œ or  depending on the first argument›č·șœž›œ›œ›č·șœžNone(02346=JK$žŸ ĄąŁ€„Чš©»ȘŒ«œŸżŹ­źŻ°±ČłÀžŸ ĄąŁ€„Чš©­+Ł€„žŸ ĄąŹŹŹŹŹŹŹŹŹŹŹŹŹŹ§š«Ș©ŠłČ±°Żź­žŸ ĄąŁ€„Чš©»ȘŒ«œŸżŹ­źŻ°±ČłÀNone6=KÁŠ‹ŒŽ‘’“”•–—˜™š›œÁÂĂ       !!""##$$%%&&''(())**++,,--..//00112233445566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOPPQRSTUVWXYZ[\]^_`abbcdeffghijklmnopqrstuvwxvyzv{|}~€‚ƒ„…†‡ˆ‰ Object-1.0Object.ExampleObject.Letters Object.TypesObject.TemplatesObjectBar_barBaz_bazBlub_blubSize_sizeT_'T__T_9T_8T_7T_6T_5T_4T_3T_2T_1T_0T_ZT_YT_XT_WT_VT_UT_TT_ST_RT_QT_PT_OT_NT_MT_LT_KT_JT_IT_HT_GT_FT_ET_DT_CT_BT_AT_zT_yT_xT_wT_vT_uT_tT_sT_rT_qT_pT_oT_nT_mT_lT_kT_jT_iT_hT_gT_fT_eT_dT_cT_bT_aMethod MethodOutput:=Action.Output%...*>*<*.>*<*.**>**<**.*makeName makeObjectmakeObjectFlexibleFoo_bar_baz_blubSimple_simple OutputMapSimple_simple fooAndSimple$fActionSimple:=$fActionSimpleMethodTFCo:R:MethodOutputFoo:= mapExample $fActionMapk' $fActionMap[]$fActionMapMaybe $fActionMap:=$fActionMap[]0$fActionMapMethodbaseGHC.BaseFunctorControl.Applicative ApplicativeGHC.Num*getInfo makeObject' makeName' getFieldNameTFCo:R:OutputMapactionTFCo:R:MethodOutputSimple:=TFCo:R:MethodOutputSimpleMethodTFCo:R:OutputSimple:=TFCo:R:OutputSimpleMethodTFCo:R:MethodOutputMapMethod$fAction(->)(->)TFCo:R:Output(->)(->)