diff --git a/History.md b/History.md index 69f5401e..00d141e1 100644 --- a/History.md +++ b/History.md @@ -1,4 +1,9 @@ -2.0.1 / 2014-12-05 +2.0.2 / 2014-12-22 +================== + +* fix bugs in SMILES parser + +2.0.1 / 2014-12-19 ================== * add molecule.ensureHelperArrays diff --git a/lib.js b/lib.js index 77ee7bf4..5b41fe2c 100644 --- a/lib.js +++ b/lib.js @@ -1,7 +1,7 @@ /** * actelion - Manipulate molecules - * @version v2.0.1 - * @date 2014-12-19T09:16:14.780Z + * @version v2.0.2 + * @date 2014-12-22T09:40:15.161Z * @link https://github.com/cheminfo/actelion-js * @license TBD */ @@ -21,89 +21,89 @@ function getExports($wnd) { // Start GWT code -function uq(){} -function mq(){} +function rq(){} +function jq(){} +function jj(){} function ac(){} function Bc(){} function Kd(){} function Md(){} function Od(){} function Qd(){} -function Ql(){} -function _l(){} function pe(){} function De(){} -function ij(){} -function jk(){} -function pk(){} +function kk(){} +function rk(){} +function rx(){} +function ix(){} +function px(){} +function Sl(){} +function _l(){} function wm(){} function Nm(){} -function wr(){} -function Lw(){} -function lx(){} -function sx(){} -function ux(){} -function Ay(){} -function BA(){} +function tr(){} +function Iw(){} +function xy(){} +function yA(){} function hm(){cm()} -function ql(){ll(this)} +function sl(){nl(this)} function ef(){this.g=1} -function Wj(){this.b=8} -function vi(a){this.b=a} -function Dr(a){this.a=a} -function Mr(a){this.a=a} -function Ds(a){this.a=a} -function Qs(a){this.a=a} -function Hu(a){this.a=a} -function Yu(a){this.b=a} -function bv(a){this.a=a} -function gv(a){this.a=a} -function kv(a){this.a=a} -function pv(a){this.a=a} -function Kv(a){this.a=a} -function Pv(a){this.a=a} -function Uv(a){this.a=a} -function eA(){this.jc()} -function jA(){this.kc()} -function jh(a,b){a.O=b} -function eh(a,b){a.J=b} -function gh(a,b){a.P=b} -function Hq(a,b){a.h=b} -function Iq(a,b){a.l=b} -function Jq(a,b){a.m=b} -function Ng(a,b,c){a.u[b]=c} -function ah(a,b){a.G[b]|=DB} -function kh(a,b){a.s[b]|=gB} -function zu(a){++a.b;Pw(a)} -function Au(a){--a.b;Pw(a)} -function lr(){return Fl} -function vk(){this.a=new dw} -function kl(){this.a=new dw} -function kt(){ql.call(this)} -function Gr(){ql.call(this)} -function Bs(){ql.call(this)} -function Qw(){ql.call(this)} -function Zx(){ql.call(this)} -function fx(){$w.call(this)} -function Px(){Bx.call(this)} -function Xx(){Bx.call(this)} -function Ir(){Gr.call(this)} -function px(){px=mq;ox=rx()} -function tl(){tl=mq;sl=new ac} -function Nl(){Nl=mq;Ml=new Ql} -function um(){um=mq;tm=new wm} -function bu(){bu=mq;au=new wr} -function Sy(){this.a=new qy} -function Xy(){this.a=new dw} -function Jw(){Jw=mq;Iw=new Lw} -function sw(a){tw(a,a.length)} -function ww(a){vw(a,a.length)} -function iy(a){a.b=null;a.c=0} +function Xj(){this.b=8} +function wi(a){this.b=a} +function Ar(a){this.a=a} +function Jr(a){this.a=a} +function As(a){this.a=a} +function Ns(a){this.a=a} +function Eu(a){this.a=a} +function $u(a){this.a=a} +function Vu(a){this.b=a} +function dv(a){this.a=a} +function hv(a){this.a=a} +function mv(a){this.a=a} +function Hv(a){this.a=a} +function Mv(a){this.a=a} +function Rv(a){this.a=a} +function bA(){this.jc()} +function gA(){this.kc()} +function ir(){return Hl} +function fh(a,b){a.J=b} +function hh(a,b){a.P=b} +function kh(a,b){a.O=b} +function Eq(a,b){a.h=b} +function Fq(a,b){a.l=b} +function Gq(a,b){a.m=b} +function Og(a,b,c){a.u[b]=c} +function bh(a,b){a.G[b]|=AB} +function lh(a,b){a.s[b]|=dB} +function wu(a){++a.b;Mw(a)} +function xu(a){--a.b;Mw(a)} +function xk(){this.a=new aw} +function ml(){this.a=new aw} +function mx(){mx=jq;lx=ox()} +function Mx(){yx.call(this)} +function Ux(){yx.call(this)} +function cx(){Xw.call(this)} +function Wx(){sl.call(this)} +function Dr(){sl.call(this)} +function ys(){sl.call(this)} +function ht(){sl.call(this)} +function Nw(){sl.call(this)} +function Fr(){Dr.call(this)} +function Py(){this.a=new ny} +function Uy(){this.a=new aw} +function vl(){vl=jq;ul=new ac} +function Pl(){Pl=jq;Ol=new Sl} +function um(){um=jq;tm=new wm} +function $t(){$t=jq;Zt=new tr} +function Gw(){Gw=jq;Fw=new Iw} +function pw(a){qw(a,a.length)} +function tw(a){sw(a,a.length)} +function fy(a){a.b=null;a.c=0} function Cg(a,b){a.o=b;a.Q=0} function Dg(a,b){a.p=b;a.Q=0} -function Tg(a,b){a.s[b]|=512} -function Ax(c,a,b){c.a[a]=b} -function st(a,b){return a===b} +function Ug(a,b){a.s[b]|=512} +function xx(c,a,b){c.a[a]=b} +function pt(a,b){return a===b} function ce(a,b){return a.e[b]} function Of(a,b){return a.q[b]} function Vf(a,b){return a.v[b]} @@ -114,811 +114,813 @@ function _f(a,b){return a.C[b]} function ag(a,b){return a.D[b]} function lg(a,b){return a.H[b]} function mg(a,b){return a.I[b]} -function uh(a,b){return a.c[b]} -function wh(a,b){return a.k[b]} -function Dh(a,b){return a.g[b]} -function rj(a,b){return a.b[b]} -function sj(a,b){return a.c[b]} -function wj(a,b){return a.e[b]} -function zj(a,b){return a.f[b]} -function $s(a){return a<0?-a:a} -function lA(){return Zj(),Xj} -function lt(a){rl.call(this,a)} -function jt(a){rl.call(this,a)} -function Hr(a){rl.call(this,a)} -function Jr(a){rl.call(this,a)} -function Cs(a){rl.call(this,a)} -function du(a){rl.call(this,a)} -function rl(a){pl.call(this,a)} -function Oi(a){Pi.call(this,a)} -function mt(a){Cs.call(this,a)} -function _t(a){Dr.call(this,a)} -function Tt(){Dr.call(this,'')} -function Zt(){Dr.call(this,'')} -function $t(){Dr.call(this,'')} -function yy(a){Kv.call(this,a)} -function $w(){this.a=this.Gb()} -function Bx(){this.a=this.Lb()} -function ny(a){return !!a&&a.b} +function vh(a,b){return a.c[b]} +function xh(a,b){return a.k[b]} +function Eh(a,b){return a.g[b]} +function sj(a,b){return a.b[b]} +function tj(a,b){return a.c[b]} +function xj(a,b){return a.e[b]} +function Aj(a,b){return a.f[b]} +function Xs(a){return a<0?-a:a} +function iA(){return $j(),Yj} +function tl(a){rl.call(this,a)} +function Er(a){tl.call(this,a)} +function Gr(a){tl.call(this,a)} +function zs(a){tl.call(this,a)} +function gt(a){tl.call(this,a)} +function it(a){tl.call(this,a)} +function au(a){tl.call(this,a)} +function Pi(a){Qi.call(this,a)} +function jt(a){zs.call(this,a)} +function Yt(a){Ar.call(this,a)} +function Qt(){Ar.call(this,'')} +function Wt(){Ar.call(this,'')} +function Xt(){Ar.call(this,'')} +function vy(a){Hv.call(this,a)} +function Xw(){this.a=this.Gb()} +function yx(){this.a=this.Lb()} +function ky(a){return !!a&&a.b} function ud(a){return vd(a,a._)} -function Tm(a,b){return js(a,b)} -function ct(a,b){return a>b?a:b} -function dt(a,b){return a>b?a:b} -function ft(a,b){return ab?a:b} +function at(a,b){return a>b?a:b} +function ct(a,b){return a>24} -function et(a){return 24>24} +function bt(a){return 240} -function zr(a,b){return rt(a.a,b)} -function ar(a){return a.l|a.m<<22} -function _s(a){return Math.cos(a)} -function ht(a){return Math.sin(a)} -function eu(a,b){return Cm(a.a,b)} -function Wy(a,b){return Yv(a.a,b)} -function Ev(a,b){return !!jy(a,b)} -function en(a){return dn(a)&&nr(a)} -function Sf(a,b){return yf[a.D[b]]} -function Uf(a,b){return $s(a.u[b])} -function tg(a,b){return ph(a.D[b])} -function Ig(a,b){a.s[b]|=CB;a.Q&=3} -function Pg(a,b,c){a.v[b]=c;a.Q&=3} -function Vg(a,b,c){a.A[b]=c;a.Q&=3} -function Wg(a,b,c){a.B[b]=c;a.Q&=3} -function Xg(a,b,c){a.C[b]=c;a.Q&=3} -function wi(a,b){this.a=a;this.b=b} -function Ai(a,b){this.b=a;this.a=b} -function yr(a){this.b=a;this.a=0} -function vr(a){this.b=a;this.a=-2} -function Nz(a){this.a=a;this.ac()} -function zv(a,b){this.c=a;this.d=b} -function pl(a){this.f=a;ll(this)} -function Ix(a,b){this.b=a;this.c=b} -function Lx(a,b){this.a=a;this.b=b} -function Hy(a,b){this.a=a;this.b=b} -function Ow(a,b){a._gwt_modCount=b} -function Ot(){Ot=mq;Lt={};Nt={}} -function Ll(){zl!=0&&(zl=0);Cl=-1} -function jr(){hr==null&&(hr=[])} -function qy(){ry.call(this,null)} -function it(a){return Math.sqrt(a)} -function Wu(a){return a.a0} +function wr(a,b){return ot(a.a,b)} +function Zq(a){return a.l|a.m<<22} +function Ys(a){return Math.cos(a)} +function et(a){return Math.sin(a)} +function bu(a,b){return Cm(a.a,b)} +function Ty(a,b){return Vv(a.a,b)} +function Bv(a,b){return !!gy(a,b)} +function bn(a){return an(a)&&kr(a)} +function Tf(a,b){return yf[a.D[b]]} +function tg(a,b){return qh(a.D[b])} +function Ig(a,b){a.s[b]|=zB;a.Q&=3} +function Qg(a,b,c){a.v[b]=c;a.Q&=3} +function Wg(a,b,c){a.A[b]=c;a.Q&=3} +function Xg(a,b,c){a.B[b]=c;a.Q&=3} +function Yg(a,b,c){a.C[b]=c;a.Q&=3} +function xi(a,b){this.a=a;this.b=b} +function Bi(a,b){this.b=a;this.a=b} +function vr(a){this.b=a;this.a=0} +function sr(a){this.b=a;this.a=-2} +function Kz(a){this.a=a;this.ac()} +function wv(a,b){this.c=a;this.d=b} +function rl(a){this.f=a;nl(this)} +function Fx(a,b){this.b=a;this.c=b} +function Ix(a,b){this.a=a;this.b=b} +function Ey(a,b){this.a=a;this.b=b} +function Lw(a,b){a._gwt_modCount=b} +function Lt(){Lt=jq;It={};Kt={}} +function Nl(){Bl!=0&&(Bl=0);El=-1} +function gr(){er==null&&(er=[])} +function ny(){oy.call(this,null)} +function ft(a){return Math.sqrt(a)} +function Tu(a){return a.ab?1:0} -function Bt(a){return It(a,0,a.length)} -function Kt(a){return Dt(a,0,a.length)} -function dn(a){return Array.isArray(a)} -function Rf(a,b){return (a.s[b]&wB)>>19} -function hg(a,b){return (a.G[b]&yB)>>10} +function Dh(a,b,c){return a.f[b][c]} +function Fh(a,b,c){return a.i[b][c]} +function Gh(a,b,c){return a.j[b][c]} +function Ms(a,b){return Os(a.a,b.a)} +function Cv(a,b){return ru(gy(a,b))} +function rt(b,a){return b.indexOf(a)} +function Zs(a){return Math.floor(a)} +function ru(a){return !a?null:a.Db()} +function dn(a){return a==null?null:a} +function Rh(a){yk(a,3);return a.n} +function Rt(a,b){a.a+=Ym(b);return a} +function Cw(a,b){yw(a,0,a.length,b)} +function yr(a,b,c){xr(a,b,b+1,Gt(c))} +function iw(a,b,c,d){a.splice(b,c,d)} +function Ml(a){$wnd.clearTimeout(a)} +function Dk(a){yk(a,7);return ud(a.b)} +function Ck(a){yk(a,7);return wd(a.b)} +function lm(a){if(!a){throw new ys}} +function Pr(a){if(!a){throw new ys}} +function nm(a){if(!a){throw new Wx}} +function ek(){$j();this.g=new Xj;ak()} +function Iy(){Ey.call(this,'Head',1)} +function Ny(){Ey.call(this,'Tail',3)} +function lr(){$wnd.setTimeout(PA(mr))} +function Ky(){Ey.call(this,'Range',2)} +function uq(a){return vq(a.l,a.m,a.h)} +function Yx(a){return a!=null?gc(a):0} +function Kr(a,b){return a==b?0:a?1:-1} +function dt(a,b){return Math.pow(a,b)} +function jw(a,b){jm(b);return mw(a,b)} +function kw(a,b){jm(b);return nw(a,b)} +function qg(a,b){return (a.s[b]&zB)!=0} +function ug(a,b){return (a.s[b]&eB)!=0} +function sg(a,b){return (a.G[b]&AB)!=0} +function ai(a,b){return (a.s[b]&vB)!=0} +function ei(a,b){return (a.s[b]&WA)!=0} +function Xh(a,b){return (a.s[b]&SA)!=0} +function bi(a,b){return (a.G[b]&64)!=0} +function Bs(a,b){return ab?1:0} +function yt(a){return Ft(a,0,a.length)} +function Ht(a){return At(a,0,a.length)} +function an(a){return Array.isArray(a)} +function Sf(a,b){return (a.s[b]&tB)>>19} +function hg(a,b){return (a.G[b]&vB)>>10} function fg(a,b){return (a.H[b]&960)>>6} function wg(a,b){return (a.s[b]&512)!=0} -function Xh(a,b){return (a.G[b]&256)!=0} -function Zh(a,b){return (a.G[b]&512)!=0} -function ci(a,b){return (a.G[b]&128)!=0} -function od(a){a.r=new Zt;a.q=6;a.s=0} -function jx(a){this.a=a;dw.call(this)} -function Vx(a){this.a=a;dw.call(this)} -function Vd(){this.d=Um(pn,XA,0,3,6,1)} -function dw(){this.b=Um(Ro,cB,1,0,3,1)} -function xm(){xm=mq;vm((um(),um(),tm))} -function ow(a,b){jm(b);return rw(a,0,b)} -function Ah(a){wk(a,1);return bg(a,a.e)} -function kq(a){var b=jq;return sq(b[a])} -function Sw(a){var b;b=gc(a);return ~~b} -function ej(a,b,c){a.c=b;return gj(a,c)} -function Ct(a,b,c){return a.substr(b,c)} -function yq(a,b,c){return {l:a,m:b,h:c}} -function Kq(a){return a.l+a.m*_B+a.h*aC} -function Il(a){return a.$H||(a.$H=++Al)} -function Xr(a){return a>=56320&&a<=57343} -function fn(a){return typeof a==='string'} -function fj(a){return a.length==0?0:vs(a)} -function wt(b,a){return b.lastIndexOf(a)} -function rt(b,a){return b.charCodeAt(a)} -function vt(c,a,b){return c.indexOf(a,b)} -function zt(a,b,c){return a.substr(b,c-b)} -function yt(a,b){return Ct(a,b,a.length-b)} +function Yh(a,b){return (a.G[b]&256)!=0} +function $h(a,b){return (a.G[b]&512)!=0} +function di(a,b){return (a.G[b]&128)!=0} +function od(a){a.r=new Wt;a.q=6;a.s=0} +function gx(a){this.a=a;aw.call(this)} +function Sx(a){this.a=a;aw.call(this)} +function Vd(){this.d=Rm(mn,UA,0,3,6,1)} +function aw(){this.b=Rm(Oo,_A,1,0,3,1)} +function xm(){xm=jq;vm((um(),um(),tm))} +function lw(a,b){jm(b);return ow(a,0,b)} +function Bh(a){yk(a,1);return bg(a,a.e)} +function hq(a){var b=gq;return pq(b[a])} +function Pw(a){var b;b=gc(a);return ~~b} +function fj(a,b,c){a.c=b;return hj(a,c)} +function zt(a,b,c){return a.substr(b,c)} +function vq(a,b,c){return {l:a,m:b,h:c}} +function Hq(a){return a.l+a.m*YB+a.h*ZB} +function Kl(a){return a.$H||(a.$H=++Cl)} +function Ur(a){return a>=56320&&a<=57343} +function cn(a){return typeof a==='string'} +function gj(a){return a.length==0?0:ss(a)} +function tt(b,a){return b.lastIndexOf(a)} +function ot(b,a){return b.charCodeAt(a)} +function st(c,a,b){return c.indexOf(a,b)} +function wt(a,b,c){return a.substr(b,c-b)} +function vt(a,b){return zt(a,b,a.length-b)} function rg(a,b){return (a.H[b]&16320)!=0} -function $l(a){Wl();return parseInt(a)||Ul} -function nz(a){kz();this.Xb();this.a=a} +function $l(a){Wl();return parseInt(a)||-1} +function kz(a){hz();this.Xb();this.a=a} function Lm(a){xm();Km.call(this,a,true)} -function uy(a){vy.call(this,a,(Gy(),Cy))} -function ll(a){a.g=null;Xl(a,a.f);return a} -function Pk(a){a.c==null&&Mk(a);return a.c} -function _r(a){if(a.k!=null){return}ns(a)} -function _m(a){return String.fromCharCode(a)} -function Ls(a,b){return (a>>>0).toString(b)} -function Nf(a,b){return ((a.s[b]&vB)>>>28)-1} +function ry(a){sy.call(this,a,(Dy(),zy))} +function nl(a){a.g=null;Xl(a,a.f);return a} +function Rk(a){a.c==null&&Ok(a);return a.c} +function Yr(a){if(a.k!=null){return}ks(a)} +function Ym(a){return String.fromCharCode(a)} +function Is(a,b){return (a>>>0).toString(b)} +function Nf(a,b){return ((a.s[b]&sB)>>>28)-1} function Hg(a,b){a.s[b]&=-449;a.s[b]|=448} -function Zg(a,b,c){a.G[b]&=-49;a.G[b]|=c<<4} -function Rg(a,b,c){a.w[b]|=c;a.Q&=1;a.K=true} -function bh(a,b,c){a.H[b]|=c;a.Q&=1;a.K=true} -function Ud(a,b){a.a=b;a.c=0;a.b=63;ww(a.d)} -function Rd(a,b){a.d[a.c]=Nq(a.d[a.c],Rq(b))} -function sv(a,b){var c;c=a.d;a.d=b;return c} +function $g(a,b,c){a.G[b]&=-49;a.G[b]|=c<<4} +function Sg(a,b,c){a.w[b]|=c;a.Q&=1;a.K=true} +function dh(a,b,c){a.H[b]|=c;a.Q&=1;a.K=true} +function Ud(a,b){a.a=b;a.c=0;a.b=63;tw(a.d)} +function Rd(a,b){a.d[a.c]=Kq(a.d[a.c],Oq(b))} +function pv(a,b){var c;c=a.d;a.d=b;return c} function vm(a){!a.a&&(a.a=new Nm);return a.a} -function fv(a){var b;b=Mu(a.a);return b.Cb()} -function Os(){Os=mq;Ns=Um(Lo,cB,21,256,0,1)} -function Ys(){Ys=mq;Xs=Um(Mo,cB,35,256,0,1)} -function kz(){kz=mq;jz=(!uA&&(uA=new BA),uA)} -function cm(){cm=mq;Error.stackTraceLimit=64} -function yA(a){!a.e&&(a.e=new dk);return a.e} -function zA(a){!a.f&&(a.f=new jk);return a.f} -function AA(a){!a.g&&(a.g=new pk);return a.g} -function vA(a){!a.a&&(a.a=new ef);return a.a} -function xA(a){!a.d&&(a.d=new ij);return a.d} -function es(a){var b;b=ds(a);rs(a,b);return b} -function gs(){var a;a=ds(null);a.e=2;return a} -function cn(a){return a!=null&&!fn(a)&&!nr(a)} -function Jt(a){return String.fromCharCode(a)} -function xt(c,a,b){return c.lastIndexOf(a,b)} -function vh(a,b){return a.c[b]-a.g[b]+Lh(a,b)} +function cv(a){var b;b=Ju(a.a);return b.Cb()} +function Ls(){Ls=jq;Ks=Rm(Io,_A,21,256,0,1)} +function Vs(){Vs=jq;Us=Rm(Jo,_A,35,256,0,1)} +function hz(){hz=jq;gz=(!rA&&(rA=new yA),rA)} +function cm(){cm=jq;Error.stackTraceLimit=64} +function vA(a){!a.e&&(a.e=new ek);return a.e} +function sA(a){!a.a&&(a.a=new ef);return a.a} +function uA(a){!a.d&&(a.d=new jj);return a.d} +function wA(a){!a.f&&(a.f=new kk);return a.f} +function xA(a){!a.g&&(a.g=new rk);return a.g} +function bs(a){var b;b=as(a);os(a,b);return b} +function ds(){var a;a=as(null);a.e=2;return a} +function _m(a){return a!=null&&!cn(a)&&!kr(a)} +function Gt(a){return String.fromCharCode(a)} +function ut(c,a,b){return c.lastIndexOf(a,b)} +function wh(a,b){return a.c[b]-a.g[b]+Mh(a,b)} function xg(a,b){return a.I[b]==17||a.I[b]==9} -function Tf(a,b){return a.t==null?null:a.t[b]} -function Dl(a,b,c){return a.apply(b,c);var d} -function Rs(a,b){return Uq(a,b)?-1:Sq(a,b)?1:0} -function bt(a){return Math.log(a)*Math.LOG10E} -function qr(a,b){this.e=b;this.f=a;ll(this)} -function hy(){dy();this.a=6122;this.b=12230397} -function fz(a){Hi();Li.call(this,a);this.Tb()} -function mz(){kz();nz.call(this,new Fk(32,32))} -function Fr(){rl.call(this,'divide by zero')} -function km(a,b){if(!a){throw new Jr(''+b)}} -function $y(a,b){if(a<0||a>=b){throw new Ir}} -function oq(a,b){if(!b){return a}return _q(a)} -function ov(a){var b;b=Xu(a.a.a);return b.Db()} -function Tv(a){var b;b=Xu(a.a.a);return b.Cb()} -function Zv(a,b){om(b,a.b.length);return a.b[b]} -function Yv(a,b){a.b[a.b.length]=b;return true} -function Ew(a){Bw(a,0,a.length,(Jw(),Jw(),Iw))} -function rz(a,b){return new nz(ri(wA(jz,b),a))} -function Jh(a,b){return og(a,b)+ng(a,b)-Mh(a,b)} -function zh(a,b){return !!a.n&&b=b){throw new Fr}} +function lq(a,b){if(!b){return a}return Yq(a)} +function lv(a){var b;b=Uu(a.a.a);return b.Db()} +function Qv(a){var b;b=Uu(a.a.a);return b.Cb()} +function Wv(a,b){om(b,a.b.length);return a.b[b]} +function Vv(a,b){a.b[a.b.length]=b;return true} +function Bw(a){yw(a,0,a.length,(Gw(),Gw(),Fw))} +function oz(a,b){return new kz(si(tA(gz,b),a))} +function Kh(a,b){return og(a,b)+ng(a,b)-Nh(a,b)} +function Ah(a,b){return !!a.n&&b0){a>>=1;++b}return b} -function Dw(c){c.sort(function(a,b){return a-b})} -function Jl(a){$wnd.setTimeout(function(){throw a},0)} -function Lr(){Lr=mq;Kr=new Mr(false);new Mr(true)} -function xk(a){var b;b=new Fk(a.o,a.p);Kf(a,b);return b} +function Aw(c){c.sort(function(a,b){return a-b})} +function Ll(a){$wnd.setTimeout(function(){throw a},0)} +function Ir(){Ir=jq;Hr=new Jr(false);new Jr(true)} +function zk(a){var b;b=new Hk(a.o,a.p);Kf(a,b);return b} function vd(a,b){if(a.f==null){td(a);pd(a,b)}return a.f} -function Ok(a,b){if(a.b==null)return null;return a.b[b]} -function Rt(){if(Mt==256){Lt=Nt;Nt={};Mt=0}++Mt} -function mm(a,b){if(!a){throw new Cs(sm('%s > %s',b))}} -function Wz(a,b){this.ic();this.a=new Rk(new yr(a),b)} -function Rw(a,b){return gn(a)===gn(b)||a!=null&&cc(a,b)} -function $x(a,b){return gn(a)===gn(b)||a!=null&&cc(a,b)} -function ec(a){return fn(a)?Wo:an(a)?a.cZ:en(a)?a.cZ:co} -function xr(a){return a.a==a.b.length?-1:rt(a.b,a.a++)} +function Qk(a,b){if(a.b==null)return null;return a.b[b]} +function Ot(){if(Jt==256){It=Kt;Kt={};Jt=0}++Jt} +function mm(a,b){if(!a){throw new zs(sm('%s > %s',b))}} +function Tz(a,b){this.ic();this.a=new Tk(new vr(a),b)} +function Ow(a,b){return dn(a)===dn(b)||a!=null&&cc(a,b)} +function Xx(a,b){return dn(a)===dn(b)||a!=null&&cc(a,b)} +function ec(a){return cn(a)?To:Zm(a)?a.cZ:bn(a)?a.cZ:_n} +function ur(a){return a.a==a.b.length?-1:ot(a.b,a.a++)} function be(a,b){return a.f[b]&&(a.o[b]==1||a.o[b]==2)} -function Oq(a,b){return {l:a.l&b.l,m:a.m&b.m,h:a.h&b.h}} -function Xq(a,b){return {l:a.l|b.l,m:a.m|b.m,h:a.h|b.h}} -function pi(a,b,c){a.c=6;a.d=c;a.a=b;a.e=b[a.d]-64<<11} -function Yt(a,b,c){a.a=zt(a.a,0,b)+c+yt(a.a,b);return a} -function Xt(a,b,c){a.a=zt(a.a,0,b)+''+yt(a.a,c);return a} +function Lq(a,b){return {l:a.l&b.l,m:a.m&b.m,h:a.h&b.h}} +function Uq(a,b){return {l:a.l|b.l,m:a.m|b.m,h:a.h|b.h}} +function qi(a,b,c){a.c=6;a.d=c;a.a=b;a.e=b[a.d]-64<<11} +function Vt(a,b,c){a.a=wt(a.a,0,b)+c+vt(a.a,b);return a} +function Ut(a,b,c){a.a=wt(a.a,0,b)+''+vt(a.a,c);return a} function rd(a,b){if(!b){nd(a,1,1);nd(a,15,4)}return true} function Nd(a,b){if(a.c!=b.c)return a.c>b.c?1:-1;return 0} -function fs(a,b){var c;c=ds(a);rs(a,c);c.e=b?8:0;return c} -function Si(a,b){var c;c=Xi(a,b+1);return c==-1?a.length:c} -function Kw(a,b){pm(a);pm(b);return fn(a)?Et(a,b):a.bb(b)} -function Gd(a){var b;for(b=0;b>6)+((a.H[b]&15360)>>10)} -function jn(a){return ~~Math.max(Math.min(a,TA),-2147483648)} -function gc(a){return fn(a)?Qt(a):an(a)?a.hC():en(a)?Il(a):Il(a)} -function Vr(a){return null!=String.fromCharCode(a).match(/\d/)} -function sq(a){function b(){} +function fn(a){return ~~Math.max(Math.min(a,QA),-2147483648)} +function gc(a){return cn(a)?Nt(a):Zm(a)?a.hC():bn(a)?Kl(a):Kl(a)} +function Sr(a){return null!=String.fromCharCode(a).match(/\d/)} +function pq(a){function b(){} ;b.prototype=a||{};return new b} -function jv(a){var b;b=new uy((new yy(a.a)).a);return new pv(b)} -function Ov(a){var b;b=new uy((new yy(a.a)).a);return new Uv(b)} -function av(a){var b;b=new Nu((new Hu(a.a)).a);return new gv(b)} -function tz(a){kz();var b;b=new mz;lk(AA(jz),b.a,Ht(a));return b} -function gl(a,b){var c;c=a-b;c>=bB?(c-=aB):cbB)c-=aB;return c} -function tr(a){var b;if(a.a!=-2){b=a.a;a.a=-2}else{b=xr(a.b)}return b} -function _e(a){var b,c;for(c=0;c=$A?(c-=ZA):cb){throw new Er('Index: '+a+', Size: '+b)}} +function om(a,b){if(a<0||a>=b){throw new Er('Index: '+a+', Size: '+b)}} +function Vj(a,b){if(b.o==0){a.q=null;return}a.q=b;a.u=false;yk(a.q,1)} +function yh(a,b){var c;c=a.s[b]&vB;return c==0?0:c==1024?2:c==VA?3:4} +function Av(a,b){var c,d;c=b.Cb();d=gy(a,c);return !!d&&Xx(d.d,b.Db())} +function tq(a){var b,c,d;b=a&GB;c=a>>22&GB;d=a<0?VB:0;return vq(b,c,d)} +function qr(a){var b;if(a.a!=-2){b=a.a;a.a=-2}else{b=ur(a.b)}return b} +function jl(a,b){var c;c=ll(a,b);if(c<0){c=-(c+1);Uv(a.a,c,b)}return c} +function Yv(a,b){var c;c=(om(b,a.b.length),a.b[b]);hw(a.b,b,1);return c} +function $v(a,b,c){var d;d=(om(b,a.b.length),a.b[b]);a.b[b]=c;return d} function sf(a,b,c){var d;for(d=0;d>22&JB;d=a<0?YB:0;return yq(b,c,d)} -function Dv(a,b){var c,d;c=b.Cb();d=jy(a,c);return !!d&&$x(d.d,b.Db())} -function md(a,b){return ft(b-1,dt(0,jn(0.5+bt(a/0.1)/bt(2000)*(b-1))))} -function bi(a,b){return a.D[b]==1&&a.v[b]==0&&(a.r==null||a.r[b]==null)} -function Zr(a){return String.fromCharCode(a).toLowerCase().charCodeAt(0)} -function yl(){if(Date.now){return Date.now()}return (new Date).getTime()} -function rm(a,b){if(a<0||a>b){throw new Hr('Index: '+a+', Size: '+b)}} -function om(a,b){if(a<0||a>=b){throw new Hr('Index: '+a+', Size: '+b)}} -function Rk(a,b){Kk();this.c=b;this.g=new vr(a);this.f=new $t;this.a=new $t} -function vl(a){tl();this.e=null;this.f=null;this.a='';this.b=a;this.a=''} -function zy(a,b){zv.call(this,a,b);this.a=Um(Pp,cB,49,2,0,1);this.b=true} -function Hl(a){a&&Pl((Nl(),Ml));--zl;if(a){if(Cl!=-1){Kl(Cl);Cl=-1}}} +function Ne(a,b){var c;c=a-b;while(c$A)c-=ZA;return c} +function Dd(a,b){var c;c=Rm(ln,TA,0,b,7,1);_t(a,0,c,0,a.length);return c} +function Rm(a,b,c,d,e,f){var g;g=Vm(e,d);Um(Qm(a,f),b,c,e,g);return g} function wd(a){if(a.F==null){td(a);yd(a);Ad(a,1);Ad(a,2);xd(a)}return a.F} -function pq(a,b){if(!b){return a}if(typeof a=='number'){return Qq(a)}return a} -function nh(a,b){Bf();var c;c=a-b;while(cbB)c-=aB;return c} -function sz(a){kz();var b;b=new mz;ej(xA(jz),b.a,new vr(new yr(a)));return b} -function aw(a,b){var c;c=$v(a,b,0);if(c==-1){return false}a.Fb(c);return true} +function Jl(a){a&&Rl((Pl(),Ol));--Bl;if(a){if(El!=-1){Ml(El);El=-1}}} +function wy(a,b){wv.call(this,a,b);this.a=Rm(Mp,_A,49,2,0,1);this.b=true} +function Tk(a,b){Mk();this.c=b;this.g=new sr(a);this.f=new Xt;this.a=new Xt} +function xl(a){vl();this.e=null;this.f=null;this.a='';this.b=a;this.a=''} function xe(a,b){var c,d;d=a.j.k[b];c=a.j.j[b];return d==0?a.b:d==1?c:a.a+c} -function Ag(a,b){var c;for(c=0;c$A)c-=ZA;return c} +function pz(a){hz();var b;b=new jz;fj(uA(gz),b.a,new sr(new vr(a)));return b} +function mq(a,b){if(!b){return a}if(typeof a=='number'){return Nq(a)}return a} +function Xv(a,b,c){for(;ca.b+a.i&&zr(b,a.b+a.i)>=53){c=a.b+a.i-1;Im(a,b,c)}} -function Mi(a,b){var c,d;d=eu(a.a,b);for(c=d.length;c<10;c++)Ut(a.b,32);Wt(a.b,d)} -function yk(a){var b,c;b=Um(on,WA,0,a.o,7,1);c=Ih(a,b,false);return zk(a,b,c)} -function xw(a,b){var c;c=b-a;mm(c>=0,Xm(Tm(Ro,1),cB,1,3,[Ms(a),Ms(b)]));return c} +function Nh(a,b){var c,d;a.cb(1);d=0;for(c=0;ca.b+a.i&&wr(b,a.b+a.i)>=53){c=a.b+a.i-1;Im(a,b,c)}} +function ci(a,b){return a.D[b]==1&&a.v[b]==0&&(a.r==null||a.r[b]==null)} +function Rf(a,b){return (a.s[b]&tB)>>19!=1&&(a.s[b]&tB)>>19!=2?-1:(a.s[b]&uB)>>21} +function gg(a,b){return (a.G[b]&vB)>>10!=1&&(a.G[b]&vB)>>10!=2?-1:(a.G[b]&wB)>>12} +function md(a,b){return ct(b-1,at(0,fn(0.5+$s(a/0.1)/$s(2000)*(b-1))))} +function Wr(a){return String.fromCharCode(a).toLowerCase().charCodeAt(0)} +function Al(){if(Date.now){return Date.now()}return (new Date).getTime()} +function Dy(){Dy=jq;zy=new Ey('All',0);Ay=new Iy;By=new Ky;Cy=new Ny} +function dr(){dr=jq;_q=vq(GB,GB,524287);ar=vq(0,0,HB);br=Oq(1);Oq(2);cr=Oq(0)} +function yw(a,b,c,d){var e;!d&&(d=(Gw(),Gw(),Fw));e=ow(a,b,c);zw(e,a,b,c,-b,d)} +function bd(a,b,c){if(a.a==null){a.a=Rm(gn,bB,0,a.L.d,7,1);pw(a.a)}a.a[b]=en(c)} +function uw(a,b){var c;c=b-a;mm(c>=0,Um(Qm(Oo,1),_A,1,3,[Js(a),Js(b)]));return c} function ve(a,b){var c,d;c=0;for(d=0;d=d)c-=d;while(c<0)c+=d;return c} -function Bw(a,b,c,d){var e;!d&&(d=(Jw(),Jw(),Iw));e=rw(a,b,c);Cw(e,a,b,c,-b,d)} -function bd(a,b,c){if(a.a==null){a.a=Um(kn,eB,0,a.L.d,7,1);sw(a.a)}a.a[b]=hn(c)} -function Ol(a){var b,c;if(a.a){c=null;do{b=a.a;a.a=null;c=Sl(b,c)}while(a.a);a.a=c}} -function Pl(a){var b,c;if(a.b){c=null;do{b=a.b;a.b=null;c=Sl(b,c)}while(a.b);a.b=c}} +function Ji(a){var b,c;c=a.a;for(b=0;b=d)c-=d;while(c<0)c+=d;return c} +function Qj(a,b){var c;for(c=0;c0){for(e=d;e>10!=1&&(a.G[b]&yB)>>10!=2?-1:(a.G[b]&zB)>>12} -function Qf(a,b){return (a.s[b]&wB)>>19!=1&&(a.s[b]&wB)>>19!=2?-1:(a.s[b]&xB)>>21} -function zx(a,b){var c;c=a.a[b];if(!(c===undefined)){delete a.a[b];Au(a.b)}return c} -function Oe(a,b,c){var d,e;d=0;for(e=0;e0){for(e=d;e=d;e&&(a-=d);f=b/100;c=f*a/(d-1-a);return e?-c:c} -function qw(a,b){var c,d;d=xw(0,b);c=Um(on,WA,0,d,7,1);cu(a,0,c,0,ft(a.length,d));return c} -function pw(a,b){var c,d;d=xw(0,b);c=Um(nn,$A,0,d,7,1);cu(a,0,c,0,ft(a.length,d));return c} -function yx(a,b,c){var d;d=a.a[b];d===undefined&&zu(a.b);Ax(a,b,c===undefined?null:c);return d} -function py(a,b){var c,d;c=1-b;d=a.a[c];a.a[c]=d.a[b];d.a[b]=a;a.b=true;d.b=false;return d} -function jc(a,b){var c;for(c=0;c=d;e&&(a-=d);f=b/100;c=f*a/(d-1-a);return e?-c:c} +function yj(a,b,c){var d,e;e=Wv(a.i,b);for(d=0;db&&(a.a+=Kt(Um(ln,XA,0,-b,7,1)))} -function oc(a,b){var c,d;--a.a;for(d=0;d0&&++c;return c} -function Vq(a){var b,c,d;b=~a.l+1&JB;c=~a.m+(b==0?1:0)&JB;d=~a.h+(b==0&&c==0?1:0)&YB;return yq(b,c,d)} -function Fq(a){var b,c;c=Is(a.h);if(c==32){b=Is(a.m);return b==32?Is(a.l)+32:b+20-10}else{return c-12}} -function wA(a,b){if(b){!a.c&&(a.c=new vi(true));return a.c}else{!a.b&&(a.b=new vi(false));return a.b}} -function oy(a,b,c){var d,e;d=new zy(b,c);e=new Ay;a.b=my(a,a.b,d,e);e.b||++a.c;a.b.b=false;return e.d} -function jy(a,b){var c,d,e;e=a.b;while(e){c=Kw(b,e.c);if(c==0){return e}d=c<0?0:1;e=e.a[d]}return null} -function Nq(a,b){var c,d,e;c=a.l+b.l;d=a.m+b.m+(c>>22);e=a.h+b.h+(d>>22);return {l:c&JB,m:d&JB,h:e&YB}} -function $q(a,b){var c,d,e;c=a.l-b.l;d=a.m-b.m+(c>>22);e=a.h-b.h+(d>>22);return {l:c&JB,m:d&JB,h:e&YB}} -function Sm(a,b){var c;c=Ym(0,b);Xm(ec(a),a.cM,a.__elementTypeId$,a.__elementTypeCategory$,c);return c} -function Xm(a,b,c,d,e){e.cZ=a;e.cM=b;e.tM=uq;e.__elementTypeId$=c;e.__elementTypeCategory$=d;return e} +function Iu(a){if(a.a.xb()){return true}if(a.a!=a.b){return false}a.a=a.c.a.Hb();return a.a.xb()} +function Yq(a){if(Mq(a,(dr(),ar))){return $B}if(!Qq(a,cr)){return -Hq(Sq(a))}return a.l+a.m*YB+a.h*ZB} +function tA(a,b){if(b){!a.c&&(a.c=new wi(true));return a.c}else{!a.b&&(a.b=new wi(false));return a.b}} +function ly(a,b,c){var d,e;d=new wy(b,c);e=new xy;a.b=jy(a,a.b,d,e);e.b||++a.c;a.b.b=false;return e.d} +function lj(a){var b,c;c=0;for(b=0;b0&&++c;return c} +function zr(a){var b;b=a.a.length;0b&&(a.a+=Ht(Rm(hn,UA,0,-b,7,1)))} +function vu(a,b){return cn(b)?b==null?!!Tw(a.a,null):!(a.c.Mb(b)===undefined):!!Tw(a.a,b)} +function jr(a,b){typeof window==='object'&&typeof window['$gwt']==='object'&&(window['$gwt'][a]=b)} +function Um(a,b,c,d,e){e.cZ=a;e.cM=b;e.tM=rq;e.__elementTypeId$=c;e.__elementTypeCategory$=d;return e} +function Pm(a,b){var c;c=Vm(0,b);Um(ec(a),a.cM,a.__elementTypeId$,a.__elementTypeCategory$,c);return c} +function Cq(a){var b,c;c=Fs(a.h);if(c==32){b=Fs(a.m);return b==32?Fs(a.l)+32:b+20-10}else{return c-12}} +function Sq(a){var b,c,d;b=~a.l+1&GB;c=~a.m+(b==0?1:0)&GB;d=~a.h+(b==0&&c==0?1:0)&VB;return vq(b,c,d)} +function Kq(a,b){var c,d,e;c=a.l+b.l;d=a.m+b.m+(c>>22);e=a.h+b.h+(d>>22);return {l:c&GB,m:d&GB,h:e&VB}} +function Xq(a,b){var c,d,e;c=a.l-b.l;d=a.m-b.m+(c>>22);e=a.h-b.h+(d>>22);return {l:c&GB,m:d&GB,h:e&VB}} +function gy(a,b){var c,d,e;e=a.b;while(e){c=Hw(b,e.c);if(c==0){return e}d=c<0?0:1;e=e.a[d]}return null} function ue(a,b){var c;for(c=0;c>=1;--c;--a.q}} -function zm(a,b,c){if(a.d==0){b.a=zt(b.a,0,0)+'0'+yt(b.a,0);++a.b;++a.d}if(a.b>=1;--c;--a.q}} +function zm(a,b,c){if(a.d==0){b.a=wt(b.a,0,0)+'0'+vt(b.a,0);++a.b;++a.d}if(a.b-129&&a<128){b=a+128;c=(Ls(),Ks)[b];!c&&(c=Ks[b]=new As(a));return c}return new As(a)} +function du(a,b){var c,d;for(d=a.qb();d.xb();){c=d.yb();if(dn(b)===dn(c)||b!=null&&cc(b,c)){return true}}return false} +function pg(a,b){var c,d,e,f;f=3;for(d=0;d<2;d++){c=a.F[d][b];e=jg(a,b)+(og(a,c)+ng(a,c))-Nh(a,c);f>e&&(f=e)}return f} +function Bq(a){var b,c,d;b=~a.l+1&GB;c=~a.m+(b==0?1:0)&GB;d=~a.h+(b==0&&c==0?1:0)&VB;Fq(a,b);Gq(a,c);Eq(a,d)} +function Ki(a){var b,c;b=new Qt;for(c=0;c1&&Pt(b,''+a.b[c])}return b.a} +function xs(a){var b;b=rs(a);if(b>FB){return Infinity}else if(b<-3.4028234663852886E38){return -Infinity}return b} function Hc(a,b){if(wf(a)==-1||wf(b)==-1)return 3;if(((wf(a)|wf(b))&1)!=0)return 3;return wf(a)==wf(b)?1:2} function jg(a,b){switch(a.I[b]&103){case 1:case 64:return 1;case 2:return 2;case 4:return 3;default:return 0;}} -function Xi(a,b){var c;for(c=b;c-129&&a<128){b=a+128;c=(Os(),Ns)[b];!c&&(c=Ns[b]=new Ds(a));return c}return new Ds(a)} -function Qt(a){Ot();var b=':'+a;var c=Nt[b];if(c!=null){return c}c=Lt[b];c==null&&(c=Pt(a));Rt();return Nt[b]=c} -function Ur(a){if(a>=48&&a<58){return a-48}if(a>=97&&a<97){return a-97+10}if(a>=65&&a<65){return a-65+10}return -1} -function As(a){var b;b=us(a);if(b>IB){return Infinity}else if(b<-3.4028234663852886E38){return -Infinity}return b} -function gu(a,b){var c,d;for(d=a.qb();d.xb();){c=d.yb();if(gn(b)===gn(c)||b!=null&&cc(b,c)){return true}}return false} -function pg(a,b){var c,d,e,f;f=3;for(d=0;d<2;d++){c=a.F[d][b];e=jg(a,b)+(og(a,c)+ng(a,c))-Mh(a,c);f>e&&(f=e)}return f} -function ym(a,b){var c,d;b.a+='E';if(a.e<0){a.e=-a.e;b.a+='-'}c=''+a.e;for(d=c.length;d=d||bb&&d.ab(a[f-1],a[f])>0;--f){g=a[f];a[f]=a[f-1];a[f-1]=g}}} -function yi(a,b,c,d){var e,f,g;f=c-a;g=d-b;if(g!=0){e=Math.atan(f/g);g<0&&(f<0?(e-=bB):(e+=bB))}else e=f>0?tB:uB;return e} -function ne(a,b){var c,d;d=Um(on,WA,0,a==null?1:a.length+1,7,1);for(c=0;cd&&(b[d]=null);return b} -function Ji(a){var b,c;b=new Tt;for(c=0;c1&&St(b,''+a.b[c])}return b.a} -function Nc(a){var b,c;b=0;Ew(a.c);for(c=0;c>>28)-1;if(c==-1){d=a.D[b]=0&&c<=190){if(c==151||c==152){a.D[b]=1;a.v[b]=c-149}else{a.D[b]=c;a.v[b]=0}a.s[b]&=268435455;a.Q=0}} +function Rr(a){if(a>=48&&a<58){return a-48}if(a>=97&&a<97){return a-97+10}if(a>=65&&a<65){return a-65+10}return -1} +function $w(a){if(a.cd&&(b[d]=null);return b} +function zi(a,b,c,d){var e,f,g;f=c-a;g=d-b;if(g!=0){e=Math.atan(f/g);g<0&&(f<0?(e-=$A):(e+=$A))}else e=f>0?qB:rB;return e} +function ww(a,b,c,d){var e,f,g;for(e=b+1;eb&&d.ab(a[f-1],a[f])>0;--f){g=a[f];a[f]=a[f-1];a[f-1]=g}}} +function xw(a,b,c,d,e,f,g,h){var i;i=c;while(f=d||b' '&&a[a.length-1]>' '){return a}return a.replace(/^[\u0000-\u0020]*|[\u0000-\u0020]*$/g,'')} +function xq(a,b){if(a.h==HB&&a.m==0&&a.l==0){b&&(sq=vq(0,0,0));return uq((dr(),br))}b&&(sq=vq(a.l,a.m,a.h));return vq(0,0,0)} +function lu(a,b){var c,d,e;for(d=a.vb().qb();d.xb();){c=d.yb();e=c.Cb();if(dn(b)===dn(e)||b!=null&&cc(b,e)){return c}}return null} +function Tj(a,b){var c,d,e,f;e=0;f=0;while(e>16-c+b;a.e<<=1;--b;--a.c}return d} +function og(a,b){var c,d;c=((a.s[b]&sB)>>>28)-1;if(c==-1){d=a.D[b]=c+1&&a.splice(0,c+1),a}}return a} -function Hw(a){var b,c,d;d=1;for(c=a.qb();c.a=55296&&d<=56319&&b>16-c+b;a.e<<=1;--b;--a.c}return d} -function bf(a){var b,c;for(b=0;b=0&&c<=190){if(c==151||c==152){a.D[b]=1;a.v[b]=c-149}else{a.D[b]=c;a.v[b]=0}a.s[b]&=268435455;a.Q=0}} +function mj(b){var c;try{return Yk((new Zk,b.a))}catch(a){a=fq(a);if($m(a,10)){c=a;ol(c,$t());return -999}else throw eq(a)}} +function Xi(a,b){var c;if(b==-1){return -1}for(c=b+1;c2000){Dl=a;El=$wnd.setTimeout(Nl,10)}}if(Bl++==0){Ql((Pl(),Ol));return true}return false} +function qh(a){switch(a){case 7:case 8:case 9:case 15:case 16:case 17:case 33:case 34:case 35:case 53:return true;}return false} +function ik(a){switch(a){case 5:case 6:case 7:case 8:case 9:case 15:case 16:case 17:case 36:case 53:return true;default:return false;}} +function Zi(a){if(a.indexOf('ATOMS=(')!=-1)return 'ATOMS';if(a.indexOf('BONDS=(')!=-1)return 'BONDS';Ri&&($t(),Zt);return null} +function me(a,b,c,d,e,f,g,h,i,j){this.i=a;this.a=b;this.f=c;this.o=d;this.c=e;this.k=f;this.j=g;this.p=h;this.d=i;this.n=j;_d(this)} +function uf(a,b,c){this.r=a;this.p=b;this.a=Rm(ln,TA,0,c,7,1);this.q=Rm(ln,TA,0,c,7,1);this.c=Rm(jn,UA,0,c,7,1);this.d=Rm(jn,UA,0,c,7,1)} +function Ew(a){var b,c,d;d=1;for(c=a.qb();c.a=c+1&&a.splice(0,c+1),a}}return a} function Zd(a,b){var c,d;for(d=0;d-129&&a<128){b=a+128;Mq==null&&(Mq=Um(qo,cB,171,256,0,1));c=Mq[b];!c&&(c=Mq[b]=wq(a));return c}return wq(a)} -function El(){var a;if(zl!=0){a=yl();if(a-Bl>2000){Bl=a;Cl=$wnd.setTimeout(Ll,10)}}if(zl++==0){Ol((Nl(),Ml));return true}return false} -function ph(a){switch(a){case 7:case 8:case 9:case 15:case 16:case 17:case 33:case 34:case 35:case 53:return true;}return false} -function hk(a){switch(a){case 5:case 6:case 7:case 8:case 9:case 15:case 16:case 17:case 36:case 53:return true;default:return false;}} -function Yi(a){if(a.indexOf('ATOMS=(')!=-1)return 'ATOMS';if(a.indexOf('BONDS=(')!=-1)return 'BONDS';Qi&&(bu(),au);return null} -function ey(a,b){var c,d;lm(b>0);if((b&-b)==b){return jn(b*fy(a)*4.6566128730773926E-10)}do{c=fy(a);d=c%b}while(c-d+(b-1)<0);return jn(d)} -function At(a){if(a.length==0||a[0]>' '&&a[a.length-1]>' '){return a}return a.replace(/^[\u0000-\u0020]*|[\u0000-\u0020]*$/g,'')} -function Oh(a,b,c,d){var e,f;wk(a,1);for(e=0;e=55296&&d<=56319&&b-129&&a<128){b=a+128;Jq==null&&(Jq=Rm(no,_A,171,256,0,1));c=Jq[b];!c&&(c=Jq[b]=tq(a));return c}return tq(a)} +function Je(a,b){var c,d;d=0;yw(a,0,a.length,(Gw(),Gw(),Fw));for(c=0;ce&&(b[e]=null);return b} +function Th(a,b){var c,d,e;e=Rm(ln,TA,0,a.c[b],7,1);for(d=0;de&&(b[e]=null);return b} -function Qj(a,b){var c,d,e;e=0;for(d=0;dc)return false}return true} -function ie(a,b,c,d){var e,f;for(f=0;fc)return false}return true} +function $d(a,b,c){var d,e,f,g,h;e=0;g=0;for(h=0;h=fB){b=55296+(a-fB>>10&1023)&iB;c=56320+(a-fB&1023)&iB;return Jt(b)+Jt(c)}else{return String.fromCharCode(a&iB)}} -function Yr(a,b,c){Sr(a>=0&&a<=1114111);if(a>=fB){b[c++]=55296+(a-fB>>10&1023)&iB;b[c]=56320+(a-fB&1023)&iB;return 2}else{b[c]=a&iB;return 1}} -function bj(a,b){var c,d,e;if(!a.c){if(st(b.substr(0,6),'COUNTS')){c=Wi(b,Xi(b,7));d=vs(zt(b,7,Xi(b,7)));e=vs(zt(b,c,Xi(b,c)));a.c=new Fk(d,e)}}} -function nu(a,b){var c,d,e;for(d=new uy((new yy(a)).a);Wu(d.a);){c=Xu(d.a);e=c.Db();if(gn(b)===gn(e)||b!=null&&cc(b,e)){return true}}return false} -function mu(a,b){var c,d,e;c=b.Cb();e=b.Db();d=a.wb(c);if(!(gn(e)===gn(d)||e!=null&&cc(e,d))){return false}if(d==null&&!a.ub(c)){return false}return true} -function ly(a,b,c,d,e,f,g){var h,i;if(b.Rb()&&(h=Kw(c,d),h<0||!e&&h==0)){return false}if(b.Sb()&&(i=Kw(c,f),i>0||!g&&i==0)){return false}return true} -function mk(a,b){var c,d,e;mg(a.b,b)==1&&dh(a.b,b,2);for(d=0;d<2;d++){c=dg(a.b,d,b);Og(a.b,c,false);for(e=0;e=6)for(c=0;c0);if((b&-b)==b){return fn(b*cy(a)*4.6566128730773926E-10)}do{c=cy(a);d=c%b}while(c-d+(b-1)<0);return fn(d)} +function Kg(a,b,c){c!=null&&c.length==0&&(c=null);if(c==null){a.r!=null&&(a.r[b]=null)}else{a.r==null&&(a.r=Rm(gn,_A,8,a.M,0,2));a.r[b]=c}} +function Xd(a,b,c,d){var e,f;this.a=Rm(ln,TA,0,b,7,1);this.b=Rm(ln,TA,0,d,7,1);for(e=0;e=cB){b=55296+(a-cB>>10&1023)&fB;c=56320+(a-cB&1023)&fB;return Gt(b)+Gt(c)}else{return String.fromCharCode(a&fB)}} +function Vr(a,b,c){Pr(a>=0&&a<=1114111);if(a>=cB){b[c++]=55296+(a-cB>>10&1023)&fB;b[c]=56320+(a-cB&1023)&fB;return 2}else{b[c]=a&fB;return 1}} +function cj(a,b){var c,d,e;if(!a.c){if(pt(b.substr(0,6),'COUNTS')){c=Xi(b,Yi(b,7));d=ss(wt(b,7,Yi(b,7)));e=ss(wt(b,c,Yi(b,c)));a.c=new Hk(d,e)}}} +function ku(a,b){var c,d,e;for(d=new ry((new vy(a)).a);Tu(d.a);){c=Uu(d.a);e=c.Db();if(dn(b)===dn(e)||b!=null&&cc(b,e)){return true}}return false} +function ju(a,b){var c,d,e;c=b.Cb();e=b.Db();d=a.wb(c);if(!(dn(e)===dn(d)||e!=null&&cc(e,d))){return false}if(d==null&&!a.ub(c)){return false}return true} +function iy(a,b,c,d,e,f,g){var h,i;if(b.Rb()&&(h=Hw(c,d),h<0||!e&&h==0)){return false}if(b.Sb()&&(i=Hw(c,f),i>0||!g&&i==0)){return false}return true} +function nk(a,b){var c,d,e;mg(a.b,b)==1&&eh(a.b,b,2);for(d=0;d<2;d++){c=dg(a.b,d,b);Pg(a.b,c,false);for(e=0;e=6)for(c=0;c8&&(d=g);e=oi(a,d);f=oi(a,g);h=new Fk(e,f);ui(a,h,b,c);return h} -function Km(a,b){if(!a){throw new Cs('Unknown currency code')}this.s='0.0000';this.a=a;Fm(this,this.s);if(!b&&this.g){this.n=this.a[2]&7;this.i=this.n}} -function qz(a,b){kz();if(arguments.length===1){return rz(a,true)}else if(typeof b==='boolean'){return rz(a,b)}else{return new nz(si(wA(jz,false),a,b))}} -function Dq(a,b){var c,d,e;if(b<=22){c=a.l&(1<f)&&(a.b[b[e]]=f);for(d=0;df)&&(a.c[c[d]]=f)} -function ic(a){var b,c,d;a.e=0;d=Um(eq,UA,0,a.d.d,8,1);for(b=0;b0?1.5707963705062866:-1.5707963705062866;return e} -function Lq(a,b){var c,d,e;e=a.h-b.h;if(e<0){return false}c=a.l-b.l;d=a.m-b.m+(c>>22);e+=d>>22;if(e<0){return false}Iq(a,c&JB);Jq(a,d&JB);Hq(a,e&YB);return true} -function ju(a){var b,c,d,e;e=new _t('[');b=false;for(d=a.qb();d.xb();){c=d.yb();b?(e.a+=', ',e):(b=true);e.a+=c===a?'(this Collection)':''+c}e.a+=']';return e.a} -function nq(e,f,g){return function(){var a=[];for(var b=0;b0&&(d[~~(c/32)]|=1<<31-c%32)}return d} -function Wk(b){var c,d,e;d=0;ei(b);wk(b,3);for(c=0;c=0){e=rt(b.a,c);if(e==57){Br(b,c--,48)}else{Br(b,c,e+1&iB);d=false}}if(d){b.a=zt(b.a,0,0)+'1'+yt(b.a,0);++a.b;++a.d}} -function Wm(a,b,c,d,e,f,g){var h,i,j,k,l;k=e[f];j=f==g-1;h=j?d:0;l=Ym(h,k);Xm(Tm(a,g-f),b[f],c[f],h,l);if(!j){++f;for(i=0;ia.d&&(d=a.d);while(d>c&&rt(b.a,d-1)==48){--d}if(d8&&(d=g);e=pi(a,d);f=pi(a,g);h=new Hk(e,f);vi(a,h,b,c);return h} +function Km(a,b){if(!a){throw new zs('Unknown currency code')}this.s='0.0000';this.a=a;Fm(this,this.s);if(!b&&this.g){this.n=this.a[2]&7;this.i=this.n}} +function nz(a,b){hz();if(arguments.length===1){return oz(a,true)}else if(typeof b==='boolean'){return oz(a,b)}else{return new kz(ti(tA(gz,false),a,b))}} +function Aq(a,b){var c,d,e;if(b<=22){c=a.l&(1<f)&&(a.b[b[e]]=f);for(d=0;df)&&(a.c[c[d]]=f)} +function ic(a){var b,c,d;a.e=0;d=Rm(bq,RA,0,a.d.d,8,1);for(b=0;b0?1.5707963705062866:-1.5707963705062866;return e} +function Iq(a,b){var c,d,e;e=a.h-b.h;if(e<0){return false}c=a.l-b.l;d=a.m-b.m+(c>>22);e+=d>>22;if(e<0){return false}Fq(a,c&GB);Gq(a,d&GB);Eq(a,e&VB);return true} +function gu(a){var b,c,d,e;e=new Yt('[');b=false;for(d=a.qb();d.xb();){c=d.yb();b?(e.a+=', ',e):(b=true);e.a+=c===a?'(this Collection)':''+c}e.a+=']';return e.a} +function kq(e,f,g){return function(){var a=[];for(var b=0;b0&&(d[~~(c/32)]|=1<<31-c%32)}return d} +function Yk(b){var c,d,e;d=0;fi(b);yk(b,3);for(c=0;c=0){e=ot(b.a,c);if(e==57){yr(b,c--,48)}else{yr(b,c,e+1&fB);d=false}}if(d){b.a=wt(b.a,0,0)+'1'+vt(b.a,0);++a.b;++a.d}} +function Tm(a,b,c,d,e,f,g){var h,i,j,k,l;k=e[f];j=f==g-1;h=j?d:0;l=Vm(h,k);Um(Qm(a,g-f),b[f],c[f],h,l);if(!j){++f;for(i=0;ia.d&&(d=a.d);while(d>c&&ot(b.a,d-1)==48){--d}if(d=-1&&c<=14){a.s[b]&=268435455;a.s[b]|=1+c<<28}}} -function Fj(a){var b,c;a.a=null;for(b=0;b=0;b--){by[b]=d;d*=0.5}c=1;for(a=24;a>=0;a--){ay[a]=c;c*=0.5}} -function ek(a){a=(a&1431655765)+(a>>>1&1431655765);a=(a&858993459)+(a>>>2&858993459);a=(a&117901063)+(a>>>4&117901063);a=(a&983055)+(a>>>8&983055);return (a&31)+(a>>>16)} -function DA(a){var b,c,d,e;CA(a);d=a.o;c=Um(Wo,cB,2,d,4,1);for(b=0;b=0;b--){$x[b]=d;d*=0.5}c=1;for(a=24;a>=0;a--){Zx[a]=c;c*=0.5}} +function fk(a){a=(a&1431655765)+(a>>>1&1431655765);a=(a&858993459)+(a>>>2&858993459);a=(a&117901063)+(a>>>4&117901063);a=(a&983055)+(a>>>8&983055);return (a&31)+(a>>>16)} +function Vm(a,b){var c=new Array(b);var d;switch(a){case 6:d={l:0,m:0,h:0};break;case 7:d=0;break;case 8:d=false;break;default:return c;}for(var e=0;e1&&fd(c,d,g,j)}return false} -function Yw(a,b){var c,d,e,f,g;c=(g=a.a,g['0']||(g['0']=[]));for(e=0,f=c.length;e999){Wt(a.b,' ?');return}c=false;for(d=0;d<3;d++){e=~~(b/100);if(e==0){d==2||c?Ut(a.b,48):Ut(a.b,32)}else{Ut(a.b,48+e&iB);c=true}b=10*(b%100)}} -function Hj(a,b){var c,d,e;if(a.a){for(d=new Yu(a.a);d.ac.c)return false}}return true} -function Td(a,b){var c;if(a.c!=b.c)return a.c=2147483648&&(c-=4294967296);return c} -function Zm(a,b,c,d,e,f){if(a===c){a=a.slice(b,b+e);b=0}for(var g=b,h=b+e;g>19;d=b.h>>19;return c==0?d!=0||a.h>b.h||a.h==b.h&&a.m>b.m||a.h==b.h&&a.m==b.m&&a.l>b.l:!(d==0||a.h>19;d=b.h>>19;return c==0?d!=0||a.h>b.h||a.h==b.h&&a.m>b.m||a.h==b.h&&a.m==b.m&&a.l>=b.l:!(d==0||a.h0?tB:uB;else{f=Math.atan(g/c);c<0&&(f+=bB)}e=Math.sqrt(g*g+c*c)/b;return new wi(f,e)} -function Yq(a,b){var c,d,e;b&=63;if(b<22){c=a.l<>22-b;e=a.h<>22-b}else if(b<44){c=0;d=a.l<>44-b}else{c=0;d=0;e=a.l<999){Tt(a.b,' ?');return}c=false;for(d=0;d<3;d++){e=~~(b/100);if(e==0){d==2||c?Rt(a.b,48):Rt(a.b,32)}else{Rt(a.b,48+e&fB);c=true}b=10*(b%100)}} +function Ij(a,b){var c,d,e;if(a.a){for(d=new Vu(a.a);d.ac.c)return false}}return true} +function Td(a,b){var c;if(a.c!=b.c)return a.c=2147483648&&(c-=4294967296);return c} +function Wm(a,b,c,d,e,f){if(a===c){a=a.slice(b,b+e);b=0}for(var g=b,h=b+e;g>19;d=b.h>>19;return c==0?d!=0||a.h>b.h||a.h==b.h&&a.m>b.m||a.h==b.h&&a.m==b.m&&a.l>b.l:!(d==0||a.h>19;d=b.h>>19;return c==0?d!=0||a.h>b.h||a.h==b.h&&a.m>b.m||a.h==b.h&&a.m==b.m&&a.l>=b.l:!(d==0||a.h0?qB:rB;else{f=Math.atan(g/c);c<0&&(f+=$A)}e=Math.sqrt(g*g+c*c)/b;return new xi(f,e)} +function Vq(a,b){var c,d,e;b&=63;if(b<22){c=a.l<>22-b;e=a.h<>22-b}else if(b<44){c=0;d=a.l<>44-b}else{c=0;d=0;e=a.l<>1);Cw(b,a,i,j,-e,f);Cw(b,a,j,h,-e,f);if(f.ab(a[j-1],a[j])<=0){while(c>1);zw(b,a,i,j,-e,f);zw(b,a,j,h,-e,f);if(f.ab(a[j-1],a[j])<=0){while(c0?1:c<0?-1:0)!=(g>0?1:g<0?-1:0)&&(h=false);return h} -function Mk(a){var b,c,d,e;e=0;c=new Sy;while(e<256){d=ur(a.g);if(d==null){break}st(d.substr(0,4),'$$$$')&&++e;if(st(d.substr(0,1),'>')){b=Nk(d);b!=null&&oy(c.a,b,(Lr(),Kr))==null}}a.c=iu(c,Um(Wo,cB,2,0,4,1))} -function Pt(a){var b,c,d,e;b=0;d=a.length;e=d-4;c=0;while(c>=1;if(e>=f){e-=d;continue}c=Et(b,Zv(a.a,e));if(c==0)return e;if(d==0)break;c<0?(e-=d):(e+=d)}return -1} -function Df(a,b){a.o>=a.M&&hh(a,a.M*2);a.D[a.o]=0;Yg(a,a.o,b);a.q[a.o]=0;a.s[a.o]=0;a.w[a.o]=0;a.u[a.o]=0;a.A[a.o]=0;a.B[a.o]=0;a.C[a.o]=0;a.t!=null&&(a.t[a.o]=null);a.r!=null&&(a.r[a.o]=null);a.Q=0;return a.o++} -function ok(a,b){if(ag(a.b,b)==16&&Of(a.b,b)<=0||ag(a.b,b)==6&&Of(a.b,b)!=0||Jh(a.b,b)-dt(0,Uf(a.b,b))<1||!ug(a.b,b))return false;if(ag(a.b,b)!=6&&ag(a.b,b)!=7&&ag(a.b,b)!=8&&ag(a.b,b)!=16)return false;return true} -function lq(a,b,c){var d=jq;var e=kq;var f=qq;var g=d[a];var h=f(g);if(g&&!h){_=g}else{_=d[a]=!b?{}:e(b);_.cM=c;_.constructor=_;!b&&(_.tM=uq)}for(var i=3;i1;d--){c=false;for(f=1;fg)&&(e=g);h[d]=vs(a.substr(f,e-f))}return h} -function Is(a){var b,c,d;if(a<0){return 0}else if(a==0){return 32}else{d=-(a>>16);b=d>>16&16;c=16-b;a=a>>b;d=a-256;b=d>>16&8;c+=b;a<<=b;d=a-VA;b=d>>16&4;c+=b;a<<=b;d=a-ZA;b=d>>16&2;c+=b;a<<=b;d=a>>14;b=d&~(d>>1);return c+2-b}} -function Mg(a,b,c,d){var e;if(c==null){a.t!=null&&(a.t[b]=null);return}if(c.length==1&&!d){e=c[0];a.D[b]!=e&&Ff(a,b,e,0);a.t!=null&&(a.t[b]=null);return}a.t==null&&(a.t=Um(on,_A,5,a.M,0,2));a.t[b]=c;d&&(a.w[b]|=1);a.Q=0;a.K=true} +function Ok(a){var b,c,d,e;e=0;c=new Py;while(e<256){d=rr(a.g);if(d==null){break}pt(d.substr(0,4),'$$$$')&&++e;if(pt(d.substr(0,1),'>')){b=Pk(d);b!=null&&ly(c.a,b,(Ir(),Hr))==null}}a.c=fu(c,Rm(To,_A,2,0,4,1))} +function Mt(a){var b,c,d,e;b=0;d=a.length;e=d-4;c=0;while(c>=1;if(e>=f){e-=d;continue}c=Bt(b,Wv(a.a,e));if(c==0)return e;if(d==0)break;c<0?(e-=d):(e+=d)}return -1} +function Df(a,b){a.o>=a.M&&ih(a,a.M*2);a.D[a.o]=0;Zg(a,a.o,b);a.q[a.o]=0;a.s[a.o]=0;a.w[a.o]=0;a.u[a.o]=0;a.A[a.o]=0;a.B[a.o]=0;a.C[a.o]=0;a.t!=null&&(a.t[a.o]=null);a.r!=null&&(a.r[a.o]=null);a.Q=0;return a.o++} +function iq(a,b,c){var d=gq;var e=hq;var f=nq;var g=d[a];var h=f(g);if(g&&!h){_=g}else{_=d[a]=!b?{}:e(b);_.cM=c;_.constructor=_;!b&&(_.tM=rq)}for(var i=3;i1;d--){c=false;for(f=1;fg)&&(e=g);h[d]=ss(a.substr(f,e-f))}return h} +function Fs(a){var b,c,d;if(a<0){return 0}else if(a==0){return 32}else{d=-(a>>16);b=d>>16&16;c=16-b;a=a>>b;d=a-256;b=d>>16&8;c+=b;a<<=b;d=a-SA;b=d>>16&4;c+=b;a<<=b;d=a-WA;b=d>>16&2;c+=b;a<<=b;d=a>>14;b=d&~(d>>1);return c+2-b}} +function Ng(a,b,c,d){var e;if(c==null){a.t!=null&&(a.t[b]=null);return}if(c.length==1&&!d){e=c[0];a.D[b]!=e&&Ff(a,b,e,0);a.t!=null&&(a.t[b]=null);return}a.t==null&&(a.t=Rm(ln,YA,5,a.M,0,2));a.t[b]=c;d&&(a.w[b]|=1);a.Q=0;a.K=true} function Jd(a,b){var c,d,e,f;if(a.d!=b.d)return a.d>b.d?1:-1;e=a.a.length;f=b.a.length;c=eb.a[f]?1:-1}if(e!=f)return e>f?1:-1;if(a.b!=b.b)return a.b>b.b?1:-1;return 0} function se(a,b,c){var d,e,f,g,h;h=false;g=1;b[c]=1;d=true;while(d){d=false;for(e=0;e>b;f=a.m>>b|c<<22-b;e=a.l>>b|a.m<<22-b}else if(b<44){g=d?YB:0;f=c>>b-22;e=a.m>>b-22|c<<44-b}else{g=d?YB:0;f=d?JB:0;e=c>>b-44}return {l:e&JB,m:f&JB,h:g&YB}} -function hi(a,b,c,d){var e,f,g,h,i;g=Um(on,WA,0,a.c[b],7,1);i=Hh(a,b,c,d,g);if(i==3)return false;f=(a.s[b]&3)==i?17:9;for(h=0;h>=1;if(e>=f){e-=d;continue}c=Ps(b,Zv(a.a,e));if(c==0)return e;if(d==0)break;c<0?(e-=d):(e+=d)}e0&&++e;return -(e+1)} -function ns(a){if(a.ob()){var b=a.c;b.pb()?(a.k='['+b.j):!b.ob()?(a.k='[L'+b.mb()+';'):(a.k='['+b.mb());a.b=b.lb()+'[]';a.i=b.nb()+'[]';return}var c=a.f;var d=a.d;d=d.split('/');a.k=qs('.',[c,qs('$',d)]);a.b=qs('.',[c,qs('.',d)]);a.i=d[d.length-1]} -function tc(a,b){var c,d,e,f,g,h;c=false;if(a.D[b]!=8)return false;if(a.g[b]!=1)return false;g=a.f[b][0];if(a.D[g]==15){h=a.g[g];for(d=0;d=fB?2:1;d<128?++b:d=fB?2:1;h+=Ft(c,h,d)}return c} -function nc(a){var b,c,d,e,f,g,h;do{h=false;for(c=0;c>b;f=a.m>>b|c<<22-b;e=a.l>>b|a.m<<22-b}else if(b<44){g=d?VB:0;f=c>>b-22;e=a.m>>b-22|c<<44-b}else{g=d?VB:0;f=d?GB:0;e=c>>b-44}return {l:e&GB,m:f&GB,h:g&VB}} +function ii(a,b,c,d){var e,f,g,h,i;g=Rm(ln,TA,0,a.c[b],7,1);i=Ih(a,b,c,d,g);if(i==3)return false;f=(a.s[b]&3)==i?17:9;for(h=0;h>=1;if(e>=f){e-=d;continue}c=Ms(b,Wv(a.a,e));if(c==0)return e;if(d==0)break;c<0?(e-=d):(e+=d)}e0&&++e;return -(e+1)} +function ks(a){if(a.ob()){var b=a.c;b.pb()?(a.k='['+b.j):!b.ob()?(a.k='[L'+b.mb()+';'):(a.k='['+b.mb());a.b=b.lb()+'[]';a.i=b.nb()+'[]';return}var c=a.f;var d=a.d;d=d.split('/');a.k=ns('.',[c,ns('$',d)]);a.b=ns('.',[c,ns('.',d)]);a.i=d[d.length-1]} +function tc(a,b){var c,d,e,f,g,h;c=false;if(a.D[b]!=8)return false;if(a.g[b]!=1)return false;g=a.f[b][0];if(a.D[g]==15){h=a.g[g];for(d=0;d=cB?2:1;d<128?++b:d=cB?2:1;h+=Ct(c,h,d)}return c} +function nc(a){var b,c,d,e,f,g,h;do{h=false;for(c=0;c15){rd(a,c);b-=16}nd(a,1,1);nd(a,b,4);nd(a,j,d);for(h=0;h>g,f)}}return true} function Dc(a,b,c,d,e,f,g){var h,i,j,k;j=0;for(i=0;i15){rd(a,c);b-=16}nd(a,1,1);nd(a,b,4);nd(a,j,d);for(h=0;h>g,f)}}return true} -function Cf(a,b,c,d){var e;e=(a.o>=a.M&&hh(a,a.M*2),a.D[a.o]=0,Yg(a,a.o,6),a.q[a.o]=0,a.s[a.o]=0,a.w[a.o]=0,a.u[a.o]=0,a.A[a.o]=0,a.B[a.o]=0,a.C[a.o]=0,a.t!=null&&(a.t[a.o]=null),a.r!=null&&(a.r[a.o]=null),a.Q=0,a.o++);a.A[e]=b;a.B[e]=c;a.C[e]=d;return e} -function Fm(a,b){var c,d;d=0;c=new Zt;d+=Em(a,b,0,c,false);a.t=c.a;d+=Gm(a,b,d,false);d+=Em(a,b,d,c,false);a.u=c.a;if(d=9223372036854775807){return gr(),cr}e=false;if(a<0){e=true;a=-a}d=0;if(a>=aC){d=jn(a/aC);a-=d*aC}c=0;if(a>=_B){c=jn(a/_B);a-=c*_B}b=jn(a);f=yq(b,c,d);e&&Eq(f);return f} -function Ef(a,b,c,d){var e;if(b==c)return -1;for(e=0;e=a.N&&ih(a,a.N*2);a.F[0][a.p]=b;a.F[1][a.p]=c;a.I[a.p]=d;a.G[a.p]=0;a.H[a.p]=0;a.Q=0;return a.p++} -function Th(a,b){var c,d;wk(a,1);if(a.g[b]==2&&a.j[b][0]==2&&a.j[b][1]==2){for(c=0;c<2;c++)for(d=0;d0){b.a=zt(b.a,0,0)+''+yt(b.a,d);a.d-=d;a.e-=d}if(a.j>a.o&&a.j>0){a.e+=a.b-1;c=a.e%a.j;c<0&&(c+=a.j);a.b=c+1;a.e-=c}else{a.e+=a.b-a.o;a.b=a.o}if(a.d==1&&b.a.charCodeAt(0)==48){a.e=0;a.b=a.o}} -function ge(a,b){var c,d,e,f,g,h;if(!a.b)return false;e=false;for(f=a.b.b.length-1;f>=0;f--){d=false;g=Zv(a.b,f);g.a==2?(d=fe(a,g.b,g.c,g.d,b)):g.a==1&&(d=ke(a,g.b,b));if(d){aw(a.b,g);for(h=0;h=171&&a.D[b]<=190)return 0;d=0;(a.s[b]&48)==32&&(d-=1);((a.s[b]&48)==16||(a.s[b]&48)==48)&&(d-=2);c=a.q[b];if(c==0&&a.K){(a.w[b]&lB)==AB&&(c=-1);(a.w[b]&lB)==BB&&(c=1)}a.D[b]==6?(d-=c<0?-c:c):ph(a.D[b])?(d+=c):(d-=c);return d} -function tk(a,b){var c,d,e,f;f=a.a.b.length;if(f==0){Xv(a.a,0,b);return 0}e=1;while(2*e<=f)e<<=1;d=e;--e;while(d!=0){d>>=1;if(e>=f){e-=d;continue}c=Et(b,Zv(a.a,e));if(c==0)return -1;if(d==0)break;c<0?(e-=d):(e+=d)}e0&&++e;Xv(a.a,e,b);return e} -function Gq(a){var b,c,d;c=a.l;if((c&c-1)!=0){return -1}d=a.m;if((d&d-1)!=0){return -1}b=a.h;if((b&b-1)!=0){return -1}if(b==0&&d==0&&c==0){return -1}if(b==0&&d==0&&c!=0){return Js(c)}if(b==0&&d!=0&&c==0){return Js(d)+22}if(b!=0&&d==0&&c==0){return Js(b)+44}return -1} -function Ie(a){var b,c,d,e,f,g,h;c=Um(wn,cB,37,a.b,0,1);for(b=0;b>14;if(g!=0){if(a.q.K&&g==(lg(a.q,c)&jB)>>14)return true;d=false;f=Qh(a.q);for(e=0;ea.d){while(a.da.o){e=a.b-a.o;for(c=0;c0){b.a=zt(b.a,0,0)+''+yt(b.a,e);a.d-=e;a.b-=e}}}} +function Cf(a,b,c,d){var e;e=(a.o>=a.M&&ih(a,a.M*2),a.D[a.o]=0,Zg(a,a.o,6),a.q[a.o]=0,a.s[a.o]=0,a.w[a.o]=0,a.u[a.o]=0,a.A[a.o]=0,a.B[a.o]=0,a.C[a.o]=0,a.t!=null&&(a.t[a.o]=null),a.r!=null&&(a.r[a.o]=null),a.Q=0,a.o++);a.A[e]=b;a.B[e]=c;a.C[e]=d;return e} +function Fm(a,b){var c,d;d=0;c=new Wt;d+=Em(a,b,0,c,false);a.t=c.a;d+=Gm(a,b,d,false);d+=Em(a,b,d,c,false);a.u=c.a;if(d=9223372036854775807){return dr(),_q}e=false;if(a<0){e=true;a=-a}d=0;if(a>=ZB){d=fn(a/ZB);a-=d*ZB}c=0;if(a>=YB){c=fn(a/YB);a-=c*YB}b=fn(a);f=vq(b,c,d);e&&Bq(f);return f} +function Ef(a,b,c,d){var e;if(b==c)return -1;for(e=0;e=a.N&&jh(a,a.N*2);a.F[0][a.p]=b;a.F[1][a.p]=c;a.I[a.p]=d;a.G[a.p]=0;a.H[a.p]=0;a.Q=0;return a.p++} +function Uh(a,b){var c,d;yk(a,1);if(a.g[b]==2&&a.j[b][0]==2&&a.j[b][1]==2){for(c=0;c<2;c++)for(d=0;d0){b.a=wt(b.a,0,0)+''+vt(b.a,d);a.d-=d;a.e-=d}if(a.j>a.o&&a.j>0){a.e+=a.b-1;c=a.e%a.j;c<0&&(c+=a.j);a.b=c+1;a.e-=c}else{a.e+=a.b-a.o;a.b=a.o}if(a.d==1&&b.a.charCodeAt(0)==48){a.e=0;a.b=a.o}} +function ge(a,b){var c,d,e,f,g,h;if(!a.b)return false;e=false;for(f=a.b.b.length-1;f>=0;f--){d=false;g=Wv(a.b,f);g.a==2?(d=fe(a,g.b,g.c,g.d,b)):g.a==1&&(d=ke(a,g.b,b));if(d){Zv(a.b,g);for(h=0;h=171&&a.D[b]<=190)return 0;d=0;(a.s[b]&48)==32&&(d-=1);((a.s[b]&48)==16||(a.s[b]&48)==48)&&(d-=2);c=a.q[b];if(c==0&&a.K){(a.w[b]&iB)==xB&&(c=-1);(a.w[b]&iB)==yB&&(c=1)}a.D[b]==6?(d-=c<0?-c:c):qh(a.D[b])?(d+=c):(d-=c);return d} +function vk(a,b){var c,d,e,f;f=a.a.b.length;if(f==0){Uv(a.a,0,b);return 0}e=1;while(2*e<=f)e<<=1;d=e;--e;while(d!=0){d>>=1;if(e>=f){e-=d;continue}c=Bt(b,Wv(a.a,e));if(c==0)return -1;if(d==0)break;c<0?(e-=d):(e+=d)}e0&&++e;Uv(a.a,e,b);return e} +function Dq(a){var b,c,d;c=a.l;if((c&c-1)!=0){return -1}d=a.m;if((d&d-1)!=0){return -1}b=a.h;if((b&b-1)!=0){return -1}if(b==0&&d==0&&c==0){return -1}if(b==0&&d==0&&c!=0){return Gs(c)}if(b==0&&d!=0&&c==0){return Gs(d)+22}if(b!=0&&d==0&&c==0){return Gs(b)+44}return -1} +function Ie(a){var b,c,d,e,f,g,h;c=Rm(tn,_A,37,a.b,0,1);for(b=0;b>14;if(g!=0){if(a.q.K&&g==(lg(a.q,c)&gB)>>14)return true;d=false;f=Rh(a.q);for(e=0;ea.d){while(a.da.o){e=a.b-a.o;for(c=0;c0){b.a=wt(b.a,0,0)+''+vt(b.a,e);a.d-=e;a.b-=e}}}} function hf(a){var b,c;if(a.k)return;a.n=a.c[0];a.i=a.c[0];a.o=a.d[0];a.j=a.d[0];for(b=0;ba.c[b]-c&&(a.n=a.c[b]-c);a.ia.d[b]-c&&(a.o=a.d[b]-c);a.jh;i--)e[i]=e[i-1];e[h]=k}j=ft(6,a.e[d]);Ud(b[d],d);Sd(b[d],16,c[d]);Sd(b[d],(6-j)*17,0);for(f=0;fe?f:e} -function Cd(a,b){var c,d,e;c=dg(a.L,0,b);if(c>=a.L.d)return false;if(a.W[c]==1||a.W[c]==2)return true;if(a.W[c]==3)return false;d=sh(a.L,c);if(d!=-1)return a.n[d]==1||a.n[d]==2;for(e=0;e=0){d=e+1;d=0){a.a=zt(a.a,0,c)+''+yt(a.a,c+1);f-=a.a.length-c}return f} -function Sd(a,b,c){if(a.b==0){++a.c;a.b=63}if(a.b==63){a.d[a.c]=Xq(a.d[a.c],Rq(c));a.b-=b}else{if(a.b>=b){a.d[a.c]=Yq(a.d[a.c],b);a.d[a.c]=Xq(a.d[a.c],Rq(c));a.b-=b}else{a.d[a.c]=Yq(a.d[a.c],a.b);a.d[a.c]=Xq(a.d[a.c],Rq(c>>b-a.b));b-=a.b;++a.c;a.b=63-b;a.d[a.c]=Xq(a.d[a.c],Rq(c&(1<a.a[d]&&++b;a.e=Um(on,WA,0,b,7,1);a.b=Um(on,WA,0,a.r.b,7,1);b=0;for(c=0;ca.a[c]){a.e[b]=Eh(a.p,a.a[c],e);++b}}}} -function Ih(a,b,c){var d,e,f,g,h,i,j,k;wk(a,1);for(e=0;e0){for(c=0;c=0&&d>0){b=Um(on,WA,0,16,7,1);i=a.substr(c+1,d-(c+1));e=0;g=true;while(g&&e<16){c=i.indexOf(',');if(c==-1){f=i;g=false}else{f=i.substr(0,c);i=Ct(i,c+1,i.length-(c+1))}b[e++]=oh(f)}h=Um(on,WA,0,e,7,1);cu(b,0,h,0,e)}return h} +function He(a,b,c){var d,e,f,g,h,i,j,k;e=Rm(ln,TA,0,16,7,1);for(d=0;dh;i--)e[i]=e[i-1];e[h]=k}j=ct(6,a.e[d]);Ud(b[d],d);Sd(b[d],16,c[d]);Sd(b[d],(6-j)*17,0);for(f=0;fe?f:e} +function Cd(a,b){var c,d,e;c=dg(a.L,0,b);if(c>=a.L.d)return false;if(a.W[c]==1||a.W[c]==2)return true;if(a.W[c]==3)return false;d=th(a.L,c);if(d!=-1)return a.n[d]==1||a.n[d]==2;for(e=0;e=0){d=e+1;d=0){a.a=wt(a.a,0,c)+''+vt(a.a,c+1);f-=a.a.length-c}return f} +function Sd(a,b,c){if(a.b==0){++a.c;a.b=63}if(a.b==63){a.d[a.c]=Uq(a.d[a.c],Oq(c));a.b-=b}else{if(a.b>=b){a.d[a.c]=Vq(a.d[a.c],b);a.d[a.c]=Uq(a.d[a.c],Oq(c));a.b-=b}else{a.d[a.c]=Vq(a.d[a.c],a.b);a.d[a.c]=Uq(a.d[a.c],Oq(c>>b-a.b));b-=a.b;++a.c;a.b=63-b;a.d[a.c]=Uq(a.d[a.c],Oq(c&(1<a.a[d]&&++b;a.e=Rm(ln,TA,0,b,7,1);a.b=Rm(ln,TA,0,a.r.b,7,1);b=0;for(c=0;ca.a[c]){a.e[b]=Fh(a.p,a.a[c],e);++b}}}} +function Jh(a,b,c){var d,e,f,g,h,i,j,k;yk(a,1);for(e=0;e0){for(c=0;c=0&&d>0){b=Rm(ln,TA,0,16,7,1);i=a.substr(c+1,d-(c+1));e=0;g=true;while(g&&e<16){c=i.indexOf(',');if(c==-1){f=i;g=false}else{f=i.substr(0,c);i=zt(i,c+1,i.length-(c+1))}b[e++]=ph(f)}h=Rm(ln,TA,0,e,7,1);_t(b,0,h,0,e)}return h} function Gf(a,b){var c,d,e,f,g,h;e=false;f=a.I[b];if(h=pg(a,b),h>=1){c=zg(a,b,a.F[0][b]);d=zg(a,b,a.F[1][b]);if(17==f){if(c==d||d){g=a.F[0][b];a.F[0][b]=a.F[1][b];a.F[1][b]=g;e=true}}else{if(!c&&d){g=a.F[0][b];a.F[0][b]=a.F[1][b];a.F[1][b]=g}a.I[b]=17;e=true}}if(e){a.Q=(f&103)==1?a.Q&3:0;a.H[b]=0}return e} -function $c(a){var b,c,d,e;a.H=true;a.R=Um(kn,eB,0,a.L.d,7,1);a.g=Um(kn,eB,0,a.L.e,7,1);e=Qc(a,true);while(a.N1;k--){for(j=0;j1;k--){for(j=0;j>19!=0){return '-'+br(Vq(a))}c=a;d='';while(!(c.l==0&&c.m==0&&c.h==0)){e=Rq(1000000000);c=zq(c,e,true);b=''+ar(vq);if(!(c.l==0&&c.m==0&&c.h==0)){f=9-b.length;for(;f>0;f--){b='0'+b}}d=b+d}return d} -function wk(a,b){var c,d,e,f;rh(a,b);if((b&~a.Q)==0)return;a.a&&(b|=128);for(c=0;c>19!=0){return '-'+$q(Sq(a))}c=a;d='';while(!(c.l==0&&c.m==0&&c.h==0)){e=Oq(1000000000);c=wq(c,e,true);b=''+Zq(sq);if(!(c.l==0&&c.m==0&&c.h==0)){f=9-b.length;for(;f>0;f--){b='0'+b}}d=b+d}return d} +function yk(a,b){var c,d,e,f;sh(a,b);if((b&~a.Q)==0)return;a.a&&(b|=128);for(c=0;cd-f&&(e=d-f)}return e} -function dj(a){var b,c;if(a.indexOf('[')>=0){b=a.indexOf(' NOT[');c=a.indexOf(']',b);if(b>=0&&c>0){return -(c+1)}else{b=a.indexOf(' [');c=a.indexOf(']',b);if(b>=0&&c>0){return c+1}}b=a.indexOf(" 'NOT[");c=a.indexOf("]'",b);if(b>=0&&c>0){return -(c+2)}else{b=a.indexOf(" '[");c=a.indexOf("]'",b);if(b>=0&&c>0){return c+2}}bu()}return 0} -function Rj(a,b){var c,d,e,f,g,h,i,j;g=false;if(wh(a.c,b)==0){for(f=1;fa.p[e]^d>e&&(g=!g)}}}else{for(f=0;fa.p[i[1]]^i[0]>i[1]&&(g=!g)}}return g} -function Ff(a,b,c,d){if((c==1||c==151||c==152)&&Mh(a,b)>1)return false;a.w[b]&=-2;a.t!=null&&(a.t[b]=null);a.r!=null&&(a.r[b]=null);if(c==a.D[b]&&d==a.v[b]&&-1==((a.s[b]&vB)>>>28)-1&&0==(a.s[b]&48))return false;if(c==151||c==152){d=c-149;c=1}a.s[b]&=960;a.D[b]=c;a.v[b]=d;a.q[b]=0;a.w[b]=0;Eg(a,b,-1);Sg(a,b,0);Ag(a,a.u[b]);a.Q=0;return true} -function Jc(a){var b,c,d,e,f,g,h,i,j;d=Um(on,WA,0,16,7,1);for(b=0;bg;h--)d[h]=d[h-1];d[g]=j}i=ft(6,Dh(a.L,b));Ud(a.c[b],b);Sd(a.c[b],16,a.d[b]);Sd(a.c[b],(6-i)*17,0);for(e=0;eb.d[e[1]]^ed(b,d,e[0],e[1])&&(h=!h)}}}catch(a){a=iq(a);if(bn(a,10)){b.g[c]=3;return}else throw hq(a)}b.n[c]==1^h?(b.g[c]=1):(b.g[c]=2)}} -function Nk(a){var b,c,d,e;if(a.length==0||a.charCodeAt(0)!=62)return null;d=1;e=0;b=0;while(d0&&(a.charCodeAt(0)==45||a.charCodeAt(0)==43)?1:0;for(b=e;bTA){throw new mt('For input string: "'+a+'"')}return f} -function Ye(a){var b,c,d,e,f,g,h;while(true){f=null;for(b=0;bf.a.length)&&(f=g)}}if(!f)break;c=new uf(a,a.i,f.a.length);for(d=0;d0){b[m-1]=o[b[m]];--m}return j[n]}if(j[g]==0){i[++k]=g;j[g]=j[n]+1;o[g]=n}}}++h}return -1} -function We(a,b,c,d){var e,f,g,h,i,j,k,l,m;e=Um(on,WA,0,d,7,1);f=0;for(g=0;g=0){h=Lq(a,g);if(h){j<22?(i.l|=1<>>1);g.m=k>>>1|(l&1)<<21;g.l=m>>>1|(k&1)<<21;--j}c&&Eq(i);if(f){if(d){vq=Vq(a);e&&(vq=$q(vq,(gr(),er)))}else{vq=yq(a.l,a.m,a.h)}}return i} -function Yh(a,b){var c,d,e,f,g,h;if(a.I[b]!=1||(a.G[b]&256)!=0||(a.G[b]&64)!=0&&(!!a.n&&b2&&++h}for(f=0;f2&&++h}return h>2} -function gk(a,b){var c,d,e,f;f=false;a.b=b;wk(a.b,7);c=a.b.d;d=a.b.e;a.j=Um(eq,UA,0,d,8,1);for(e=0;e0&&(a.e[a.i++]='.');ik(a,e,-1);++a.a;break}}e==c&&(f=true)}a.f='';for(e=0;e4)return false;h=Um(eq,UA,0,4,8,1);for(g=0;g0.08726646502812703)return false;e[g]=3&jn(f/tB);if(h[e[g]])return false;h[e[g]]=true;if((e[g]&1)==0){if(a.I[a.i[b][c[g]]]!=1)return false}else{if(!yg(a,a.i[b][c[g]],b))return false}}return h[0]&&h[2]} -function mj(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p;m=b.length;j=a.g.M;k=0;for(e=0;eb[e]){j=b[e];k=e}}p=Um(on,WA,0,m,7,1);i=k>0?k-1:m-1;l=k4){switch(d){case 5:i|=3;break;case 6:i|=9;break;case 7:i|=10;break;case 8:i|=15;}}f==1&&(i|=32);f==2&&(i|=16);i!=0&&bh(a.c,g,i);return g} -function jd(a,b,c,d,e,f,g){var h,i,j,k,l,m,n,o,p,q,r;for(l=g;l>1;l--){p=f[l]-f[l-1];r=Um(sn,cB,60,p,0,1);h=f[l];for(o=0;o=b.N&&ih(b,b.N*2);h=(a.G[c]&yB)>>10;g=-1;h==1&&(g=ft(32,(a.G[c]&yB)>>10!=1&&(a.G[c]&yB)>>10!=2?-1:(a.G[c]&zB)>>12));h==2&&(g=ft(32,(a.G[c]&yB)>>10!=1&&(a.G[c]&yB)>>10!=2?-1:(a.G[c]&zB)>>12));for(i=0;i<2;i++)b.F[i][f]=d==null?a.F[i][c]:d[a.F[i][c]];e=a.I[c];b.I[f]=e;b.G[f]=a.G[c];b.H[f]=b.K?a.H[c]:0;if(g!=-1){b.G[f]&=-126977;b.G[f]|=g<<12}++b.p;b.Q=0;return f} -function Ek(a){var b,c,d,e,f,g;g=false;for(c=0;c>19==1&&(f[d]=true);for(e=0;e1&&g==e){o=Um(on,WA,0,j[i[h]],7,1);d=i[h];for(n=0;n7)return;for(m=0;m1&&g==e){o=Um(on,WA,0,j[i[h]],7,1);d=i[h];for(n=0;n=0){b=a.indexOf(' NOT[');c=a.indexOf(']',b);if(b>=0&&c>0){return -(c+1)}else{b=a.indexOf(' [');c=a.indexOf(']',b);if(b>=0&&c>0){return c+1}}b=a.indexOf(" 'NOT[");c=a.indexOf("]'",b);if(b>=0&&c>0){return -(c+2)}else{b=a.indexOf(" '[");c=a.indexOf("]'",b);if(b>=0&&c>0){return c+2}}$t()}return 0} +function Sj(a,b){var c,d,e,f,g,h,i,j;g=false;if(xh(a.c,b)==0){for(f=1;fa.p[e]^d>e&&(g=!g)}}}else{for(f=0;fa.p[i[1]]^i[0]>i[1]&&(g=!g)}}return g} +function Ff(a,b,c,d){if((c==1||c==151||c==152)&&Nh(a,b)>1)return false;a.w[b]&=-2;a.t!=null&&(a.t[b]=null);a.r!=null&&(a.r[b]=null);if(c==a.D[b]&&d==a.v[b]&&-1==((a.s[b]&sB)>>>28)-1&&0==(a.s[b]&48))return false;if(c==151||c==152){d=c-149;c=1}a.s[b]&=960;a.D[b]=c;a.v[b]=d;a.q[b]=0;a.w[b]=0;Eg(a,b,-1);Tg(a,b,0);Ag(a,a.u[b]);a.Q=0;return true} +function Jc(a){var b,c,d,e,f,g,h,i,j;d=Rm(ln,TA,0,16,7,1);for(b=0;bg;h--)d[h]=d[h-1];d[g]=j}i=ct(6,Eh(a.L,b));Ud(a.c[b],b);Sd(a.c[b],16,a.d[b]);Sd(a.c[b],(6-i)*17,0);for(e=0;eb.d[e[1]]^ed(b,d,e[0],e[1])&&(h=!h)}}}catch(a){a=fq(a);if($m(a,10)){b.g[c]=3;return}else throw eq(a)}b.n[c]==1^h?(b.g[c]=1):(b.g[c]=2)}} +function Pk(a){var b,c,d,e;if(a.length==0||a.charCodeAt(0)!=62)return null;d=1;e=0;b=0;while(d0&&(a.charCodeAt(0)==45||a.charCodeAt(0)==43)?1:0;for(b=e;bQA){throw new jt('For input string: "'+a+'"')}return f} +function Ye(a){var b,c,d,e,f,g,h;while(true){f=null;for(b=0;bf.a.length)&&(f=g)}}if(!f)break;c=new uf(a,a.i,f.a.length);for(d=0;d0){b[m-1]=o[b[m]];--m}return j[n]}if(j[g]==0){i[++k]=g;j[g]=j[n]+1;o[g]=n}}}++h}return -1} +function We(a,b,c,d){var e,f,g,h,i,j,k,l,m;e=Rm(ln,TA,0,d,7,1);f=0;for(g=0;g=0){h=Iq(a,g);if(h){j<22?(i.l|=1<>>1);g.m=k>>>1|(l&1)<<21;g.l=m>>>1|(k&1)<<21;--j}c&&Bq(i);if(f){if(d){sq=Sq(a);e&&(sq=Xq(sq,(dr(),br)))}else{sq=vq(a.l,a.m,a.h)}}return i} +function Zh(a,b){var c,d,e,f,g,h;if(a.I[b]!=1||(a.G[b]&256)!=0||(a.G[b]&64)!=0&&(!!a.n&&b2&&++h}for(f=0;f2&&++h}return h>2} +function hk(a,b){var c,d,e,f;f=false;a.b=b;yk(a.b,7);c=a.b.d;d=a.b.e;a.j=Rm(bq,RA,0,d,8,1);for(e=0;e0&&(a.e[a.i++]='.');jk(a,e,-1);++a.a;break}}e==c&&(f=true)}a.f='';for(e=0;e4)return false;h=Rm(bq,RA,0,4,8,1);for(g=0;g0.0872664675116539)return false;e[g]=3&fn(f/qB);if(h[e[g]])return false;h[e[g]]=true;if((e[g]&1)==0){if(a.I[a.i[b][c[g]]]!=1)return false}else{if(!yg(a,a.i[b][c[g]],b))return false}}return h[0]&&h[2]} +function nj(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p;m=b.length;j=a.g.M;k=0;for(e=0;eb[e]){j=b[e];k=e}}p=Rm(ln,TA,0,m,7,1);i=k>0?k-1:m-1;l=k4){switch(d){case 5:i|=3;break;case 6:i|=9;break;case 7:i|=10;break;case 8:i|=15;}}f==1&&(i|=32);f==2&&(i|=16);i!=0&&dh(a.c,g,i);return g} +function jd(a,b,c,d,e,f,g){var h,i,j,k,l,m,n,o,p,q,r;for(l=g;l>1;l--){p=f[l]-f[l-1];r=Rm(pn,_A,60,p,0,1);h=f[l];for(o=0;o=b.N&&jh(b,b.N*2);h=(a.G[c]&vB)>>10;g=-1;h==1&&(g=ct(32,(a.G[c]&vB)>>10!=1&&(a.G[c]&vB)>>10!=2?-1:(a.G[c]&wB)>>12));h==2&&(g=ct(32,(a.G[c]&vB)>>10!=1&&(a.G[c]&vB)>>10!=2?-1:(a.G[c]&wB)>>12));for(i=0;i<2;i++)b.F[i][f]=d==null?a.F[i][c]:d[a.F[i][c]];e=a.I[c];b.I[f]=e;b.G[f]=a.G[c];b.H[f]=b.K?a.H[c]:0;if(g!=-1){b.G[f]&=-126977;b.G[f]|=g<<12}++b.p;b.Q=0;return f} +function Gk(a){var b,c,d,e,f,g;g=false;for(c=0;c>19==1&&(f[d]=true);for(e=0;e1&&g==e){o=Rm(ln,TA,0,j[i[h]],7,1);d=i[h];for(n=0;n7)return;for(m=0;m1&&g==e){o=Rm(ln,TA,0,j[i[h]],7,1);d=i[h];for(n=0;n2){m=true;i=-1;for(k=0;ka.j.a[d]+(f==1?fB:0)){k=a.j.a[d]+(f==1?fB:0);i=e;l=f;j=b[h]}}}}}for(c=0;c3.061592653589793){d=0;e=0;for(n=0;n1&&a.g[a.F[1][d]]>1){++j;continue}if(jg(a,d)!=1||(a.G[d]&64)!=0)continue;h=true;for(g=0;g<2;g++){b=a.F[g][d];if(a.g[b]==1){h=false;break}if(a.k[b]==2&&a.g[b]==2){h=false;break}if(a.D[b]==7&&(a.s[b]&VA)==0){c=a.F[1-g][d];for(i=0;i1&&(a.s[e]&VA)==0&&ph(a.D[e])){h=false;break}}}}h&&++j}return j} -function Nj(a,b,c){var d,e,f,g,h,i,j,k,l,m;h=false;for(g=0;g<2;g++){d=dg(a.c,g,b);k=a.p[d];if(Dh(a.c,d)==2){if(Dh(a.q,k)==2)continue;e=-1;for(j=0;j<2;j++)Eh(a.c,d,j)!=b&&(e=Ch(a.c,d,j));m=0;l=Um(on,WA,0,2,7,1);for(i=0;i<3;i++)Eh(a.q,k,i)!=c&&(l[m++]=Ch(a.q,k,i));a.p[e]!=l[0]&&(h=!h)}else if(Dh(a.c,d)==3&&Dh(a.q,k)==3){e=Um(on,WA,0,2,7,1);f=0;for(i=0;i<3;i++)Eh(a.c,d,i)!=b&&(e[f++]=Ch(a.c,d,i));a.p[e[0]]>a.p[e[1]]^e[0]>e[1]&&(h=!h)}}return h} -function sr(){var a=navigator.userAgent.toLowerCase();var b=$doc.documentMode;if(function(){return a.indexOf('webkit')!=-1}())return 'safari';if(function(){return a.indexOf('msie')!=-1&&b>=10&&b<11}())return 'ie10';if(function(){return a.indexOf('msie')!=-1&&b>=9&&b<11}())return 'ie9';if(function(){return a.indexOf('msie')!=-1&&b>=8&&b<11}())return 'ie8';if(function(){return a.indexOf('gecko')!=-1||b>=11}())return 'gecko1_8';return 'unknown'} -function th(a){var b,c,d,e,f,g,h,i;a.n=new Cj(a,7);c=Um(on,WA,0,a.d,7,1);for(d=0;d3&&(a.s[b]|=yB)}for(i=0;ia.i[e])){d=Eh(a.c,a.i[e],i);if(!rg(a.c,d)){a.i[++h]=c;a.k[h]=a.i[e];a.n[h]=d;f[c]?(a.j[h]=true):(f[c]=true)}}}while(a.j[++e]);}}}a.o=e} -function Oc(a){var b,c,d,e,f,g,h,i,j,k,l,m;if(a.t)return;a.t=new dw;k=0;l=Um(on,WA,0,a.L.d,7,1);g=Um(on,WA,0,a.L.d,7,1);i=Um(on,WA,0,a.L.e,7,1);for(b=0;b3.0915926535897933&&c<3.191592653589793){a.j=-1;return a.j}a.j=c4)return 3;c=h==3&&!b;f=false;if(b){for(d=0;da.g[1]&&a.g[1]>a.g[2]||a.g[1]>a.g[2]&&a.g[2]>a.g[0]||a.g[2]>a.g[0]&&a.g[0]>a.g[1];return a.d^g^f?1:2} -function cu(a,b,c,d,e){bu();var f,g,h,i,j,k,l,m,n;qm(a,'src');qm(c,'dest');m=ec(a);i=ec(c);km((m.e&4)!=0,'srcType is not an array');km((i.e&4)!=0,'destType is not an array');l=m.c;g=i.c;km((l.e&1)!=0?l==g:(g.e&1)==0,"Array types don't match");n=a.length;j=c.length;if(b<0||d<0||e<0||b+e>n||d+e>j){throw new Gr}if(((l.e&1)==0||(l.e&4)!=0)&&m!=i){k=a;f=c;if(gn(a)===gn(c)&&bd;){f[h]=k[--b]}}else{for(h=d+e;d0&&Zm(a,b,c,d,e,true)} -function zk(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q;p=Um(Yn,cB,23,c,0,1);g=Um(on,WA,0,c,7,1);j=Um(on,WA,0,c,7,1);f=Um(on,WA,0,a.o,7,1);for(e=0;e0;l--){j=0;i=null;for(d=0;d<32;d++){if(c[d]!=null){if(i==null||i.length=0;h--){if(i[h]0&&e1024&&(g=true);g&&Bm(a,c);Hm(a,c);Jm(a,c);Dm(a,c,44,h);Am(a,c);zm(a,c,46);g&&ym(a,c);Yt(c,0,d?a.q:a.t);Wt(c,d?a.r:a.u);return c.a} +function zh(a,b){var c,d,e,f,g,h,i,j,k,l,m,n;yk(a,3);e=Rm(bq,RA,0,a.e,8,1);k=Rm(bq,RA,0,a.e,8,1);n=Rm(ln,TA,0,a.d,7,1);f=0;for(g=1;g2){m=true;i=-1;for(k=0;ka.j.a[d]+(f==1?cB:0)){k=a.j.a[d]+(f==1?cB:0);i=e;l=f;j=b[h]}}}}}for(c=0;c3.061592653589793){d=0;e=0;for(n=0;n1&&a.g[a.F[1][d]]>1){++j;continue}if(jg(a,d)!=1||(a.G[d]&64)!=0)continue;h=true;for(g=0;g<2;g++){b=a.F[g][d];if(a.g[b]==1){h=false;break}if(a.k[b]==2&&a.g[b]==2){h=false;break}if(a.D[b]==7&&(a.s[b]&SA)==0){c=a.F[1-g][d];for(i=0;i1&&(a.s[e]&SA)==0&&qh(a.D[e])){h=false;break}}}}h&&++j}return j} +function Oj(a,b,c){var d,e,f,g,h,i,j,k,l,m;h=false;for(g=0;g<2;g++){d=dg(a.c,g,b);k=a.p[d];if(Eh(a.c,d)==2){if(Eh(a.q,k)==2)continue;e=-1;for(j=0;j<2;j++)Fh(a.c,d,j)!=b&&(e=Dh(a.c,d,j));m=0;l=Rm(ln,TA,0,2,7,1);for(i=0;i<3;i++)Fh(a.q,k,i)!=c&&(l[m++]=Dh(a.q,k,i));a.p[e]!=l[0]&&(h=!h)}else if(Eh(a.c,d)==3&&Eh(a.q,k)==3){e=Rm(ln,TA,0,2,7,1);f=0;for(i=0;i<3;i++)Fh(a.c,d,i)!=b&&(e[f++]=Dh(a.c,d,i));a.p[e[0]]>a.p[e[1]]^e[0]>e[1]&&(h=!h)}}return h} +function pr(){var a=navigator.userAgent.toLowerCase();var b=$doc.documentMode;if(function(){return a.indexOf('webkit')!=-1}())return 'safari';if(function(){return a.indexOf('msie')!=-1&&b>=10&&b<11}())return 'ie10';if(function(){return a.indexOf('msie')!=-1&&b>=9&&b<11}())return 'ie9';if(function(){return a.indexOf('msie')!=-1&&b>=8&&b<11}())return 'ie8';if(function(){return a.indexOf('gecko')!=-1||b>=11}())return 'gecko1_8';return 'unknown'} +function uh(a){var b,c,d,e,f,g,h,i;a.n=new Dj(a,7);c=Rm(ln,TA,0,a.d,7,1);for(d=0;d3&&(a.s[b]|=vB)}for(i=0;ia.i[e])){d=Fh(a.c,a.i[e],i);if(!rg(a.c,d)){a.i[++h]=c;a.k[h]=a.i[e];a.n[h]=d;f[c]?(a.j[h]=true):(f[c]=true)}}}while(a.j[++e]);}}}a.o=e} +function Oc(a){var b,c,d,e,f,g,h,i,j,k,l,m;if(a.t)return;a.t=new aw;k=0;l=Rm(ln,TA,0,a.L.d,7,1);g=Rm(ln,TA,0,a.L.d,7,1);i=Rm(ln,TA,0,a.L.e,7,1);for(b=0;b3.0915926535897933&&c<3.191592653589793){a.j=-1;return a.j}a.j=c<$A?4:2;return a.j}else{e=cg(a.e,a.a,a.d);e4)return 3;c=h==3&&!b;f=false;if(b){for(d=0;da.g[1]&&a.g[1]>a.g[2]||a.g[1]>a.g[2]&&a.g[2]>a.g[0]||a.g[2]>a.g[0]&&a.g[0]>a.g[1];return a.d^g^f?1:2} +function _t(a,b,c,d,e){$t();var f,g,h,i,j,k,l,m,n;qm(a,'src');qm(c,'dest');m=ec(a);i=ec(c);km((m.e&4)!=0,'srcType is not an array');km((i.e&4)!=0,'destType is not an array');l=m.c;g=i.c;km((l.e&1)!=0?l==g:(g.e&1)==0,"Array types don't match");n=a.length;j=c.length;if(b<0||d<0||e<0||b+e>n||d+e>j){throw new Dr}if(((l.e&1)==0||(l.e&4)!=0)&&m!=i){k=a;f=c;if(dn(a)===dn(c)&&bd;){f[h]=k[--b]}}else{for(h=d+e;d0&&Wm(a,b,c,d,e,true)} +function Bk(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q;p=Rm(Vn,_A,23,c,0,1);g=Rm(ln,TA,0,c,7,1);j=Rm(ln,TA,0,c,7,1);f=Rm(ln,TA,0,a.o,7,1);for(e=0;e0;l--){j=0;i=null;for(d=0;d<32;d++){if(c[d]!=null){if(i==null||i.length=0;h--){if(i[h]0&&e1024&&(g=true);g&&Bm(a,c);Hm(a,c);Jm(a,c);Dm(a,c,44,h);Am(a,c);zm(a,c,46);g&&ym(a,c);Vt(c,0,d?a.q:a.t);Tt(c,d?a.r:a.u);return c.a} function _c(a){var b,c,d,e,f,g;a.H=true;d=kd(a);!!a.J&&ge(a.J,a.d)&&(d=kd(a));Qc(a,false)&&Vc(a);g=true;while(a.N1&&e==c){o=new zi(i[g[f]]);h[0]=Eh(a.i,g[f],l);m=f;for(n=0;na?1:a;this.N=1>b?1:b;this.Q=0;this.D=Um(on,WA,0,this.M,7,1);this.q=Um(on,WA,0,this.M,7,1);this.u=Um(on,WA,0,this.M,7,1);this.A=Um(nn,$A,0,this.M,7,1);this.B=Um(nn,$A,0,this.M,7,1);this.C=Um(nn,$A,0,this.M,7,1);this.v=Um(on,WA,0,this.M,7,1);this.s=Um(on,WA,0,this.M,7,1);this.w=Um(on,WA,0,this.M,7,1);this.t=null;this.r=null;this.F=Vm(on,[_A,WA],[5,0],7,[2,this.N],2);this.I=Um(on,WA,0,this.N,7,1);this.G=Um(on,WA,0,this.N,7,1);this.H=Um(on,WA,0,this.N,7,1)} -function te(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o;for(i=d+1;i=32)return;if(d==-1){g=-1;for(f=0;f>19&&g<((a.s[f]&wB)>>19!=1&&(a.s[f]&wB)>>19!=2?-1:(a.s[f]&xB)>>21)&&(g=(a.s[f]&wB)>>19!=1&&(a.s[f]&wB)>>19!=2?-1:(a.s[f]&xB)>>21);for(e=0;e>10&&g<((a.G[e]&yB)>>10!=1&&(a.G[e]&yB)>>10!=2?-1:(a.G[e]&zB)>>12)&&(g=(a.G[e]&yB)>>10!=1&&(a.G[e]&yB)>>10!=2?-1:(a.G[e]&zB)>>12);d=g+1;if(d>=32)return}a.s[b]&=EB;a.s[b]|=c<<19|d<<21}a.Q&=3} -function $g(a,b,c,d){var e,f,g;if(c==0){a.G[b]&=-130049;a.G[b]|=0}else{if(d>=32)return;if(d==-1){g=-1;for(f=0;f>19&&g<((a.s[f]&wB)>>19!=1&&(a.s[f]&wB)>>19!=2?-1:(a.s[f]&xB)>>21)&&(g=(a.s[f]&wB)>>19!=1&&(a.s[f]&wB)>>19!=2?-1:(a.s[f]&xB)>>21);for(e=0;e>10&&g<((a.G[e]&yB)>>10!=1&&(a.G[e]&yB)>>10!=2?-1:(a.G[e]&zB)>>12)&&(g=(a.G[e]&yB)>>10!=1&&(a.G[e]&yB)>>10!=2?-1:(a.G[e]&zB)>>12);d=g+1;if(d>=32)return}a.G[b]&=-130049;a.G[b]|=c<<10|d<<12}a.Q&=3} -function Ge(a){var b,c,d,e,f,g,h,i,j;while(a.f.b.length>1){g=Um(mn,XA,0,2,7,1);f=Um(Dn,cB,18,2,0,1);b=Zv(a.f,0);c=Zv(a.f,1);h=(hf(b),b.i-b.n+1+(hf(b),b.j-b.o+1));i=(hf(c),c.i-c.n+1+(hf(c),c.j-c.o+1));if(h>i){f[0]=b;g[0]=h;f[1]=c;g[1]=i}else{f[0]=c;g[0]=i;f[1]=b;g[1]=h}for(e=2;e>1}h-=ng(a,b);g=((a.s[b]&vB)>>>28)-1;if(g==-1){if(a.D[b]>=171&&a.D[b]<=190){g=2}else{i=a.D[b]g-h?0:g-h} -function Ft(a,b,c){if(c<128){a[b]=hn(c&127);return 1}else if(c>6&31|192);a[b]=hn(c&63|128);return 2}else if(c>12&15|224);a[b++]=hn(c>>6&63|128);a[b]=hn(c&63|128);return 3}else if(c<2097152){a[b++]=hn(c>>18&7|240);a[b++]=hn(c>>12&63|128);a[b++]=hn(c>>6&63|128);a[b]=hn(c&63|128);return 4}else if(c>24&3|248);a[b++]=hn(c>>18&63|128);a[b++]=hn(c>>12&63|128);a[b++]=hn(c>>6&63|128);a[b]=hn(c&63|128);return 5}throw new Cs('Character out of range: '+c)} -function lh(a,b,c){var d,e,f,g,h;g=a.D[b];a.D[b]=a.D[c];a.D[c]=g;g=a.q[b];a.q[b]=a.q[c];a.q[c]=g;g=a.v[b];a.v[b]=a.v[c];a.v[c]=g;g=a.s[b];a.s[b]=a.s[c];a.s[c]=g;g=a.w[b];a.w[b]=a.w[c];a.w[c]=g;g=a.u[b];a.u[b]=a.u[c];a.u[c]=g;f=a.A[b];a.A[b]=a.A[c];a.A[c]=f;f=a.B[b];a.B[b]=a.B[c];a.B[c]=f;f=a.C[b];a.C[b]=a.C[c];a.C[c]=f;if(a.t!=null){h=a.t[b];a.t[b]=a.t[c];a.t[c]=h}if(a.r!=null){h=a.r[b];a.r[b]=a.r[c];a.r[c]=h}for(d=0;db.d[f[1]]^ed(b,d,f[0],f[1])&&(i=!i)}}}catch(a){a=iq(a);if(bn(a,10)){b.R[c]=3;return}else throw hq(a)}}else{try{e=gd(b,c)}catch(a){a=iq(a);if(bn(a,10)){b.R[c]=3;return}else throw hq(a)}for(h=1;h0){if(c){ie(a,e,g.i+g.g++,2);++h}Yv(a.b,new vf(e,1,-1,-1))}else if(b>0){c&&ie(a,e,g.a+g.f++,1);Yv(a.b,new vf(e,1,-1,-1))}else if(c){ie(a,e,g.a+g.f++,1);Yv(a.b,new vf(e,1,-1,-1))}}else if(d==1){if(Zd(a,e)){f=ue(g,e);i=we(g,e);Yv(a.b,new vf(e,2,f,i))}else{re(g,e);Yv(a.b,new vf(e,1,-1,-1))}}}}} -function _i(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o;k=Si(b,0);f=vs(b.substr(0,k));j=Wi(b,k);k=Si(b,j);g=vs(b.substr(j,k-j));j=Wi(b,k);k=Si(b,j);c=Ui(a,vs(b.substr(j,k-j)));j=Wi(b,k);k=Si(b,j);d=Ui(a,vs(b.substr(j,k-j)));m=0;n=0;while((j=Wi(b,k))!=-1){k=Si(b,j);l=b.substr(j,k-j);i=ut(l,Gt(61));h=l.substr(0,i);o=vs(Ct(l,i+1,l.length-(i+1)));if(st(h,'CFG')){switch(o){case 1:m=1;break;case 2:m=g==2?3:4;break;case 3:m=6;}}else st(h,'TOPO')?(n=o):Qi&&(bu(),au)}e=Ri(a,c,d,g,m,n);e+1!=f&&(!a.b&&(a.b=new qy),oy(a.b,new Ds(f),new Ds(e)))} -function Ve(a,b){var c,d,e,f;!a.j&&(a.j=new gy);a.i=b;wk(a.i,3);if((a.g&1)==0){a.b=a.i.o;a.d=a.i.p;a.e=Um(on,WA,0,a.b,7,1);for(c=0;c=5&&j.length<=7){for(d=0;d0){b[k[c]>>>16][k[c]&32767]=i;b[i][d]=k[c]>>>16}else{k[c]=(i<<16)+32768+d}}}}}l=0;g=-1;while(l>g){g=l;for(h=0;h2){for(g=1;g=0;h--){d=(om(h,k.b.length),k.b[h]);e=false;for(j=0;j>19!=0){b=Vq(b);i=true}g=Gq(b);f=false;e=false;d=false;if(a.h==KB&&a.m==0&&a.l==0){e=true;f=true;if(g==-1){a=xq((gr(),cr));d=true;i=!i}else{h=Zq(a,g);i&&Eq(h);c&&(vq=yq(0,0,0));return h}}else if(a.h>>19!=0){f=true;a=Vq(a);d=true;i=!i}if(g!=-1){return Bq(a,g,i,f,c)}if(!Tq(a,b)){c&&(f?(vq=Vq(a)):(vq=yq(a.l,a.m,a.h)));return yq(0,0,0)}return Cq(d?a:yq(a.l,a.m,a.h),b,i,f,e,c)} -function Mc(a,b,c){var d,e,f,g,h,i;d=Um(on,WA,0,4,7,1);for(h=0;h0?1:2} -function ee(a,b,c){var d,e,f,g;if(b==c)return false;if(a.a[b]!=a.a[c])return false;if(a.o[b]!=0){if(a.o[b]==3||a.o[c]==3)return false;if(a.p[b]^a.o[b]!=a.o[c])return false;if(a.k[b]!=a.k[c]||a.j[b]!=a.j[c])return false}if(wh(a.i,b)==1&&!Wh(a.i,b)){d=-1;for(g=0;g1?(a.k[d]+=i+i-2):a.I[e]==64&&(a.k[d]=2))}}for(b=0;b=og(a,c)+ng(a,c)&&(a.w[c]&=-6145);f=false;for(b=0;b0){if((a.w[b]&YA)==0){if(og(a,b)+ng(a,b)-Mh(a,b)==0)a.w[b]|=YA;else{i=0;(a.w[b]&128)==128&&++i;(a.w[b]&1920)==384&&++i;a.w[b]&=-1921;og(a,b)+ng(a,b)-Mh(a,b)<=i?(a.w[b]|=YA):i==0?(a.w[b]|=128):(a.w[b]|=384)}}for(h=a.g[b];h=0&&j[k]);for(b=0;b=0&&i[l]);for(e=0;e0;k--){for(m=0;me[m+1]){r=e[m];e[m]=e[m+1];e[m+1]=r;s=g[m];g[m]=g[m+1];g[m+1]=s;t=h[m];h[m]=h[m+1];h[m+1]=t}}}e[f]=e[0]+aB;g[f]=g[0];h[f]=h[0];n=-100;o=0;for(i=0;i2&&ai(a.i,h[i])&&ai(a.i,h[i+1])){p=Ue(a,g[i],c,g[i+1]);p!=0&&(d-=100-p)}if(n0){f=c==1&&Oe(a,d,b)==1&&Oe(a,e,b)==1?0:1;o>p?(i=(f<<24)+(o<<16)+(p<<8)+c):(i=(f<<24)+(p<<16)+(o<<8)+c);if(sp){q=d;r=e}else{q=e;r=d}}}}}if(s==0)break;n==q.a.length?aw(a.f,q):n==r.a.length?aw(a.f,r):We(a,q,r,n)}} -function Yc(a){var b,c,d,e,f,g;g=a.N;f=Um(on,WA,0,a.L.d,7,1);for(c=0;c=2?e-2:e+2);if(hk?j:k;c=i>l?i:l;if(d-1?(d='\r\n'):c.indexOf('\r')>-1&&(d='\r');var e=a.split(d+'$$$$'+d);var f=[],g=0,h=e.length;for(;g');if(j.length>0&&j[0].length>10){var k={};f[f.length]=k;var l=j[0]+d;b.includeMolfile&&(k.molfile=l);k.molecule=$wnd.actelion.Molecule.fromMolfile(l);if(b.includeLabels){var m={};k.labels=m;for(var n=1,o=j.length;n');var s=p[0].substring(q+1,r);for(var t=1;t1&&Dh(a.i,dg(a.i,1,d))>1&&(kg(a.i,d)==1||kg(a.i,d)==2)){m=Um(on,WA,0,2,7,1);e=Um(on,WA,0,2,7,1);for(k=0;k<2;k++){m[k]=a.i.M;e[k]=dg(a.i,k,d);for(l=0;lf&&(m[k]=f)}}g=yi(h.c[h.b[e[0]]],h.d[h.b[e[0]]],h.c[h.b[e[1]]],h.d[h.b[e[1]]]);b=yi(h.c[h.b[m[0]]],h.d[h.b[m[0]]],h.c[h.b[e[0]]],h.d[h.b[e[0]]]);c=yi(h.c[h.b[e[1]]],h.d[h.b[e[1]]],h.c[h.b[m[1]]],h.d[h.b[m[1]]]);Ne(g,b)<0^Ne(g,c)<0^kg(a.i,d)==2&&kf(h,d)}}}}} -function It(a,b,c){var d,e,f,g,h,i,j,k;f=0;for(j=0;jc){throw new Hr('Invalid UTF8 sequence')}}g=Um(ln,XA,0,f,7,1);k=0;h=0;for(i=0;i0){d=a[b+i++];if((d&192)!=128){throw new Cs('Invalid UTF8 sequence at '+(b+i-1)+', byte='+Ls(d,16))}e=e<<6|d&63}k+=Yr(e,g,k)}return Dt(g,0,g.length)} -function Lk(a){var b,c,d,e,f,g,h,i,j;if(!a.g)return false;Cr(a.f);Cr(a.a);a.e=null;j=false;c=-1;a.b=a.c==null?null:Um(Wo,cB,2,a.c.length,4,1);a.d=-1;do{i=ur(a.g);if(i==null){Cr(a.f);return false}if(j){Wt(a.a,i);Ut(a.a,10)}else{if(st(i.substr(0,1),'>')){j=true;Wt(a.f,'M END');Ut(a.f,10);Wt(a.a,i);Ut(a.a,10)}else{Wt(a.f,i);Ut(a.f,10);st(i.substr(0,6),'M END')&&(j=true);continue}}if(a.c!=null){if(i.length==0){c=-1}else if(c==-1){d=Nk(i);if(d!=null){c=-1;for(b=0;b>19==b){h==null&&(h=Um(eq,UA,0,32,8,1));h[(a.s[d]&wB)>>19!=1&&(a.s[d]&wB)>>19!=2?-1:(a.s[d]&xB)>>21]=true}}for(f=0;f>10==b){h==null&&(h=Um(eq,UA,0,32,8,1));h[(a.G[f]&yB)>>10!=1&&(a.G[f]&yB)>>10!=2?-1:(a.G[f]&zB)>>12]=true}}k=0;if(h!=null){j=Um(on,WA,0,32,7,1);for(i=0;i<32;i++)h[i]&&(j[i]=k++);for(c=0;c>19==b){g=j[(a.s[c]&wB)>>19!=1&&(a.s[c]&wB)>>19!=2?-1:(a.s[c]&xB)>>21];a.s[c]&=-65011713;a.s[c]|=g<<21}}for(e=0;e>10==b){g=j[(a.G[e]&yB)>>10!=1&&(a.G[e]&yB)>>10!=2?-1:(a.G[e]&zB)>>12];a.G[e]&=-126977;a.G[e]|=g<<12}}}return k} -function Id(a,b){var c,d;if(a.o>iB)throw new Cs('Cannot canonize a molecule having more than 65535 atoms');if(a.p>iB)throw new Cs('Cannot canonize a molecule having more than 65535 bonds');this.L=a;this.K=b;wk(this.L,3);Pc(this);for(d=0;d3||Dh(a.L,f)>3)return false;if(wh(a.L,e)==2||wh(a.L,f)==2)return false;g=new xf(a.L,a.d,f,e);if(g.f&&!c)return false;h=new xf(a.L,a.d,e,f);if(h.f&&!c)return false;if(g.f&&h.f)return false;if(c){g.f&&g.c&&(a.O[b]=true);h.f&&h.c&&(a.O[b]=true)}d=sg(a.L,b)?3:a._?Ic(a,g,h):Hc(g,h);if(c){if((a.K&2)!=0){if(g.f){if(d==1){Rd(a.c[g.b],4);Rd(a.c[g.d],1)}else if(d==2){Rd(a.c[g.b],1);Rd(a.c[g.d],4)}}if(h.f){if(d==1){Rd(a.c[h.b],4);Rd(a.c[h.d],1)}else if(d==2){Rd(a.c[h.b],1);Rd(a.c[h.d],4)}}}}else{a.n[b]=d}return true} -function Kj(a,b){var c,d,e,f,g,h;if(!a.q||!a.c)return 0;if(a.c.d>a.q.d||a.c.e>a.q.e)return 0;Vj(a,b);c=Um(eq,UA,0,a.q.d,8,1);a.p=Um(on,WA,0,a.c.d,7,1);g=Um(on,WA,0,a.o,7,1);for(f=0;f3||uh(a.L,f)>3)return false;g=new xf(a.L,a.d,b,e);if(g.f&&!c)return false;h=new xf(a.L,a.d,b,f);if(h.f&&!c)return false;if(g.f&&h.f)return false;if(c){g.f&&g.c&&(a.P[b]=true);h.f&&h.c&&(a.P[b]=true)}i=wf(g);j=wf(h);if(i==-1||j==-1||(i+j&1)==0){c||(a.W[b]=3);return true}d=0;switch(i+j){case 3:case 7:d=2;break;case 5:d=1;}if(c){if(a.Q&&(a.K&2)!=0||!a.Q&&(a.K&4)!=0){if(g.f){if(d==1){Rd(a.c[g.b],64);Rd(a.c[g.d],16)}else{Rd(a.c[g.b],16);Rd(a.c[g.d],64)}}if(h.f){if(d==2){Rd(a.c[h.b],64);Rd(a.c[h.d],16)}else{Rd(a.c[h.b],16);Rd(a.c[h.d],64)}}}}else{a.W[b]=d}return true} -function ji(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A;if((a.G[b]&3)==0||(a.G[b]&3)==3||!Yh(a,b))return;v=-1;t=-1;u=-1;s=-1;e=0;for(l=0;l<2;l++){d=a.F[l][b];for(o=0;og&&(i=g)}q=Um(on,WA,0,2,7,1);r=0;for(k=0;kq[1]){A=q[0];q[0]=q[1];q[1]=A}j=nh(f,cg(a,s,q[0]));p=nh(f,cg(a,s,q[1]));c=j-p}else{c=nh(f,cg(a,s,q[0]))}c<0^(a.G[b]&3)==2^i==t?(a.I[v]=17):(a.I[v]=9)} -function If(a,b,c){var d,e,f,g;d=b.o;d>=b.M&&hh(b,b.M*2);f=(a.s[c]&wB)>>19;e=-1;f==1?(e=ft(32,(a.s[c]&wB)>>19!=1&&(a.s[c]&wB)>>19!=2?-1:(a.s[c]&xB)>>21)):f==2&&(e=ft(32,(a.s[c]&wB)>>19!=1&&(a.s[c]&wB)>>19!=2?-1:(a.s[c]&xB)>>21));b.D[d]=a.D[c];b.q[d]=a.q[c];b.v[d]=a.v[c];b.s[d]=a.s[c];b.w[d]=b.K?a.w[c]:0;b.A[d]=a.A[c];b.B[d]=a.B[c];b.C[d]=a.C[c];b.u[d]=a.u[c];b.t!=null&&(b.t[d]=null);if(a.t!=null&&a.t[c]!=null&&b.K){b.t==null&&(b.t=Um(on,_A,5,b.D.length,0,2));b.t[d]=Um(on,WA,0,a.t[c].length,7,1);for(g=0;g2&&(h|=16);i>3&&(h|=32)}c=a.q[b];c<0?(h|=AB):c>0&&(h|=BB);e=a.g[b];switch(e){case 0:break;case 1:h|=gB;break;case 2:h|=393216;break;case 3:h|=917504;break;default:h|=1966080;}}else{(a.s[b]&VA)!=0?(h|=2):(h|=4);i=xh(a,b);i==0?(h|=112):i==2?(h|=104):i==3?(h|=88):(h|=56);c=a.q[b];c==0?(h|=167772160):c<0?(h|=AB):c>0&&(h|=BB);d=a.c[b]-a.g[b]+Lh(a,b);switch(d){case 0:h|=1792;break;case 1:h|=1664;break;case 2:h|=1408;break;default:h|=896;}e=a.g[b];switch(e){case 0:h|=3932160;break;case 1:h|=3801088;break;case 2:h|=3538944;break;case 3:h|=3014656;break;default:h|=1966080;}g=a.k[b];switch(g){case 0:h|=98304;break;case 1:h|=81920;break;default:h|=49152;}}f=a.k[b];f>0&&(h|=ZA);f>1&&(h|=32768);return h} -function Fd(a){var b,c,d,e,f,g,h,i,j,k,l;for(b=0;ba.d[k[1]]^k[0]a.d[g]&&(i=!i);fa.d[k[1]]&&(i=!i);k[0]=2&&(c[d++]=g[o])}else{for(o=1;o=1&&(c[d++]=g[o])}if(d!=0){t=c[0];if(d>1){do{t=c[ey(a.j,d)]}while(t==p)}if(t!=p){p=t;kf(l,t);i=lf(l);if(r>l.f){r=l.f;q=new tf(a,l)}}}}bw(a.f,n,q);l=q;k=1;do{s=9999;for(o=0;ok&&u=5){m=0;for(k=0;k=3&&++m}if(m==2||m==1&&a.g[b]==3)continue}return true}for(j=0;j1&&(a.D[a.f[i][m]]==6?(a.s[e]|=8192):!Xh(a,a.i[i][m])&&tg(a,a.f[i][m])&&(a.s[e]|=ZA))}}}while(true){k=false;for(c=0;c0&&(20480&a.s[c])==ZA){for(l=0;l1){i=a.f[c][l];j=a.i[c][l];for(m=0;ma.d[k[1]]^a.C[k[0]]a.d[g]&&(i=!i);a.C[f]a.d[k[1]]&&(i=!i);a.C[k[0]]g&&(i=g)}s=Um(on,WA,0,2,7,1);t=0;for(k=0;ks[1]){B=s[0];s[0]=s[1];s[1]=B}j=nh(c,cg(a,r,s[0]));q=nh(c,cg(a,r,s[1]));e=j-q}else{e=nh(c,cg(a,r,s[0]))}e<0^(a.s[b]&3)==1^i==v?(a.I[w]=17):(a.I[w]=9)} -function kf(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;a.g==null&&(a.g=Um(on,_A,5,a.r.d,0,2));if(a.g[b]==null){m=Um(on,WA,0,a.a.length,7,1);s=Um(eq,UA,0,a.r.b,8,1);d=dg(a.p,0,b);e=dg(a.p,1,b);m[0]=d;s[d]=true;j=0;n=0;while(j<=n){for(p=0;p~~(a.a.length/2);if((a.r.g&6)!=0){h=false;g=false;for(p=0;p=4)break;if(b==a.b[dg(a.p,0,a.e[l])]||b==a.b[dg(a.p,1,a.e[l])])continue;p=a.c[a.b[dg(a.p,0,a.e[l])]];t=a.d[a.b[dg(a.p,0,a.e[l])]];q=a.c[a.b[dg(a.p,1,a.e[l])]];u=a.d[a.b[dg(a.p,1,a.e[l])]];h=Math.sqrt((p-o)*(p-o)+(t-s)*(t-s));i=Math.sqrt((q-o)*(q-o)+(u-s)*(u-s));e=Math.sqrt((q-p)*(q-p)+(u-t)*(u-t));if(h0){j=ff(f,k);a.c[b]+=j.b*ht(j.a);a.d[b]+=j.b*_s(j.a)}} -function ik(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p;d=true;i=0;p=0;m=a.i;a.c[b]=m;h=ag(a.b,b);g=Sf(a.b,b);e=Of(a.b,b);f=Vf(a.b,b);k=Dh(a.b,b);e==0&&f==0&&hk(h)&&(d=false);a.e[m]='';if(c!=-1){switch(jg(a.b,c)){case 0:a.e[m]+='~';break;case 2:a.e[m]+='=';break;case 3:a.e[m]+='#';}}d&&(a.e[m]+='[');f!=0&&(a.e[m]+=''+f);a.e[m]+=g;if(d){if(0<(o=Lh(a.b,b))){a.e[m]+='H';10?(a.e[m]+='+'):(a.e[m]+='-');(e<0?-e:e)>1&&(a.e[m]+=''+(e<0?-e:e))}d&&(a.e[m]+=']');c!=-1&&(a.j[c]=true);a.g[b]=true;++a.i;for(n=0;n9){a.e[a.c[j]]+='%';a.e[m]+='%'}a.e[a.c[j]]+=''+a.d;a.e[m]+=''+a.d;continue}n-p0?++h:++g;j>=0&&f<0&&++j;break;case 48:if(h>0){throw new Cs("Unexpected '0' in pattern \""+b+'"')}++p;j>=0&&f<0&&++j;break;case 44:j=0;break;case 46:if(f>=0){throw new Cs('Multiple decimal separators in pattern "'+b+'"')}f=g+p+h;break;case 69:if(!d){if(a.v){throw new Cs('Multiple exponential symbols in pattern "'+b+'"')}a.v=true;a.k=0}while(n+10&&f>=0){m=f;f==0&&++m;h=g-m;g=m-1;p=1}if(f<0&&h>0||f>=0&&(fg+p)||j==0){throw new Cs('Malformed pattern "'+b+'"')}if(d){return n-c}o=g+p+h;a.i=f>=0?o-f:0;if(f>=0){a.n=g+p-f;a.n<0&&(a.n=0)}i=f>=0?f:o;a.o=i-g;if(a.v){a.j=g+a.o;a.i==0&&a.o==0&&(a.o=1)}a.f=j>0?j:0;a.c=f==0||f==o;return n-c} -function pd(a,b){var c,d,e,f,g,h,i,j,k,l,m,n;if(a.L.d==0){a.f='';return}n=a._?16:8;od(a);Ut(a.r,33);nd(a,a._?1:0,1);nd(a,b?1:0,1);nd(a,~~(n/2),4);m=0;for(k=1;k1||mg(a.g,n[l])==64)f|=1;else{d=c[b][l];if(d!=-1){if(a.a[d]){if(a.e[d]){f|=1;a.f[d]||(e|=1)}}else{p=true}}}}j=false;switch(o){case 5:g=Xm(Tm(on,1),WA,0,7,[10,5,18,9,20]);j=true;for(k=0;k<5;k++){if((f&g[k])==g[k]){switch(ag(a.g,m[k])){case 6:if(Of(a.g,m[k])==-1){a.e[b]=true;a.d[b]=k;(e&g[k])==0&&(j=false)}break;case 7:if(Of(a.g,m[k])<=0){a.e[b]=true;a.d[b]=k}break;case 8:a.e[b]=true;a.d[b]=k;break;case 16:if(Dh(a.g,m[k])==2){a.e[b]=true;a.d[b]=k}}}}break;case 6:j=true;if((f&21)==21){a.e[b]=true;(e&21)==0&&(j=false)}if((f&42)==42){a.e[b]=true;(e&42)==0&&(j=false)}break;case 7:h=Xm(Tm(on,1),WA,0,7,[42,21,74,37,82,41,84]);j=true;for(i=0;i<7;i++){if((f&h[i])==h[i]){if(ag(a.g,m[i])==6&&Of(a.g,m[i])==1){a.e[b]=true;a.d[b]=i;(e&h[i])==0&&(j=false)}}}}a.e[b]&&!j&&(a.f[b]=true);if(a.e[b])return true;return !p} -function Lc(a,b,c){var d,e,f,g,h,i,j,k,l,m;m=Xm(Tm(on,2),_A,5,0,[Xm(Tm(on,1),WA,0,7,[2,1,2,1]),Xm(Tm(on,1),WA,0,7,[1,2,2,1]),Xm(Tm(on,1),WA,0,7,[1,1,2,2]),Xm(Tm(on,1),WA,0,7,[2,1,1,2]),Xm(Tm(on,1),WA,0,7,[2,2,1,1]),Xm(Tm(on,1),WA,0,7,[1,2,1,2])]);d=Um(nn,$A,0,uh(a.L,b),7,1);for(g=0;g>24;if(j!=3)return j;k=0;l=0;for(h=0;hd[2]&&d[1]-d[2]>bB)&&(l=3-l);break;case 1:d[2]-d[0]>bB&&(l=3-l);break;case 2:d[1]-d[0]a.d[v]&&(v=c);d=Um(eq,UA,0,a.L.d,8,1);g=Um(eq,UA,0,a.L.e,8,1);a.C=Um(on,WA,0,a.L.d,7,1);a.u=Um(on,WA,0,a.L.d,7,1);a.A=Um(on,WA,0,a.L.d,7,1);a.v=Um(on,WA,0,a.L.e,7,1);a.u[0]=v;a.C[v]=0;d[v]=true;e=1;i=0;j=1;k=0;while(im){o=h;p=Eh(a.L,a.u[i],q);m=a.d[h]}}if(m==-1)break;a.C[o]=j;a.A[j]=i;a.u[j++]=o;a.v[k++]=p;d[o]=true;g[p]=true}++i}else{n=0;m=-1;for(b=0;bm){n=b;m=a.d[b]}}++e;a.C[n]=j;a.A[j]=-1;a.u[j++]=n;d[n]=true}}a.w=Um(on,WA,0,2*(a.L.e-k),7,1);while(true){s=a.L.M;t=a.L.M;u=-1;for(f=0;fi)return false;if(ag(a.c,c)==0)return true;if(ag(a.q,b)==0)return false;k=Xf(a.q,b);g=Xf(a.c,c);f=Tf(a.c,c);j=Tf(a.q,b);if((g&1)!=0){if(f!=null){if((k&1)!=0){if(j==null)return false;if(!Qj(f,j))return false}else{if(j!=null){if(Sj(j,f))return false}else{if(Pj(ag(a.q,b),f))return false}}}}else{if((k&1)!=0)return false;if(f!=null){if(j!=null){if(!Qj(j,f))return false}else{if(!Pj(ag(a.q,b),f))return false}}else{if(j!=null)return false;if(a.s[b]!=a.e[c])return false}}if((k|g)!=0){if((g&YA)!=0){if(a.q.K&&(k&YA)==0)return false;else if(e!=i)return false}if((g&VA)!=0){if(e>=i&&(k&VA)==0)return false}}if((a.r[b]&~a.d[c])!=0)return false;if(Of(a.c,c)!=0&&Of(a.c,c)!=Of(a.q,b))return false;if(Vf(a.c,c)!=0&&Vf(a.c,c)!=Vf(a.q,b))return false;m=(Xf(a.c,c)&kB)>>22;if(m!=0){if(a.q.K&&m==(Xf(a.q,c)&kB)>>22)return true;d=false;l=Qh(a.q);for(h=0;hj){for(c=0;c4)return false;if(ag(a.L,b)==7&&!a.M[b])return false;n=Um(on,WA,0,4,7,1);o=Um(on,WA,0,4,7,1);j=Um(eq,UA,0,4,8,1);for(h=0;hZs(Ne(B.a,D.a))){rf(c,F,H,w.a)}else{jf(c,F,H);rf(c,F,H,A.a)}return Re(a,b,c,e)} -function Pc(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;a.M=Um(eq,UA,0,a.L.d,8,1);for(b=0;b7)continue;t=Qh(a.L);u=0;while(u=3){m=false;s=Zv(t.i,u);for(k=0;k<6;k++){if(b==s[k]){r=Bj(t,u,e==s[Bj(t,u,k+2)]?k-2:k+2);q=s[r];xh(a.L,q)>=3&&Ph(a.L,o[1],q,2,null)==2&&(m=true);break}}if(m){a.M[b]=true;continue}}}f=wh(a.L,e)==1||Wh(a.L,e)||$h(a.L,e);g=!f&&ag(a.L,e)==7&&Of(a.L,e)!=1;if(c==1){!f&&!g&&v<=4&&d<=3&&(a.M[b]=true);continue}switch(v){case 4:!f&&!g&&d<=4&&(a.M[b]=true);break;case 5:g?d<=3&&(a.M[b]=true):f||d<=4&&(a.M[b]=true);break;case 6:c==2?f?d<=4&&(a.M[b]=true):g||d<=3&&(a.M[b]=true):c==3&&(f?d<=6&&(a.M[b]=true):d<=4&&(a.M[b]=true));break;case 7:c==3&&d<=3&&(a.M[b]=true);}}}}} -function ii(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p;if((a.s[b]&3)==0||(a.s[b]&3)==3)return;if(a.k[b]==2&&a.g[b]==2){gi(a,b);return}if(a.g[b]<3||a.g[b]>4){Qg(a,b,0,false);return}o=Sh(a,b);c=Um(nn,$A,0,a.c[b],7,1);for(g=0;gc[2]&&c[1]-c[2]>bB;break;case 1:k=c[2]-c[0]>bB;break;case 2:k=c[1]-c[0]=-1){f=Um(on,WA,0,this.b,7,1);if(se(this,f,b)){for(l=0;lp?(r=hn(o)):(r=hn(p)):o!=-1&&(o>q||o=Mh(a.L,c))&&(r=hn(o)),bd(a,c,r),r)+1);Sd(a.c[c],2,Yf(a.L,c)>>4);Sd(a.c[c],29,Xf(a.L,c));Tf(a.L,c)!=null&&(f=true)}a.N=Wc(a);if(f){for(b=0;b=0;j--)Sd(a.c[b],8,e[j])}a.N=Wc(a)}if(a.L.K){i=false;for(g=0;g=0;j--)Sd(a.c[b],20,h[j])}a.N=Wc(a)}}if((a.K&8)!=0){l=new vk;for(d=0;d2||ag(a.i,d)==16&&Dh(a.i,d)>2)&&Dh(a.i,d)>2){h=false;for(q=1;q0){p=0;for(f=0;fp&&Rg(a.c,c,VA)}}else if(st(g,'RBCNT')){switch(r){case 3:case -1:Rg(a.c,c,112);break;case 1:Rg(a.c,c,8);break;case 2:Rg(a.c,c,104);break;case 4:Rg(a.c,c,56);}}else{Qi&&(bu(),au)}}} -function Rc(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B;s=Um(eq,UA,0,a.L.d,8,1);t=Um(eq,UA,0,a.L.e,8,1);b=0;v=false;for(d=0;d1){Oc(a);for(h=new Yu(a.t);h.aB?(A<<16)+B:(B<<16)+A;if(a.n[g.b[p]]==1||a.n[g.b[p]]==2){++w;v=true;if(i3&&(r=3);(c&512)==0&&r>1&&(r=1);g=Nq(g,Rq(r<<4))}(c&1024)!=0&&(a.s[f]&8)!=0&&(g=Nq(g,{l:64,m:0,h:0}));(c&YA)!=0&&(a.s[f]&VA)!=0&&(g=Nq(g,{l:128,m:0,h:0}));t=Nq(g,Yq(i,8));n=0;while(!Tq(t,p[n]))++n;for(o=l;o>n;o--)p[o]=p[o-1];p[n]=t}q=a.g[b]<4?a.g[b]:4;e={l:0,m:0,h:0};for(m=0;m9&&(s=9);s>2&&(s-=2);e=Xq(e,Rq(s<<4))}else (c&1)!=0&&(a.s[b]&8)!=0&&(e=Xq(e,{l:64,m:0,h:0}));(c&4)!=0&&(a.s[b]&VA)!=0&&(e=Nq(e,{l:128,m:0,h:0}));(c&8)!=0&&(a.s[b]&8192)!=0&&(e=Nq(e,{l:256,m:0,h:0}));(c&16)!=0&&(a.s[b]&ZA)!=0&&(e=Nq(e,{l:512,m:0,h:0}));if(Wq(Oq(e,{l:0,m:0,h:64}),{l:0,m:0,h:0})){j=new rl('Bit already set!');ml(j,bu())}if(Wq(Oq(e,{l:0,m:0,h:128}),{l:0,m:0,h:0})){j=new rl('Bit already set!');ml(j,bu())}if((c&VA)!=0){rc(a,b)&&(e=Nq(e,{l:0,m:0,h:64}));d=false;if(uc(a,b)){for(k=0;k=10&&b.a.length<=24&&j[q]!=null){o=1<>>=1;h>>>=1}for(t=0;t>>=1}return}(i&1)!=0&&(i|=o);i>>>=1}}}}Me(b)} -function Li(a){var b,c,d,e,f,g,h,i,j,k,l;wk(a,1);e=Um(on,WA,0,191,7,1);for(c=0;c=171&&a.D[d]<=190?(e[1]+=2-Mh(a,d)):(e[1]+=Lh(a,d));h=0;for(j=1;j<=190;j++)e[j]!=0&&++h;this.b=Um(on,WA,0,h,7,1);this.c=Um(on,WA,0,h,7,1);h=0;for(i=0;i0&&Et(l,(Bf(),yf)[g])>0){l=(Bf(),yf)[g];k=g}if(k==-1)break;this.b[h]=e[k];this.c[h]=k;++h;e[k]=0}this.a=0;this.d=0;for(b=0;b0)return 28;if(a.g[b]==1)return 29;if((!!a.n&&b0)return 28;return 30}}return Yk.length+1;case 15:if(a.q[b]==0){if(a.c[b]-a.g[b]+Lh(a,b)==0){if(a.g[b]==3&&a.k[b]==0)return 39;if(a.g[b]==2&&a.k[b]==1)return 40;if(a.g[b]==4&&a.k[b]==1)return 41}else if(a.c[b]-a.g[b]+Lh(a,b)==1){if(a.g[b]==3&&a.k[b]==1)return 42}}return Yk.length+1;case 16:if(a.q[b]==0){if((a.s[b]&VA)!=0){return a.g[b]==2?37:38}else{if(a.c[b]-a.g[b]+Lh(a,b)==0){if(a.g[b]==2&&a.k[b]==0)return 32;if(a.g[b]==1&&a.k[b]==1)return 33;if(a.g[b]==3&&a.k[b]==1)return 34;if(a.g[b]==4&&a.k[b]==2)return 35}else if(a.c[b]-a.g[b]+Lh(a,b)==1){if(a.g[b]==1)return 36}}}return Yk.length+1;}return Yk.length} -function ed(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J,K,L,M;if(ag(a.L,c)!=ag(a.L,d))return ag(a.L,c)>ag(a.L,d);if(Vf(a.L,c)!=Vf(a.L,d)){H=vg(a.L,c)?(Bf(),Af)[ag(a.L,c)]:Vf(a.L,c);I=vg(a.L,d)?(Bf(),Af)[ag(a.L,d)]:Vf(a.L,d);return H>I}w=a.L.d;s=Um(on,WA,0,w,7,1);u=Um(on,WA,0,w,7,1);v=Um(on,WA,0,w,7,1);t=Um(eq,UA,0,w,8,1);i=Um(eq,UA,0,a.L.o,8,1);s[0]=b;s[1]=c;s[2]=d;u[0]=-1;u[1]=0;u[2]=0;i[b]=true;i[c]=true;i[d]=true;m=1;A=2;G=Um(on,WA,0,64,7,1);G[1]=1;G[2]=3;o=2;while(m<=A){while(m=w){w+=a.L.d;s=Dd(s,w);u=Dd(u,w);v=Dd(v,w);t=(M=Um(eq,UA,0,w,8,1),cu(t,0,M,0,t.length),M)}if(Zh(a.L,Eh(a.L,n,C))){++p;q+=ag(a.L,k)}else{for(F=1;Fv[2];o>1&&fd(v,u,G,o);++o}l=Um(on,WA,0,a.L.d,7,1);D=false;for(f=0;fv[2]}uw(l,l.length);r=false;for(j=0;jv[2];uw(l,l.length);L=false;for(e=0;ev[2];a.b=true;throw new pl('no distinction applying CIP rules')} -function uc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A;if(a.D[b]!=7)return false;if(a.g[b]+a.k[b]>3)return false;if((a.s[b]&VA)!=0){if(a.k[b]!=1)return false;if(yh(a,b)!=1)return false;u=(wk(a,3),a.n);for(s=0;s0}break}}return false}if(a.k[b]>1)return false;if(a.k[b]==1){m=-1;A=0;for(i=0;i=0}for(h=0;h0){for(m=0;m1&&!a.a[k]&&tg(a.b,j)){mg(a.b,k)==4?dh(a.b,k,2):dh(a.b,k,1);Gg(a.b,d,Of(a.b,d)+1);Gg(a.b,j,Of(a.b,j)-1);break}}}}wk(a.b,3);for(A=0;A0)&&(l=F[n]):(s=true)}if(l!=-1&&!s){Og(a.b,l,false);for(m=0;m0||wh(a.b,F[m])>0){if(s)throw new pl('Aromatic 7-membered ring with more than one positive atom');Og(a.b,F[m],false);s=true;for(p=0;p=4;u--){do{t=false;for(g=0;gj){n=j;B=f}}p=O-a.A[B];s=P-a.B[B]}else{p=O-Zf(a,a.f[b][0]);s=P-$f(a,a.f[b][0])}if(J==1){C=Cf(a,O+IA*p+NA*s,P-NA*p+IA*s,0)}else if(J==2){p=O-0.5*(Zf(a,a.f[b][0])+Zf(a,a.f[b][1]));s=P-0.5*($f(a,a.f[b][0])+$f(a,a.f[b][1]));C=Cf(a,O+p,P+s,0)}else if(J==3){L=a.f[b][0];for(w=1;w<3;w++){i=a.i[b][w];(a.I[i]==9||a.I[i]==17)&&(L=a.f[b][w])}c=Zs(nh(mh(a.A[b],a.B[b],Zf(a,a.f[b][0]),$f(a,a.f[b][0])),mh(a.A[b],a.B[b],Zf(a,a.f[b][1]),$f(a,a.f[b][1]))));d=Zs(nh(mh(a.A[b],a.B[b],Zf(a,a.f[b][0]),$f(a,a.f[b][0])),mh(a.A[b],a.B[b],Zf(a,a.f[b][2]),$f(a,a.f[b][2]))));e=Zs(nh(mh(a.A[b],a.B[b],Zf(a,a.f[b][1]),$f(a,a.f[b][1])),mh(a.A[b],a.B[b],Zf(a,a.f[b][2]),$f(a,a.f[b][2]))));K=true;if(c>d&&c>e){if(d+ec&&d>e){if(c+e-1?Ef(a,b,C,1):Ef(a,b,C,17);C=Cf(a,O+HA*p-MA*s,P+MA*p+HA*s,0);Yg(a,C,1);Ef(a,b,C,1)}else{for(A=0;A<2;A++){C=Cf(a,O,P,0);Yg(a,C,1);Ef(a,b,C,1)}}break;case 3:{p=(O-Zf(a,a.f[b][0]))*0.7;s=(P-$f(a,a.f[b][0]))*0.7;C=Cf(a,O+p,P+s,0);Yg(a,C,1);Ef(a,b,C,1);C=Cf(a,O-s,P+p,0);Yg(a,C,1);Ef(a,b,C,1);C=Cf(a,O+s,P-p,0);Yg(a,C,1);Ef(a,b,C,1)}break;default:{for(A=0;A4){m=new uf(a,a.i,1+a.e[d]);m.c[a.e[d]]=0;m.d[a.e[d]]=0;m.q[a.e[d]]=32;m.a[a.e[d]]=d;a.a[d]=true;for(o=0;o2){m=new uf(a,a.i,w);k=0;for(p=0;p2)break;a.a[b[v+1]]=true;a.c[Eh(a.i,b[v],A)]=true;++v}while(wh(a.i,b[v])==2&&a.e[b[v]]==2);w=a.e[b[0]]+a.e[b[v]]+v-1;m=new uf(a,a.i,w);for(t=0;t<=v;t++){m.c[t]=t;m.d[t]=0;m.q[t]=64;m.a[t]=b[t]}l=v+1;n=false;for(u=0;u=64)throw new pl('SmilesParser: Reconnection number out of range');if(C[t]==-1){C[t]=h[j]}else{u=!w?null:Fv(w,Ms(h[j]));!!u&&qk(u,B,false);Ef(a.b,h[j],C[t],i);C[t]=-1}i=1}continue}if(H==43){if(!G)throw new pl("SmilesParser: '+' found outside brackets");k=1;while(c[B]==43){++k;++B}if(k==1&&Vr(c[B]&iB)){k=c[B]-48;++B}Gg(a.b,h[j],k);continue}if(H==45){if(!G)continue;k=-1;while(c[B]==45){--k;++B}if(k==-1&&Vr(c[B]&iB)){k=48-c[B];++B}Gg(a.b,h[j],k);continue}if(H==40){if(h[j]==-1)throw new pl('Smiles with leading parenthesis are not supported');h[j+1]=h[j];++j;continue}if(H==41){--j;continue}if(H==91){if(G)throw new pl('SmilesParser: nested square brackets found');G=true;continue}if(H==93){if(!G)throw new pl('SmilesParser: closing bracket without opening one');G=false;continue}if(H==37){A=true;continue}if(H==46){if(j!=0)throw new pl("SmilesParser: '.' found within brackets");h[0]=-1;continue}if(H==58){if(!G){i=64;continue}r=0;while(Vr(c[B]&iB)){r=10*r+c[B]-48;++B}Ng(a.b,h[j],r);continue}if(H==47||H==92){continue}if(H==64){o=false;if(c[B]==64){o=true;++B}!w&&(w=new qy);u=new sk(a,h[j],m,o);oy(w,Ms(h[j]),u);c[B]==72&&++B;continue}throw new pl("SmilesParser: unexpected character found: '"+_m(H)+"'")}gh(a.b,true);wk(a.b,1);for(d=0;d=39&&st(w.substr(34,5),'V3000')?3:2}catch(a){a=iq(a);if(bn(a,10)){Qi&&(bu(),au);return false}else throw hq(a)}if(b.c){Mf(b.c);fh(b.c,false)}if(T==3){K=hj(b,c);jh(b.c,D);return K}!b.c&&(b.c=new Fk(F,G));jh(b.c,D);n==0&&(b.c.L=true);if(0==F){while(w!=null&&!(st(w,'M END')||st(w,'$$$$')||st(Ct(w,1,w.length-1),'$'))){w=ur(c)}return true}for(r=0;r=48&&w.charCodeAt(47)==49&&Rg(b.c,e,8192);S=w.length<51?0:fj(At(w.substr(48,3)));switch(S){case 0:break;case 15:Eg(b.c,e,0);break;default:Eg(b.c,e,S);}}for(s=0;s0){d=10;U=14;for(u=1;u<=t;++u,d+=8,U+=8){e=vs(At(w.substr(d,d+3-d)))-1;l=vs(At(w.substr(U,U+3-U)));Gg(b.c,e,l)}}}if(st(w.substr(0,6),'M ISO')){t=vs(At(w.substr(6,3)));if(t>0){d=10;U=14;for(u=1;u<=t;++u,d+=8,U+=8){e=vs(At(w.substr(d,d+3-d)))-1;B=vs(At(w.substr(U,U+3-U)));Pg(b.c,e,B)}}}if(st(w.substr(0,6),'M RAD')){t=vs(At(w.substr(6,3)));if(t>0){d=10;U=14;for(u=1;u<=t;++u,d+=8,U+=8){e=vs(At(w.substr(d,d+3-d)))-1;J=vs(At(w.substr(U,U+3-U)));switch(J){case 1:Sg(b.c,e,16);break;case 2:Sg(b.c,e,32);break;case 3:Sg(b.c,e,48);}}}}if(st(w.substr(0,6),'M RBD')){t=vs(At(w.substr(6,3)));if(t>0){d=10;U=14;for(u=1;u<=t;++u,d+=8,U+=8){e=vs(At(w.substr(d,d+3-d)))-1;L=vs(At(w.substr(U,U+3-U)));switch(L){case 3:case -1:Rg(b.c,e,112);break;case 1:Rg(b.c,e,8);break;case 2:Rg(b.c,e,104);break;case 4:Rg(b.c,e,56);}}}}if(st(w.substr(0,6),'M ALS')){e=vs(At(w.substr(7,3)))-1;if(e>=0){I=vs(At(w.substr(10,3)));i=w.charCodeAt(14)==84;R=Um(on,WA,0,I,7,1);d=16;for(u=0;u0){d=10;U=14;for(u=1;u<=t;++u,d+=8,U+=8){e=vs(At(w.substr(d,d+3-d)))-1;N=vs(At(w.substr(U,U+3-U)));if(N==-2){Rg(b.c,e,YA)}else if(N>0){O=0;for(j=0;jO&&Rg(b.c,e,VA)}}}}w=ur(c)}}catch(a){a=iq(a);if(bn(a,10)){o=a;ml(o,bu());return false}else throw hq(a)}wk(b.c,7);return true} -function xd(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T;od(a);nd(a,9,4);P=dt(zd(a.L.d),zd(a.L.e));nd(a,P,4);if(P==0){nd(a,a.L.K?1:0,1);nd(a,0,1);a.F=(a.s<<=a.q,Ut(a.r,a.s+64&iB),a.r.a);return}Q=S=R=C=0;for(f=0;f0){nd(a,1,1);nd(a,8,4);nd(a,D,P);for(i=0;i>4,2)}}}if(a.L.K){K=K|Cc(a,22,K,P,mB,1,-1);K=K|Dc(a,23,K,P,gB,1,-1);K=K|Dc(a,24,K,P,786432,2,18)}if((a.K&16)!=0){for(e=0;e>19!=1){G=false;break}}I=-1;if(G){w=Um(on,WA,0,32,7,1);for(d=0;d>19==1){B=(a.s[d]&wB)>>19!=1&&(a.s[d]&wB)>>19!=2?-1:(a.s[d]&xB)>>21;++w[B];03)&&(A=1.5/o)}else{J=IB;for(d=1;ds&&(J=s)}}A=3/J}}for(g=0;g>>28)-1;S==-1?Wt(this.b,' 0'):S==0?Wt(this.b,' 15'):Ni(this,S);Wt(this.b,' 0 0 0');Ni(this,$s(a.u[g]));Wt(this.b,' 0 0\n')}for(p=0;p8){Vb=g;g=t}if(g==0){fh(a.f,oi(a,1)==1);return}h=oi(a,g);i=oi(a,t);Kb=oi(a,g);Ob=oi(a,g);Nb=oi(a,g);F=oi(a,g);for(l=0;l=39;Ub=0;Xb=0;Zb=0;_b=0;I=false;J=false;if(N){if(d.length>2*h-2&&d[2*h-2]==39||d.length>3*h-3&&d[3*h-3]==39){J=true;I=d.length==3*h-3+9;Cb=I?3*h-3:2*h-2;r=86*(d[Cb+1]-40)+d[Cb+2]-40;Ub=Math.pow(10,r/2000-1);Cb+=2;Wb=86*(d[Cb+1]-40)+d[Cb+2]-40;Xb=Math.pow(10,Wb/1500-1);Cb+=2;Yb=86*(d[Cb+1]-40)+d[Cb+2]-40;Zb=Math.pow(10,Yb/1500-1);if(I){Cb+=2;$b=86*(d[Cb+1]-40)+d[Cb+2]-40;_b=Math.pow(10,$b/1500-1)}}else{I=d.length==3*h-3}}if(a.b&&I){d=null;N=false}for(wb=1;wb1?(b.c=js(this,a-1)):(b.c=this);return b};_.lb=function is(){_r(this);return this.b};_.mb=function ks(){return as(this)};_.nb=function ms(){_r(this);return this.i};_.ob=function os(){return (this.e&4)!=0};_.pb=function ps(){return (this.e&1)!=0};_.tS=function ss(){return ((this.e&2)!=0?'interface ':(this.e&1)!=0?'':'class ')+(_r(this),this.k)};_.e=0;_.g=0;var $r=1;var Ro=es(1),co=es(0),Fo=es(64);lq(132,1,{},pc);_.a=0;_.b=0;_.e=0;var qn=es(132);var xc,yc;lq(88,1,{},Bc);_.a=0;_.b=0;_.c=0;_.d=0;var rn=es(88);lq(59,1,{},Id);_.b=false;_.q=0;_.s=0;_.B=false;_.D=0;_.G=false;_.H=false;_.K=0;_.N=0;_.Q=false;_._=false;var Cn=es(59);lq(105,1,{},Kd);_.ab=function Ld(a,b){return Jd(a,b)};var tn=es(105);lq(60,1,{60:1},Md);_.b=0;_.c=0;_.d=0;var sn=es(60);lq(106,1,{},Od);_.ab=function Pd(a,b){return Nd(a,b)};var vn=es(106);lq(61,1,{61:1},Qd);_.a=0;_.b=0;_.c=0;var un=es(61);lq(37,1,{37:1,25:1},Vd);_.bb=function Wd(a){return Td(this,a)};_.a=0;_.b=0;_.c=0;var wn=es(37);lq(104,1,{},Xd);var xn=es(104);lq(125,1,{},me);var An=es(125);lq(128,1,{},pe);_.ab=function qe(a,b){return oe(a,b)};var yn=es(128);lq(126,1,{},Be);_.a=0;_.b=0;_.f=0;_.g=0;_.i=0;var zn=es(126);lq(127,1,{},De);_.ab=function Ee(a,b){return Ce(a,b)};var Bn=es(127);lq(55,1,{},ef);_.b=0;_.d=0;_.g=0;var En=es(55);lq(18,1,{18:1},tf,uf);_.f=0;_.i=0;_.j=0;_.k=false;_.n=0;_.o=0;var Dn=es(18);lq(32,1,{},vf);_.a=0;_.b=0;_.c=0;_.d=0;var Fn=es(32);lq(31,1,{},xf);_.a=0;_.b=0;_.c=false;_.d=0;_.f=false;_.g=0;_.i=false;_.j=0;var Gn=es(31);lq(44,1,{44:1,4:1});_.o=0;_.p=0;_.J=0;_.K=false;_.L=false;_.M=0;_.N=0;_.P=false;_.Q=0;var yf,zf,Af;var Nn=es(44);lq(54,44,{54:1,44:1,4:1});_.cb=function mi(a){rh(this,a)};_.d=0;_.e=0;var Hn=es(54);lq(38,1,{},vi);_.b=false;_.c=0;_.d=0;_.e=0;var In=es(38);lq(12,1,{12:1},wi,xi);_.a=0;_.b=0;var Jn=es(12);lq(69,1,{},zi);var Kn=es(69);lq(3,1,{3:1},Ai);_.a=0;_.b=0;var Ln=es(3);var Bi;lq(82,1,{});_.a=0;_.d=0;var Ei,Fi,Gi;var Mn=es(82);lq(68,1,{},Oi);var On=es(68);lq(67,1,{},ij);var Qi=true;var Pn=es(67);lq(84,1,{});var Qn=es(84);lq(63,1,{},Cj);var Rn=es(63);lq(65,1,{},Wj);_.b=0;_.g=false;_.o=0;_.u=false;_.v=0;var Tn=es(65);lq(66,1,{},dk);var Xj,Yj;var Sn=es(66);lq(93,1,{},jk);_.a=0;_.d=0;_.i=0;var Un=es(93);lq(91,1,{},pk);var Wn=es(91);lq(92,1,{},sk);_.a=0;_.b=false;_.c=0;_.d=false;_.e=0;var Vn=es(92);lq(124,1,XA,vk);var Xn=es(124);lq(23,54,{54:1,44:1,23:1,4:1},Fk);_.cb=function Gk(a){wk(this,a)};_.db=function Hk(){return Ak(this)};_.eb=function Ik(){return Bk(this)};_.a=false;var Yn=es(23);lq(153,1,{});var Zn=es(153);lq(87,153,{},Rk);_.d=0;var Jk;var $n=es(87);lq(94,1,{},Xk);var Sk,Tk,Uk;var _n=es(94);var Yk;var cl,dl;lq(107,1,{},kl);var ao=es(107);lq(11,1,ZB);_.fb=function nl(){return this.f};_.tS=function ol(){var a,b;a=as(this.cZ);b=this.fb();return b!=null?a+': '+b:a};var Xo=es(11);lq(10,11,$B,pl);var Io=es(10);lq(14,10,$B,rl);var So=es(14);lq(89,14,$B);var fo=es(89);lq(36,89,{36:1,4:1,10:1,11:1},vl);_.fb=function wl(){ul(this);return this.c};_.gb=function xl(){return gn(this.b)===gn(sl)?null:this.b};var sl;var bo=es(36);lq(141,1,{});var eo=es(141);var zl=0,Al=0,Bl=0,Cl=-1;lq(133,141,{},Ql);var Ml;var go=es(133);var Tl='anonymous',Ul=-1,Vl;lq(161,1,{});var ko=es(161);lq(102,161,{},_l);_.hb=function am(a,b){var c={},j;a.fnStack=[];var d=arguments.callee.caller;while(d){var e=(Wl(),d.name||(d.name=Zl(d.toString())));a.fnStack.push(e);var f=':'+e;var g=c[f];if(g){var h,i;for(h=0,i=g.length;h=0?':'+this.c:'')+')'};_.c=0;var To=es(27);var Wo=es(2);var Lt,Mt=0,Nt;lq(90,45,{140:1},Tt);var Uo=es(90);lq(20,45,{140:1},Zt,$t,_t);var Vo=es(20);var au;lq(76,14,$B,du);var Yo=es(76);lq(167,1,{});var $o=es(167);lq(79,167,{},fu);var Zo=es(79);lq(157,1,{});_.rb=function ku(a){return gu(this,a)};_.tS=function lu(){return ju(this)};var _o=es(157);lq(156,1,{50:1});_.tb=function qu(a){return mu(this,a)};_.ub=function ru(a){return !!ou(this,a)};_.eQ=function su(a){var b,c,d;if(a===this){return true}if(!bn(a,50)){return false}d=a;if(this.sb()!=d.sb()){return false}for(c=d.vb().qb();c.xb();){b=c.yb();if(!this.tb(b)){return false}}return true};_.wb=function tu(a){return uu(ou(this,a))};_.hC=function vu(){return Gw(this.vb())};_.sb=function wu(){return this.vb().sb()};_.tS=function xu(){var a,b,c,d;d=new _t('{');a=false;for(c=this.vb().qb();c.xb();){b=c.yb();a?(d.a+=', ',d):(a=true);Wt(d,pu(this,b.Cb()));d.a+='=';Wt(d,pu(this,b.Db()))}d.a+='}';return d.a};var np=es(156);lq(95,156,{50:1});_.ub=function Bu(a){return yu(this,a)};_.vb=function Cu(){return new Hu(this)};_.wb=function Du(a){return fn(a)?a==null?uu(Ww(this.a,null)):this.c.Mb(a):uu(Ww(this.a,a))};_.sb=function Eu(){return this.b};_.b=0;var cp=es(95);lq(158,157,cC);_.eQ=function Fu(a){var b;if(a===this){return true}if(!bn(a,33)){return false}b=a;if(b.sb()!=this.sb()){return false}return hu(this,b)};_.hC=function Gu(){return Gw(this)};var sp=es(158);lq(70,158,cC,Hu);_.rb=function Iu(a){if(bn(a,26)){return mu(this.a,a)}return false};_.qb=function Ju(){return new Nu(this.a)};_.sb=function Ku(){return this.a.b};var bp=es(70);lq(71,1,{},Nu);_.xb=function Ou(){return Lu(this)};_.yb=function Pu(){return Mu(this)};var ap=es(71);lq(159,157,{51:1});_.zb=function Ru(a,b){throw new du('Add not supported on this list')};_.Ab=function Su(a){this.zb(this.sb(),a);return true};_.eQ=function Tu(a){return Qu(this,a)};_.hC=function Uu(){return Hw(this)};_.qb=function Vu(){return new Yu(this)};var fp=es(159);lq(30,1,{},Yu);_.xb=function Zu(){return Wu(this)};_.yb=function $u(){return Xu(this)};_.a=0;var dp=es(30);lq(101,30,{},_u);var ep=es(101);lq(96,158,cC,bv);_.rb=function cv(a){return yu(this.a,a)};_.qb=function dv(){return av(this)};_.sb=function ev(){return this.a.b};var hp=es(96);lq(97,1,{},gv);_.xb=function hv(){return Lu(this.a)};_.yb=function iv(){return fv(this)};var gp=es(97);lq(98,157,{},kv);_.rb=function lv(a){return nu(this.a,a)};_.qb=function mv(){return jv(this)};_.sb=function nv(){return this.a.c};var jp=es(98);lq(99,1,{},pv);_.xb=function qv(){return Wu(this.a.a)};_.yb=function rv(){return ov(this)};var ip=es(99);lq(46,1,{46:1,26:1});_.eQ=function tv(a){var b;if(!bn(a,26)){return false}b=a;return $x(this.c,b.Cb())&&$x(this.d,b.Db())};_.Cb=function uv(){return this.c};_.Db=function vv(){return this.d};_.hC=function wv(){return _x(this.c)^_x(this.d)};_.Eb=function xv(a){return sv(this,a)};_.tS=function yv(){return this.c+'='+this.d};var kp=es(46);lq(47,46,{46:1,47:1,26:1},zv);var lp=es(47);lq(165,1,{26:1});_.eQ=function Av(a){var b;if(!bn(a,26)){return false}b=a;return $x(this.Cb(),b.Cb())&&$x(this.Db(),b.Db())};_.hC=function Bv(){return _x(this.Cb())^_x(this.Db())};_.tS=function Cv(){return this.Cb()+'='+this.Db()};var mp=es(165);lq(166,156,{50:1});_.tb=function Gv(a){return Dv(this,a)};_.ub=function Hv(a){return Ev(this,a)};_.vb=function Iv(){return new Kv(this)};_.wb=function Jv(a){return Fv(this,a)};var rp=es(166);lq(74,158,cC,Kv);_.rb=function Lv(a){return bn(a,26)&&Dv(this.a,a)};_.qb=function Mv(){return new uy(this.a)};_.sb=function Nv(){return this.a.c};var op=es(74);lq(75,158,cC,Pv);_.rb=function Qv(a){return Ev(this.a,a)};_.qb=function Rv(){return Ov(this)};_.sb=function Sv(){return this.a.c};var qp=es(75);lq(118,1,{},Uv);_.xb=function Vv(){return Wu(this.a.a)};_.yb=function Wv(){return Tv(this)};var pp=es(118);lq(19,159,dC,dw);_.zb=function ew(a,b){Xv(this,a,b)};_.Ab=function fw(a){return Yv(this,a)};_.rb=function gw(a){return $v(this,a,0)!=-1};_.Bb=function hw(a){return Zv(this,a)};_.Fb=function iw(a){return _v(this,a)};_.sb=function jw(){return this.b.length};var tp=es(19);var Iw;lq(134,1,{},Lw);_.ab=function Mw(a,b){return Kw(a,b)};var up=es(134);lq(138,14,$B,Qw);var vp=es(138);lq(56,95,{4:1,50:1},Tw);var wp=es(56);lq(77,1,{},$w);_.Gb=function _w(){return Object.create(null)};_.Hb=function ax(){return new cx(this)};var Ap=es(77);lq(121,1,{},cx);_.xb=function dx(){return bx(this)};_.yb=function ex(){return nm(bx(this)),this.e=this.a[this.c++],this.e};_.b=-1;_.c=0;_.e=null;var xp=es(121);lq(119,77,{},fx);_.Gb=function gx(){return {}};_.Hb=function hx(){var a=this.Ib();var b=this.a;for(var c in b){if(c==parseInt(c,10)){var d=b[c];for(var e=0,f=d.length;e1&&e==c){o=new Ai(i[g[f]]);h[0]=Fh(a.i,g[f],l);m=f;for(n=0;na?1:a;this.N=1>b?1:b;this.Q=0;this.D=Rm(ln,TA,0,this.M,7,1);this.q=Rm(ln,TA,0,this.M,7,1);this.u=Rm(ln,TA,0,this.M,7,1);this.A=Rm(kn,XA,0,this.M,7,1);this.B=Rm(kn,XA,0,this.M,7,1);this.C=Rm(kn,XA,0,this.M,7,1);this.v=Rm(ln,TA,0,this.M,7,1);this.s=Rm(ln,TA,0,this.M,7,1);this.w=Rm(ln,TA,0,this.M,7,1);this.t=null;this.r=null;this.F=Sm(ln,[YA,TA],[5,0],7,[2,this.N],2);this.I=Rm(ln,TA,0,this.N,7,1);this.G=Rm(ln,TA,0,this.N,7,1);this.H=Rm(ln,TA,0,this.N,7,1)} +function te(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o;for(i=d+1;i=32)return;if(d==-1){g=-1;for(f=0;f>19&&g<((a.s[f]&tB)>>19!=1&&(a.s[f]&tB)>>19!=2?-1:(a.s[f]&uB)>>21)&&(g=(a.s[f]&tB)>>19!=1&&(a.s[f]&tB)>>19!=2?-1:(a.s[f]&uB)>>21);for(e=0;e>10&&g<((a.G[e]&vB)>>10!=1&&(a.G[e]&vB)>>10!=2?-1:(a.G[e]&wB)>>12)&&(g=(a.G[e]&vB)>>10!=1&&(a.G[e]&vB)>>10!=2?-1:(a.G[e]&wB)>>12);d=g+1;if(d>=32)return}a.s[b]&=BB;a.s[b]|=c<<19|d<<21}a.Q&=3} +function _g(a,b,c,d){var e,f,g;if(c==0){a.G[b]&=-130049;a.G[b]|=0}else{if(d>=32)return;if(d==-1){g=-1;for(f=0;f>19&&g<((a.s[f]&tB)>>19!=1&&(a.s[f]&tB)>>19!=2?-1:(a.s[f]&uB)>>21)&&(g=(a.s[f]&tB)>>19!=1&&(a.s[f]&tB)>>19!=2?-1:(a.s[f]&uB)>>21);for(e=0;e>10&&g<((a.G[e]&vB)>>10!=1&&(a.G[e]&vB)>>10!=2?-1:(a.G[e]&wB)>>12)&&(g=(a.G[e]&vB)>>10!=1&&(a.G[e]&vB)>>10!=2?-1:(a.G[e]&wB)>>12);d=g+1;if(d>=32)return}a.G[b]&=-130049;a.G[b]|=c<<10|d<<12}a.Q&=3} +function Ge(a){var b,c,d,e,f,g,h,i,j;while(a.f.b.length>1){g=Rm(jn,UA,0,2,7,1);f=Rm(An,_A,18,2,0,1);b=Wv(a.f,0);c=Wv(a.f,1);h=(hf(b),b.i-b.n+1+(hf(b),b.j-b.o+1));i=(hf(c),c.i-c.n+1+(hf(c),c.j-c.o+1));if(h>i){f[0]=b;g[0]=h;f[1]=c;g[1]=i}else{f[0]=c;g[0]=i;f[1]=b;g[1]=h}for(e=2;e>1}h-=ng(a,b);g=((a.s[b]&sB)>>>28)-1;if(g==-1){if(a.D[b]>=171&&a.D[b]<=190){g=2}else{i=a.D[b]g-h?0:g-h} +function Ct(a,b,c){if(c<128){a[b]=en(c&127);return 1}else if(c>6&31|192);a[b]=en(c&63|128);return 2}else if(c>12&15|224);a[b++]=en(c>>6&63|128);a[b]=en(c&63|128);return 3}else if(c<2097152){a[b++]=en(c>>18&7|240);a[b++]=en(c>>12&63|128);a[b++]=en(c>>6&63|128);a[b]=en(c&63|128);return 4}else if(c>24&3|248);a[b++]=en(c>>18&63|128);a[b++]=en(c>>12&63|128);a[b++]=en(c>>6&63|128);a[b]=en(c&63|128);return 5}throw new zs('Character out of range: '+c)} +function mh(a,b,c){var d,e,f,g,h;g=a.D[b];a.D[b]=a.D[c];a.D[c]=g;g=a.q[b];a.q[b]=a.q[c];a.q[c]=g;g=a.v[b];a.v[b]=a.v[c];a.v[c]=g;g=a.s[b];a.s[b]=a.s[c];a.s[c]=g;g=a.w[b];a.w[b]=a.w[c];a.w[c]=g;g=a.u[b];a.u[b]=a.u[c];a.u[c]=g;f=a.A[b];a.A[b]=a.A[c];a.A[c]=f;f=a.B[b];a.B[b]=a.B[c];a.B[c]=f;f=a.C[b];a.C[b]=a.C[c];a.C[c]=f;if(a.t!=null){h=a.t[b];a.t[b]=a.t[c];a.t[c]=h}if(a.r!=null){h=a.r[b];a.r[b]=a.r[c];a.r[c]=h}for(d=0;db.d[f[1]]^ed(b,d,f[0],f[1])&&(i=!i)}}}catch(a){a=fq(a);if($m(a,10)){b.R[c]=3;return}else throw eq(a)}}else{try{e=gd(b,c)}catch(a){a=fq(a);if($m(a,10)){b.R[c]=3;return}else throw eq(a)}for(h=1;h0){if(c){ie(a,e,g.i+g.g++,2);++h}Vv(a.b,new vf(e,1,-1,-1))}else if(b>0){c&&ie(a,e,g.a+g.f++,1);Vv(a.b,new vf(e,1,-1,-1))}else if(c){ie(a,e,g.a+g.f++,1);Vv(a.b,new vf(e,1,-1,-1))}}else if(d==1){if(Zd(a,e)){f=ue(g,e);i=we(g,e);Vv(a.b,new vf(e,2,f,i))}else{re(g,e);Vv(a.b,new vf(e,1,-1,-1))}}}}} +function aj(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o;k=Ti(b,0);f=ss(b.substr(0,k));j=Xi(b,k);k=Ti(b,j);g=ss(b.substr(j,k-j));j=Xi(b,k);k=Ti(b,j);c=Vi(a,ss(b.substr(j,k-j)));j=Xi(b,k);k=Ti(b,j);d=Vi(a,ss(b.substr(j,k-j)));m=0;n=0;while((j=Xi(b,k))!=-1){k=Ti(b,j);l=b.substr(j,k-j);i=rt(l,Dt(61));h=l.substr(0,i);o=ss(zt(l,i+1,l.length-(i+1)));if(pt(h,'CFG')){switch(o){case 1:m=1;break;case 2:m=g==2?3:4;break;case 3:m=6;}}else pt(h,'TOPO')?(n=o):Ri&&($t(),Zt)}e=Si(a,c,d,g,m,n);e+1!=f&&(!a.b&&(a.b=new ny),ly(a.b,new As(f),new As(e)))} +function Ve(a,b){var c,d,e,f;!a.j&&(a.j=new dy);a.i=b;yk(a.i,3);if((a.g&1)==0){a.b=a.i.o;a.d=a.i.p;a.e=Rm(ln,TA,0,a.b,7,1);for(c=0;c=5&&j.length<=7){for(d=0;d0){b[k[c]>>>16][k[c]&32767]=i;b[i][d]=k[c]>>>16}else{k[c]=(i<<16)+32768+d}}}}}l=0;g=-1;while(l>g){g=l;for(h=0;h2){for(g=1;g=0;h--){d=(om(h,k.b.length),k.b[h]);e=false;for(j=0;j>19!=0){b=Sq(b);i=true}g=Dq(b);f=false;e=false;d=false;if(a.h==HB&&a.m==0&&a.l==0){e=true;f=true;if(g==-1){a=uq((dr(),_q));d=true;i=!i}else{h=Wq(a,g);i&&Bq(h);c&&(sq=vq(0,0,0));return h}}else if(a.h>>19!=0){f=true;a=Sq(a);d=true;i=!i}if(g!=-1){return yq(a,g,i,f,c)}if(!Qq(a,b)){c&&(f?(sq=Sq(a)):(sq=vq(a.l,a.m,a.h)));return vq(0,0,0)}return zq(d?a:vq(a.l,a.m,a.h),b,i,f,e,c)} +function Mc(a,b,c){var d,e,f,g,h,i;d=Rm(ln,TA,0,4,7,1);for(h=0;h0?1:2} +function qk(a){var b,c,d,e,f,g,h,i,j,k,l,m,n;yk(a.b,3);l=false;m=Rm(ln,TA,0,2,7,1);n=Rm(ln,TA,0,2,7,1);k=Rm(ln,TA,0,2,7,1);for(d=0;d1?(a.k[d]+=i+i-2):a.I[e]==64&&(a.k[d]=2))}}for(b=0;b=og(a,c)+ng(a,c)&&(a.w[c]&=-6145);f=false;for(b=0;b0){if((a.w[b]&VA)==0){if(og(a,b)+ng(a,b)-Nh(a,b)==0)a.w[b]|=VA;else{i=0;(a.w[b]&128)==128&&++i;(a.w[b]&1920)==384&&++i;a.w[b]&=-1921;og(a,b)+ng(a,b)-Nh(a,b)<=i?(a.w[b]|=VA):i==0?(a.w[b]|=128):(a.w[b]|=384)}}for(h=a.g[b];h=0&&j[k]);for(b=0;b=0&&i[l]);for(e=0;e0;k--){for(m=0;me[m+1]){r=e[m];e[m]=e[m+1];e[m+1]=r;s=g[m];g[m]=g[m+1];g[m+1]=s;t=h[m];h[m]=h[m+1];h[m+1]=t}}}e[f]=e[0]+ZA;g[f]=g[0];h[f]=h[0];n=-100;o=0;for(i=0;i2&&bi(a.i,h[i])&&bi(a.i,h[i+1])){p=Ue(a,g[i],c,g[i+1]);p!=0&&(d-=100-p)}if(n0){f=c==1&&Oe(a,d,b)==1&&Oe(a,e,b)==1?0:1;o>p?(i=(f<<24)+(o<<16)+(p<<8)+c):(i=(f<<24)+(p<<16)+(o<<8)+c);if(sp){q=d;r=e}else{q=e;r=d}}}}}if(s==0)break;n==q.a.length?Zv(a.f,q):n==r.a.length?Zv(a.f,r):We(a,q,r,n)}} +function Yc(a){var b,c,d,e,f,g;g=a.N;f=Rm(ln,TA,0,a.L.d,7,1);for(c=0;c=2?e-2:e+2);if(hk?j:k;c=i>l?i:l;if(d-1?(d='\r\n'):c.indexOf('\r')>-1&&(d='\r');var e=a.split(d+'$$$$'+d);var f=[],g=0,h=e.length;for(;g');if(j.length>0&&j[0].length>10){var k={};f[f.length]=k;var l=j[0]+d;b.includeMolfile&&(k.molfile=l);k.molecule=$wnd.actelion.Molecule.fromMolfile(l);if(b.includeLabels){var m={};k.labels=m;for(var n=1,o=j.length;n');var s=p[0].substring(q+1,r);for(var t=1;t1&&Eh(a.i,dg(a.i,1,d))>1&&(kg(a.i,d)==1||kg(a.i,d)==2)){m=Rm(ln,TA,0,2,7,1);e=Rm(ln,TA,0,2,7,1);for(k=0;k<2;k++){m[k]=a.i.M;e[k]=dg(a.i,k,d);for(l=0;lf&&(m[k]=f)}}g=zi(h.c[h.b[e[0]]],h.d[h.b[e[0]]],h.c[h.b[e[1]]],h.d[h.b[e[1]]]);b=zi(h.c[h.b[m[0]]],h.d[h.b[m[0]]],h.c[h.b[e[0]]],h.d[h.b[e[0]]]);c=zi(h.c[h.b[e[1]]],h.d[h.b[e[1]]],h.c[h.b[m[1]]],h.d[h.b[m[1]]]);Ne(g,b)<0^Ne(g,c)<0^kg(a.i,d)==2&&kf(h,d)}}}}} +function Ft(a,b,c){var d,e,f,g,h,i,j,k;f=0;for(j=0;jc){throw new Er('Invalid UTF8 sequence')}}g=Rm(hn,UA,0,f,7,1);k=0;h=0;for(i=0;i0){d=a[b+i++];if((d&192)!=128){throw new zs('Invalid UTF8 sequence at '+(b+i-1)+', byte='+Is(d,16))}e=e<<6|d&63}k+=Vr(e,g,k)}return At(g,0,g.length)} +function Nk(a){var b,c,d,e,f,g,h,i,j;if(!a.g)return false;zr(a.f);zr(a.a);a.e=null;j=false;c=-1;a.b=a.c==null?null:Rm(To,_A,2,a.c.length,4,1);a.d=-1;do{i=rr(a.g);if(i==null){zr(a.f);return false}if(j){Tt(a.a,i);Rt(a.a,10)}else{if(pt(i.substr(0,1),'>')){j=true;Tt(a.f,'M END');Rt(a.f,10);Tt(a.a,i);Rt(a.a,10)}else{Tt(a.f,i);Rt(a.f,10);pt(i.substr(0,6),'M END')&&(j=true);continue}}if(a.c!=null){if(i.length==0){c=-1}else if(c==-1){d=Pk(i);if(d!=null){c=-1;for(b=0;b>19==b){h==null&&(h=Rm(bq,RA,0,32,8,1));h[(a.s[d]&tB)>>19!=1&&(a.s[d]&tB)>>19!=2?-1:(a.s[d]&uB)>>21]=true}}for(f=0;f>10==b){h==null&&(h=Rm(bq,RA,0,32,8,1));h[(a.G[f]&vB)>>10!=1&&(a.G[f]&vB)>>10!=2?-1:(a.G[f]&wB)>>12]=true}}k=0;if(h!=null){j=Rm(ln,TA,0,32,7,1);for(i=0;i<32;i++)h[i]&&(j[i]=k++);for(c=0;c>19==b){g=j[(a.s[c]&tB)>>19!=1&&(a.s[c]&tB)>>19!=2?-1:(a.s[c]&uB)>>21];a.s[c]&=-65011713;a.s[c]|=g<<21}}for(e=0;e>10==b){g=j[(a.G[e]&vB)>>10!=1&&(a.G[e]&vB)>>10!=2?-1:(a.G[e]&wB)>>12];a.G[e]&=-126977;a.G[e]|=g<<12}}}return k} +function Id(a,b){var c,d;if(a.o>fB)throw new zs('Cannot canonize a molecule having more than 65535 atoms');if(a.p>fB)throw new zs('Cannot canonize a molecule having more than 65535 bonds');this.L=a;this.K=b;yk(this.L,3);Pc(this);for(d=0;d3||Eh(a.L,f)>3)return false;if(xh(a.L,e)==2||xh(a.L,f)==2)return false;g=new xf(a.L,a.d,f,e);if(g.f&&!c)return false;h=new xf(a.L,a.d,e,f);if(h.f&&!c)return false;if(g.f&&h.f)return false;if(c){g.f&&g.c&&(a.O[b]=true);h.f&&h.c&&(a.O[b]=true)}d=sg(a.L,b)?3:a._?Ic(a,g,h):Hc(g,h);if(c){if((a.K&2)!=0){if(g.f){if(d==1){Rd(a.c[g.b],4);Rd(a.c[g.d],1)}else if(d==2){Rd(a.c[g.b],1);Rd(a.c[g.d],4)}}if(h.f){if(d==1){Rd(a.c[h.b],4);Rd(a.c[h.d],1)}else if(d==2){Rd(a.c[h.b],1);Rd(a.c[h.d],4)}}}}else{a.n[b]=d}return true} +function Lj(a,b){var c,d,e,f,g,h;if(!a.q||!a.c)return 0;if(a.c.d>a.q.d||a.c.e>a.q.e)return 0;Wj(a,b);c=Rm(bq,RA,0,a.q.d,8,1);a.p=Rm(ln,TA,0,a.c.d,7,1);g=Rm(ln,TA,0,a.o,7,1);for(f=0;f3||vh(a.L,f)>3)return false;g=new xf(a.L,a.d,b,e);if(g.f&&!c)return false;h=new xf(a.L,a.d,b,f);if(h.f&&!c)return false;if(g.f&&h.f)return false;if(c){g.f&&g.c&&(a.P[b]=true);h.f&&h.c&&(a.P[b]=true)}i=wf(g);j=wf(h);if(i==-1||j==-1||(i+j&1)==0){c||(a.W[b]=3);return true}d=0;switch(i+j){case 3:case 7:d=2;break;case 5:d=1;}if(c){if(a.Q&&(a.K&2)!=0||!a.Q&&(a.K&4)!=0){if(g.f){if(d==1){Rd(a.c[g.b],64);Rd(a.c[g.d],16)}else{Rd(a.c[g.b],16);Rd(a.c[g.d],64)}}if(h.f){if(d==2){Rd(a.c[h.b],64);Rd(a.c[h.d],16)}else{Rd(a.c[h.b],16);Rd(a.c[h.d],64)}}}}else{a.W[b]=d}return true} +function ki(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A;if((a.G[b]&3)==0||(a.G[b]&3)==3||!Zh(a,b))return;v=-1;t=-1;u=-1;s=-1;e=0;for(l=0;l<2;l++){d=a.F[l][b];for(o=0;og&&(i=g)}q=Rm(ln,TA,0,2,7,1);r=0;for(k=0;kq[1]){A=q[0];q[0]=q[1];q[1]=A}j=oh(f,cg(a,s,q[0]));p=oh(f,cg(a,s,q[1]));c=j-p}else{c=oh(f,cg(a,s,q[0]))}c<0^(a.G[b]&3)==2^i==t?(a.I[v]=17):(a.I[v]=9)} +function If(a,b,c){var d,e,f,g;d=b.o;d>=b.M&&ih(b,b.M*2);f=(a.s[c]&tB)>>19;e=-1;f==1?(e=ct(32,(a.s[c]&tB)>>19!=1&&(a.s[c]&tB)>>19!=2?-1:(a.s[c]&uB)>>21)):f==2&&(e=ct(32,(a.s[c]&tB)>>19!=1&&(a.s[c]&tB)>>19!=2?-1:(a.s[c]&uB)>>21));b.D[d]=a.D[c];b.q[d]=a.q[c];b.v[d]=a.v[c];b.s[d]=a.s[c];b.w[d]=b.K?a.w[c]:0;b.A[d]=a.A[c];b.B[d]=a.B[c];b.C[d]=a.C[c];b.u[d]=a.u[c];b.t!=null&&(b.t[d]=null);if(a.t!=null&&a.t[c]!=null&&b.K){b.t==null&&(b.t=Rm(ln,YA,5,b.D.length,0,2));b.t[d]=Rm(ln,TA,0,a.t[c].length,7,1);for(g=0;g2&&(h|=16);i>3&&(h|=32)}c=a.q[b];c<0?(h|=xB):c>0&&(h|=yB);e=a.g[b];switch(e){case 0:break;case 1:h|=dB;break;case 2:h|=393216;break;case 3:h|=917504;break;default:h|=1966080;}}else{(a.s[b]&SA)!=0?(h|=2):(h|=4);i=yh(a,b);i==0?(h|=112):i==2?(h|=104):i==3?(h|=88):(h|=56);c=a.q[b];c==0?(h|=167772160):c<0?(h|=xB):c>0&&(h|=yB);d=a.c[b]-a.g[b]+Mh(a,b);switch(d){case 0:h|=1792;break;case 1:h|=1664;break;case 2:h|=1408;break;default:h|=896;}e=a.g[b];switch(e){case 0:h|=3932160;break;case 1:h|=3801088;break;case 2:h|=3538944;break;case 3:h|=3014656;break;default:h|=1966080;}g=a.k[b];switch(g){case 0:h|=98304;break;case 1:h|=81920;break;default:h|=49152;}}f=a.k[b];f>0&&(h|=WA);f>1&&(h|=32768);return h} +function Fd(a){var b,c,d,e,f,g,h,i,j,k,l;for(b=0;ba.d[k[1]]^k[0]a.d[g]&&(i=!i);fa.d[k[1]]&&(i=!i);k[0]=2&&(c[d++]=g[o])}else{for(o=1;o=1&&(c[d++]=g[o])}if(d!=0){t=c[0];if(d>1){do{t=c[by(a.j,d)]}while(t==p)}if(t!=p){p=t;kf(l,t);i=lf(l);if(r>l.f){r=l.f;q=new tf(a,l)}}}}$v(a.f,n,q);l=q;k=1;do{s=9999;for(o=0;ok&&u=5){m=0;for(k=0;k=3&&++m}if(m==2||m==1&&a.g[b]==3)continue}return true}for(j=0;j1&&(a.D[a.f[i][m]]==6?(a.s[e]|=8192):!Yh(a,a.i[i][m])&&tg(a,a.f[i][m])&&(a.s[e]|=WA))}}}while(true){k=false;for(c=0;c0&&(20480&a.s[c])==WA){for(l=0;l1){i=a.f[c][l];j=a.i[c][l];for(m=0;ma.d[k[1]]^a.C[k[0]]a.d[g]&&(i=!i);a.C[f]a.d[k[1]]&&(i=!i);a.C[k[0]]g&&(i=g)}s=Rm(ln,TA,0,2,7,1);t=0;for(k=0;ks[1]){B=s[0];s[0]=s[1];s[1]=B}j=oh(c,cg(a,r,s[0]));q=oh(c,cg(a,r,s[1]));e=j-q}else{e=oh(c,cg(a,r,s[0]))}e<0^(a.s[b]&3)==1^i==v?(a.I[w]=17):(a.I[w]=9)} +function kf(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;a.g==null&&(a.g=Rm(ln,YA,5,a.r.d,0,2));if(a.g[b]==null){m=Rm(ln,TA,0,a.a.length,7,1);s=Rm(bq,RA,0,a.r.b,8,1);d=dg(a.p,0,b);e=dg(a.p,1,b);m[0]=d;s[d]=true;j=0;n=0;while(j<=n){for(p=0;p~~(a.a.length/2);if((a.r.g&6)!=0){h=false;g=false;for(p=0;p=4)break;if(b==a.b[dg(a.p,0,a.e[l])]||b==a.b[dg(a.p,1,a.e[l])])continue;p=a.c[a.b[dg(a.p,0,a.e[l])]];t=a.d[a.b[dg(a.p,0,a.e[l])]];q=a.c[a.b[dg(a.p,1,a.e[l])]];u=a.d[a.b[dg(a.p,1,a.e[l])]];h=Math.sqrt((p-o)*(p-o)+(t-s)*(t-s));i=Math.sqrt((q-o)*(q-o)+(u-s)*(u-s));e=Math.sqrt((q-p)*(q-p)+(u-t)*(u-t));if(h0){j=ff(f,k);a.c[b]+=j.b*et(j.a);a.d[b]+=j.b*Ys(j.a)}} +function jk(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p;d=true;i=0;p=0;m=a.i;a.c[b]=m;h=ag(a.b,b);g=Tf(a.b,b);e=Of(a.b,b);f=Vf(a.b,b);k=Eh(a.b,b);e==0&&f==0&&ik(h)&&(d=false);a.e[m]='';if(c!=-1){switch(jg(a.b,c)){case 0:a.e[m]+='~';break;case 2:a.e[m]+='=';break;case 3:a.e[m]+='#';}}d&&(a.e[m]+='[');f!=0&&(a.e[m]+=''+f);a.e[m]+=g;if(d){if(0<(o=Mh(a.b,b))){a.e[m]+='H';10?(a.e[m]+='+'):(a.e[m]+='-');(e<0?-e:e)>1&&(a.e[m]+=''+(e<0?-e:e))}d&&(a.e[m]+=']');c!=-1&&(a.j[c]=true);a.g[b]=true;++a.i;for(n=0;n9){a.e[a.c[j]]+='%';a.e[m]+='%'}a.e[a.c[j]]+=''+a.d;a.e[m]+=''+a.d;continue}n-p0?++h:++g;j>=0&&f<0&&++j;break;case 48:if(h>0){throw new zs("Unexpected '0' in pattern \""+b+'"')}++p;j>=0&&f<0&&++j;break;case 44:j=0;break;case 46:if(f>=0){throw new zs('Multiple decimal separators in pattern "'+b+'"')}f=g+p+h;break;case 69:if(!d){if(a.v){throw new zs('Multiple exponential symbols in pattern "'+b+'"')}a.v=true;a.k=0}while(n+10&&f>=0){m=f;f==0&&++m;h=g-m;g=m-1;p=1}if(f<0&&h>0||f>=0&&(fg+p)||j==0){throw new zs('Malformed pattern "'+b+'"')}if(d){return n-c}o=g+p+h;a.i=f>=0?o-f:0;if(f>=0){a.n=g+p-f;a.n<0&&(a.n=0)}i=f>=0?f:o;a.o=i-g;if(a.v){a.j=g+a.o;a.i==0&&a.o==0&&(a.o=1)}a.f=j>0?j:0;a.c=f==0||f==o;return n-c} +function pd(a,b){var c,d,e,f,g,h,i,j,k,l,m,n;if(a.L.d==0){a.f='';return}n=a._?16:8;od(a);Rt(a.r,33);nd(a,a._?1:0,1);nd(a,b?1:0,1);nd(a,~~(n/2),4);m=0;for(k=1;k1||mg(a.g,n[l])==64)f|=1;else{d=c[b][l];if(d!=-1){if(a.a[d]){if(a.e[d]){f|=1;a.f[d]||(e|=1)}}else{p=true}}}}j=false;switch(o){case 5:g=Um(Qm(ln,1),TA,0,7,[10,5,18,9,20]);j=true;for(k=0;k<5;k++){if((f&g[k])==g[k]){switch(ag(a.g,m[k])){case 6:if(Of(a.g,m[k])==-1){a.e[b]=true;a.d[b]=k;(e&g[k])==0&&(j=false)}break;case 7:if(Of(a.g,m[k])<=0){a.e[b]=true;a.d[b]=k}break;case 8:a.e[b]=true;a.d[b]=k;break;case 16:if(Eh(a.g,m[k])==2){a.e[b]=true;a.d[b]=k}}}}break;case 6:j=true;if((f&21)==21){a.e[b]=true;(e&21)==0&&(j=false)}if((f&42)==42){a.e[b]=true;(e&42)==0&&(j=false)}break;case 7:h=Um(Qm(ln,1),TA,0,7,[42,21,74,37,82,41,84]);j=true;for(i=0;i<7;i++){if((f&h[i])==h[i]){if(ag(a.g,m[i])==6&&Of(a.g,m[i])==1){a.e[b]=true;a.d[b]=i;(e&h[i])==0&&(j=false)}}}}a.e[b]&&!j&&(a.f[b]=true);if(a.e[b])return true;return !p} +function Lc(a,b,c){var d,e,f,g,h,i,j,k,l,m;m=Um(Qm(ln,2),YA,5,0,[Um(Qm(ln,1),TA,0,7,[2,1,2,1]),Um(Qm(ln,1),TA,0,7,[1,2,2,1]),Um(Qm(ln,1),TA,0,7,[1,1,2,2]),Um(Qm(ln,1),TA,0,7,[2,1,1,2]),Um(Qm(ln,1),TA,0,7,[2,2,1,1]),Um(Qm(ln,1),TA,0,7,[1,2,1,2])]);d=Rm(kn,XA,0,vh(a.L,b),7,1);for(g=0;g>24;if(j!=3)return j;k=0;l=0;for(h=0;hd[2]&&d[1]-d[2]>$A)&&(l=3-l);break;case 1:d[2]-d[0]>$A&&(l=3-l);break;case 2:d[1]-d[0]<$A&&(l=3-l);}return l==1?2:1}i=0;d[1]<=d[2]&&d[2]<=d[3]?(i=0):d[1]<=d[3]&&d[3]<=d[2]?(i=1):d[2]<=d[1]&&d[1]<=d[3]?(i=2):d[2]<=d[3]&&d[3]<=d[1]?(i=3):d[3]<=d[1]&&d[1]<=d[2]?(i=4):d[3]<=d[2]&&d[2]<=d[1]&&(i=5);return m[i][k]==l?2:1} +function td(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;if(a.L.d==0)return;if(a.B)return;a.D=0;v=0;for(c=1;ca.d[v]&&(v=c);d=Rm(bq,RA,0,a.L.d,8,1);g=Rm(bq,RA,0,a.L.e,8,1);a.C=Rm(ln,TA,0,a.L.d,7,1);a.u=Rm(ln,TA,0,a.L.d,7,1);a.A=Rm(ln,TA,0,a.L.d,7,1);a.v=Rm(ln,TA,0,a.L.e,7,1);a.u[0]=v;a.C[v]=0;d[v]=true;e=1;i=0;j=1;k=0;while(im){o=h;p=Fh(a.L,a.u[i],q);m=a.d[h]}}if(m==-1)break;a.C[o]=j;a.A[j]=i;a.u[j++]=o;a.v[k++]=p;d[o]=true;g[p]=true}++i}else{n=0;m=-1;for(b=0;bm){n=b;m=a.d[b]}}++e;a.C[n]=j;a.A[j]=-1;a.u[j++]=n;d[n]=true}}a.w=Rm(ln,TA,0,2*(a.L.e-k),7,1);while(true){s=a.L.M;t=a.L.M;u=-1;for(f=0;fi)return false;if(ag(a.c,c)==0)return true;if(ag(a.q,b)==0)return false;k=Xf(a.q,b);g=Xf(a.c,c);f=Uf(a.c,c);j=Uf(a.q,b);if((g&1)!=0){if(f!=null){if((k&1)!=0){if(j==null)return false;if(!Rj(f,j))return false}else{if(j!=null){if(Tj(j,f))return false}else{if(Qj(ag(a.q,b),f))return false}}}}else{if((k&1)!=0)return false;if(f!=null){if(j!=null){if(!Rj(j,f))return false}else{if(!Qj(ag(a.q,b),f))return false}}else{if(j!=null)return false;if(a.s[b]!=a.e[c])return false}}if((k|g)!=0){if((g&VA)!=0){if(a.q.K&&(k&VA)==0)return false;else if(e!=i)return false}if((g&SA)!=0){if(e>=i&&(k&SA)==0)return false}}if((a.r[b]&~a.d[c])!=0)return false;if(Of(a.c,c)!=0&&Of(a.c,c)!=Of(a.q,b))return false;if(Vf(a.c,c)!=0&&Vf(a.c,c)!=Vf(a.q,b))return false;m=(Xf(a.c,c)&hB)>>22;if(m!=0){if(a.q.K&&m==(Xf(a.q,c)&hB)>>22)return true;d=false;l=Rh(a.q);for(h=0;hj){for(c=0;c4)return false;if(ag(a.L,b)==7&&!a.M[b])return false;n=Rm(ln,TA,0,4,7,1);o=Rm(ln,TA,0,4,7,1);j=Rm(bq,RA,0,4,8,1);for(h=0;hWs(Ne(B.a,D.a))){rf(c,F,H,w.a)}else{jf(c,F,H);rf(c,F,H,A.a)}return Re(a,b,c,e)} +function Pc(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v;a.M=Rm(bq,RA,0,a.L.d,8,1);for(b=0;b7)continue;t=Rh(a.L);u=0;while(u=3){m=false;s=Wv(t.i,u);for(k=0;k<6;k++){if(b==s[k]){r=Cj(t,u,e==s[Cj(t,u,k+2)]?k-2:k+2);q=s[r];yh(a.L,q)>=3&&Qh(a.L,o[1],q,2,null)==2&&(m=true);break}}if(m){a.M[b]=true;continue}}}f=xh(a.L,e)==1||Xh(a.L,e)||_h(a.L,e);g=!f&&ag(a.L,e)==7&&Of(a.L,e)!=1;if(c==1){!f&&!g&&v<=4&&d<=3&&(a.M[b]=true);continue}switch(v){case 4:!f&&!g&&d<=4&&(a.M[b]=true);break;case 5:g?d<=3&&(a.M[b]=true):f||d<=4&&(a.M[b]=true);break;case 6:c==2?f?d<=4&&(a.M[b]=true):g||d<=3&&(a.M[b]=true):c==3&&(f?d<=6&&(a.M[b]=true):d<=4&&(a.M[b]=true));break;case 7:c==3&&d<=3&&(a.M[b]=true);}}}}} +function ji(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p;if((a.s[b]&3)==0||(a.s[b]&3)==3)return;if(a.k[b]==2&&a.g[b]==2){hi(a,b);return}if(a.g[b]<3||a.g[b]>4){Rg(a,b,0,false);return}o=Th(a,b);c=Rm(kn,XA,0,a.c[b],7,1);for(g=0;gc[2]&&c[1]-c[2]>$A;break;case 1:k=c[2]-c[0]>$A;break;case 2:k=c[1]-c[0]<$A;}d=(a.s[b]&3)==1^k?17:9}else{l=0;c[1]<=c[2]&&c[2]<=c[3]?(l=0):c[1]<=c[3]&&c[3]<=c[2]?(l=1):c[2]<=c[1]&&c[1]<=c[3]?(l=2):c[2]<=c[3]&&c[3]<=c[1]?(l=3):c[3]<=c[1]&&c[1]<=c[2]?(l=4):c[3]<=c[2]&&c[2]<=c[1]&&(l=5);d=(a.s[b]&3)==1^p[l][n]==1?9:17}a.I[m]=d} +function Be(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q;this.j=a;for(d=0;d=-1){f=Rm(ln,TA,0,this.b,7,1);if(se(this,f,b)){for(l=0;lp?(r=en(o)):(r=en(p)):o!=-1&&(o>q||o=Nh(a.L,c))&&(r=en(o)),bd(a,c,r),r)+1);Sd(a.c[c],2,Yf(a.L,c)>>4);Sd(a.c[c],29,Xf(a.L,c));Uf(a.L,c)!=null&&(f=true)}a.N=Wc(a);if(f){for(b=0;b=0;j--)Sd(a.c[b],8,e[j])}a.N=Wc(a)}if(a.L.K){i=false;for(g=0;g=0;j--)Sd(a.c[b],20,h[j])}a.N=Wc(a)}}if((a.K&8)!=0){l=new xk;for(d=0;d2||ag(a.i,d)==16&&Eh(a.i,d)>2)&&Eh(a.i,d)>2){h=false;for(q=1;q0){p=0;for(f=0;fp&&Sg(a.c,c,SA)}}else if(pt(g,'RBCNT')){switch(r){case 3:case -1:Sg(a.c,c,112);break;case 1:Sg(a.c,c,8);break;case 2:Sg(a.c,c,104);break;case 4:Sg(a.c,c,56);}}else{Ri&&($t(),Zt)}}} +function Rc(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B;s=Rm(bq,RA,0,a.L.d,8,1);t=Rm(bq,RA,0,a.L.e,8,1);b=0;v=false;for(d=0;d1){Oc(a);for(h=new Vu(a.t);h.aB?(A<<16)+B:(B<<16)+A;if(a.n[g.b[p]]==1||a.n[g.b[p]]==2){++w;v=true;if(i3&&(r=3);(c&512)==0&&r>1&&(r=1);g=Kq(g,Oq(r<<4))}(c&1024)!=0&&(a.s[f]&8)!=0&&(g=Kq(g,{l:64,m:0,h:0}));(c&VA)!=0&&(a.s[f]&SA)!=0&&(g=Kq(g,{l:128,m:0,h:0}));t=Kq(g,Vq(i,8));n=0;while(!Qq(t,p[n]))++n;for(o=l;o>n;o--)p[o]=p[o-1];p[n]=t}q=a.g[b]<4?a.g[b]:4;e={l:0,m:0,h:0};for(m=0;m9&&(s=9);s>2&&(s-=2);e=Uq(e,Oq(s<<4))}else (c&1)!=0&&(a.s[b]&8)!=0&&(e=Uq(e,{l:64,m:0,h:0}));(c&4)!=0&&(a.s[b]&SA)!=0&&(e=Kq(e,{l:128,m:0,h:0}));(c&8)!=0&&(a.s[b]&8192)!=0&&(e=Kq(e,{l:256,m:0,h:0}));(c&16)!=0&&(a.s[b]&WA)!=0&&(e=Kq(e,{l:512,m:0,h:0}));if(Tq(Lq(e,{l:0,m:0,h:64}),{l:0,m:0,h:0})){j=new tl('Bit already set!');ol(j,$t())}if(Tq(Lq(e,{l:0,m:0,h:128}),{l:0,m:0,h:0})){j=new tl('Bit already set!');ol(j,$t())}if((c&SA)!=0){rc(a,b)&&(e=Kq(e,{l:0,m:0,h:64}));d=false;if(uc(a,b)){for(k=0;k=10&&b.a.length<=24&&j[q]!=null){o=1<>>=1;h>>>=1}for(t=0;t>>=1}return}(i&1)!=0&&(i|=o);i>>>=1}}}}Me(b)} +function Mi(a){var b,c,d,e,f,g,h,i,j,k,l;yk(a,1);e=Rm(ln,TA,0,191,7,1);for(c=0;c=171&&a.D[d]<=190?(e[1]+=2-Nh(a,d)):(e[1]+=Mh(a,d));h=0;for(j=1;j<=190;j++)e[j]!=0&&++h;this.b=Rm(ln,TA,0,h,7,1);this.c=Rm(ln,TA,0,h,7,1);h=0;for(i=0;i0&&Bt(l,(Bf(),yf)[g])>0){l=(Bf(),yf)[g];k=g}if(k==-1)break;this.b[h]=e[k];this.c[h]=k;++h;e[k]=0}this.a=0;this.d=0;for(b=0;b0)return 28;if(a.g[b]==1)return 29;if((!!a.n&&b0)return 28;return 30}}return $k.length+1;case 15:if(a.q[b]==0){if(a.c[b]-a.g[b]+Mh(a,b)==0){if(a.g[b]==3&&a.k[b]==0)return 39;if(a.g[b]==2&&a.k[b]==1)return 40;if(a.g[b]==4&&a.k[b]==1)return 41}else if(a.c[b]-a.g[b]+Mh(a,b)==1){if(a.g[b]==3&&a.k[b]==1)return 42}}return $k.length+1;case 16:if(a.q[b]==0){if((a.s[b]&SA)!=0){return a.g[b]==2?37:38}else{if(a.c[b]-a.g[b]+Mh(a,b)==0){if(a.g[b]==2&&a.k[b]==0)return 32;if(a.g[b]==1&&a.k[b]==1)return 33;if(a.g[b]==3&&a.k[b]==1)return 34;if(a.g[b]==4&&a.k[b]==2)return 35}else if(a.c[b]-a.g[b]+Mh(a,b)==1){if(a.g[b]==1)return 36}}}return $k.length+1;}return $k.length} +function ed(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J,K,L,M;if(ag(a.L,c)!=ag(a.L,d))return ag(a.L,c)>ag(a.L,d);if(Vf(a.L,c)!=Vf(a.L,d)){H=vg(a.L,c)?(Bf(),Af)[ag(a.L,c)]:Vf(a.L,c);I=vg(a.L,d)?(Bf(),Af)[ag(a.L,d)]:Vf(a.L,d);return H>I}w=a.L.d;s=Rm(ln,TA,0,w,7,1);u=Rm(ln,TA,0,w,7,1);v=Rm(ln,TA,0,w,7,1);t=Rm(bq,RA,0,w,8,1);i=Rm(bq,RA,0,a.L.o,8,1);s[0]=b;s[1]=c;s[2]=d;u[0]=-1;u[1]=0;u[2]=0;i[b]=true;i[c]=true;i[d]=true;m=1;A=2;G=Rm(ln,TA,0,64,7,1);G[1]=1;G[2]=3;o=2;while(m<=A){while(m=w){w+=a.L.d;s=Dd(s,w);u=Dd(u,w);v=Dd(v,w);t=(M=Rm(bq,RA,0,w,8,1),_t(t,0,M,0,t.length),M)}if($h(a.L,Fh(a.L,n,C))){++p;q+=ag(a.L,k)}else{for(F=1;Fv[2];o>1&&fd(v,u,G,o);++o}l=Rm(ln,TA,0,a.L.d,7,1);D=false;for(f=0;fv[2]}rw(l,l.length);r=false;for(j=0;jv[2];rw(l,l.length);L=false;for(e=0;ev[2];a.b=true;throw new rl('no distinction applying CIP rules')} +function uc(a,b){var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A;if(a.D[b]!=7)return false;if(a.g[b]+a.k[b]>3)return false;if((a.s[b]&SA)!=0){if(a.k[b]!=1)return false;if(zh(a,b)!=1)return false;u=(yk(a,3),a.n);for(s=0;s0}break}}return false}if(a.k[b]>1)return false;if(a.k[b]==1){m=-1;A=0;for(i=0;i=0}for(h=0;h0){for(m=0;m1&&!a.a[k]&&tg(a.b,j)){mg(a.b,k)==4?eh(a.b,k,2):eh(a.b,k,1);Gg(a.b,d,Of(a.b,d)+1);Gg(a.b,j,Of(a.b,j)-1);break}}}}yk(a.b,3);for(A=0;A0)&&(l=F[n]):(s=true)}if(l!=-1&&!s){Pg(a.b,l,false);for(m=0;m0||xh(a.b,F[m])>0){if(s)throw new rl('Aromatic 7-membered ring with more than one positive atom');Pg(a.b,F[m],false);s=true;for(p=0;p=4;u--){do{t=false;for(g=0;gj){n=j;B=f}}p=O-a.A[B];s=P-a.B[B]}else{p=O-Zf(a,a.f[b][0]);s=P-$f(a,a.f[b][0])}if(J==1){C=Cf(a,O+FA*p+KA*s,P-KA*p+FA*s,0)}else if(J==2){p=O-0.5*(Zf(a,a.f[b][0])+Zf(a,a.f[b][1]));s=P-0.5*($f(a,a.f[b][0])+$f(a,a.f[b][1]));C=Cf(a,O+p,P+s,0)}else if(J==3){L=a.f[b][0];for(w=1;w<3;w++){i=a.i[b][w];(a.I[i]==9||a.I[i]==17)&&(L=a.f[b][w])}c=Ws(oh(nh(a.A[b],a.B[b],Zf(a,a.f[b][0]),$f(a,a.f[b][0])),nh(a.A[b],a.B[b],Zf(a,a.f[b][1]),$f(a,a.f[b][1]))));d=Ws(oh(nh(a.A[b],a.B[b],Zf(a,a.f[b][0]),$f(a,a.f[b][0])),nh(a.A[b],a.B[b],Zf(a,a.f[b][2]),$f(a,a.f[b][2]))));e=Ws(oh(nh(a.A[b],a.B[b],Zf(a,a.f[b][1]),$f(a,a.f[b][1])),nh(a.A[b],a.B[b],Zf(a,a.f[b][2]),$f(a,a.f[b][2]))));K=true;if(c>d&&c>e){if(d+e<$A){K=false;p=O-0.5*(Zf(a,a.f[b][0])+Zf(a,a.f[b][1]));s=P-0.5*($f(a,a.f[b][0])+$f(a,a.f[b][1]))}}else if(d>c&&d>e){if(c+e<$A){K=false;p=O-0.5*(Zf(a,a.f[b][0])+Zf(a,a.f[b][2]));s=P-0.5*($f(a,a.f[b][0])+$f(a,a.f[b][2]))}}else{if(c+d<$A){K=false;p=O-0.5*(Zf(a,a.f[b][1])+Zf(a,a.f[b][2]));s=P-0.5*($f(a,a.f[b][1])+$f(a,a.f[b][2]))}}if(K){M=a.f[b][0];o=gC;for(v=0;v<3;v++){g=a.f[b][v];if(g!=L){k=dt(a.A[b]-a.A[g],2)+dt(a.B[b]-a.B[g],2);if(k-1?Ef(a,b,C,1):Ef(a,b,C,17);C=Cf(a,O+EA*p-JA*s,P+JA*p+EA*s,0);Zg(a,C,1);Ef(a,b,C,1)}else{for(A=0;A<2;A++){C=Cf(a,O,P,0);Zg(a,C,1);Ef(a,b,C,1)}}break;case 3:{p=(O-Zf(a,a.f[b][0]))*0.7;s=(P-$f(a,a.f[b][0]))*0.7;C=Cf(a,O+p,P+s,0);Zg(a,C,1);Ef(a,b,C,1);C=Cf(a,O-s,P+p,0);Zg(a,C,1);Ef(a,b,C,1);C=Cf(a,O+s,P-p,0);Zg(a,C,1);Ef(a,b,C,1)}break;default:{for(A=0;A4){m=new uf(a,a.i,1+a.e[d]);m.c[a.e[d]]=0;m.d[a.e[d]]=0;m.q[a.e[d]]=32;m.a[a.e[d]]=d;a.a[d]=true;for(o=0;o2){m=new uf(a,a.i,w);k=0;for(p=0;p2)break;a.a[b[v+1]]=true;a.c[Fh(a.i,b[v],A)]=true;++v}while(xh(a.i,b[v])==2&&a.e[b[v]]==2);w=a.e[b[0]]+a.e[b[v]]+v-1;m=new uf(a,a.i,w);for(t=0;t<=v;t++){m.c[t]=t;m.d[t]=0;m.q[t]=64;m.a[t]=b[t]}l=v+1;n=false;for(u=0;u=64)throw new rl('SmilesParser: Reconnection number out of range');if(F[v]==-1){F[v]=h[j]}else{w=!B?null:Cv(B,Js(h[j]));!!w&&sk(w,D,false);Ef(a.b,h[j],F[v],i);F[v]=-1}i=1}continue}if(J==43){if(!I)throw new rl("SmilesParser: '+' found outside brackets");l=1;while(c[D]==43){++l;++D}if(l==1&&Sr(c[D]&fB)){l=c[D]-48;++D}Gg(a.b,h[j],l);continue}if(J==45){if(!I)continue;l=-1;while(c[D]==45){--l;++D}if(l==-1&&Sr(c[D]&fB)){l=48-c[D];++D}Gg(a.b,h[j],l);continue}if(J==40){if(h[j]==-1)throw new rl('Smiles with leading parenthesis are not supported');h[j+1]=h[j];++j;continue}if(J==41){--j;continue}if(J==91){if(I)throw new rl('SmilesParser: nested square brackets found');I=true;continue}if(J==93){if(!I)throw new rl('SmilesParser: closing bracket without opening one');I=false;continue}if(J==37){C=true;continue}if(J==46){if(j!=0)throw new rl("SmilesParser: '.' found within brackets");h[0]=-1;continue}if(J==58){if(!I){i=64;continue}t=0;while(Sr(c[D]&fB)){t=10*t+c[D]-48;++D}Og(a.b,h[j],t);continue}if(J==47){i=17;continue}if(J==92){i=9;continue}if(J==64){q=false;if(c[D]==64){q=true;++D}!B&&(B=new ny);w=new uk(a,h[j],o,q);ly(B,Js(h[j]),w);c[D]==72&&++D;continue}throw new rl("SmilesParser: unexpected character found: '"+Ym(J)+"'")}hh(a.b,true);yk(a.b,1);for(d=0;d=39&&pt(w.substr(34,5),'V3000')?3:2}catch(a){a=fq(a);if($m(a,10)){Ri&&($t(),Zt);return false}else throw eq(a)}if(b.c){Mf(b.c);gh(b.c,false)}if(T==3){K=ij(b,c);kh(b.c,D);return K}!b.c&&(b.c=new Hk(F,G));kh(b.c,D);n==0&&(b.c.L=true);if(0==F){while(w!=null&&!(pt(w,'M END')||pt(w,'$$$$')||pt(zt(w,1,w.length-1),'$'))){w=rr(c)}return true}for(r=0;r=48&&w.charCodeAt(47)==49&&Sg(b.c,e,8192);S=w.length<51?0:gj(xt(w.substr(48,3)));switch(S){case 0:break;case 15:Eg(b.c,e,0);break;default:Eg(b.c,e,S);}}for(s=0;s0){d=10;U=14;for(u=1;u<=t;++u,d+=8,U+=8){e=ss(xt(w.substr(d,d+3-d)))-1;l=ss(xt(w.substr(U,U+3-U)));Gg(b.c,e,l)}}}if(pt(w.substr(0,6),'M ISO')){t=ss(xt(w.substr(6,3)));if(t>0){d=10;U=14;for(u=1;u<=t;++u,d+=8,U+=8){e=ss(xt(w.substr(d,d+3-d)))-1;B=ss(xt(w.substr(U,U+3-U)));Qg(b.c,e,B)}}}if(pt(w.substr(0,6),'M RAD')){t=ss(xt(w.substr(6,3)));if(t>0){d=10;U=14;for(u=1;u<=t;++u,d+=8,U+=8){e=ss(xt(w.substr(d,d+3-d)))-1;J=ss(xt(w.substr(U,U+3-U)));switch(J){case 1:Tg(b.c,e,16);break;case 2:Tg(b.c,e,32);break;case 3:Tg(b.c,e,48);}}}}if(pt(w.substr(0,6),'M RBD')){t=ss(xt(w.substr(6,3)));if(t>0){d=10;U=14;for(u=1;u<=t;++u,d+=8,U+=8){e=ss(xt(w.substr(d,d+3-d)))-1;L=ss(xt(w.substr(U,U+3-U)));switch(L){case 3:case -1:Sg(b.c,e,112);break;case 1:Sg(b.c,e,8);break;case 2:Sg(b.c,e,104);break;case 4:Sg(b.c,e,56);}}}}if(pt(w.substr(0,6),'M ALS')){e=ss(xt(w.substr(7,3)))-1;if(e>=0){I=ss(xt(w.substr(10,3)));i=w.charCodeAt(14)==84;R=Rm(ln,TA,0,I,7,1);d=16;for(u=0;u0){d=10;U=14;for(u=1;u<=t;++u,d+=8,U+=8){e=ss(xt(w.substr(d,d+3-d)))-1;N=ss(xt(w.substr(U,U+3-U)));if(N==-2){Sg(b.c,e,VA)}else if(N>0){O=0;for(j=0;jO&&Sg(b.c,e,SA)}}}}w=rr(c)}}catch(a){a=fq(a);if($m(a,10)){o=a;ol(o,$t());return false}else throw eq(a)}yk(b.c,7);return true} +function xd(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T;od(a);nd(a,9,4);P=at(zd(a.L.d),zd(a.L.e));nd(a,P,4);if(P==0){nd(a,a.L.K?1:0,1);nd(a,0,1);a.F=(a.s<<=a.q,Rt(a.r,a.s+64&fB),a.r.a);return}Q=S=R=C=0;for(f=0;f0){nd(a,1,1);nd(a,8,4);nd(a,D,P);for(i=0;i>4,2)}}}if(a.L.K){K=K|Cc(a,22,K,P,jB,1,-1);K=K|Dc(a,23,K,P,dB,1,-1);K=K|Dc(a,24,K,P,786432,2,18)}if((a.K&16)!=0){for(e=0;e>19!=1){G=false;break}}I=-1;if(G){w=Rm(ln,TA,0,32,7,1);for(d=0;d>19==1){B=(a.s[d]&tB)>>19!=1&&(a.s[d]&tB)>>19!=2?-1:(a.s[d]&uB)>>21;++w[B];03)&&(A=1.5/o)}else{J=FB;for(d=1;ds&&(J=s)}}A=3/J}}for(g=0;g>>28)-1;S==-1?Tt(this.b,' 0'):S==0?Tt(this.b,' 15'):Oi(this,S);Tt(this.b,' 0 0 0');Oi(this,Xs(a.u[g]));Tt(this.b,' 0 0\n')}for(p=0;p8){Vb=g;g=t}if(g==0){gh(a.f,pi(a,1)==1);return}h=pi(a,g);i=pi(a,t);Kb=pi(a,g);Ob=pi(a,g);Nb=pi(a,g);F=pi(a,g);for(l=0;l=39;Ub=0;Xb=0;Zb=0;_b=0;I=false;J=false;if(N){if(d.length>2*h-2&&d[2*h-2]==39||d.length>3*h-3&&d[3*h-3]==39){J=true;I=d.length==3*h-3+9;Cb=I?3*h-3:2*h-2;r=86*(d[Cb+1]-40)+d[Cb+2]-40;Ub=Math.pow(10,r/2000-1);Cb+=2;Wb=86*(d[Cb+1]-40)+d[Cb+2]-40;Xb=Math.pow(10,Wb/1500-1);Cb+=2;Yb=86*(d[Cb+1]-40)+d[Cb+2]-40;Zb=Math.pow(10,Yb/1500-1);if(I){Cb+=2;$b=86*(d[Cb+1]-40)+d[Cb+2]-40;_b=Math.pow(10,$b/1500-1)}}else{I=d.length==3*h-3}}if(a.b&&I){d=null;N=false}for(wb=1;wb1?(b.c=gs(this,a-1)):(b.c=this);return b};_.lb=function fs(){Yr(this);return this.b};_.mb=function hs(){return Zr(this)};_.nb=function js(){Yr(this);return this.i};_.ob=function ls(){return (this.e&4)!=0};_.pb=function ms(){return (this.e&1)!=0};_.tS=function ps(){return ((this.e&2)!=0?'interface ':(this.e&1)!=0?'':'class ')+(Yr(this),this.k)};_.e=0;_.g=0;var Xr=1;var Oo=bs(1),_n=bs(0),Co=bs(64);iq(132,1,{},pc);_.a=0;_.b=0;_.e=0;var nn=bs(132);var xc,yc;iq(88,1,{},Bc);_.a=0;_.b=0;_.c=0;_.d=0;var on=bs(88);iq(59,1,{},Id);_.b=false;_.q=0;_.s=0;_.B=false;_.D=0;_.G=false;_.H=false;_.K=0;_.N=0;_.Q=false;_._=false;var zn=bs(59);iq(105,1,{},Kd);_.ab=function Ld(a,b){return Jd(a,b)};var qn=bs(105);iq(60,1,{60:1},Md);_.b=0;_.c=0;_.d=0;var pn=bs(60);iq(106,1,{},Od);_.ab=function Pd(a,b){return Nd(a,b)};var sn=bs(106);iq(61,1,{61:1},Qd);_.a=0;_.b=0;_.c=0;var rn=bs(61);iq(37,1,{37:1,25:1},Vd);_.bb=function Wd(a){return Td(this,a)};_.a=0;_.b=0;_.c=0;var tn=bs(37);iq(104,1,{},Xd);var un=bs(104);iq(125,1,{},me);var xn=bs(125);iq(128,1,{},pe);_.ab=function qe(a,b){return oe(a,b)};var vn=bs(128);iq(126,1,{},Be);_.a=0;_.b=0;_.f=0;_.g=0;_.i=0;var wn=bs(126);iq(127,1,{},De);_.ab=function Ee(a,b){return Ce(a,b)};var yn=bs(127);iq(55,1,{},ef);_.b=0;_.d=0;_.g=0;var Bn=bs(55);iq(18,1,{18:1},tf,uf);_.f=0;_.i=0;_.j=0;_.k=false;_.n=0;_.o=0;var An=bs(18);iq(32,1,{},vf);_.a=0;_.b=0;_.c=0;_.d=0;var Cn=bs(32);iq(31,1,{},xf);_.a=0;_.b=0;_.c=false;_.d=0;_.f=false;_.g=0;_.i=false;_.j=0;var Dn=bs(31);iq(44,1,{44:1,4:1});_.o=0;_.p=0;_.J=0;_.K=false;_.L=false;_.M=0;_.N=0;_.P=false;_.Q=0;var yf,zf,Af;var Kn=bs(44);iq(54,44,{54:1,44:1,4:1});_.cb=function ni(a){sh(this,a)};_.d=0;_.e=0;var En=bs(54);iq(38,1,{},wi);_.b=false;_.c=0;_.d=0;_.e=0;var Fn=bs(38);iq(12,1,{12:1},xi,yi);_.a=0;_.b=0;var Gn=bs(12);iq(69,1,{},Ai);var Hn=bs(69);iq(3,1,{3:1},Bi);_.a=0;_.b=0;var In=bs(3);var Ci;iq(82,1,{});_.a=0;_.d=0;var Fi,Gi,Hi;var Jn=bs(82);iq(68,1,{},Pi);var Ln=bs(68);iq(67,1,{},jj);var Ri=true;var Mn=bs(67);iq(84,1,{});var Nn=bs(84);iq(63,1,{},Dj);var On=bs(63);iq(65,1,{},Xj);_.b=0;_.g=false;_.o=0;_.u=false;_.v=0;var Qn=bs(65);iq(66,1,{},ek);var Yj,Zj;var Pn=bs(66);iq(93,1,{},kk);_.a=0;_.d=0;_.i=0;var Rn=bs(93);iq(91,1,{},rk);var Tn=bs(91);iq(92,1,{},uk);_.a=0;_.b=false;_.c=0;_.d=false;_.e=0;var Sn=bs(92);iq(124,1,UA,xk);var Un=bs(124);iq(23,54,{54:1,44:1,23:1,4:1},Hk);_.cb=function Ik(a){yk(this,a)};_.db=function Jk(){return Ck(this)};_.eb=function Kk(){return Dk(this)};_.a=false;var Vn=bs(23);iq(153,1,{});var Wn=bs(153);iq(87,153,{},Tk);_.d=0;var Lk;var Xn=bs(87);iq(94,1,{},Zk);var Uk,Vk,Wk;var Yn=bs(94);var $k;var el,fl;iq(107,1,{},ml);var Zn=bs(107);iq(11,1,WB);_.fb=function pl(){return this.f};_.tS=function ql(){var a,b;a=Zr(this.cZ);b=this.fb();return b!=null?a+': '+b:a};var Uo=bs(11);iq(10,11,XB,rl);var Fo=bs(10);iq(14,10,XB,tl);var Po=bs(14);iq(89,14,XB);var bo=bs(89);iq(36,89,{36:1,4:1,10:1,11:1},xl);_.fb=function yl(){wl(this);return this.c};_.gb=function zl(){return dn(this.b)===dn(ul)?null:this.b};var ul;var $n=bs(36);iq(141,1,{});var ao=bs(141);var Bl=0,Cl=0,Dl=0,El=-1;iq(133,141,{},Sl);var Ol;var co=bs(133);var Vl;iq(161,1,{});var ho=bs(161);iq(102,161,{},_l);_.hb=function am(a,b){var c={},j;a.fnStack=[];var d=arguments.callee.caller;while(d){var e=(Wl(),d.name||(d.name=Zl(d.toString())));a.fnStack.push(e);var f=':'+e;var g=c[f];if(g){var h,i;for(h=0,i=g.length;h=0?':'+this.c:'')+')'};_.c=0;var Qo=bs(27);var To=bs(2);var It,Jt=0,Kt;iq(90,45,{140:1},Qt);var Ro=bs(90);iq(20,45,{140:1},Wt,Xt,Yt);var So=bs(20);var Zt;iq(76,14,XB,au);var Vo=bs(76);iq(167,1,{});var Xo=bs(167);iq(79,167,{},cu);var Wo=bs(79);iq(157,1,{});_.rb=function hu(a){return du(this,a)};_.tS=function iu(){return gu(this)};var Yo=bs(157);iq(156,1,{50:1});_.tb=function nu(a){return ju(this,a)};_.ub=function ou(a){return !!lu(this,a)};_.eQ=function pu(a){var b,c,d;if(a===this){return true}if(!$m(a,50)){return false}d=a;if(this.sb()!=d.sb()){return false}for(c=d.vb().qb();c.xb();){b=c.yb();if(!this.tb(b)){return false}}return true};_.wb=function qu(a){return ru(lu(this,a))};_.hC=function su(){return Dw(this.vb())};_.sb=function tu(){return this.vb().sb()};_.tS=function uu(){var a,b,c,d;d=new Yt('{');a=false;for(c=this.vb().qb();c.xb();){b=c.yb();a?(d.a+=', ',d):(a=true);Tt(d,mu(this,b.Cb()));d.a+='=';Tt(d,mu(this,b.Db()))}d.a+='}';return d.a};var kp=bs(156);iq(95,156,{50:1});_.ub=function yu(a){return vu(this,a)};_.vb=function zu(){return new Eu(this)};_.wb=function Au(a){return cn(a)?a==null?ru(Tw(this.a,null)):this.c.Mb(a):ru(Tw(this.a,a))};_.sb=function Bu(){return this.b};_.b=0;var _o=bs(95);iq(158,157,_B);_.eQ=function Cu(a){var b;if(a===this){return true}if(!$m(a,33)){return false}b=a;if(b.sb()!=this.sb()){return false}return eu(this,b)};_.hC=function Du(){return Dw(this)};var pp=bs(158);iq(70,158,_B,Eu);_.rb=function Fu(a){if($m(a,26)){return ju(this.a,a)}return false};_.qb=function Gu(){return new Ku(this.a)};_.sb=function Hu(){return this.a.b};var $o=bs(70);iq(71,1,{},Ku);_.xb=function Lu(){return Iu(this)};_.yb=function Mu(){return Ju(this)};var Zo=bs(71);iq(159,157,{51:1});_.zb=function Ou(a,b){throw new au('Add not supported on this list')};_.Ab=function Pu(a){this.zb(this.sb(),a);return true};_.eQ=function Qu(a){return Nu(this,a)};_.hC=function Ru(){return Ew(this)};_.qb=function Su(){return new Vu(this)};var cp=bs(159);iq(30,1,{},Vu);_.xb=function Wu(){return Tu(this)};_.yb=function Xu(){return Uu(this)};_.a=0;var ap=bs(30);iq(101,30,{},Yu);var bp=bs(101);iq(96,158,_B,$u);_.rb=function _u(a){return vu(this.a,a)};_.qb=function av(){return Zu(this)};_.sb=function bv(){return this.a.b};var ep=bs(96);iq(97,1,{},dv);_.xb=function ev(){return Iu(this.a)};_.yb=function fv(){return cv(this)};var dp=bs(97);iq(98,157,{},hv);_.rb=function iv(a){return ku(this.a,a)};_.qb=function jv(){return gv(this)};_.sb=function kv(){return this.a.c};var gp=bs(98);iq(99,1,{},mv);_.xb=function nv(){return Tu(this.a.a)};_.yb=function ov(){return lv(this)};var fp=bs(99);iq(46,1,{46:1,26:1});_.eQ=function qv(a){var b;if(!$m(a,26)){return false}b=a;return Xx(this.c,b.Cb())&&Xx(this.d,b.Db())};_.Cb=function rv(){return this.c};_.Db=function sv(){return this.d};_.hC=function tv(){return Yx(this.c)^Yx(this.d)};_.Eb=function uv(a){return pv(this,a)};_.tS=function vv(){return this.c+'='+this.d};var hp=bs(46);iq(47,46,{46:1,47:1,26:1},wv);var ip=bs(47);iq(165,1,{26:1});_.eQ=function xv(a){var b;if(!$m(a,26)){return false}b=a;return Xx(this.Cb(),b.Cb())&&Xx(this.Db(),b.Db())};_.hC=function yv(){return Yx(this.Cb())^Yx(this.Db())};_.tS=function zv(){return this.Cb()+'='+this.Db()};var jp=bs(165);iq(166,156,{50:1});_.tb=function Dv(a){return Av(this,a)};_.ub=function Ev(a){return Bv(this,a)};_.vb=function Fv(){return new Hv(this)};_.wb=function Gv(a){return Cv(this,a)};var op=bs(166);iq(74,158,_B,Hv);_.rb=function Iv(a){return $m(a,26)&&Av(this.a,a)};_.qb=function Jv(){return new ry(this.a)};_.sb=function Kv(){return this.a.c};var lp=bs(74);iq(75,158,_B,Mv);_.rb=function Nv(a){return Bv(this.a,a)};_.qb=function Ov(){return Lv(this)};_.sb=function Pv(){return this.a.c};var np=bs(75);iq(118,1,{},Rv);_.xb=function Sv(){return Tu(this.a.a)};_.yb=function Tv(){return Qv(this)};var mp=bs(118);iq(19,159,aC,aw);_.zb=function bw(a,b){Uv(this,a,b)};_.Ab=function cw(a){return Vv(this,a)};_.rb=function dw(a){return Xv(this,a,0)!=-1};_.Bb=function ew(a){return Wv(this,a)};_.Fb=function fw(a){return Yv(this,a)};_.sb=function gw(){return this.b.length};var qp=bs(19);var Fw;iq(134,1,{},Iw);_.ab=function Jw(a,b){return Hw(a,b)};var rp=bs(134);iq(138,14,XB,Nw);var sp=bs(138);iq(56,95,{4:1,50:1},Qw);var tp=bs(56);iq(77,1,{},Xw);_.Gb=function Yw(){return Object.create(null)};_.Hb=function Zw(){return new _w(this)};var xp=bs(77);iq(121,1,{},_w);_.xb=function ax(){return $w(this)};_.yb=function bx(){return nm($w(this)),this.e=this.a[this.c++],this.e};_.b=-1;_.c=0;_.e=null;var up=bs(121);iq(119,77,{},cx);_.Gb=function dx(){return {}};_.Hb=function ex(){var a=this.Ib();var b=this.a;for(var c in b){if(c==parseInt(c,10)){var d=b[c];for(var e=0,f=d.length;e