var init = function (pglobal) { //////////////////////////////////////////////////////////////////////////////// // Importing external names //////////////////////////////////////////////////////////////////////////////// var object = function (o) { var F = function () { }; F.prototype = o; return new F(); }; var global = object(pglobal); var localStorage = object(pglobal.localStorage); global.Prims_mkPair = pglobal.mkPair; global.Prims_app = pglobal.app; global.Prims_fstPair = pglobal.fstPair; global.Prims_sndPair = pglobal.sndPair; global.Prims_failwith = pglobal.failwith; global.Prims_deleteFromWindow = pglobal.deleteFromWindow; global.Prims_exportToWindow = pglobal.exportToWindow; global.Prims_around = pglobal.around; global.Prims_around2 = pglobal.around2; global.Prims_random_string = pglobal.random_string; global.Prims_initRef = pglobal.initRef; global.Prims_getRef = pglobal.getRef; global.Prims_setRef = pglobal.setRef; global.Prims_body = function () { return document.body.apply(document, arguments); }; global.Prims_raw_getInnerHTML = pglobal.raw_getInnerHTML; global.Prims_raw_setInnerHTML = pglobal.raw_setInnerHTML; global.Prims_alert = pglobal.alert; global.Prims_jsopen = pglobal.jsopen; global.Prims_setInterval = pglobal.setInterval; global.Prims_setTimeout = pglobal.setTimeout; global.Prims_postMessage = pglobal.postMessage; global.Prims_createElement = pglobal.createElement; global.Prims_getElementNodeName = pglobal.getElementNodeName; global.Prims_setItem = function () { return localStorage.setItem.apply(localStorage, arguments); }; global.Prims_getItem = function () { return localStorage.getItem.apply(localStorage, arguments); }; global.Prims_removeItem = function () { return localStorage.removeItem.apply(localStorage, arguments); }; global.Prims_clear = function () { return localStorage.clear.apply(localStorage, arguments); }; global.Prims_key = function () { return localStorage.key.apply(localStorage, arguments); }; global.Prims_length = function () { return localStorage.length.apply(localStorage, arguments); }; //////////////////////////////////////////////////////////////////////////////// // Module Prims //////////////////////////////////////////////////////////////////////////////// var x_58_1 = function (x_58) { return x_58; }; var x_61_1 = function (x_61) { return x_61; }; var x_69_1 = function (x_69) { return x_58_1(x_69); }; var x_76_4 = function (x_76) { return function (x_76_1) { return (x_76_3=(x_76_1),((x_76_3.tag === 493674181) ? {"tag":493674181} : ((x_76_3.tag === 493675111) ? (x_78=(x_76_3["0"]),(x_78_2=(x_76(x_78)),{"tag":493675111, "0":x_78_2})) : (x_0_2779=(function () { throw "error"; }),x_0_2779)))); }; }; var x_95_4 = function (x_95) { return function (x_95_1) { return (x_95_3=(x_95),(x_95_3 ? true : x_95_1)); }; }; var x_100 = function (x_100_1) { return function (x_100_2) { return (x_100_4=(x_100_2),((x_100_4.tag === -1411925538) ? false : ((x_100_4.tag === 399566250) ? (x_102=(x_100_4["0"]),(x_102_1=(x_100_4["1"]),(x_102_4=(equalML(x_100_1)(x_102)),(x_102_5=(x_100(x_100_1)(x_102_1)),x_95_4(x_102_4)(x_102_5))))) : (x_0_2780=(function () { throw "error"; }),x_0_2780)))); }; }; var x_105 = function (x_105_1) { return function (x_105_2) { return function (x_105_3) { return (x_105_5=(x_105_3),((x_105_5.tag === -1411925538) ? x_105_2 : ((x_105_5.tag === 399566250) ? (x_107=(x_105_5["0"]),(x_107_1=(x_105_5["1"]),(x_107_4=(x_105_1(x_105_2)(x_107)),x_105(x_105_1)(x_107_4)(x_107_1)))) : (x_0_2781=(function () { throw "error"; }),x_0_2781)))); }; }; }; var x_110 = function (x_110_1) { return function (x_110_2) { return function (x_110_3) { return (x_110_5=(x_110_2),((x_110_5.tag === -1411925538) ? x_110_3 : ((x_110_5.tag === 399566250) ? (x_112=(x_110_5["0"]),(x_112_1=(x_110_5["1"]),(x_112_4=(x_110_1(x_112)(x_110_3)),x_110(x_110_1)(x_112_1)(x_112_4)))) : (x_0_2782=(function () { throw "error"; }),x_0_2782)))); }; }; }; var x_115 = function (x_115_1) { return function (x_115_2) { return (x_115_4=(x_115_2),((x_115_4.tag === -1411925538) ? undefined : ((x_115_4.tag === 399566250) ? (x_117=(x_115_4["0"]),(x_117_1=(x_115_4["1"]),(x_117_5=(x_115_1(x_117)),x_115(x_115_1)(x_117_1)))) : (x_0_2783=(function () { throw "error"; }),x_0_2783)))); }; }; var x_130 = function (x_130_1) { return function (x_130_2) { return (x_130_4=(x_130_1),((x_130_4.tag === -1411925538) ? x_130_2 : ((x_130_4.tag === 399566250) ? (x_132=(x_130_4["0"]),(x_132_1=(x_130_4["1"]),(x_132_4=(x_130(x_132_1)(x_130_2)),{"tag":399566250, "0":x_132, "1":x_132_4}))) : (x_0_2784=(function () { throw "error"; }),x_0_2784)))); }; }; var x_135 = function (x_135_1) { return function (x_135_2) { return (x_135_4=(x_135_2),((x_135_4.tag === -1411925538) ? {"tag":-1411925538} : ((x_135_4.tag === 399566250) ? (x_137=(x_135_4["0"]),(x_137_1=(x_135_4["1"]),(x_137_4=(x_135_1(x_137)),(x_137_5=(x_135(x_135_1)(x_137_1)),x_130(x_137_4)(x_137_5))))) : (x_0_2785=(function () { throw "error"; }),x_0_2785)))); }; }; var x_213 = function (x_213_1) { return function (x_213_2) { return (x_213_4=(x_213_2),((x_213_4.tag === -1411925538) ? {"tag":-1411925538} : ((x_213_4.tag === 399566250) ? (x_215=(x_213_4["0"]),(x_215_1=(x_213_4["1"]),(x_216=(x_213_1(x_215)),(x_217_1=(global.Prims_alert(x_215)),(x_218_1=(global.Prims_alert("mapped to")),(x_219_1=(global.Prims_alert(x_216)),(x_220=(x_213(x_213_1)(x_215_1)),{"tag":399566250, "0":x_216, "1":x_220}))))))) : (x_0_2786=(function () { throw "error"; }),x_0_2786)))); }; }; var Prims = {"id":x_58_1, "idprop":x_61_1, "idint":x_69_1, "bind_opt":x_76_4, "logor":x_95_4, "elem":x_100, "fold_left":x_105, "fold_right":x_110, "iterate":x_115, "append":x_130, "concatMap":x_135, "map":x_213}; //////////////////////////////////////////////////////////////////////////////// // Wrappers for datatypes //////////////////////////////////////////////////////////////////////////////// var down_Prims_option = function (down_0, up_0) { return function (x) { if ((x.tag === 493675111)) { return {"tag":493675111, "0":down_0(x["0"])}; } else { if ((x.tag === 493674181)) { return {"tag":493674181}; } else { throw "Expected type Prims.option"; }; }; }; }; var up_Prims_option = function (down_0, up_0) { return function (x) { if ((x.tag === 493675111)) { return {"tag":493675111, "0":up_0(x["0"])}; } else { if ((x.tag === 493674181)) { return {"tag":493674181}; } else { throw "Expected type Prims.option"; }; }; }; }; var down_Prims_list = function (down_0, up_0) { return function (x) { if ((x.tag === 399566250)) { return {"tag":399566250, "0":down_0(x["0"]), "1":down_Prims_list(down_0, up_0)(x["1"])}; } else { if ((x.tag === -1411925538)) { return {"tag":-1411925538}; } else { throw "Expected type Prims.list"; }; }; }; }; var up_Prims_list = function (down_0, up_0) { return function (x) { if ((x.tag === 399566250)) { return {"tag":399566250, "0":up_0(x["0"]), "1":up_Prims_list(down_0, up_0)(x["1"])}; } else { if ((x.tag === -1411925538)) { return {"tag":-1411925538}; } else { throw "Expected type Prims.list"; }; }; }; }; //////////////////////////////////////////////////////////////////////////////// // Wrappers from runtime types //////////////////////////////////////////////////////////////////////////////// var wrappers_for_t = function (t) { var x_0_2787 = t["tag"]; if ((x_0_2787 === -218786791)) { var x_0_2788 = function (x) { return x; }; var x_0_2789 = function (x_0_2790) { return undefined; }; return {"0":x_0_2788, "1":x_0_2789}; } else { if ((x_0_2787 === -1878979435)) { var x_0_2791 = function (x) { return x; }; var x_0_2792 = function (x_0_2793) { if (x_0_2793) { return true; } else { return false; }; }; return {"0":x_0_2791, "1":x_0_2792}; } else { if ((x_0_2787 === -1815210956)) { var x_0_2794 = function (x) { return x; }; var x_0_2795 = function (x_0_2796) { if (((+ x_0_2796) === x_0_2796)) { return x_0_2796; } else { throw "Expected an int"; }; }; return {"0":x_0_2794, "1":x_0_2795}; } else { if ((x_0_2787 === -1042444058)) { var x_0_2797 = function (x) { return x; }; var x_0_2798 = function (x_0_2799) { if (((typeof x_0_2799) === "string")) { return x_0_2799; } else { throw "Expected a string"; }; }; return {"0":x_0_2797, "1":x_0_2798}; } else { if ((x_0_2787 === -2107945641)) { var x_0_2800 = wrappers_for_t(t["0"]); var x_0_2801 = wrappers_for_t(t["1"]); var x_0_2804 = function (x_0_2806) { return function (x_0_2807) { return x_0_2801["0"](x_0_2806(x_0_2800["1"](x_0_2807))); }; }; var x_0_2805 = function (x_0_2808) { return function (x_0_2809) { var x_0_2810 = x_0_2800["0"](x_0_2809); return function () { arguments[callee][caller] = undefined; arguments[caller][arguments] = undefined; return x_0_2801["1"](x_0_2808(x_0_2810)); }; }; }; return {"0":x_0_2804, "1":x_0_2805}; } else { if ((x_0_2787 === 1783736847)) { var x_0_2812 = t["constructor"]; if ((x_0_2812 === Prims_option)) { var x_0_2813 = wrappers_for_t(t["0"]); var x_0_2814 = down_Prims_option(x_0_2813["0"], x_0_2813["1"]); var x_0_2815 = up_Prims_option(x_0_2813["0"], x_0_2813["1"]); return {"0":x_0_2814, "1":x_0_2815}; } else { if ((x_0_2812 === Prims_list)) { var x_0_2816 = wrappers_for_t(t["0"]); var x_0_2817 = down_Prims_list(x_0_2816["0"], x_0_2816["1"]); var x_0_2818 = up_Prims_list(x_0_2816["0"], x_0_2816["1"]); return {"0":x_0_2817, "1":x_0_2818}; } else { throw "Unexpected type constructor"; }; }; } else { throw "Unexpected type"; }; }; }; }; }; }; }; //////////////////////////////////////////////////////////////////////////////// // Exporting wrapped modules //////////////////////////////////////////////////////////////////////////////// var x_0_2819 = function (x_0_2820) { return function (x_0_2821) { var x_0_2824 = wrappers_for_t(x_0_2821); var x_0_2822 = x_0_2824[0]; var x_0_2823 = x_0_2824[1]; return function (x_0_2825) { return function (x_0_2826) { return x_0_2822(x_0_2825(x_0_2823(x_0_2826))); }; }(x_0_2820); }; }(Prims.id); var x_0_2827 = function (x_0_2828) { return function (x_0_2829) { var x_0_2832 = wrappers_for_t(x_0_2829); var x_0_2830 = x_0_2832[0]; var x_0_2831 = x_0_2832[1]; return function (x_0_2833) { return function (x_0_2834) { return x_0_2830(x_0_2833(x_0_2831(x_0_2834))); }; }(x_0_2828); }; }(Prims.idprop); var x_0_2835 = function (x_0_2836) { return function (x_0_2837) { return function (x) { return x; }(x_0_2836(function (x_0_2838) { if (((+ x_0_2838) === x_0_2838)) { return x_0_2838; } else { throw "Expected an int"; }; }(x_0_2837))); }; }(Prims.idint); var x_0_2839 = function (x_0_2840) { return function (x_0_2841) { var x_0_2844 = wrappers_for_t(x_0_2841); var x_0_2842 = x_0_2844[0]; var x_0_2843 = x_0_2844[1]; return function (x_0_2845) { return function (x_0_2846) { var x_0_2849 = wrappers_for_t(x_0_2846); var x_0_2847 = x_0_2849[0]; var x_0_2848 = x_0_2849[1]; return function (x_0_2850) { return function (x_0_2851) { return function (x_0_2852) { return function (x_0_2853) { return down_Prims_option(x_0_2847, x_0_2848)(x_0_2852(up_Prims_option(x_0_2842, x_0_2843)(x_0_2853))); }; }(x_0_2850(function (x_0_2854) { return function (x_0_2855) { var x_0_2856 = x_0_2842(x_0_2855); return function () { arguments[callee][caller] = undefined; arguments[caller][arguments] = undefined; return x_0_2848(x_0_2854(x_0_2856)); }; }; }(x_0_2851))); }; }(x_0_2845); }; }(x_0_2840); }; }(Prims.bind_opt); var x_0_2858 = function (x_0_2859) { return function (x_0_2860) { return function (x_0_2861) { return function (x_0_2862) { return function (x) { return x; }(x_0_2861(function (x_0_2863) { if (x_0_2863) { return true; } else { return false; }; }(x_0_2862))); }; }(x_0_2859(function (x_0_2864) { if (x_0_2864) { return true; } else { return false; }; }(x_0_2860))); }; }(Prims.logor); var x_0_2865 = function (x_0_2866) { return function (x_0_2867) { var x_0_2870 = wrappers_for_t(x_0_2867); var x_0_2868 = x_0_2870[0]; var x_0_2869 = x_0_2870[1]; return function (x_0_2871) { return function (x_0_2872) { return function (x_0_2873) { return function (x_0_2874) { return function (x) { return x; }(x_0_2873(up_Prims_list(x_0_2868, x_0_2869)(x_0_2874))); }; }(x_0_2871(x_0_2869(x_0_2872))); }; }(x_0_2866); }; }(Prims.elem); var x_0_2875 = function (x_0_2876) { return function (x_0_2877) { var x_0_2880 = wrappers_for_t(x_0_2877); var x_0_2878 = x_0_2880[0]; var x_0_2879 = x_0_2880[1]; return function (x_0_2881) { return function (x_0_2882) { var x_0_2885 = wrappers_for_t(x_0_2882); var x_0_2883 = x_0_2885[0]; var x_0_2884 = x_0_2885[1]; return function (x_0_2886) { return function (x_0_2887) { return function (x_0_2888) { return function (x_0_2889) { return function (x_0_2890) { return function (x_0_2891) { return x_0_2878(x_0_2890(up_Prims_list(x_0_2883, x_0_2884)(x_0_2891))); }; }(x_0_2888(x_0_2879(x_0_2889))); }; }(x_0_2886(function (x_0_2892) { return function (x_0_2893) { var x_0_2894 = x_0_2878(x_0_2893); return function () { arguments[callee][caller] = undefined; arguments[caller][arguments] = undefined; return function (x_0_2896) { return function (x_0_2897) { var x_0_2898 = x_0_2883(x_0_2897); return function () { arguments[callee][caller] = undefined; arguments[caller][arguments] = undefined; return x_0_2879(x_0_2896(x_0_2898)); }; }; }(x_0_2892(x_0_2894)); }; }; }(x_0_2887))); }; }(x_0_2881); }; }(x_0_2876); }; }(Prims.fold_left); var x_0_2900 = function (x_0_2901) { return function (x_0_2902) { var x_0_2905 = wrappers_for_t(x_0_2902); var x_0_2903 = x_0_2905[0]; var x_0_2904 = x_0_2905[1]; return function (x_0_2906) { return function (x_0_2907) { var x_0_2910 = wrappers_for_t(x_0_2907); var x_0_2908 = x_0_2910[0]; var x_0_2909 = x_0_2910[1]; return function (x_0_2911) { return function (x_0_2912) { return function (x_0_2913) { return function (x_0_2914) { return function (x_0_2915) { return function (x_0_2916) { return x_0_2908(x_0_2915(x_0_2909(x_0_2916))); }; }(x_0_2913(up_Prims_list(x_0_2903, x_0_2904)(x_0_2914))); }; }(x_0_2911(function (x_0_2917) { return function (x_0_2918) { var x_0_2919 = x_0_2903(x_0_2918); return function () { arguments[callee][caller] = undefined; arguments[caller][arguments] = undefined; return function (x_0_2921) { return function (x_0_2922) { var x_0_2923 = x_0_2908(x_0_2922); return function () { arguments[callee][caller] = undefined; arguments[caller][arguments] = undefined; return x_0_2909(x_0_2921(x_0_2923)); }; }; }(x_0_2917(x_0_2919)); }; }; }(x_0_2912))); }; }(x_0_2906); }; }(x_0_2901); }; }(Prims.fold_right); var x_0_2925 = function (x_0_2926) { return function (x_0_2927) { var x_0_2930 = wrappers_for_t(x_0_2927); var x_0_2928 = x_0_2930[0]; var x_0_2929 = x_0_2930[1]; return function (x_0_2931) { return function (x_0_2932) { return function (x_0_2933) { return function (x_0_2934) { return function (x) { return x; }(x_0_2933(up_Prims_list(x_0_2928, x_0_2929)(x_0_2934))); }; }(x_0_2931(function (x_0_2935) { return function (x_0_2936) { var x_0_2937 = x_0_2928(x_0_2936); return function () { arguments[callee][caller] = undefined; arguments[caller][arguments] = undefined; return function (x_0_2939) { return undefined; }(x_0_2935(x_0_2937)); }; }; }(x_0_2932))); }; }(x_0_2926); }; }(Prims.iterate); var x_0_2940 = function (x_0_2941) { return function (x_0_2942) { var x_0_2945 = wrappers_for_t(x_0_2942); var x_0_2943 = x_0_2945[0]; var x_0_2944 = x_0_2945[1]; return function (x_0_2946) { return function (x_0_2947) { return function (x_0_2948) { return function (x_0_2949) { return down_Prims_list(x_0_2943, x_0_2944)(x_0_2948(up_Prims_list(x_0_2943, x_0_2944)(x_0_2949))); }; }(x_0_2946(up_Prims_list(x_0_2943, x_0_2944)(x_0_2947))); }; }(x_0_2941); }; }(Prims.append); var x_0_2950 = function (x_0_2951) { return function (x_0_2952) { var x_0_2955 = wrappers_for_t(x_0_2952); var x_0_2953 = x_0_2955[0]; var x_0_2954 = x_0_2955[1]; return function (x_0_2956) { return function (x_0_2957) { var x_0_2960 = wrappers_for_t(x_0_2957); var x_0_2958 = x_0_2960[0]; var x_0_2959 = x_0_2960[1]; return function (x_0_2961) { return function (x_0_2962) { return function (x_0_2963) { return function (x_0_2964) { return down_Prims_list(x_0_2958, x_0_2959)(x_0_2963(up_Prims_list(x_0_2953, x_0_2954)(x_0_2964))); }; }(x_0_2961(function (x_0_2965) { return function (x_0_2966) { var x_0_2967 = x_0_2953(x_0_2966); return function () { arguments[callee][caller] = undefined; arguments[caller][arguments] = undefined; return up_Prims_list(x_0_2958, x_0_2959)(x_0_2965(x_0_2967)); }; }; }(x_0_2962))); }; }(x_0_2956); }; }(x_0_2951); }; }(Prims.concatMap); var x_0_2969 = function (x_0_2970) { return function (x_0_2971) { var x_0_2974 = wrappers_for_t(x_0_2971); var x_0_2972 = x_0_2974[0]; var x_0_2973 = x_0_2974[1]; return function (x_0_2975) { return function (x_0_2976) { var x_0_2979 = wrappers_for_t(x_0_2976); var x_0_2977 = x_0_2979[0]; var x_0_2978 = x_0_2979[1]; return function (x_0_2980) { return function (x_0_2981) { return function (x_0_2982) { return function (x_0_2983) { return down_Prims_list(x_0_2977, x_0_2978)(x_0_2982(up_Prims_list(x_0_2972, x_0_2973)(x_0_2983))); }; }(x_0_2980(function (x_0_2984) { return function (x_0_2985) { var x_0_2986 = x_0_2972(x_0_2985); return function () { arguments[callee][caller] = undefined; arguments[caller][arguments] = undefined; return x_0_2978(x_0_2984(x_0_2986)); }; }; }(x_0_2981))); }; }(x_0_2975); }; }(x_0_2970); }; }(Prims.map); pglobal.Prims = {"map":x_0_2969, "concatMap":x_0_2950, "append":x_0_2940, "iterate":x_0_2925, "fold_right":x_0_2900, "fold_left":x_0_2875, "elem":x_0_2865, "logor":x_0_2858, "bind_opt":x_0_2839, "idint":x_0_2835, "idprop":x_0_2827, "id":x_0_2819}; }; init(window); init = undefined;