#pragma once
#include "Jass.h"
#include "MyArray.h"
#include "MyString.h"

class sGlobal
{
private:
	static const int CONST_MAX_SIZE_MASS = 8190;
public:
integer V;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> E;
integer X;
sMyString O;
hashtable I;
integer A;
integer N;
boolean B;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> C;
integer D;
integer f;
integer F;
integer G;
integer H;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> J;
integer K;
boolean L;
boolean M;
boolean P;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Q;
integer S;
timer U;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> w;
	sMyArray<real[1],CONST_MAX_SIZE_MASS> W;
integer Y;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> z;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> Z;
integer vv;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ev;
timer xv;
hashtable ov;
group rv;
rect iv;
hashtable av;
	sMyArray<trigger[1],CONST_MAX_SIZE_MASS> nv;
integer Vv;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Ev;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Xv;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Ov;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Rv;
boolean Iv;
boolean Av;
unit Nv;
real bv;
timer Bv;
timer cv;
trigger Cv;
integer dv;
integer Dv;
hashtable fv;
hashtable Fv;
integer gv;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Gv;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> hv;
sound Hv;
trigger jv;
multiboard Jv;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> kv;
boolean Kv;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> Lv;
integer mv;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> Mv;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> pv;
	sMyArray<lightning[1],CONST_MAX_SIZE_MASS> Pv;
destructable qv;
timer Qv;
timer sv;
real Sv;
real tv;
real Tv;
real uv;
real Uv;
real wv;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> Wv;
integer yv;
timer Yv;
integer zv;
integer Zv;
group ve;
unit ee;
unit xe;
real oe;
group re;
trigger ie;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ae;
integer ne;
rect Ve;
rect Ee;
rect Xe;
rect Oe;
rect Re;
rect Ie;
rect Ae;
rect Ne;
rect be;
rect Be;
rect ce;
rect Ce;
rect de;
rect De;
rect fe;
rect Fe;
rect ge;
rect Ge;
rect he;
rect He;
rect je;
rect Je;
rect ke;
rect Ke;
rect le;
rect Le;
rect me;
rect Me;
rect pe;
rect Pe;
rect qe;
rect Qe;
rect se;
rect Se;
rect te;
rect Te;
rect ue;
rect Ue;
rect We;
rect ye;
rect Ye;
rect ze;
rect Ze;
rect vx;
rect ex;
rect xx;
rect ox;
rect rx;
rect ix;
rect ax;
rect nx;
rect Vx;
rect Ex;
rect Xx;
rect Ox;
rect Rx;
rect Ix;
rect Ax;
rect Nx;
rect bx;
rect Bx;
rect cx;
rect Cx;
rect dx;
rect Dx;
rect fx;
rect Fx;
rect gx;
rect Gx;
rect hx;
rect Hx;
rect jx;
rect Jx;
rect kx;
rect Kx;
rect lx;
rect Lx;
rect mx;
rect Mx;
rect px;
rect Px;
rect qx;
rect Qx;
rect sx;
rect Sx;
rect tx;
rect Tx;
rect ux;
rect Ux;
rect wx;
rect Wx;
rect yx;
rect Yx;
rect zx;
rect Zx;
rect vo;
rect eo;
rect xo;
rect oo;
rect ro;
rect io;
rect ao;
rect no;
rect Vo;
rect Eo;
rect Xo;
rect Oo;
rect Ro;
rect Io;
rect Ao;
rect No;
rect bo;
rect Bo;
rect co;
rect Co;
rect do_2;
rect udg_rect0;
rect udg_rect1;
rect udg_rect2;
rect udg_rect3;
rect udg_rect4;
rect udg_rect5;
rect udg_rect6;
rect udg_rect7;
rect udg_rect8;
rect udg_rect9;
rect udg_rect10;
rect udg_rect11;
rect udg_rect12;
rect udg_rect13;
rect udg_rect14;
rect udg_rect15;
rect udg_rect16;
rect udg_rect17;
rect udg_rect18;
rect udg_rect19;
rect udg_rect20;
rect udg_rect21;
rect udg_rect22;
rect udg_rect23;
rect udg_rect24;
rect udg_rect25;
rect udg_rect26;
rect udg_rect27;
rect udg_rect28;
rect udg_rect29;
rect udg_rect30;
rect udg_rect31;
rect udg_rect32;
rect udg_rect33;
rect udg_rect34;
rect udg_rect35;
rect udg_rect36;
rect udg_rect37;
rect udg_rect38;
rect udg_rect39;
rect udg_rect40;
rect udg_rect41;
rect udg_rect42;
rect udg_rect43;
rect udg_rect44;
rect udg_rect45;
rect udg_rect46;
rect udg_rect47;
rect udg_rect48;
rect udg_rect49;
rect udg_rect50;
rect udg_rect51;
rect udg_rect52;
rect udg_rect53;
rect udg_rect54;
rect udg_rect55;
rect udg_rect56;
rect udg_rect57;
rect udg_rect58;
rect udg_rect59;
rect udg_rect60;
rect udg_rect61;
rect udg_rect62;
rect udg_rect63;
rect udg_rect64;
rect udg_rect65;
rect udg_rect66;
rect udg_rect67;
rect udg_rect68;
rect udg_rect69;
rect udg_rect70;
rect udg_rect71;
rect udg_rect72;
rect udg_rect73;
rect udg_rect74;
rect udg_rect75;
rect udg_rect76;
rect udg_rect77;
rect udg_rect78;
rect udg_rect79;
rect udg_rect80;
rect udg_rect81;
rect udg_rect82;
rect udg_rect83;
rect udg_rect84;
rect udg_rect85;
rect udg_rect86;
rect udg_rect87;
rect udg_rect88;
rect udg_rect89;
rect udg_rect90;
rect udg_rect91;
rect udg_rect92;
rect udg_rect93;
rect udg_rect94;
rect udg_rect95;
rect udg_rect96;
rect udg_rect97;
rect udg_rect98;
rect udg_rect99;
rect udg_rect100;
rect udg_rect101;
rect udg_rect102;
rect udg_rect103;
rect udg_rect104;
rect udg_rect105;
rect udg_rect106;
rect udg_rect107;
rect udg_rect108;
rect udg_rect109;
rect udg_rect110;
rect udg_rect111;
rect udg_rect112;
rect udg_rect113;
rect udg_rect114;
rect udg_rect115;
rect udg_rect116;
rect udg_rect117;
rect udg_rect118;
rect udg_rect119;
rect udg_rect120;
rect udg_rect121;
rect udg_rect122;
rect udg_rect123;
rect udg_rect124;
rect udg_rect125;
rect udg_rect126;
rect udg_rect127;
rect udg_rect128;
rect udg_rect129;
rect udg_rect130;
rect udg_rect131;
rect udg_rect132;
rect udg_rect133;
rect udg_rect134;
rect udg_rect135;
rect udg_rect136;
rect udg_rect137;
rect udg_rect138;
rect udg_rect139;
rect udg_rect140;
rect udg_rect141;
rect udg_rect142;
rect udg_rect143;
rect udg_rect144;
rect udg_rect145;
rect udg_rect146;
rect udg_rect147;
rect udg_rect148;
rect udg_rect149;
rect udg_rect150;
rect udg_rect151;
rect udg_rect152;
rect udg_rect153;
rect udg_rect154;
rect udg_rect155;
rect udg_rect156;
rect udg_rect157;
rect udg_rect158;
rect udg_rect159;
rect udg_rect160;
rect udg_rect161;
rect udg_rect162;
rect udg_rect163;
rect udg_rect164;
rect udg_rect165;
rect udg_rect166;
rect udg_rect167;
rect udg_rect168;
rect udg_rect169;
rect udg_rect170;
rect udg_rect171;
rect udg_rect172;
rect udg_rect173;
rect udg_rect174;
rect udg_rect175;
rect udg_rect176;
rect udg_rect177;
rect udg_rect178;
rect udg_rect179;
rect udg_rect180;
rect udg_rect181;
rect udg_rect182;
rect udg_rect183;
rect udg_rect184;
rect udg_rect185;
rect udg_rect186;
rect udg_rect187;
rect udg_rect188;
rect udg_rect189;
rect udg_rect190;
rect udg_rect191;
rect udg_rect192;
rect udg_rect193;
rect udg_rect194;
rect udg_rect195;
rect udg_rect196;
rect udg_rect197;
rect udg_rect198;
rect udg_rect199;
rect udg_rect200;
rect udg_rect201;
rect udg_rect202;
rect udg_rect203;
rect udg_rect204;
rect udg_rect205;
rect udg_rect206;
rect udg_rect207;
rect udg_rect208;
rect udg_rect209;
rect udg_rect210;
rect udg_rect211;
rect udg_rect212;
rect udg_rect213;
rect udg_rect214;
rect udg_rect215;
rect udg_rect216;
rect udg_rect217;
rect udg_rect218;
rect udg_rect219;
rect udg_rect220;
rect udg_rect221;
rect udg_rect222;
rect udg_rect223;
rect udg_rect224;
rect udg_rect225;
rect udg_rect226;
rect udg_rect227;
rect udg_rect228;
rect udg_rect229;
rect udg_rect230;
rect udg_rect231;
rect udg_rect232;
rect udg_rect233;
rect udg_rect234;
rect udg_rect235;
rect udg_rect236;
rect udg_rect237;
rect udg_rect238;
rect udg_rect239;
rect udg_rect240;
rect udg_rect241;
rect udg_rect242;
rect udg_rect243;
rect udg_rect244;
rect udg_rect245;
rect udg_rect246;
rect udg_rect247;
rect udg_rect248;
rect udg_rect249;
rect udg_rect250;
rect udg_rect251;
rect udg_rect252;
rect udg_rect253;
rect udg_rect254;
rect udg_rect255;
rect udg_rect256;
rect udg_rect257;
rect udg_rect258;
rect udg_rect259;
rect udg_rect260;
rect udg_rect261;
rect udg_rect262;
rect udg_rect263;
rect udg_rect264;
rect udg_rect265;
rect udg_rect266;
rect udg_rect267;
rect udg_rect268;
rect udg_rect269;
rect udg_rect270;
rect udg_rect271;
rect udg_rect272;
rect udg_rect273;
rect udg_rect274;
rect udg_rect275;
rect udg_rect276;
rect udg_rect277;
rect udg_rect278;
rect udg_rect279;
rect udg_rect280;
rect udg_rect281;
rect udg_rect282;
rect udg_rect283;
rect udg_rect284;
rect udg_rect285;
rect udg_rect286;
rect udg_rect287;
rect udg_rect288;
rect udg_rect289;
rect udg_rect290;
rect udg_rect291;
rect udg_rect292;
rect udg_rect293;
rect udg_rect294;
rect udg_rect295;
rect udg_rect296;
rect udg_rect297;
rect udg_rect298;
rect udg_rect299;
rect udg_rect300;
rect udg_rect301;
rect udg_rect302;
rect udg_rect303;
rect udg_rect304;
rect udg_rect305;
rect udg_rect306;
rect udg_rect307;
rect udg_rect308;
rect udg_rect309;
rect udg_rect310;
rect udg_rect311;
rect udg_rect312;
rect udg_rect313;
rect udg_rect314;
rect udg_rect315;
rect udg_rect316;
rect udg_rect317;
rect udg_rect318;
rect udg_rect319;
rect udg_rect320;
rect udg_rect321;
rect udg_rect322;
rect udg_rect323;
rect udg_rect324;
rect udg_rect325;
rect udg_rect326;
rect udg_rect327;
rect udg_rect328;
rect udg_rect329;
rect udg_rect330;
rect udg_rect331;
rect udg_rect332;
rect udg_rect333;
rect udg_rect334;
rect udg_rect335;
rect udg_rect336;
rect udg_rect337;
rect udg_rect338;
rect udg_rect339;
rect udg_rect340;
rect udg_rect341;
rect udg_rect342;
rect udg_rect343;
rect udg_rect344;
rect udg_rect345;
rect udg_rect346;
rect udg_rect347;
rect udg_rect348;
rect udg_rect349;
rect udg_rect350;
rect udg_rect351;
rect udg_rect352;
rect udg_rect353;
rect udg_rect354;
rect udg_rect355;
rect udg_rect356;
rect udg_rect357;
rect udg_rect358;
rect udg_rect359;
rect udg_rect360;
rect udg_rect361;
rect udg_rect362;
rect udg_rect363;
rect udg_rect364;
rect udg_rect365;
rect udg_rect366;
rect udg_rect367;
sound Do;
sound fo;
sound Fo;
sound go;
sound Go;
sound ho;
sound Ho;
sound jo;
sound Jo;
sound ko;
sound Ko;
sound lo;
sound Lo;
sound mo;
sound Mo;
sound po;
sound Po;
sound qo;
sound Qo;
sound so;
sound So;
sound to;
sound To;
sound uo;
sound Uo;
sound wo;
sound Wo;
sound yo;
sound Yo;
sound zo;
sound Zo;
sound vr;
sound er;
sound xr;
sound rr;
sound ir;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ar;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> nr;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Vr;
integer Er;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> Xr;
integer Rr;
timer Ir;
trigger Ar;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Nr;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> br;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Br;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> cr;
integer Cr;
sMyString dr;
sMyString Dr;
sMyString fr;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> Fr;
integer gr;
timer Gr;
timer hr;
integer Hr;
player jr;
timer Jr;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> kr;
player Kr;
integer lr;
timer Lr;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> mr;
integer Mr;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> pr;
integer Pr;
timer qr;
hashtable Qr;
boolean sr;
region Sr;
integer tr;
integer Tr;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ur;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Ur;
	sMyArray<trigger[1],CONST_MAX_SIZE_MASS> wr;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Wr;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> yr;
	sMyArray<boolean[1],CONST_MAX_SIZE_MASS> zr;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Zr;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> vi;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ei;
	sMyArray<boolean[1],CONST_MAX_SIZE_MASS> xi;
integer oi;
integer ri;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ii;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ai;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ni;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Vi;
	sMyArray<sMyString[1],CONST_MAX_SIZE_MASS> Ei;
integer Xi;
integer Oi;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Ri;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> Ii;
integer Ai;
integer Ni;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> bi;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> Bi;
	sMyArray<effect[1],CONST_MAX_SIZE_MASS> ci;
integer Ci;
integer di;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Di;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> fi;
	sMyArray<rect[1],CONST_MAX_SIZE_MASS> Fi;
integer gi;
integer Gi;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> hi;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Hi;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ji;
	sMyArray<sMyString[1],CONST_MAX_SIZE_MASS> Ji;
	sMyArray<timer[1],CONST_MAX_SIZE_MASS> ki;
	sMyArray<player[1],CONST_MAX_SIZE_MASS> Ki;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> li;
	sMyArray<boolean[1],CONST_MAX_SIZE_MASS> Li;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> mi;
integer Mi;
integer pi;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Pi;
hashtable qi;
	sMyArray<timer[1],CONST_MAX_SIZE_MASS> Qi;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> si;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Si;
	sMyArray<sMyString[1],CONST_MAX_SIZE_MASS> ti;
	sMyArray<player[1],CONST_MAX_SIZE_MASS> Ti;
	sMyArray<boolean[1],CONST_MAX_SIZE_MASS> ui;
	sMyArray<real[1],CONST_MAX_SIZE_MASS> Ui;
	sMyArray<real[1],CONST_MAX_SIZE_MASS> wi;
integer Wi;
integer yi;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Yi;
	sMyArray<real[1],CONST_MAX_SIZE_MASS> zi;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Zi;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> va;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ea;
	sMyArray<timer[1],CONST_MAX_SIZE_MASS> xa;
	sMyArray<boolean[1],CONST_MAX_SIZE_MASS> oa;
	sMyArray<boolean[1],CONST_MAX_SIZE_MASS> ra;
integer ia;
integer aa;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> na;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Va;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Ea;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Xa;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> Oa;
	sMyArray<sMyString[1],CONST_MAX_SIZE_MASS> Ra;
	sMyArray<boolean[1],CONST_MAX_SIZE_MASS> Ia;
	sMyArray<boolean[1],CONST_MAX_SIZE_MASS> Aa;
	sMyArray<real[1],CONST_MAX_SIZE_MASS> Na;
	sMyArray<real[1],CONST_MAX_SIZE_MASS> ba;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Ba;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ca;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Ca;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> da;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Da;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> fa;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Fa;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ga;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Ga;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ha;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Ha;
	sMyArray<boolean[1],CONST_MAX_SIZE_MASS> ja;
integer Ja;
integer ka;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Ka;
	sMyArray<timer[1],CONST_MAX_SIZE_MASS> la;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> La;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ma;
integer Ma;
integer Pa;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> qa;
	sMyArray<timer[1],CONST_MAX_SIZE_MASS> Qa;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> sa;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> Sa;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> ta;
integer Ta;
integer ua;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Ua;
	sMyArray<timer[1],CONST_MAX_SIZE_MASS> wa;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> Wa;
	sMyArray<unit[1],CONST_MAX_SIZE_MASS> ya;
	sMyArray<timer[1],CONST_MAX_SIZE_MASS> Ya;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> za;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> Za;
	sMyArray<boolean[1],CONST_MAX_SIZE_MASS> vn;
	sMyArray<timer[1],CONST_MAX_SIZE_MASS> en;
	sMyArray<boolean[1],CONST_MAX_SIZE_MASS> xn;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> on;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> rn;
	sMyArray<trigger[1],CONST_MAX_SIZE_MASS> in;
	sMyArray<trigger[1],CONST_MAX_SIZE_MASS> an;
	sMyArray<trigger[1],CONST_MAX_SIZE_MASS> nn;
	sMyArray<trigger[1],CONST_MAX_SIZE_MASS> Vn;
trigger En;
trigger Xn;
trigger On;
trigger Rn;
	sMyArray<trigger[1],CONST_MAX_SIZE_MASS> In;
	sMyArray<trigger[1],CONST_MAX_SIZE_MASS> An;
	sMyArray<trigger[1],CONST_MAX_SIZE_MASS> Nn;
integer bn;
	sMyArray<trigger[1],CONST_MAX_SIZE_MASS> Bn;
unit cn;
integer Cn;
integer dn;
integer Dn;
boolean fn;
integer Fn;
boolean gn;
code l__Typecast_Code;
integer l__Typecast_Int;
sMyString l__Typecast_Str;
boolean l__Typecast_Bool;
	sMyArray<sMyString[1],CONST_MAX_SIZE_MASS> utils__hex;
	sMyArray<sMyString[1],CONST_MAX_SIZE_MASS> utils__Chars;
timer utils__GameTimer;
group utils__sel_group;
force exec_force;
integer mh_readonly_array;
integer mh_index;
integer mh_result;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> l__BufferArray;
integer GameVersion;
integer GameDll;
integer pWc3Props;
integer pGameWar3;
integer JassArray_vtable;
integer ppVirtualProtect;
integer ppGetModuleHandle;
integer ppGetProcAddress;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> l__memvars_private_array;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> l__MemoryArray;
integer memory__ArrayVariableId;
integer memory__OldMemoryValue;
gametype bitwise___GAME_TYPE_ALL;
integer bitwise___cpSupportedGameTypes;
sMyString MHUtil__FindNative_Param;
integer MHUtil__FindNative_Result;
integer CodeOffset;
integer EntryOffset;
integer StringsOffset;
integer si__Buffer_F;
integer si__Buffer_I;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> si__Buffer_V;
integer s__Buffer_Position;
integer si__Memory_F;
integer si__Memory_I;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> si__Memory_V;
integer si__Chain_F;
integer si__Chain_I;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> si__Chain_V;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> s__Chain_base;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> s___Chain_offsets;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> s__Chain_offsets;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> s__Chain_length;
integer si__TSLinkedList_Enumerator_F;
integer si__TSLinkedList_Enumerator_I;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> si__TSLinkedList_Enumerator_V;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> s__TSLinkedList_Enumerator_List;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> s__TSLinkedList_Enumerator_Current;
integer si__TSLinkedList_F;
integer si__TSLinkedList_I;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> si__TSLinkedList_V;
integer s__TSLinkedList_Size;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> s__TSLinkedList_Offset;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> s__TSLinkedList_Previous;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> s__TSLinkedList_Value;
integer si__TSArray_F;
integer si__TSArray_I;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> si__TSArray_V;
integer si__TRefCnt_F;
integer si__TRefCnt_I;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> si__TRefCnt_V;
integer si__TJassString_F;
integer si__TJassString_I;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> si__TJassString_V;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> si__TSArray_type;
	sMyArray<trigger[1],CONST_MAX_SIZE_MASS> st__TSArray_onDestroy;
	sMyArray<integer[1],CONST_MAX_SIZE_MASS> si__TRefCnt_type;
	sMyArray<trigger[1],CONST_MAX_SIZE_MASS> st__TRefCnt_onDestroy;
;

	sGlobal()
	{
		X=0;
		O=sMyString("");
		A=0;
		N=0x28829022;
		B=false;
		D=0;
		f=0;
		F=0;
		G=0;
		H=0;
		K=0;
		L=false;
		M=false;
		P=false;
		S=0;
		U=CreateTimer();
		Y=0;
		vv=0;
		xv=CreateTimer();
		rv=CreateGroup();
		iv=Rect(.0,.0,.0,.0);
		av=InitHashtable();
		Vv=0;
		Iv=false;
		Av=false;
		Nv=NULL;
		bv=0;
		Bv=CreateTimer();
		cv=CreateTimer();
		Cv=CreateTrigger();
		dv=0;
		Dv=0;
		fv=NULL;
		Fv=InitHashtable();
		gv=0;
		Jv=NULL;
		Kv=false;
		mv=0;
		Qv=CreateTimer();
		sv=CreateTimer();
		Sv=-256;
		tv=-512;
		Tv=300;
		wv=500.0*0.1;
		yv=0;
		Yv=CreateTimer();
		zv=0x7F;
		ve=CreateGroup();
		ie=NULL;
		ne=0;
		Ve=NULL;
		Ee=NULL;
		Xe=NULL;
		Oe=NULL;
		Re=NULL;
		Ie=NULL;
		Ae=NULL;
		Ne=NULL;
		be=NULL;
		Be=NULL;
		ce=NULL;
		Ce=NULL;
		de=NULL;
		De=NULL;
		fe=NULL;
		Fe=NULL;
		ge=NULL;
		Ge=NULL;
		he=NULL;
		He=NULL;
		je=NULL;
		Je=NULL;
		ke=NULL;
		Ke=NULL;
		le=NULL;
		Le=NULL;
		me=NULL;
		Me=NULL;
		pe=NULL;
		Pe=NULL;
		qe=NULL;
		Qe=NULL;
		se=NULL;
		Se=NULL;
		te=NULL;
		Te=NULL;
		ue=NULL;
		Ue=NULL;
		We=NULL;
		ye=NULL;
		Ye=NULL;
		ze=NULL;
		Ze=NULL;
		vx=NULL;
		ex=NULL;
		xx=NULL;
		ox=NULL;
		rx=NULL;
		ix=NULL;
		ax=NULL;
		nx=NULL;
		Vx=NULL;
		Ex=NULL;
		Xx=NULL;
		Ox=NULL;
		Rx=NULL;
		Ix=NULL;
		Ax=NULL;
		Nx=NULL;
		bx=NULL;
		Bx=NULL;
		cx=NULL;
		Cx=NULL;
		dx=NULL;
		Dx=NULL;
		fx=NULL;
		Fx=NULL;
		gx=NULL;
		Gx=NULL;
		hx=NULL;
		Hx=NULL;
		jx=NULL;
		Jx=NULL;
		kx=NULL;
		Kx=NULL;
		lx=NULL;
		Lx=NULL;
		mx=NULL;
		Mx=NULL;
		px=NULL;
		Px=NULL;
		qx=NULL;
		Qx=NULL;
		sx=NULL;
		Sx=NULL;
		tx=NULL;
		Tx=NULL;
		ux=NULL;
		Ux=NULL;
		wx=NULL;
		Wx=NULL;
		yx=NULL;
		Yx=NULL;
		zx=NULL;
		Zx=NULL;
		vo=NULL;
		eo=NULL;
		xo=NULL;
		oo=NULL;
		ro=NULL;
		io=NULL;
		ao=NULL;
		no=NULL;
		Vo=NULL;
		Eo=NULL;
		Xo=NULL;
		Oo=NULL;
		Ro=NULL;
		Io=NULL;
		Ao=NULL;
		No=NULL;
		bo=NULL;
		Bo=NULL;
		co=NULL;
		Co=NULL;
		do_2=NULL;
		udg_rect0=NULL;
		udg_rect1=NULL;
		udg_rect2=NULL;
		udg_rect3=NULL;
		udg_rect4=NULL;
		udg_rect5=NULL;
		udg_rect6=NULL;
		udg_rect7=NULL;
		udg_rect8=NULL;
		udg_rect9=NULL;
		udg_rect10=NULL;
		udg_rect11=NULL;
		udg_rect12=NULL;
		udg_rect13=NULL;
		udg_rect14=NULL;
		udg_rect15=NULL;
		udg_rect16=NULL;
		udg_rect17=NULL;
		udg_rect18=NULL;
		udg_rect19=NULL;
		udg_rect20=NULL;
		udg_rect21=NULL;
		udg_rect22=NULL;
		udg_rect23=NULL;
		udg_rect24=NULL;
		udg_rect25=NULL;
		udg_rect26=NULL;
		udg_rect27=NULL;
		udg_rect28=NULL;
		udg_rect29=NULL;
		udg_rect30=NULL;
		udg_rect31=NULL;
		udg_rect32=NULL;
		udg_rect33=NULL;
		udg_rect34=NULL;
		udg_rect35=NULL;
		udg_rect36=NULL;
		udg_rect37=NULL;
		udg_rect38=NULL;
		udg_rect39=NULL;
		udg_rect40=NULL;
		udg_rect41=NULL;
		udg_rect42=NULL;
		udg_rect43=NULL;
		udg_rect44=NULL;
		udg_rect45=NULL;
		udg_rect46=NULL;
		udg_rect47=NULL;
		udg_rect48=NULL;
		udg_rect49=NULL;
		udg_rect50=NULL;
		udg_rect51=NULL;
		udg_rect52=NULL;
		udg_rect53=NULL;
		udg_rect54=NULL;
		udg_rect55=NULL;
		udg_rect56=NULL;
		udg_rect57=NULL;
		udg_rect58=NULL;
		udg_rect59=NULL;
		udg_rect60=NULL;
		udg_rect61=NULL;
		udg_rect62=NULL;
		udg_rect63=NULL;
		udg_rect64=NULL;
		udg_rect65=NULL;
		udg_rect66=NULL;
		udg_rect67=NULL;
		udg_rect68=NULL;
		udg_rect69=NULL;
		udg_rect70=NULL;
		udg_rect71=NULL;
		udg_rect72=NULL;
		udg_rect73=NULL;
		udg_rect74=NULL;
		udg_rect75=NULL;
		udg_rect76=NULL;
		udg_rect77=NULL;
		udg_rect78=NULL;
		udg_rect79=NULL;
		udg_rect80=NULL;
		udg_rect81=NULL;
		udg_rect82=NULL;
		udg_rect83=NULL;
		udg_rect84=NULL;
		udg_rect85=NULL;
		udg_rect86=NULL;
		udg_rect87=NULL;
		udg_rect88=NULL;
		udg_rect89=NULL;
		udg_rect90=NULL;
		udg_rect91=NULL;
		udg_rect92=NULL;
		udg_rect93=NULL;
		udg_rect94=NULL;
		udg_rect95=NULL;
		udg_rect96=NULL;
		udg_rect97=NULL;
		udg_rect98=NULL;
		udg_rect99=NULL;
		udg_rect100=NULL;
		udg_rect101=NULL;
		udg_rect102=NULL;
		udg_rect103=NULL;
		udg_rect104=NULL;
		udg_rect105=NULL;
		udg_rect106=NULL;
		udg_rect107=NULL;
		udg_rect108=NULL;
		udg_rect109=NULL;
		udg_rect110=NULL;
		udg_rect111=NULL;
		udg_rect112=NULL;
		udg_rect113=NULL;
		udg_rect114=NULL;
		udg_rect115=NULL;
		udg_rect116=NULL;
		udg_rect117=NULL;
		udg_rect118=NULL;
		udg_rect119=NULL;
		udg_rect120=NULL;
		udg_rect121=NULL;
		udg_rect122=NULL;
		udg_rect123=NULL;
		udg_rect124=NULL;
		udg_rect125=NULL;
		udg_rect126=NULL;
		udg_rect127=NULL;
		udg_rect128=NULL;
		udg_rect129=NULL;
		udg_rect130=NULL;
		udg_rect131=NULL;
		udg_rect132=NULL;
		udg_rect133=NULL;
		udg_rect134=NULL;
		udg_rect135=NULL;
		udg_rect136=NULL;
		udg_rect137=NULL;
		udg_rect138=NULL;
		udg_rect139=NULL;
		udg_rect140=NULL;
		udg_rect141=NULL;
		udg_rect142=NULL;
		udg_rect143=NULL;
		udg_rect144=NULL;
		udg_rect145=NULL;
		udg_rect146=NULL;
		udg_rect147=NULL;
		udg_rect148=NULL;
		udg_rect149=NULL;
		udg_rect150=NULL;
		udg_rect151=NULL;
		udg_rect152=NULL;
		udg_rect153=NULL;
		udg_rect154=NULL;
		udg_rect155=NULL;
		udg_rect156=NULL;
		udg_rect157=NULL;
		udg_rect158=NULL;
		udg_rect159=NULL;
		udg_rect160=NULL;
		udg_rect161=NULL;
		udg_rect162=NULL;
		udg_rect163=NULL;
		udg_rect164=NULL;
		udg_rect165=NULL;
		udg_rect166=NULL;
		udg_rect167=NULL;
		udg_rect168=NULL;
		udg_rect169=NULL;
		udg_rect170=NULL;
		udg_rect171=NULL;
		udg_rect172=NULL;
		udg_rect173=NULL;
		udg_rect174=NULL;
		udg_rect175=NULL;
		udg_rect176=NULL;
		udg_rect177=NULL;
		udg_rect178=NULL;
		udg_rect179=NULL;
		udg_rect180=NULL;
		udg_rect181=NULL;
		udg_rect182=NULL;
		udg_rect183=NULL;
		udg_rect184=NULL;
		udg_rect185=NULL;
		udg_rect186=NULL;
		udg_rect187=NULL;
		udg_rect188=NULL;
		udg_rect189=NULL;
		udg_rect190=NULL;
		udg_rect191=NULL;
		udg_rect192=NULL;
		udg_rect193=NULL;
		udg_rect194=NULL;
		udg_rect195=NULL;
		udg_rect196=NULL;
		udg_rect197=NULL;
		udg_rect198=NULL;
		udg_rect199=NULL;
		udg_rect200=NULL;
		udg_rect201=NULL;
		udg_rect202=NULL;
		udg_rect203=NULL;
		udg_rect204=NULL;
		udg_rect205=NULL;
		udg_rect206=NULL;
		udg_rect207=NULL;
		udg_rect208=NULL;
		udg_rect209=NULL;
		udg_rect210=NULL;
		udg_rect211=NULL;
		udg_rect212=NULL;
		udg_rect213=NULL;
		udg_rect214=NULL;
		udg_rect215=NULL;
		udg_rect216=NULL;
		udg_rect217=NULL;
		udg_rect218=NULL;
		udg_rect219=NULL;
		udg_rect220=NULL;
		udg_rect221=NULL;
		udg_rect222=NULL;
		udg_rect223=NULL;
		udg_rect224=NULL;
		udg_rect225=NULL;
		udg_rect226=NULL;
		udg_rect227=NULL;
		udg_rect228=NULL;
		udg_rect229=NULL;
		udg_rect230=NULL;
		udg_rect231=NULL;
		udg_rect232=NULL;
		udg_rect233=NULL;
		udg_rect234=NULL;
		udg_rect235=NULL;
		udg_rect236=NULL;
		udg_rect237=NULL;
		udg_rect238=NULL;
		udg_rect239=NULL;
		udg_rect240=NULL;
		udg_rect241=NULL;
		udg_rect242=NULL;
		udg_rect243=NULL;
		udg_rect244=NULL;
		udg_rect245=NULL;
		udg_rect246=NULL;
		udg_rect247=NULL;
		udg_rect248=NULL;
		udg_rect249=NULL;
		udg_rect250=NULL;
		udg_rect251=NULL;
		udg_rect252=NULL;
		udg_rect253=NULL;
		udg_rect254=NULL;
		udg_rect255=NULL;
		udg_rect256=NULL;
		udg_rect257=NULL;
		udg_rect258=NULL;
		udg_rect259=NULL;
		udg_rect260=NULL;
		udg_rect261=NULL;
		udg_rect262=NULL;
		udg_rect263=NULL;
		udg_rect264=NULL;
		udg_rect265=NULL;
		udg_rect266=NULL;
		udg_rect267=NULL;
		udg_rect268=NULL;
		udg_rect269=NULL;
		udg_rect270=NULL;
		udg_rect271=NULL;
		udg_rect272=NULL;
		udg_rect273=NULL;
		udg_rect274=NULL;
		udg_rect275=NULL;
		udg_rect276=NULL;
		udg_rect277=NULL;
		udg_rect278=NULL;
		udg_rect279=NULL;
		udg_rect280=NULL;
		udg_rect281=NULL;
		udg_rect282=NULL;
		udg_rect283=NULL;
		udg_rect284=NULL;
		udg_rect285=NULL;
		udg_rect286=NULL;
		udg_rect287=NULL;
		udg_rect288=NULL;
		udg_rect289=NULL;
		udg_rect290=NULL;
		udg_rect291=NULL;
		udg_rect292=NULL;
		udg_rect293=NULL;
		udg_rect294=NULL;
		udg_rect295=NULL;
		udg_rect296=NULL;
		udg_rect297=NULL;
		udg_rect298=NULL;
		udg_rect299=NULL;
		udg_rect300=NULL;
		udg_rect301=NULL;
		udg_rect302=NULL;
		udg_rect303=NULL;
		udg_rect304=NULL;
		udg_rect305=NULL;
		udg_rect306=NULL;
		udg_rect307=NULL;
		udg_rect308=NULL;
		udg_rect309=NULL;
		udg_rect310=NULL;
		udg_rect311=NULL;
		udg_rect312=NULL;
		udg_rect313=NULL;
		udg_rect314=NULL;
		udg_rect315=NULL;
		udg_rect316=NULL;
		udg_rect317=NULL;
		udg_rect318=NULL;
		udg_rect319=NULL;
		udg_rect320=NULL;
		udg_rect321=NULL;
		udg_rect322=NULL;
		udg_rect323=NULL;
		udg_rect324=NULL;
		udg_rect325=NULL;
		udg_rect326=NULL;
		udg_rect327=NULL;
		udg_rect328=NULL;
		udg_rect329=NULL;
		udg_rect330=NULL;
		udg_rect331=NULL;
		udg_rect332=NULL;
		udg_rect333=NULL;
		udg_rect334=NULL;
		udg_rect335=NULL;
		udg_rect336=NULL;
		udg_rect337=NULL;
		udg_rect338=NULL;
		udg_rect339=NULL;
		udg_rect340=NULL;
		udg_rect341=NULL;
		udg_rect342=NULL;
		udg_rect343=NULL;
		udg_rect344=NULL;
		udg_rect345=NULL;
		udg_rect346=NULL;
		udg_rect347=NULL;
		udg_rect348=NULL;
		udg_rect349=NULL;
		udg_rect350=NULL;
		udg_rect351=NULL;
		udg_rect352=NULL;
		udg_rect353=NULL;
		udg_rect354=NULL;
		udg_rect355=NULL;
		udg_rect356=NULL;
		udg_rect357=NULL;
		udg_rect358=NULL;
		udg_rect359=NULL;
		udg_rect360=NULL;
		udg_rect361=NULL;
		udg_rect362=NULL;
		udg_rect363=NULL;
		udg_rect364=NULL;
		udg_rect365=NULL;
		udg_rect366=NULL;
		udg_rect367=NULL;
		Do=NULL;
		fo=NULL;
		Fo=NULL;
		go=NULL;
		Go=NULL;
		ho=NULL;
		Ho=NULL;
		jo=NULL;
		Jo=NULL;
		ko=NULL;
		Ko=NULL;
		lo=NULL;
		Lo=NULL;
		mo=NULL;
		Mo=NULL;
		po=NULL;
		Po=NULL;
		qo=NULL;
		Qo=NULL;
		so=NULL;
		So=NULL;
		to=NULL;
		To=NULL;
		uo=NULL;
		Uo=NULL;
		wo=NULL;
		Wo=NULL;
		yo=NULL;
		Yo=NULL;
		zo=NULL;
		Zo=NULL;
		vr=NULL;
		er=NULL;
		xr=NULL;
		rr=NULL;
		ir=NULL;
		Er=0;
		Rr=0;
		Ir=CreateTimer();
		Cr=0;
		gr=0;
		jr=NULL;
		Jr=CreateTimer();
		Lr=CreateTimer();
		Mr=0;
		Pr=0xA;
		qr=CreateTimer();
		Qr=InitHashtable();
		sr=false;
		tr=0;
		Tr=0;
		oi=0;
		ri=0;
		Xi=0;
		Oi=0;
		Ai=0;
		Ni=0;
		Ci=0;
		di=0;
		gi=0;
		Gi=0;
		Mi=0;
		pi=0;
		qi=InitHashtable();
		Wi=0;
		yi=0;
		ia=0;
		aa=0;
		Ja=0;
		ka=0;
		Ma=0;
		Pa=0;
		Ta=0;
		ua=0;
		memory__ArrayVariableId=0;
		memory__OldMemoryValue=0;
		bitwise___GAME_TYPE_ALL=ConvertGameType(0xFFFFFFFF);
		CodeOffset=0;
		EntryOffset=0;
		si__Buffer_F=0;
		si__Buffer_I=0;
		s__Buffer_Position=0;
		si__Memory_F=0;
		si__Memory_I=0;
		si__Chain_F=0;
		si__Chain_I=0;
		si__TSLinkedList_Enumerator_F=0;
		si__TSLinkedList_Enumerator_I=0;
		si__TSLinkedList_F=0;
		si__TSLinkedList_I=0;
		s__TSLinkedList_Size=0x0C;
		si__TSArray_F=0;
		si__TSArray_I=0;
		si__TRefCnt_F=0;
		si__TRefCnt_I=0;
		si__TJassString_F=0;
		si__TJassString_I=0;
	};

};

procedure fMyExecuteFunc(String funcName);
void fMapBegin();
HPLAYER fMyGetLocalPlayer();
void fMapEnd();
bool fFuncsInit();
void fMain();
sMyString fMyI2S(integer vInt);
sMyString fMySubString(sMyString &source, Integer start, Integer end_);
sMyString fMyGetUnitName(unit u);
integer fMyStringHash(String vStr);

integer s__Buffer__allocate();
integer s__Memory__allocate();
integer s__TJassString__allocate();
integer s__Chain__allocate();
integer s__TRefCnt__allocate();
integer s__TSLinkedList_Enumerator__allocate();
void s__TSLinkedList_Enumerator_deallocate( integer this_2);
integer s__TSArray__allocate();
integer s__TSLinkedList__allocate();
void s__TSLinkedList_deallocate( integer this_2);
integer s__TJassStrings__allocate();
integer s__TSArrayOfInt__allocate();
integer s__TStringRep__allocate();
integer s__TRCString__allocate();
void typecast___setCode( code c);
void typecast___setInt( integer i);
void typecast___setStr( sMyString s);
void typecast___Typecast1();
integer C2I( code c);
code I2C( integer i);
void typecast___Typecast2();
integer SH2I( sMyString s);
void typecast___Typecast3();
integer shl( integer value, integer offset);
integer shr( integer value, integer offset);
real GetGameTime();
void utils__init_hex();
void utils__InitChars();
void utils__init();
void utils_uninit();
integer Read( integer address);
void memread__FakeArray();
void memread__init();
void s__Buffer_SetItem( integer index, integer value);
void s__Buffer_PushDword( integer value);
void s__Buffer_PushCode( integer opcode, integer r1, integer r2, integer r3, integer param);
void s__Buffer_Magic();
integer s__Buffer_GetAddress();
integer s__Buffer_GetItems();
void buffer___init();
void memvars___Init_1_26a();
void memvars___Init_1_27a();
void memvars___CheckGameVersion();
void memvars___PreparePrivateArray();
void memvars___magic();
integer memvars___GetPrivateArrayAddress();
void memvars___init();
void memory__read_this();
integer s__Memory_ReadMemory( integer address);
void s__Memory_WriteMemory( integer address, integer value);
void s__Memory_magic();
integer s__Memory_GetAddress();
integer s__Memory_GetItems();
void memory__hack_array();
void memory__init();
void memory_uninit();
integer s__Chain_create();
void s__Chain_add( integer this_2, integer offset);
integer s__Chain_calc( integer this_2);
integer bitwise___GetGameTypeSupported();
integer BitwiseAnd( integer a, integer b);
void bitwise___init();
integer shlr( integer value, integer left, integer right);
sMyString ReadString( integer address);
integer s__TSLinkedList_Enumerator_create( integer List);
boolean s__TSLinkedList_Enumerator_MoveNext( integer this_2);
void s__TSLinkedList_LoadFromMemory( integer this_2, integer p);
integer GetWc3Prop( integer index);
integer GetJassThreadLocal();
integer FindNative( sMyString name);
void private__FindNativeExecutor();
integer FindNativeSafe( sMyString name);
boolean SetNativeAddress( sMyString name, integer address);
integer s__TSArrayOfInt__getindex( integer this_2, integer index);
integer s__TRCString_c_str( integer this_2);
integer s__TJassStrings__getindex( integer this_2, integer index);
integer GetInstance( integer hInstance);
integer GetInstanceString( integer pInstance, integer hString);
integer GetMainInstanceHandle();
integer GetMainInstance();
integer GetStringAddress( sMyString s);
void PushDwords( integer a, integer b, integer c, integer d);
void PrepareCode();
void PrepareStrings();
void CheckErrorCode( integer Code);
void LoadDll();
void Loader___init();
void jasshelper__initstructs437536();
integer Gn();
integer Hn();
integer jn();
void Jn( integer hn);
integer kn();
integer Kn();
void ln( integer hn);
integer Ln();
void mn( integer hn);
integer Mn();
integer pn();
integer Pn();
void qn( integer hn);
integer Qn();
void sn( integer hn);
integer Sn();
integer tn();
integer Tn( integer hn, unit u, integer un);
integer Un( integer hn, unit u);
void wn( integer hn, unit u);
integer Yn();
integer Zn( integer vV, integer eV, integer xV, boolean oV);
integer rV();
void iV( integer i, unit a1, integer a2);
integer aV( integer i, unit a1, integer a2, integer a3);
integer nV( integer i, unit a1, integer a2);
void BonusMod__Setup();
integer s__Bonus_create();
integer VV( integer hn, unit u, integer un);
integer EV( integer hn, unit u);
boolean XV( integer hn, unit u, integer yn);
integer OV( integer hn, unit u, integer un);
integer RV( integer hn, unit u);
void IV( integer hn, unit u);
boolean AV( integer hn, unit u, integer yn);
void NV( unit u, integer bV);
integer cV( unit u, integer bV, integer un);
integer DV( unit u, integer bV);
void fV();
sMyString HCL_GetCommandString();
void FV();
void HV( unit jV, integer JV, player kV);
timer lV( integer yn);
timer NewTimer();
void LV( timer t);
void mV();
void MV( sMyString s);
void PV( unit qV, unitstate QV, real sV);
void UV();
void wV();
void WV( unit u, real yV);
integer ZV( sMyString s, integer a, integer b);
integer xE( sMyString oE);
void rE();
void iE();
unit aE( player p, real x, real y);
void nE( player p, unit u, integer id, sMyString VE);
void EE();
void XE( real OE, sMyString RE);
integer IE( unit u);
integer AE( unit u, effect e);
integer bE( integer BE);
void CE();
trigger dE();
void DE();
sMyString fE( real t);
sMyString FE( real t);
void gE( trigger GE, playerevent hE);
void HE( trigger GE, playerunitevent hE, boolexpr jE);
void JE( trigger GE, sMyString kE, boolean KE);
boolean lE( unit u);
boolean LE();
boolean mE();
boolean ME();
boolean pE();
void PE();
void qE( unit u);
void sE( integer BE);
void SE( player p, integer QE);
boolean tE();
void TE();
void uE();
boolean UE();
void WE();
void yE();
void YE();
boolean zE();
void ZE();
void vX();
integer xX();
unit oX( player p);
boolean rX( unit u);
boolean iX( unit u);
boolean aX( unit u);
boolean nX( unit u);
void VX();
void EX();
void bloodlust__onBloodlust();
void bloodlust__onLol();
void XX();
void changeGender___onChangeGender();
void OX();
void detonate___onDetonate();
void RX();
void IX();
void infernalMeteorExplode__onMeteorExplode();
void AX();
void NX( unit u, rect r);
void bX();
void BX( real t, integer cX, real CX, real dX, real DX, real fX, real FX, real gX, sMyString GX);
void hX( player p, sMyString s);
sMyString jX( player p);
void JX( unit u);
sMyString kX( player p);
sMyString KX( integer id);
void lX( player p, integer LX, integer mX);
player MX( sMyString s);
void pX( integer i);
void PX( boolean qX);
void QX();
real GameTime();
void sX();
void rodTeleport__onTeleport();
void tX();
boolean TX();
void uX();
void stopResearch__onStopResearch();
void WX();
void yX();
void vampireRecall___onRecall();
void YX();
void vampireTrap__onTrap();
void zX();
void ZX();
void volcanicStrike___onVolcanicStrike();
void vO();
boolean eO();
void rO();
boolean iO();
void aO();
void nO();
void VO();
void chainOfDeath__onChainEffect();
void EO();
void cyclone__onCyclone();
void XO();
boolean OO();
void RO();
void IO();
void NO();
void bO();
void BO();
void cO();
void CO();
boolean dO();
void DO();
integer fO( sMyString FO);
void gO( integer b, rect r);
boolean GO( integer b, real x, real y);
integer hO( real x, real y);
void HO( integer b);
integer jO( player p);
void JO( integer b, real kO);
void lO( real kO);
void LO( integer b, player p, integer mO);
boolean MO( integer b, player p);
void pO( player p);
boolean PO();
boolean qO();
void QO();
boolean sO();
void SO();
void UO( player p, integer g, real x, real y);
boolean wO( integer WO);
boolean yO( integer id);
boolean YO();
void zO( integer ZO, integer wX);
boolean vR();
void xR();
void oR();
integer iR( integer aR, integer QE, real nR, sMyString KV);
void OR( integer hn, real x, real y);
void RR( integer aR, integer a, integer b, integer c);
boolean IR();
void AR();
integer NR( unit u);
void bR( unit u);
void BR( unit u);
boolean cR();
boolean CR();
void dR();
void DR();
void FR( integer gR, integer GR, sMyString KV);
void hR( integer p);
void JR();
void kR();
void MR();
void pR();
void observe___onObserveHuman();
void observe___onObserveVampire();
void QR();
void sR( integer p);
void UR( integer p);
void wR();
void WR( integer BE);
void sphereOfDoom___onSphereBlink();
void yR();
void YR( unit u);
void zR( real nR, code ZR);
void vI();
void eI();
void xI();
void oI();
void rI();
void iI();
void aI();
void nI();
void VI();
void upgradeInfernal__onUpgradeInvisibleInfernal();
void EI();
void upgradeInfernal__onUpgradeRangedInfernal();
void XI();
void upgradeInfernal__onUpgradeCorruptedInfernal();
void OI();
void upgradeInfernal__onUpgradeFrozenInfernal();
void RI();
void II();
void upgradeInfernal__onUpgradeVolcanicInfernal();
void AI();
void upgradeInfernal__onUpgradeInfernalMeteor();
void NI();
void buildingProtection___onBuildingProtection();
boolean bI();
void cI();
void chopTree__onChopTree();
void CI();
void chopTree__onRegrowTree();
void dI();
void DI();
boolean fI();
boolean FI();
void gI();
void GI();
void hI();
void HI();
void jI( integer pD, integer pK, boolean JI);
void kI();
void KI( integer pD, integer pK);
void mI();
void MI( integer BE);
void pI();
void PI();
boolean qI();
void QI();
void sI();
void tI( unit TI);
void uI();
boolean UI();
boolean wI();
void WI();
void yI( integer a);
integer YI();
void xA();
void turnMinion___onTurnMinion();
void rA();
void iA( integer aA, integer nA);
void RA( integer id, integer IA, integer un);
void AA( integer NA, integer i0, integer i1, integer i2, integer i3, integer i4, integer i5);
void bA( unit u);
void CA();
boolean dA();
void DA();
void fA();
void FA();
void gA();
void GA( boolean hA);
void HA();
void jA();
void JA();
void kA( integer id);
void KA();
boolean lA();
void LA();
void mA();
void MA();
void pA();
void PA();
void qA();
void QA();
boolean sA();
void uA();
boolean UA();
boolean wA();
void WA();
boolean yA();
boolean YA();
void zA();
boolean ZA();
void vN();
boolean eN();
void xN();
integer oN( integer n);
void rN( player pK);
void iN();
void aN();
boolean nN();
boolean XN();
void ON();
boolean IN_2();
void NN();
sMyString bN( sMyString s);
integer BN( sMyString s);
void cN( sMyString s);
boolean CN();
boolean dN();
void DN();
boolean gN();
void JN();
void kN();
boolean KN();
void lN();
void LN();
boolean mN();
boolean MN();
void pN();
void PN( integer hn);
void qN( integer hn);
void QN();
boolean sN();
boolean SN();
void tN();
real TN( integer QE);
void uN( integer hn);
void UN( integer hn);
void wN();
boolean WN();
boolean YN();
void zN();
boolean ZN();
boolean vb();
void eb();
void ob();
boolean rb();
void ib();
boolean ab();
void nb();
void Vb( unit uD, unit uK);
boolean Eb();
void Rb();
void Ib();
boolean Nb();
void cb();
boolean Cb();
boolean gb();
void Kb();
void lb( integer id, integer fX, integer FX, integer gX, integer Lb);
boolean mb();
void Mb();
boolean pb();
void qb();
boolean Qb();
void sb();
boolean Sb();
void tb();
void Tb();
boolean ub();
boolean Ub();
void wb();
boolean Wb();
void yb();
void InitCustomTeams();
void fMainJass();
void config();
boolean zb();
boolean Zb();
boolean vB();
boolean eB();
boolean xB();
boolean oB();
boolean rB();
boolean iB();
boolean aB();
boolean nB();
boolean VB();
boolean EB();
boolean XB();
boolean OB();
boolean RB();
boolean IB();
boolean AB();
boolean NB();
boolean bB();
boolean BB();
boolean cB();
boolean CB();
boolean dB();
boolean DB();
boolean fB();
boolean FB();
boolean gB();
boolean GB();
boolean hB();
boolean HB();
boolean jB();
boolean JB();
boolean kB();
boolean KB();
boolean lB();
boolean LB();
boolean mB();
boolean MB();
boolean pB();
boolean PB();
boolean qB();
void Yb();
