function E(a,b,d){this.Init(a,b,d)}v("AdfKeyStroke",E);z.l(E);E.qj=1;v("AdfKeyStroke.SHIFT_MASK",E.qj);E.uh=2;v("AdfKeyStroke.CTRL_MASK",E.uh);E.mo=4;v("AdfKeyStroke.META_MASK",E.mo);E.lm=8;v("AdfKeyStroke.ALT_MASK",E.lm);E.FS=8;v("AdfKeyStroke.BACKSPACE_KEY",E.FS);E.Df=9;v("AdfKeyStroke.TAB_KEY",E.Df);E.oFa=18;v("AdfKeyStroke.ALT_KEY",E.oFa);E.Ja=40;v("AdfKeyStroke.ARROWDOWN_KEY",E.Ja);E.Ya=38;v("AdfKeyStroke.ARROWUP_KEY",E.Ya);E.Lb=39;v("AdfKeyStroke.ARROWRIGHT_KEY",E.Lb);E.Kb=37;
v("AdfKeyStroke.ARROWLEFT_KEY",E.Kb);E.xh=27;v("AdfKeyStroke.ESC_KEY",E.xh);E.$a=13;v("AdfKeyStroke.ENTER_KEY",E.$a);E.zd=32;v("AdfKeyStroke.SPACE_KEY",E.zd);E.g4=33;v("AdfKeyStroke.PAGEUP_KEY",E.g4);E.f4=34;v("AdfKeyStroke.PAGEDOWN_KEY",E.f4);E.nm=35;v("AdfKeyStroke.END_KEY",E.nm);E.fi=36;v("AdfKeyStroke.HOME_KEY",E.fi);E.tla=45;v("AdfKeyStroke.INSERT_KEY",E.tla);E.PS=46;v("AdfKeyStroke.DELETE_KEY",E.PS);E.oK=65;v("AdfKeyStroke.A_KEY",E.oK);E.Mja=67;v("AdfKeyStroke.C_KEY",E.Mja);E.cL=77;
v("AdfKeyStroke.M_KEY",E.cL);E.Ula=80;v("AdfKeyStroke.P_KEY",E.Ula);E.ama=82;v("AdfKeyStroke.R_KEY",E.ama);E.Dma=86;v("AdfKeyStroke.V_KEY",E.Dma);E.dF=87;v("AdfKeyStroke.W_KEY",E.dF);E.Gma=88;v("AdfKeyStroke.X_KEY",E.Gma);E.Hka=112;v("AdfKeyStroke.F1_KEY",E.Hka);E.DK=113;v("AdfKeyStroke.F2_KEY",E.DK);E.Ika=114;v("AdfKeyStroke.F3_KEY",E.Ika);E.VS=115;v("AdfKeyStroke.F4_KEY",E.VS);E.Jka=116;v("AdfKeyStroke.F5_KEY",E.Jka);E.WS=117;v("AdfKeyStroke.F6_KEY",E.WS);E.Kka=118;v("AdfKeyStroke.F7_KEY",E.Kka);
E.Lka=119;v("AdfKeyStroke.F8_KEY",E.Lka);E.Mka=120;v("AdfKeyStroke.F9_KEY",E.Mka);E.Eka=121;v("AdfKeyStroke.F10_KEY",E.Eka);E.Fka=122;v("AdfKeyStroke.F11_KEY",E.Fka);E.Gka=123;v("AdfKeyStroke.F12_KEY",E.Gka);
E.da=function(){this.RLa=Array(16);this.PLa=Array(16);this.Xma={};for(var a=["BACK_SPACE",E.FS,"CLEAR",12,"SHIFT",16,"CONTROL",17,"ALT",18,"CAPS_LOCK",20,"TAB",E.Df,"DOWN",E.Ja,"UP",E.Ya,"RIGHT",E.Lb,"LEFT",E.Kb,"ESCAPE",E.xh,"ENTER",E.$a,"SPACE",E.zd,"PAGE_UP",E.g4,"PAGE_DOWN",E.f4,"END",E.nm,"HOME",E.fi,"INSERT",E.tla,"DELETE",E.PS,"F1",E.Hka,"F2",E.DK,"F3",E.Ika,"F4",E.VS,"F5",E.Jka,"F6",E.WS,"F7",E.Kka,"F8",E.Lka,"F9",E.Mka,"F10",E.Eka,"F11",E.Fka,"F12",E.Gka],b=[],d=a.length-1;0<=d;d--){var e=
a[d];d--;var f=a[d];b[e]=f;b[f]=e}this.Moa=b;this.Kqa="shift";this.yna="ctrl";this.kpa="meta";this.Mma="alt";a={};a[this.Kqa]=this.qj;a[this.yna]=this.uh;a[this.kpa]=this.mo;a[this.Mma]=this.lm;this.QLa=a};v("AdfKeyStroke.InitClass",E.da);E.prototype.Init=function(a,b,d){B.Ea(a);B.Ea(b);B.s(d);E.f.Init.call(this);this.xYa=a;this.mZa=b;this.$B=d};z.a("AdfKeyStroke.prototype.Init",{Init:E.prototype.Init});E.prototype.ia=r("xYa");z.a("AdfKeyStroke.prototype.getKeyCode",{ia:E.prototype.ia});
E.prototype.k0=r("mZa");z.a("AdfKeyStroke.prototype.getModifiers",{k0:E.prototype.k0});E.EVa=function(a){B.Ea(a);var b=E.RLa,d=b[a];d==n&&(d=[],0!=(a&E.qj)&&d.push(E.Kqa),0!=(a&E.uh)&&d.push(E.yna),0!=(a&E.mo)&&d.push(E.kpa),0!=(a&E.lm)&&d.push(E.Mma),d=d.join(" "),b[a]=d);return d};
E.v8a=function(a){B.Ea(a);var b=E.PLa,d=b[a];if(d==n){var d=w.b,e=Array(4);0!=(a&E.qj)&&e.push(d.as(E.qj));0!=(a&E.uh)&&e.push(d.as(E.uh));0!=(a&E.mo)&&e.push(d.as(E.mo));0!=(a&E.lm)&&e.push(d.as(E.lm));d=e.join(" ");b[a]=d}return d};E.NVa=function(a,b){var d=E.EVa(b),e=E.FVa(a);return 0==d.length?e:d+" "+e};E.prototype.toString=function(){return E.f.toString.call(this)+" "+this.$B};z.a("AdfKeyStroke.prototype.toString",{toString:E.prototype.toString});E.prototype.eq=r("$B");
z.a("AdfKeyStroke.prototype.toMarshalledString",{eq:E.prototype.eq});E.gg=function(a,b){B.Ea(a);B.Ea(b);z.kb(E);var d=E.NVa(a,b),e=E.Xma,f=e[d];f==n&&(f=new E(a,b,d),e[d]=f);return f};v("AdfKeyStroke.getKeyStroke",E.gg);
E.u3a=function(a){B.s(a);z.kb(E);var b=E.Xma,d=b[a];if(d==n){var d=a.split(" "),e=d.length-1;B.assert(0<=e);var f=d[e],g;/^\d$/.test(f)||(g=E.Moa[f]);g===k&&(g=f.charCodeAt(0));for(var f=E.QLa,h=0,m=p,q=0;q<e;q++){var s=f[d[q]];s==k&&(s=0);s<=h&&(m=l);h|=s}m?d=E.gg(g,h):(d=new E(g,h,a),b[a]=d)}return d};v("AdfKeyStroke.getKeyStrokeFromMarshalledString",E.u3a);E.FVa=function(a){var b=E.Moa[a];b==n&&(b=String.fromCharCode(a));return b};