/* Generated by the Nim Compiler v0.14.0 */ /* (c) 2016 Andreas Rumpf */ var framePtr = null; var excHandler = 0; var lastJSError = null; if (typeof Int8Array === 'undefined') Int8Array = Array; if (typeof Int16Array === 'undefined') Int16Array = Array; if (typeof Int32Array === 'undefined') Int32Array = Array; if (typeof Uint8Array === 'undefined') Uint8Array = Array; if (typeof Uint16Array === 'undefined') Uint16Array = Array; if (typeof Uint32Array === 'undefined') Uint32Array = Array; if (typeof Float32Array === 'undefined') Float32Array = Array; if (typeof Float64Array === 'undefined') Float64Array = Array; var NTI3238 = {size: 0, kind: 17, base: null, node: null, finalizer: null}; var NTI3208 = {size: 0, kind: 17, base: null, node: null, finalizer: null}; var NTI138 = {size: 0,kind: 28,base: null,node: null,finalizer: null}; var NTI140 = {size: 0,kind: 29,base: null,node: null,finalizer: null}; var NTI3285 = {size: 0,kind: 22,base: null,node: null,finalizer: null}; var NTI3224 = {size: 0, kind: 17, base: null, node: null, finalizer: null}; var NTI3236 = {size: 0, kind: 17, base: null, node: null, finalizer: null}; var NTI3240 = {size: 0, kind: 17, base: null, node: null, finalizer: null}; var NNI3240 = {kind: 2, len: 0, offset: 0, typ: null, name: null, sons: []}; NTI3240.node = NNI3240; var NNI3236 = {kind: 2, len: 0, offset: 0, typ: null, name: null, sons: []}; NTI3236.node = NNI3236; NTI3285.base = NTI3224; var NNI3224 = {kind: 2, len: 4, offset: 0, typ: null, name: null, sons: [{kind: 1, offset: "parent", len: 0, typ: NTI3285, name: "parent", sons: null}, {kind: 1, offset: "name", len: 0, typ: NTI140, name: "name", sons: null}, {kind: 1, offset: "message", len: 0, typ: NTI138, name: "msg", sons: null}, {kind: 1, offset: "trace", len: 0, typ: NTI138, name: "trace", sons: null}]}; NTI3224.node = NNI3224; var NNI3208 = {kind: 2, len: 0, offset: 0, typ: null, name: null, sons: []}; NTI3208.node = NNI3208; NTI3224.base = NTI3208; NTI3236.base = NTI3224; NTI3240.base = NTI3236; var NNI3238 = {kind: 2, len: 0, offset: 0, typ: null, name: null, sons: []}; NTI3238.node = NNI3238; NTI3238.base = NTI3236; function makeNimstrLit(c_13003) { var ln = c_13003.length; var result = new Array(ln + 1); var i = 0; for (; i < ln; ++i) { result[i] = c_13003.charCodeAt(i); } result[i] = 0; // terminating zero return result; } function eqStrings(a_15603, b_15604) { if (a_15603 == b_15604) return true; if ((!a_15603) || (!b_15604)) return false; var alen = a_15603.length; if (alen != b_15604.length) return false; for (var i = 0; i < alen; ++i) if (a_15603[i] != b_15604[i]) return false; return true; } function toJSStr(s_13403) { var len = s_13403.length-1; var asciiPart = new Array(len); var fcc = String.fromCharCode; var nonAsciiPart = null; var nonAsciiOffset = 0; for (var i = 0; i < len; ++i) { if (nonAsciiPart !== null) { var offset = (i - nonAsciiOffset) * 2; var code = s_13403[i].toString(16); if (code.length == 1) { code = "0"+code; } nonAsciiPart[offset] = "%"; nonAsciiPart[offset + 1] = code; } else if (s_13403[i] < 128) asciiPart[i] = fcc(s_13403[i]); else { asciiPart.length = i; nonAsciiOffset = i; nonAsciiPart = new Array((len - i) * 2); --i; } } asciiPart = asciiPart.join(""); return (nonAsciiPart === null) ? asciiPart : asciiPart + decodeURIComponent(nonAsciiPart.join("")); } function raiseException(e_12006, ename_12007) { e_12006.name = ename_12007; if ((excHandler == 0)) { unhandledException(e_12006); } throw e_12006;} function cstrToNimstr(c_13203) { var ln = c_13203.length; var result = new Array(ln); var r = 0; for (var i = 0; i < ln; ++i) { var ch = c_13203.charCodeAt(i); if (ch < 128) { result[r] = ch; } else if((ch > 127) && (ch < 2048)) { result[r] = (ch >> 6) | 192; ++r; result[r] = (ch & 63) | 128; } else { result[r] = (ch >> 12) | 224; ++r; result[r] = ((ch >> 6) & 63) | 128; ++r; result[r] = (ch & 63) | 128; } ++r; } result[r] = 0; // terminating zero return result; } var nimvm_5354 = false; var nim_program_result = 0; var globalraisehook_9813 = [null]; var localraisehook_9818 = [null]; var outofmemhook_9821 = [null]; function add_9837(x_9840, x_9840_Idx, y_9841) { var len = x_9840[0].length-1; for (var i = 0; i < y_9841.length; ++i) { x_9840[0][len] = y_9841.charCodeAt(i); ++len; } x_9840[0][len] = 0 } function unhandledException(e_11861) { var Tmp1; var buf_12001 = /**/[makeNimstrLit("")]; if (!!(eqStrings(e_11861.message, null))) Tmp1 = false; else {Tmp1 = !((e_11861.message[0] == 0)); }if (Tmp1) { if (buf_12001[0] != null) { buf_12001[0] = (buf_12001[0].slice(0, -1)).concat(makeNimstrLit("Error: unhandled exception: ")); } else { buf_12001[0] = makeNimstrLit("Error: unhandled exception: ");}; if (buf_12001[0] != null) { buf_12001[0] = (buf_12001[0].slice(0, -1)).concat(e_11861.message); } else { buf_12001[0] = e_11861.message;}; } else { if (buf_12001[0] != null) { buf_12001[0] = (buf_12001[0].slice(0, -1)).concat(makeNimstrLit("Error: unhandled exception")); } else { buf_12001[0] = makeNimstrLit("Error: unhandled exception");}; } if (buf_12001[0] != null) { buf_12001[0] = (buf_12001[0].slice(0, -1)).concat(makeNimstrLit(" [")); } else { buf_12001[0] = makeNimstrLit(" [");}; add_9837(buf_12001, 0, e_11861.name); if (buf_12001[0] != null) { buf_12001[0] = (buf_12001[0].slice(0, -1)).concat(makeNimstrLit("]\x0A")); } else { buf_12001[0] = makeNimstrLit("]\x0A");}; alert(toJSStr(buf_12001[0])); } function raiseOverflow() { var e_12810 = null; e_12810 = {m_type: NTI3240, parent: null, name: null, message: null, trace: null}; e_12810.message = makeNimstrLit("over- or underflow"); raiseException(e_12810, "OverflowError"); } function raiseDivByZero() { var e_12826 = null; e_12826 = {m_type: NTI3238, parent: null, name: null, message: null, trace: null}; e_12826.message = makeNimstrLit("division by zero"); raiseException(e_12826, "DivByZeroError"); } function printInfo(data_46008) { var infodiv_46009 = document.getElementById("info"); infodiv_46009.innerHTML = toJSStr((makeNimstrLit("

You\'re visitor number ").slice(0,-1)).concat(cstrToNimstr((data_46008.visitors)+"").slice(0,-1),makeNimstrLit(", unique visitor number ").slice(0,-1),cstrToNimstr((data_46008.uniques)+"").slice(0,-1),makeNimstrLit(" today. Your IP is ").slice(0,-1),cstrToNimstr(data_46008.ip).slice(0,-1),makeNimstrLit(".

"))); }