(function(ka,la,ma,na,R,oa,fa,w,ga,ha,ia,T,pa,ja,qa,L,N,ra,u,sa,ta,ua,va,wa,xa,ya,za,Aa,Ba,Ca,C,Da,Ea,Fa,Ga,Ha,Ia,Ja,Ka,La,Ma,Na,Oa,Pa,Qa,Ra,Sa,Ta,Ua,Va,Wa,Xa,Ya,Za,$a,ab,bb,cb,m){fa("JS");ga(null,"JS.MathExt","java.lang.Float $.Number java.util.Date $.HashMap $.Hashtable $.Random JU.AU $.BS $.CU $.Lst $.M4 $.Measure $.OC $.P3 $.P4 $.PT $.Quat $.Rdr $.SB $.V3 J.api.Interface J.atomdata.RadiusData J.bspt.PointIterator J.c.VDW J.i18n.GT JM.BondSet $.Measurement JS.SV $.ScriptMathProcessor $.ScriptParam $.T JU.BSUtil $.Escape $.JmolMolecule $.Logger $.Parser $.Point3fi $.SimpleUnitCell JV.FileManager $.JC $.Viewer".split(" "),
function(){c$=ia(function(){this.pm=this.rand=this.e=this.vwr=null;ha(this,arguments)},JS,"MathExt");ja(c$,function(){});m(c$,"init",function(e){this.e=e;this.vwr=this.e.vwr;return this},"~O");m(c$,"evaluate",function(e,a,b,c){switch(c){case 134218760:return 1<=b.length&&4==b[0].tok?e.addXStr((1==b.length?(new java.util.Date).toString():this.vwr.apiPlatform.getDateFormat(JS.SV.sValue(b[1])))+"\t"+JS.SV.sValue(b[0]).trim()):e.addXInt(Zystem.currentTimeMillis()-JS.MathExt.t0-(0==b.length?0:b[0].asInt()));
case 134218250:return 1==b.length&&2==b[0].tok?e.addXInt(b[0].intValue):e.addXFloat(Math.abs(b[0].asFloat()));case 134218242:case 134218245:case 134218244:case 134218246:return 1==b.length&&this.evaluateMath(e,b,c);case 1275069441:case 1275068928:case 1275068929:case 1275068930:case 1275068931:case 1275335685:case 1275334681:return this.evaluateList(e,a.intValue,b);case 268435520:0==b.length&&(e.wasX=!1);case 1275068418:return this.evaluateArray(e,b,1275068418==c&&268435665==a.tok);case 134217731:case 134221850:return this.evaluateQuaternion(e,
b,c);case 1275068420:return this.evaluateBin(e,b);case 134221829:return this.evaluateCache(e,b);case 1275068934:case 1275068935:return this.evaluateRowCol(e,b,c);case 1765808134:return this.evaluateColor(e,b);case 134221831:return this.evaluateCompare(e,b);case 1228931587:case 134217736:case 1275203608:return this.evaluateConnected(e,b,c,a.intValue);case 1814695966:return this.evaluateUnitCell(e,b,268435665==a.tok);case 134353926:return this.evaluateContact(e,b);case 134221834:return this.evaluateData(e,
b);case 1275069444:case 1275069442:return this.evaluateDotDist(e,b,c,a.intValue);case 1275069443:if(268435665==a.tok)return this.evaluateDotDist(e,b,c,a.intValue);case 134217729:case 1745489939:return this.evaluateMeasure(e,b,a.tok);case 1228935687:case 134222849:return this.evaluateLoad(e,b,1228935687==c);case 1275068427:return this.evaluateFind(e,b);case 1275068433:return this.evaluateInChI(e,b);case 1287653388:case 1825200146:return this.evaluateFormat(e,a.intValue,b,1825200146==c);case 134320141:return this.evaluateUserFunction(e,
a.value,b,a.intValue,268435665==a.tok);case 1275068449:case 1275068437:case 1275082245:case 1275072526:return this.evaluateGetProperty(e,b,c,268435665==a.tok);case 136314895:return this.evaluateHelix(e,b);case 134219265:case 134217750:case 134217763:return this.evaluatePlane(e,b,c);case 134218759:case 134238732:case 134222850:case 134222350:return this.evaluateScript(e,b,c);case 1275069446:case 1275069447:case 1275068932:return this.evaluateString(e,a.intValue,b);case 134217751:return this.evaluatePoint(e,
b);case 134217762:return this.evaluatePointGroup(e,b);case 134256131:return this.evaluatePrompt(e,b);case 134219268:return this.evaluateRandom(e,b);case 1275068432:return this.evaluateIn(e,b);case 1275072532:return this.evaluateModulation(e,b);case 1275068443:return this.evaluateReplace(e,b);case 134218756:case 134218757:case 1237320707:return this.evaluateSubstructure(e,b,c,268435665==a.tok);case 1275068444:case 1275068425:return this.evaluateSort(e,b,c);case 134217764:return this.evaluateSpacegroup(e,
b);case 1296041986:return this.evaluateSymop(e,b,268435665==a.tok);case 1275068445:return this.evaluateTensor(e,b);case 134217759:return this.evaluateWithin(e,b);case 134221856:return this.evaluateWrite(e,b)}return!1},"JS.ScriptMathProcessor,JS.T,~A,~N");m(c$,"evaluateSpacegroup",function(e,a){var b=null;switch(a.length){case 0:return e.addXObj(this.vwr.getSymTemp().getSpaceGroupInfo(this.vwr.ms,null,this.vwr.am.cmi,!0,null));case 2:b=JS.SV.flistValue(a[1],0),6>b.length&&(b=null);case 1:return e.addXObj(this.vwr.getSymTemp().getSpaceGroupInfo(this.vwr.ms,
""+a[0].asString(),-2147483648,!0,b));default:return!1}},"JS.ScriptMathProcessor,~A");m(c$,"evaluatePointGroup",function(e,a){var b=null,c=null,d=NaN,g=NaN,f;switch(a.length){case 4:g=a[3].asFloat();case 3:d=a[2].asFloat();case 2:switch(a[1].tok){case 8:c=JS.SV.ptValue(a[1]);break;case 10:f=JS.SV.getBitSet(a[1],!1);c=f.nextSetBit(0);if(0>c||c>=this.vwr.ms.ac||1!=f.cardinality())return!1;if(JS.SV.sValue(a[0]).equalsIgnoreCase("spaceGroup")){c=this.vwr.ms.generateCrystalClass(c,JU.P3.new3(NaN,NaN,NaN));
b=Array(c.size());for(f=b.length;0<=--f;)b[f]=c.get(f);c=new JU.P3;2==a.length&&(d=0)}else c=this.vwr.ms.at[c]}if(null!=b)break;case 1:switch(a[0].tok){case 7:var h=a[0].getList(),b=Array(h.size());for(f=b.length;0<=--f;)b[f]=JS.SV.ptValue(h.get(f));break;case 10:f=JS.SV.getBitSet(a[0],!1);h=this.vwr.ms.getAtomPointVector(f);b=Array(h.size());for(f=b.length;0<=--f;)b[f]=h.get(f);break;default:return!1}break;default:return!1}b=this.vwr.getSymTemp().setPointGroup(null,c,b,null,!1,Float.isNaN(d)?this.vwr.getFloat(570425382):
d,Float.isNaN(g)?this.vwr.getFloat(570425384):g,!0);return e.addXMap(b.getPointGroupInfo(-1,null,!0,null,0,1))},"JS.ScriptMathProcessor,~A");m(c$,"evaluateUnitCell",function(e,a,b){b=b?JS.SV.getBitSet(e.getX(),!0):null;var c=(null==b?this.vwr.getAllAtoms():b).nextSetBit(0),d=a.length-1;b=1;switch(0>d?0:a[d].tok){case 2:case 3:b=a[d].asFloat(),d--}var g=0>d?0:a[0].tok,f=null,h=null;switch(g){case 7:h=a[0].getList();break;case 4:var k=a[0].asString();if(0==k.indexOf("a=")){for(var f=Array(4),j=0;4>
j;j++)f[j]=new JU.P3;JU.SimpleUnitCell.setOabc(k,null,f)}else if(0<=k.indexOf(","))return e.addXObj(this.vwr.getV0abc(k))}k=null;j=null!=h;if(null==f&&j&&4>h.size())return!1;var l=j?1:0;null==f&&(!j&&8!=g)&&(k=0>c?null:this.vwr.ms.getUnitCell(this.vwr.ms.at[c].mi),f=null==k?C(-1,[JU.P3.new3(0,0,0),JU.P3.new3(1,0,0),JU.P3.new3(0,1,0),JU.P3.new3(0,0,1)]):k.getUnitCellVectors());if(null==f)if(f=Array(4),j)switch(h.size()){case 3:f[0]=new JU.P3;for(j=0;3>j;j++)f[j+1]=JU.P3.newP(JS.SV.ptValue(h.get(j)));
break;case 4:for(j=0;4>j;j++)f[j]=JU.P3.newP(JS.SV.ptValue(h.get(j)));break;case 6:g=u(6,0);for(j=0;6>j;j++)g[j]=h.get(j).asFloat();JU.SimpleUnitCell.setOabc(null,g,f);break;default:return!1}else switch(f[0]=JS.SV.ptValue(a[0]),d){case 3:for(j=1;4>j;j++)(f[j]=JU.P3.newP(JS.SV.ptValue(a[j]))).sub(f[0]);break;case 1:if(h=a[1].getList(),null!=h&&3==h.size()){for(j=0;3>j;j++)f[j+1]=JS.SV.ptValue(h.get(j));break}default:return!1}j=l<=d?a[l].asString():null;if((h="primitive".equalsIgnoreCase(j))||"conventional".equalsIgnoreCase(j)){a=
++l>d?"":a[l].asString().toUpperCase();a.equals("BCC")?a="I":0==a.length&&(a=this.vwr.getSymmetryInfo(c,null,0,null,null,1073741994,null,0,-1,0));if(null==a||0==a.length)return!1;null==k&&(k=this.vwr.getSymTemp());c=this.vwr.getModelForAtomIndex(c).auxiliaryInfo.get("primitiveToCrystal");if(!k.toFromPrimitive(h,a.charAt(0),f,c))return!1}else"reciprocal".equalsIgnoreCase(j)&&(f=JU.SimpleUnitCell.getReciprocal(f,null,b),b=1);if(1!=b)for(j=1;4>j;j++)f[j].scale(b);return e.addXObj(f)},"JS.ScriptMathProcessor,~A,~B");
m(c$,"evaluateArray",function(e,a,b){if(b){b=e.getX();switch(1==a.length?b.tok:0){case 6:var c=new JU.Lst,d=a[0].asString(),g=b.getMap(),f=b.getKeys(!1);b=0;for(a=f.length;b<a;b++)if(null==g.get(f[b]).getMap())return!1;b=0;for(a=f.length;b<a;b++){var h=g.get(f[b]),h=h.getMap(),h=JS.SV.deepCopy(h,!0,!1);h.put(d,JS.SV.newS(f[b]));c.addLast(JS.SV.newV(6,h))}return e.addXList(c);case 7:c=new java.util.Hashtable;d=b.getList();g=a[0].asString();b=0;for(a=d.size();b<a;b++)if(h=d.get(b).getMap(),null==h||
null==h.get(g))return!1;b=0;for(a=d.size();b<a;b++)h=d.get(b),h=JS.SV.deepCopy(h.getMap(),!0,!1),f=h.remove(g),c.put(f.asString(),JS.SV.newV(6,h));return e.addXObj(c)}return!1}c=Array(a.length);for(b=c.length;0<=--b;)c[b]=JS.SV.newT(a[b]);return e.addXAV(c)},"JS.ScriptMathProcessor,~A,~B");m(c$,"evaluateBin",function(e,a){var b=a.length;if(3>b||5<b)return!1;var c=e.getX(),d=13==c.tok;if(!d&&7!=c.tok)return e.addX(c);var g=JS.SV.fValue(a[0]),f=JS.SV.fValue(a[1]),h=JS.SV.fValue(a[2]),k=4<=b&&1073742335==
a[b-1].tok,b=(5==b||4==b&&!k)&&1073742334!=a[3].tok?JS.SV.sValue(a[3]):null,j=null;if(d)c=c.value;else{d=c.getList();c=u(d.size(),0);null!=b&&(j=JU.AU.createArrayOfHashtable(d.size()));try{for(var l=d.size();0<=--l;)c[l]=JS.SV.fValue(null==b?d.get(l):(j[l]=d.get(l).getMap()).get(b))}catch(m){if(L(m,Exception))return!1;throw m;}}for(var f=Math.max(R(Math.floor((f-g)/h+0.01)),1),d=N(f,0),n=c.length,l=0;l<n;l++){var p=R(Math.floor((c[l]-g)/h));if(!(0>p||p>=f))if(d[p]++,null!=b){var r=j[l];if(null!=r){r.put("_bin",
JS.SV.newI(p));var O=g+h*p,A=O+h;r.put("_binMin",JS.SV.newF(0==p?-3.4028235E38:O));r.put("_binMax",JS.SV.newF(p==f-1?3.4028235E38:A))}}}if(k){k=new JU.Lst;for(l=0;l<f;l++)k.addLast(u(-1,[g+h*l,d[l]]));return e.addXList(k)}return e.addXAI(d)},"JS.ScriptMathProcessor,~A");m(c$,"evaluateCache",function(e,a){return 0<a.length?!1:e.addXMap(this.vwr.fm.cacheList())},"JS.ScriptMathProcessor,~A");m(c$,"evaluateColor",function(e,a){var b=0<a.length?JS.SV.sValue(a[0]):"",c=b.startsWith("$");if(2==a.length&&
b.equalsIgnoreCase("TOHSL"))return e.addXPt(JU.CU.rgbToHSL(JU.P3.newP(8==a[1].tok?JS.SV.ptValue(a[1]):JU.CU.colorPtFromString(a[1].asString())),!0));if(2==a.length&&b.equalsIgnoreCase("TORGB")){var d=JU.P3.newP(8==a[1].tok?JS.SV.ptValue(a[1]):JU.CU.colorPtFromString(a[1].asString()));return e.addXPt(8==a[1].tok?JU.CU.hslToRGB(d):d)}if(4==a.length&&(1073742335==a[3].tok||1073742334==a[3].tok)){var d=JU.P3.newP(8==a[0].tok?JS.SV.ptValue(a[0]):JU.CU.colorPtFromString(a[0].asString())),g=JU.P3.newP(8==
a[1].tok?JS.SV.ptValue(a[1]):JU.CU.colorPtFromString(a[1].asString())),f=1073742335==a[3].tok;f&&(d=JU.CU.rgbToHSL(d,!1),g=JU.CU.rgbToHSL(g,!1));var h=new JU.SB,g=JU.V3.newVsub(g,d),k=a[2].asInt();2>k&&(k=20);g.scale(1/(k-1));for(b=0;b<k;b++)h.append(JU.Escape.escapeColor(JU.CU.colorPtToFFRGB(f?JU.CU.hslToRGB(d):d))),d.add(g);return e.addXStr(h.toString())}k=c?null:this.vwr.cm.getColorEncoder(b);if(!c&&null==k)return e.addXStr("");d=1<a.length?JS.SV.fValue(a[1]):3.4028235E38;g=2<a.length?JS.SV.fValue(a[2]):
3.4028235E38;f=3<a.length?JS.SV.fValue(a[3]):3.4028235E38;h=3.4028235E38!=f||3.4028235E38!=d&&3.4028235E38==g;3.4028235E38==g&&0==b.length&&(f=d,g=this.vwr.getCurrentColorRange(),d=g[0],g=g[1]);if(c){k=b.substring(1);k=C(-1,[k,null]);if(!this.vwr.shm.getShapePropertyData(24,"colorEncoder",k))return e.addXStr("");k=k[1]}else k.setRange(d,g,d>g);b=k.getColorKey();return h?e.addXPt(JU.CU.colorPtFromInt(k.getArgb(3.4028235E38==g?d:f),null)):e.addX(JS.SV.getVariableMap(b))},"JS.ScriptMathProcessor,~A");
m(c$,"evaluateCompare",function(e,a){if(2>a.length||5<a.length)return!1;var b,c=JS.SV.sValue(a[a.length-1]),d=c.equalsIgnoreCase("stddev"),g=c.equalsIgnoreCase("ISOMER"),f=c.equalsIgnoreCase("BONDS"),h=!g&&a.length>(d?3:2),k=10==a[0].tok?a[0].value:null,j=10==a[1].tok?a[1].value:null,l=null==k?JS.SV.sValue(a[0]):"",m=null==j?JS.SV.sValue(a[1]):"",n=new JU.M4;b=NaN;var p,r;try{if(h&&(null==k||null==j))return!1;if(f){if(4!=a.length)return!1;l=JS.SV.sValue(a[2]);h=l.equalsIgnoreCase("SMILES");try{h&&
(l=this.vwr.getSmiles(k))}catch(O){if(L(O,Exception))this.e.evalError(O.getMessage(),null);else throw O;}var A=this.e.getSmilesExt().getFlexFitList(k,j,l,!h);return null==A?e.addXStr(""):e.addXAF(A)}if(g){if(3!=a.length)return!1;if(null==k&&null==j)return e.addXStr(this.vwr.getSmilesMatcher().getRelationship(l,m).toUpperCase());var v=null==k?this.vwr.getSmilesMatcher().getMolecularFormula(l,!1):JU.JmolMolecule.getMolecularFormulaAtoms(this.vwr.ms.at,k,null,!1),w=null==j?this.vwr.getSmilesMatcher().getMolecularFormula(m,
!1):JU.JmolMolecule.getMolecularFormulaAtoms(this.vwr.ms.at,j,null,!1);if(!v.equals(w))return e.addXStr("NONE");null!=k&&(l=this.e.getSmilesExt().getSmilesMatches("/strict///",null,k,null,1,!0,!1));var u;null==j?u=0<this.vwr.getSmilesMatcher().areEqual(m,l):(m=this.e.getSmilesExt().getSmilesMatches("/strict///",null,j,null,1,!0,!1),u=0<=this.e.getSmilesExt().getSmilesMatches("/strict///"+l,null,j,null,1,!0,!1).nextSetBit(0));if(!u){p=l+m;if(0<=p.indexOf("/")||0<=p.indexOf("\\")||0<=p.indexOf("@")){if(0<=
l.indexOf("@")&&(null!=j||0<=m.indexOf("@"))&&0>l.indexOf("@SP")){var F=l.toLowerCase().indexOf("invertstereo"),l=0<=F?"/strict/"+l.substring(0,F)+l.substring(F+12):"/invertstereo strict/"+l;if(u=null==j?0<this.vwr.getSmilesMatcher().areEqual(l,m):0<=this.e.getSmilesExt().getSmilesMatches(l,null,j,null,1,!0,!1).nextSetBit(0))return e.addXStr("ENANTIOMERS")}if(null==j)u=0<this.vwr.getSmilesMatcher().areEqual("/nostereo/"+m,l);else{var y=this.e.getSmilesExt().getSmilesMatches("/nostereo/"+l,null,j,
null,1,!0,!1);u=0<=y.nextSetBit(0)}if(u)return e.addXStr("DIASTEREOMERS")}return e.addXStr("CONSTITUTIONAL ISOMERS")}if(null==k||null==j)return e.addXStr("IDENTICAL");b=this.e.getSmilesExt().getSmilesCorrelation(k,j,l,null,null,null,null,!1,null,null,!1,1);return e.addXStr(0.2>b?"IDENTICAL":"IDENTICAL or CONFORMATIONAL ISOMERS (RMSD="+b+")")}if(h){p=new JU.Lst;r=new JU.Lst;var c=JS.SV.sValue(a[2]),D=c.equalsIgnoreCase("MAP"),h=c.equalsIgnoreCase("SMILES"),t=D||c.equalsIgnoreCase("SMARTS");if(h||t)c=
a.length>(d?4:3)?JS.SV.sValue(a[3]):null;var z="H".equalsIgnoreCase(c)||"allH".equalsIgnoreCase(c)||"bestH".equalsIgnoreCase(c),C="polyhedra".equalsIgnoreCase(c);C&&(c=a.length>(d?5:4)?JS.SV.sValue(a[4]):null);var B="all".equalsIgnoreCase(c)||"allH".equalsIgnoreCase(c),s="best".equalsIgnoreCase(c)||"bestH".equalsIgnoreCase(c);"stddev".equals(c)&&(c=null);l=c;if(null==c||z||B||s){if(!D&&!h||z&&C)return!1;l="/noaromatic"+(B||s?"/":" nostereo/")+this.e.getSmilesExt().getSmilesMatches(z?"H":"",null,k,
null,1,!0,!1)}else B=!0;b=this.e.getSmilesExt().getSmilesCorrelation(k,j,l,p,r,n,null,D,null,null,s,(h?1:2)|(!B&&!s?8:0));if(D){var q=p.size();if(0==q)return e.addXStr("");for(var E=R(r.size()/q),y=new JU.Lst,F=j=0;j<E;j++){var x=JU.AU.newInt2(q);y.addLast(x);for(b=0;b<q;b++,F++)x[b]=N(-1,[p.get(b).i,r.get(F).i])}return B?e.addXList(y):0<y.size()?e.addXAII(y.get(0)):e.addXStr("")}}else{switch(a.length){case 2:break;case 3:if(d)break;default:return!1}p=this.e.getPointVector(a[0],0);r=this.e.getPointVector(a[1],
0);null!=p&&null!=r&&(J.api.Interface.getInterface("JU.Eigen",this.vwr,"script"),b=JU.Measure.getTransformMatrix4(p,r,n,null))}return d||Float.isNaN(b)?e.addXFloat(b):e.addXM4(n.round(1E-7))}catch(P){if(L(P,Exception))return this.e.evalError(null==P.getMessage()?P.toString():P.getMessage(),null),!1;throw P;}},"JS.ScriptMathProcessor,~A");m(c$,"evaluateConnected",function(e,a,b,c){if(5<a.length)return!1;var d=-2147483648,g=2147483647,f=0,h=3.4028235E38,k=65535,j=null,l=null,m=!1,n=!1;switch(b){case 1275203608:l=
-2147483648;f=null;if(0<a.length)switch(a[0].tok){case 2:l=a[0].intValue;break;case 4:f=JS.SV.sValue(a[0])}1275203608==c&&(j=JS.SV.getBitSet(e.getX(),!0));j=C(-1,[Integer.$valueOf(l),f,j]);this.vwr.shm.getShapePropertyData(21,"getCenters",j)||(j[1]=null);return e.addXBs(null==j[1]?new JU.BS:j[1]);case 1228931587:j=e.getX();if(10!=j.tok||1!=a.length||10!=a[0].tok)return!1;j=j.value;l=a[0].value;a=new JU.Lst;f=this.vwr.ms.at;for(c=j.nextSetBit(0);0<=c;c=j.nextSetBit(c+1)){b=0;h=f[c].bonds;for(n=h.length;0<=
--n;)l.get(h[n].getOtherAtom(f[c]).i)&&b++;a.addLast(Integer.$valueOf(b))}return e.addXList(a)}for(c=0;c<a.length;c++){var p=a[c];switch(p.tok){case 10:if((n=w(p.value,JM.BondSet))&&null!=j)return!1;if(null==j)j=p.value;else if(null==l)l=p.value;else return!1;break;case 4:b=JS.SV.sValue(p);k=b.equalsIgnoreCase("hbond")?30720:JS.ScriptParam.getBondOrderFromString(b);if(131071==k)return!1;break;case 3:m=!0;default:b=p.asInt();p=p.asFloat();if(2147483647!=g)return!1;-2147483648==d?(d=Math.max(b,0),f=
p):(g=b,h=p)}}-2147483648==d?(d=1,g=100,f=0.1,h=1E8):2147483647==g&&(g=d,h=f,f=0.1);null==j&&(j=this.vwr.getAllAtoms());m&&null==l&&(l=j);return null!=l?(a=new JU.BS,this.vwr.makeConnections(f,h,k,1086324745,j,l,a,n,!1,0),e.addX(JS.SV.newV(10,JM.BondSet.newBS(a,this.vwr.ms.getAtomIndices(this.vwr.ms.getAtoms(1677721602,a)))))):e.addXBs(this.vwr.ms.getAtomsConnected(d,g,k,j))},"JS.ScriptMathProcessor,~A,~N,~N");m(c$,"evaluateContact",function(e,a){if(1>a.length||3<a.length)return!1;var b=0,c=100;switch(a[0].tok){case 3:case 2:c=
JS.SV.fValue(a[b++]);break;case 10:break;default:return!1}if(b==a.length||!w(a[b].value,JU.BS))return!1;var d=JU.BSUtil.copy(a[b++].value),b=b<a.length?JU.BSUtil.copy(a[b].value):null,c=new J.atomdata.RadiusData(null,10<c?c/100:c,10<c?J.atomdata.RadiusData.EnumType.FACTOR:J.atomdata.RadiusData.EnumType.OFFSET,J.c.VDW.AUTO),b=this.setContactBitSets(d,b,!0,NaN,c,!1);b.or(d);return e.addXBs(b)},"JS.ScriptMathProcessor,~A");m(c$,"evaluateData",function(e,a){var b=0==a.length?"":JS.SV.sValue(a[0]);switch(a.length){case 0:case 1:break;
case 2:case 3:if(10==a[0].tok)return e.addXStr(this.vwr.getModelFileData(b,JS.SV.sValue(a[1]),3==a.length&&JS.SV.bValue(a[2])));break;case 4:var b=a[1].asInt(),c=a[2].asInt(),d=a[3].asInt(),b=JU.Parser.parseFloatArrayFromMatchAndField(JS.SV.sValue(a[0]),null,0,0,null,b,c,null,d);return e.addXStr(JU.Escape.escapeFloatA(b,!1));default:return!1}if(0==b.indexOf("data2d_"))return b=this.vwr.getDataObj(b,null,2),null==b?e.addXStr(""):2==a.length&&2==a[1].tok?(c=a[1].intValue,0>c&&(c+=b.length),0<=c&&c<
b.length?e.addXStr(JU.Escape.escapeFloatA(b[c],!1)):e.addXStr("")):e.addXStr(JU.Escape.escapeFloatAA(b,!1));if(0==b.indexOf("property_"))return b=this.vwr.getDataObj(b,null,1),null==b?e.addXStr(""):e.addXStr(JU.Escape.escapeFloatA(b,!1));b=this.vwr.getDataObj(b,null,-1);return e.addXStr(null==b?"":""+b[1])},"JS.ScriptMathProcessor,~A");m(c$,"evaluateDotDist",function(e,a,b,c){var d=1275069443==b,g,f=null;switch(a.length){case 2:if(2147483647==c){g=a[0];a=a[1];break}f=a[1];case 1:g=e.getX();a=a[0];
break;default:return!1}if(1275069442==b){var h=JU.P3.newP(e.ptValue(g,null));h.cross(h,e.ptValue(a,null));return e.addXPt(h)}var k=7==a.tok?null:e.ptValue(a,null),j=JS.ScriptMathProcessor.planeValue(a);b=NaN;try{if(d){var l=-2147483648==c?0:c&480,m=32==l||64==l,n=480==l;switch(g.tok){case 7:case 10:var p=10==g.tok,r=10==a.tok,O=8==a.tok,h=p?g.value:null,A=r?a.value:null,v=p?null:g.getList(),w=r?null:a.getList(),C=m&&null!=f&&f.asBoolean();switch(a.tok){case 10:case 7:case 8:var F=this.vwr.ms.at;if(C){var y=
NaN,D=2147483647;if(p){for(var t=h.nextSetBit(0);0<=t;t=h.nextSetBit(t+1)){var z=O?F[t].distanceSquared(k):this.e.getBitsetProperty(A,w,c,F[t],j,g.value,null,!1,g.index,!1).floatValue();if(!(32==l?z>=y:z<=y))y=z,D=t}return e.addXBs(2147483647==D?new JU.BS:JU.BSUtil.newAndSetBit(D))}for(t=v.size();0<=--t;){var N=JS.SV.ptValue(v.get(t)),z=O?N.distanceSquared(k):this.e.getBitsetProperty(A,w,c,N,j,g.value,null,!1,2147483647,!1).floatValue();if(!(32==l?z>=y:z<=y))y=z,D=t}return e.addXInt(D)}if(n){if(null==
A){for(var B=u(h.cardinality(),0),y=0,t=h.nextSetBit(0);0<=t;t=h.nextSetBit(t+1),y++)B[y]=F[t].distance(k);return e.addXAF(B)}D=u(h.cardinality(),A.cardinality(),0);y=0;for(t=h.nextSetBit(0);0<=t;t=h.nextSetBit(t+1),y++){c=0;for(var s=A.nextSetBit(0);0<=s;s=A.nextSetBit(s+1),c++)D[y][c]=F[t].distance(F[s])}return e.addXAFF(D)}if(m){B=u(p?h.cardinality():v.size(),0);if(p){t=h.nextSetBit(0);for(y=0;0<=t;t=h.nextSetBit(t+1))B[y++]=this.e.getBitsetProperty(A,w,c,F[t],j,g.value,null,!1,g.index,!1).floatValue();
return e.addXAF(B)}for(t=B.length;0<=--t;)B[t]=this.e.getBitsetProperty(A,w,c,JS.SV.ptValue(v.get(t)),j,null,null,!1,2147483647,!1).floatValue();return e.addXAF(B)}return e.addXObj(this.e.getBitsetProperty(h,v,c,k,j,g.value,null,!1,g.index,!1))}}}var q=e.ptValue(g,null),E=JS.ScriptMathProcessor.planeValue(g);d?b=null!=j&&null!=f?JU.Measure.directedDistanceToPlane(q,j,JS.SV.ptValue(f)):null==E?null==j?k.distance(q):JU.Measure.distanceToPlane(j,q):JU.Measure.distanceToPlane(E,k):null!=E&&null!=j?b=
E.x*j.x+E.y*j.y+E.z*j.z+E.w*j.w:(null!=E?q=JU.P3.new3(E.x,E.y,E.z):null!=j&&(k=JU.P3.new3(j.x,j.y,j.z)),b=q.dot(k))}catch(x){if(!L(x,Exception))throw x;}return e.addXFloat(b)},"JS.ScriptMathProcessor,~A,~N,~N");m(c$,"evaluateHelix",function(e,a){if(1>a.length||5<a.length)return!1;var b=2<a.length?3:1,c=b>=a.length?"array":JS.SV.sValue(a[b]),b=JS.T.getTokFromName(c);if(2<a.length){var d=e.ptValue(a[0],null),g=e.ptValue(a[1],null);if(0==b||9!=a[2].tok||null==d||null==g)return!1;var f=JU.Quat.newP4(a[2].value),
f=JU.Measure.computeHelicalAxis(d,g,f);return null==f?!1:e.addXObj(JU.Escape.escapeHelical(c,b,d,g,f))}c=w(a[0].value,JU.BS)?a[0].value:this.vwr.ms.getAtoms(1094715412,new Integer(a[0].asInt()));switch(b){case 134217751:case 1073741854:case 1665140738:return e.addXObj(this.getHelixData(c,b));case 134217729:return e.addXFloat(this.getHelixData(c,134217729).floatValue());case 135176:case 1745489939:return e.addXObj(this.getHelixData(c,b));case 1275068418:f=this.getHelixData(c,1073742001);if(null==f)break;
return e.addXAS(f)}return!1},"JS.ScriptMathProcessor,~A");m(c$,"getHelixData",function(e,a){var b=e.nextSetBit(0);return 0>b?"null":this.vwr.ms.at[b].group.getHelixData(a,this.vwr.getQuaternionFrame(),this.vwr.getInt(553648144))},"JU.BS,~N");m(c$,"evaluateInChI",function(e,a){var b=e.getX(),c=0<a.length?JS.SV.sValue(a[0]):"",d=JS.SV.getBitSet(b,!0),g=null;null==d&&(g=JS.SV.sValue(b));return e.addXStr(this.vwr.getInchi(d,g,c))},"JS.ScriptMathProcessor,~A");m(c$,"evaluateFind",function(e,a){var b=e.getX(),
c=7==b.tok,d=10==b.tok,g=0==a.length,f=0==a.length?0:a[0].tok,h=g||4!=f?"":JS.SV.sValue(a[0]),k=1<a.length&&1073742334==a[1].tok,j=0==f?0:a[a.length-1].tok,l=0==j?JS.SV.vF:a[a.length-1],m=!c&&1073742335==j,n=1<a.length&&1073742335!=a[1].tok&&1073742334!=a[1].tok&&10!=a[1].tok?JS.SV.sValue(a[1]):"",j=!c&&!k&&h.equalsIgnoreCase("SEQUENCE"),p=!c&&!k&&h.equalsIgnoreCase("SEQ");if(h.toUpperCase().startsWith("SMILES/")){h.endsWith("/")||(h+="/");var r=h.substring(6)+"//";JV.JC.isSmilesCanonical(r)?(n="SMILES",
h="CHEMICAL"):(h="SMILES",n=r+n)}else h.toUpperCase().startsWith("SMARTS/")&&(h.endsWith("/")||(h+="/"),n=h.substring(6)+(0==n.length?"//":n),h="SMARTS");var u=!c&&h.equalsIgnoreCase("SMILES"),r=!c&&h.equalsIgnoreCase("SMARTS"),A=!c&&h.equalsIgnoreCase("CHEMICAL"),v=!c&&h.equalsIgnoreCase("MF"),w=!c&&h.equalsIgnoreCase("CELLFORMULA"),R=d&&!c&&h.equalsIgnoreCase("INCHI"),F=d&&!c&&h.equalsIgnoreCase("INCHIKEY"),y=!u&&!r&&10==f&&0<=n.toLowerCase().indexOf("map");try{if(R||F)return F&&(n+=" key"),e.addXStr(this.vwr.getInchi(JS.SV.getBitSet(b,
!0),null,n));if(A){var D=d?b.value:null,t=null==D?JS.SV.sValue(b):this.vwr.getOpenSmiles(D),t=(0==t.length?"":this.vwr.getChemicalInfo(t,n.toLowerCase(),D)).trim();t.startsWith("InChI")&&(t=JU.PT.rep(JU.PT.rep(t,"InChI=",""),"InChIKey=",""));return e.addXStr(t)}if(u||r||d){var d=y?0:u||r?2:1,z=d<a.length&&10==a[d].tok?a[d++].value:null,T="bonds".equalsIgnoreCase(JS.SV.sValue(l)),D=T||m,d=null;switch(b.tok){case 4:var B=JS.SV.sValue(b);if(null!=z||u&&1==a.length)return!1;if(n.equalsIgnoreCase("mf"))d=
this.vwr.getSmilesMatcher().getMolecularFormula(B,r);else{var z=n,s=!0,q=!1;switch(a.length){case 4:s=JS.SV.bValue(a[3]);case 3:q=JS.SV.bValue(a[2])}var E=z.equals("chirality"),x=!q&&(!s||!r&&!E);try{d=this.e.getSmilesExt().getSmilesMatches(z,B,null,null,r?2:1,!q,!s)}catch(P){if(L(P,Exception))return Zystem.out.println(P.getMessage()),e.addXInt(-1);throw P;}var S=E?1:(JU.AU.isAI(d),d.length);0==S&&("MF_FAILED"!==this.vwr.getSmilesMatcher().getLastException()&&0>B.toLowerCase().indexOf("noaromatic")&&
0>B.toLowerCase().indexOf("strict"))&&(d=this.e.getSmilesExt().getSmilesMatches(z,B,null,null,16|(r?2:1),!q,!s));if(x)return e.addXInt(!s&&0<S?1:S)}break;case 10:s=b.value;if(h.equalsIgnoreCase("crystalClass"))return x=s.nextSetBit(0),s=null,2!=a.length&&(s=new JU.BS,s.set(x)),e.addXList(this.vwr.ms.generateCrystalClass(x,null!=s?this.vwr.ms.getAtomSetCenter(s):10==l.tok?this.vwr.ms.getAtomSetCenter(l.value):JS.SV.ptValue(l)));if(v&&0!=n.length)return e.addXBs(JU.JmolMolecule.getBitSetForMF(this.vwr.ms.at,
s,n));if(v||w)return e.addXStr(JU.JmolMolecule.getMolecularFormulaAtoms(this.vwr.ms.at,s,v?null:this.vwr.ms.getCellWeights(s),m));if(j||p){var aa=l.asString().equalsIgnoreCase("H"),D=(new Boolean(D|aa)).valueOf();return e.addXStr(this.vwr.getSmilesOpt(s,-1,-1,(D?7340032|(aa?9437184:0):0)|(p?34603008:1048576),null))}if(y){var H=null,E=B=x=null,I=3==a.length?JS.SV.sValue(l):null,V=null==I||I.equals("%i")||I.equals("number")?"i":I.equals("%a")||I.equals("name")?"a":I.equals("%D")||I.equals("index")?
"D":"?";null==I&&(I="number");l=null;n=n.$replace("map","").trim();h=this.vwr.getSmilesOpt(s,0,0,0,n);if(s.cardinality()!=z.cardinality())l="atom sets are not the same size";else try{0<n.length&&(h="/"+n+"/"+h);var x=this.vwr.getSmilesMatcher().getCorrelationMaps(h,this.vwr.ms.at,this.vwr.ms.ac,s,137)[0],ba=this.vwr.getSmilesMatcher().getCorrelationMaps(h,this.vwr.ms.at,this.vwr.ms.ac,z,137);if(0<ba.length){H=N(s.length(),0);for(q=H.length;0<=--q;)H[q]=-1;B=ba[0];for(q=x.length;0<=--q;)H[x[q]]=B[q];
var E=C(x.length,2,null),W=JU.BS.copy(s);W.or(z);var K="?"==V?Array(W.length()):null;null!=K&&(K=this.e.getCmdExt().getBitsetIdentFull(W,I,null,!1,2147483647,!1,K));for(var Q=this.vwr.ms.at,S=0,q=s.nextSetBit(0);0<=q;q=s.nextSetBit(q+1)){var G=H[q];if(-1!=G){var U;switch(V){case "a":U=C(-1,[Q[q].getAtomName(),Q[G].getAtomName()]);break;case "i":U=C(-1,[Integer.$valueOf(Q[q].getAtomNumber()),Integer.$valueOf(Q[G].getAtomNumber())]);break;case "D":U=C(-1,[Integer.$valueOf(q),Integer.$valueOf(G)]);break;
default:U=C(-1,[K[q],K[G]])}E[S++]=U}}}}catch(X){if(L(X,Exception))l=X.getMessage();else throw X;}var M=new java.util.HashMap;M.put("BS1",s);M.put("BS2",z);M.put("SMILES",h);null==l?(M.put("SMILEStoBS1",x),M.put("SMILEStoBS2",B),M.put("BS1toBS2",H),M.put("MAP1to2",E),M.put("key",I)):M.put("error",l);return e.addXMap(M)}if(u||r)h=1<a.length&&10==a[1].tok?this.vwr.getSmilesOpt(a[1].value,0,0,0,n):n;n=n.toUpperCase();if(T)H=this.vwr.getSmilesMatcher().getCorrelationMaps(h,this.vwr.ms.at,this.vwr.ms.ac,
s,(u?1:2)|8),d=0<H.length?this.vwr.ms.getDihedralMap(H[0]):N(0,0);else if(n.equalsIgnoreCase("map"))d=H=this.vwr.getSmilesMatcher().getCorrelationMaps(h,this.vwr.ms.at,this.vwr.ms.ac,s,(u?1:2)|144);else{var ca=(u?0<=n.indexOf("OPEN")?5:1:2)|(m&&0==h.length?22020096:0);if(0<=n.indexOf("/MOLECULE/")){for(var Y=this.vwr.ms.getMolecules(),da=new JU.Lst,q=0;q<Y.length;q++)if(Y[q].atomList.intersects(s)){var ea=this.e.getSmilesExt().getSmilesMatches(h,null,Y[q].atomList,z,ca,!m,!1);ea.isEmpty()||da.addLast(ea)}d=
da}else d=this.e.getSmilesExt().getSmilesMatches(h,null,s,z,ca,!m,!1)}}null==d&&this.e.invArg();return e.addXObj(d)}}catch(Z){if(L(Z,Exception))this.e.evalError(Z.getMessage(),null);else throw Z;}s=new JU.BS;H=c?b.getList():null;if(c&&4!=f&&0!=f){b=a[0];q=0;for(x=H.size();q<x;q++)JS.SV.areEqual(H.get(q),b)&&s.set(q);d=N(s.cardinality(),0);S=0;for(q=s.nextSetBit(0);0<=q;q=s.nextSetBit(q+1))d[S++]=q+1;return e.addXAI(d)}f=0<=n.indexOf("v");q=0<=n.indexOf("i")||k;k=0<=n.indexOf("m");n=0==h.length;I=
!n&&2==a.length;if(c||I){j=I?this.getPatternMatcher():null;z=null;if(I)try{z=j.compile(h,q)}catch($){if(L($,Exception))this.e.evalError($.toString(),null);else throw $;}j=n?null:JS.SV.strListValue(b);V=n?H.size():j.length;JU.Logger.debugging&&JU.Logger.debug("finding "+h);x=0;K=null;b=k?new JU.Lst:null;Q="";for(q=0;q<V;q++){if(n)switch(G=H.get(q),G.tok){case 6:G=G.getMap().isEmpty()!=g;break;case 7:G=0==G.getList().size()!=g;break;case 4:G=0==G.asString().length!=g;break;default:G=!0}else I?(Q=j[q],
K=z.matcher(Q),G=K.find()):G=0<=JS.SV.sValue(H.get(q)).indexOf(h);if(k&&G||!k&&G==!f)x++,s.set(q),k&&b.addLast(f?Q.substring(0,K.start())+Q.substring(K.end()):K.group())}if(!c)return k?e.addXStr(1==b.size()?b.get(0):""):f?e.addXBool(1==x):k?e.addXStr(0==x?"":K.group()):e.addXInt(0==x?0:K.start()+1);if(k){c=Array(x);if(0<x)for(q=j.length;0<=--q;)s.get(q)&&(--x,c[x]=k?b.get(x):j[q]);return e.addXAS(c)}c=new JU.Lst;for(q=s.nextSetBit(0);0<=q;q=s.nextSetBit(q+1))c.addLast(H.get(q));return e.addXList(c)}return j?
e.addXStr(this.vwr.getJBR().toStdAmino3(JS.SV.sValue(b))):e.addXInt(JS.SV.sValue(b).indexOf(h)+1)},"JS.ScriptMathProcessor,~A");m(c$,"evaluateGetProperty",function(e,a,b,c){var d=a.length,g=c&&1275082245==b,f=c&&1275068437==b&&0<d,h=1275068449==b;b=0;var k=0==d?0:a[0].tok;if(2==d&&(7==k||6==k||14==k))return e.addXObj(this.vwr.extractProperty(a[0].value,a[1].value.toString(),-1));var j=c&&1==d&&10==a[0].tok?a[0].value:null,l=null==j&&0<d?JS.SV.sValue(a[b++]):"",k=l,m=k.toLowerCase();!g&&0>m.indexOf("[select ")&&
(k=m);var n=!1;k.equals("json")&&d>b&&(n=!0,k=JS.SV.sValue(a[b++]));var p=null;if(c){p=e.getX();switch(p.tok){case 10:break;case 4:return b=p.value,d=Array(3),b.startsWith("$")?(b=b.substring(1),a=this.vwr.shm.getShapeIdFromObjectName(b),0<=a&&(d[0]=b,this.vwr.shm.getShapePropertyData(a,"index",d),null!=d[1]&&!l.equals("index")&&(b=d[1].intValue(),d[1]=this.vwr.shm.getShapePropertyIndex(a,l.intern(),b)))):(a=JV.JC.shapeTokenIndex(JS.T.getTokFromName(b)),0<=a&&(d[0]=l,d[1]=Integer.$valueOf(-1),this.vwr.shm.getShapePropertyData(a,
l.intern(),d))),null==d[1]?e.addXStr(""):e.addXObj(d[1]);case 7:if(f){c=p.getList();h=new java.util.Hashtable;k=1<d?JS.SV.sValue(a[d-1]):null;null!=k&&d--;n=Array(d);for(b=0;b<d;b++)n[b]=JS.SV.sValue(a[b]);b=0;for(a=c.size();b<a;b++)if(l=c.get(b),6==l.tok){p=l.getMap();j="";for(g=0;g<d;g++)f=p.get(n[g]),j+=(0==g?"":k)+JS.SV.sValue(f);p=h.get(j);null==p&&h.put(j,p=JS.SV.newV(7,new JU.Lst));p.getList().addLast(l)}return e.addXMap(h)}if(null!=j){d=p.getList();a=new JU.Lst;for(b=j.nextSetBit(0);0<=b;b=
j.nextSetBit(b+1))a.addLast(d.get(b));return e.addXList(a)}default:return g&&(k="[SELECT "+k+"]"),e.addXObj(this.vwr.extractProperty(p,k,-1))}!m.startsWith("bondinfo")&&(!m.startsWith("atominfo")&&!m.startsWith("modelkitinfo"))&&(k="atomInfo."+k)}l="";if(k.equalsIgnoreCase("fileContents")&&2<=d){l=JS.SV.sValue(a[1]);for(b=2;b<d;b++)l+="|"+JS.SV.sValue(a[b]);b=d}else if(d>b)switch(a[b].tok){case 10:l=a[b++].value;k.equalsIgnoreCase("bondInfo")&&(d>b&&10==a[b].tok)&&(l=C(-1,[l,a[b].value]));break;case 6:case 4:this.vwr.checkPropertyParameter(k)&&
(l=a[b++].value)}if(c&&(l=p.value,0>l.nextSetBit(0)))return e.addXStr("");h&&!c&&(k="auxiliaryInfo.models."+k);k=JU.PT.rep(k,".[","[");c=this.vwr.getProperty(null,k,l);b<d&&(c=this.vwr.extractProperty(c,a,b));return e.addXObj(n?JS.SV.safeJSON("value",c):JS.SV.isVariableType(c)?c:JU.Escape.toReadable(k,c))},"JS.ScriptMathProcessor,~A,~N,~B");m(c$,"evaluateFormat",function(e,a,b,c){var d=2>b.length||1287653388==a?e.getX():null,g=0==b.length?"%U":7==b[0].tok?null:JS.SV.sValue(b[0]);if(!c&&0<b.length&&
null!=d&&10!=d.tok&&null!=g){if(2==b.length){var d=d.getList(),f=b[1].getList();if(null==d||null==f)return!1;d=JS.SV.getVariableList(this.getSublist(d,f))}b=C(-1,[b[0],d]);d=null}if(null==d){a=c?-1:JS.SV.getFormatType(g);if(0<=a&&2!=b.length)return!1;if(0<=a||2>b.length||7!=b[1].tok)return b=JS.SV.format(b,a),g.equalsIgnoreCase("json")?e.addXStr(b):e.addXObj(b);g=b[1].getList();b=C(-1,[b[0],null]);c=Array(g.size());for(d=c.length;0<=--d;)b[1]=g.get(d),c[d]=JS.SV.format(b,a).toString();return e.addXAS(c)}if(7==
d.tok&&null==g)return d=d.getList(),f=b[0].getList(),g=this.getSublist(d,f),e.addXList(g);b=10==d.tok?d.value:null;a=JS.T.tokAttr(a,480);return e.addXObj(null==g?"":null==b?JS.SV.sprintf(JU.PT.formatCheck(g),d):this.e.getCmdExt().getBitsetIdent(b,g,d.value,!0,d.index,a))},"JS.ScriptMathProcessor,~N,~A,~B");m(c$,"getSublist",function(e,a){for(var b=new JU.Lst,c,d,g,f=0,h=e.size();f<h;f++)switch(d=e.get(f),d.tok){case 6:c=d.getMap();g=new JU.Lst;for(var k=0,j=a.size();k<j;k++)d=c.get(JS.SV.sValue(a.get(k))),
g.addLast(null==d?JS.SV.newS(""):d);b.addLast(JS.SV.getVariableList(g));break;case 7:c=new java.util.Hashtable;g=d.getList();k=0;for(j=Math.min(g.size(),a.size());k<j;k++)c.put(JS.SV.sValue(a.get(k)),g.get(k));b.addLast(JS.SV.getVariable(c))}return b},"JU.Lst,JU.Lst");m(c$,"evaluateList",function(e,a,b){var c=b.length,d=e.getX(),g=7==d.tok,f;switch(a){case 1275335685:return 2==c&&e.addX(d.pushPop(b[0],b[1]))||1==c&&e.addX(d.pushPop(null,b[0]));case 1275334681:return 1==c&&e.addX(d.pushPop(b[0],null))||
0==c&&e.addX(d.pushPop(null,null));case 1275069441:if(1!=c&&2!=c)return!1;break;case 1275069447:case 1275069446:break;default:if(1!=c)return!1}var h=null,k=null,j=null;if(2==c){var l=JS.SV.sValue(b[0]);f=b[1];if(1275069441==a){h=g?JS.SV.strListValue(d):JU.PT.split(JS.SV.sValue(d),"\n");k=7==f.tok?JS.SV.strListValue(f):JU.PT.split(JS.SV.sValue(f),"\n");j=Array(c=Math.max(h.length,k.length));for(d=0;d<c;d++)j[d]=(d>=h.length?"":h[d])+l+(d>=k.length?"":k[d]);return e.addXAS(j)}if(1073742335!=f.tok)return!1;
j=d.getList();(c=0==l.length)&&(l=",");if(1275069446==a){k=Array(j.size());for(d=j.size();0<=--d;)if(b=j.get(d).getList(),null==b)k[d]=j.get(d);else{a=new JU.SB;g=0;for(h=b.size();g<h;g++)0<g&&a.append(l),f=b.get(g),a.append(c&&4==f.tok?'"'+JU.PT.rep(f.value,'"','""')+'"':""+f.asString());k[d]=JS.SV.newS(a.toString())}return e.addXAV(k)}a=new JU.Lst;c&&(l="\x00");k=N(2,0);d=0;for(f=j.size();d<f;d++){g=j.get(d).asString();if(c){k[1]=0;for(h=k[0]=0;;){b=JU.PT.getCSVString(g,k);if(null==b){if(-1==k[1]){g+=
++d<f?"\n"+j.get(d).asString():'"';k[1]=h;continue}g=g.substring(0,h)+g.substring(h).$replace(",","\x00");break}g=g.substring(0,h)+g.substring(h,k[0]).$replace(",","\x00")+b+g.substring(k[1]);k[1]=h=k[0]+b.length}}for(var m=g.$plit(l),n=new JU.Lst,g=0,h=m.length;g<h;g++){b=m[g];if(0>b.indexOf("."))try{n.addLast(JS.SV.newI(Integer.parseInt(b)));continue}catch(p){if(!L(p,Exception))throw p;}else try{n.addLast(JS.SV.getVariable(Float.$valueOf(Float.parseFloat(b))));continue}catch(r){if(!L(r,Exception))throw r;
}n.addLast(JS.SV.newS(b))}a.addLast(JS.SV.getVariableList(n))}return e.addXObj(JS.SV.getVariableList(a))}f=0==c?JS.SV.newV(1073742327,"all"):b[0];j=1073742327==f.tok;if(!g&&4!=d.tok)return e.binaryOp(this.opTokenFor(a),d,f);var m=JS.SV.isScalar(d),w=JS.SV.isScalar(f),A=n=null,l=d.getList(),v=f.getList();g?c=l.size():m?c=2147483647:(h=JU.PT.split(JS.SV.sValue(d),"\n"),n=u(c=h.length,0),JU.PT.parseFloatArrayData(h,n));if(j&&1275069446!=a){j=0;if(g)for(d=c;0<=--d;)j+=JS.SV.fValue(l.get(d));else if(!m)for(d=
c;0<=--d;)j+=n[d];return e.addXFloat(j)}if(1275069446==a&&4==f.tok){a=new JU.SB;if(m)a.append(JS.SV.sValue(d));else{b=j?"":f.value.toString();for(d=0;d<c;d++)a.append(0<d?b:"").append(JS.SV.sValue(l.get(d)))}return e.addXStr(a.toString())}var C=null;w?C=f:7==f.tok?c=Math.min(c,v.size()):(k=JU.PT.split(JS.SV.sValue(f),"\n"),A=u(k.length,0),JU.PT.parseFloatArrayData(k,A),c=Math.min(c,A.length));var R=this.opTokenFor(a),F=Array(c);if(g&&j)return j=new JU.Lst,e.addXList(this.addAllLists(d.getList(),j));
b=m?d:null;for(var y,d=0;d<c;d++){y=w?C:7==f.tok?v.get(d):Float.isNaN(A[d])?JS.SV.getVariable(JS.SV.unescapePointOrBitsetAsVariable(k[d])):JS.SV.newF(A[d]);m||(b=g?l.get(d):Float.isNaN(n[d])?JS.SV.getVariable(JS.SV.unescapePointOrBitsetAsVariable(h[d])):JS.SV.newF(n[d]));1275069446==a&&7!=b.tok&&(j=new JU.Lst,j.addLast(b),b=JS.SV.getVariableList(j));if(!e.binaryOp(R,b,y))return!1;F[d]=e.getX()}return e.addXAV(F)},"JS.ScriptMathProcessor,~N,~A");m(c$,"addAllLists",function(e,a){for(var b=e.size(),
c=0;c<b;c++){var d=e.get(c);7==d.tok?this.addAllLists(d.getList(),a):a.addLast(d)}return a},"JU.Lst,JU.Lst");m(c$,"evaluateLoad",function(e,a,b){if(1>a.length||3<a.length)return!1;var c=JV.FileManager.fixDOSName(JS.SV.sValue(a[0])),d=1<a.length&&1073742335==a[1].tok,g=this.vwr.async||2<a.length&&1073742335==a[a.length-1].tok,f=1<a.length&&2==a[1].tok?a[1].asInt():-1;a=1<a.length&&a[1].asString().equalsIgnoreCase("JSON");if(d)return e.addXMap(this.vwr.fm.getFileAsMap(c,null));d=c.startsWith("?");if(JV.Viewer.isJS&&
(d||g)){if(b&&d)return e.addXStr("");c=this.e.loadFileAsync("load()_",c,e.oPt,!0)}b=b?this.vwr.fm.getFilePath(c,!1,!1):this.vwr.getFileAsString4(c,f,!1,!1,!0,"script");try{return a?e.addXObj(this.vwr.parseJSON(b)):e.addXStr(b)}catch(h){if(L(h,Exception))return!1;throw h;}},"JS.ScriptMathProcessor,~A,~B");m(c$,"evaluateMath",function(e,a,b){a=JS.SV.fValue(a[0]);switch(b){case 134218246:a=Math.sqrt(a);break;case 134218244:a=Math.sin(3.141592653589793*a/180);break;case 134218245:a=Math.cos(3.141592653589793*
a/180);break;case 134218242:a=180*Math.acos(a)/3.141592653589793}return e.addXFloat(a)},"JS.ScriptMathProcessor,~A,~N");m(c$,"evaluateMeasure",function(e,a,b){var c=0;switch(b){case 1745489939:b=null;for(var d=new JU.Lst,g=u(-1,[3.4028235E38,3.4028235E38]),f=null,h=null,k=!1,j=!1,l=0,m=!1,n=null,p=0,r=3.4028235E38,w=!1,A=!1,n=0;n<a.length;n++)switch(a[n].tok){case 10:var v=a[n].value;0==v.length()&&(m=!0);d.addLast(v);c++;p++;break;case 8:v=new JU.Point3fi;v.setT(a[n].value);d.addLast(v);c++;break;
case 2:case 3:g[l++%2]=JS.SV.fValue(a[n]);break;case 4:v=JS.SV.sValue(a[n]);if(v.startsWith("property_")){b=v;break}v.equalsIgnoreCase("vdw")||v.equalsIgnoreCase("vanderwaals")?r=(n+1<a.length&&2==a[n+1].tok?a[++n].asInt():100)/100:v.equalsIgnoreCase("notConnected")?j=!0:v.equalsIgnoreCase("connected")?k=!0:v.equalsIgnoreCase("minArray")?w=1<=p:v.equalsIgnoreCase("asArray")||0==v.length?A=1<=p:JM.Measurement.isUnits(v)?h=v.toLowerCase():f=c+":"+v;break;default:return!1}if(2>c||4<c||2<l||j&&k)return!1;
if(m||3.4028235E38!=r&&(2!=p||2!=c))return e.addXStr("");n=3.4028235E38==r?new J.atomdata.RadiusData(g,0,null,null):new J.atomdata.RadiusData(null,r,J.atomdata.RadiusData.EnumType.FACTOR,J.c.VDW.AUTO);a=this.vwr.newMeasurementData(null,d).set(0,null,n,b,f,h,null,k,j,null,!0,0,0,null,NaN).getMeasurements(A,w);return e.addXObj(a);case 134217729:if(3!=(c=a.length)&&4!=c)return!1;break;default:if(2!=(c=a.length))return!1}b=Array(c);for(n=0;n<c;n++)if(null==(b[n]=e.ptValue(a[n],null)))return!1;switch(c){case 2:return e.addXFloat(b[0].distance(b[1]));
case 3:return e.addXFloat(JU.Measure.computeAngleABC(b[0],b[1],b[2],!0));case 4:return e.addXFloat(JU.Measure.computeTorsion(b[0],b[1],b[2],b[3],!0))}return!1},"JS.ScriptMathProcessor,~A,~N");m(c$,"evaluateModulation",function(e,a){var b="",c=NaN,d=null;switch(a.length){case 0:break;case 1:switch(a[0].tok){case 8:d=a[0].value;break;case 4:b=a[0].asString();break;default:c=JS.SV.fValue(a[0])}break;case 2:b=JS.SV.sValue(a[0]);c=JS.SV.fValue(a[1]);break;default:return!1}null==d&&1E6>c&&(d=JU.P3.new3(c,
c,c));c=e.getX();c=10==c.tok?c.value:new JU.BS;return e.addXList(this.vwr.ms.getModulationList(c,(b+"D").toUpperCase().charAt(0),d))},"JS.ScriptMathProcessor,~A");m(c$,"evaluatePlane",function(e,a,b){if(134219265==b&&3!=a.length||134217763==b&&2!=a.length&&3!=a.length&&4!=a.length||0==a.length||4<a.length)return!1;var c,d,g=JS.ScriptMathProcessor.planeValue(a[0]),f,h;switch(a.length){case 1:return 10==a[0].tok&&(a=a[0].value,3==a.cardinality())?(a=this.vwr.ms.getAtomPointVector(a),e.addXPt4(JU.Measure.getPlaneThroughPoints(a.get(0),
a.get(1),a.get(2),new JU.V3,new JU.V3,new JU.P4))):null!=g&&e.addXPt4(g);case 2:if(134217763==b){c=JS.ScriptMathProcessor.planeValue(a[1]);if(null==c)return!1;b=new JU.P3;f=new JU.V3;h=new JU.V3;if(null!=g)return a=JU.Measure.getIntersectionPP(g,c),null==a?e.addXStr(""):e.addXList(a);d=e.ptValue(a[0],null);return null==d?e.addXStr(""):e.addXPt(JU.Measure.getIntersection(d,null,c,b,f,h))}case 3:case 4:switch(b){case 134219265:return e.addXPt4(this.e.getHklPlane(JU.P3.new3(JS.SV.fValue(a[0]),JS.SV.fValue(a[1]),
JS.SV.fValue(a[2]))));case 134217763:c=e.ptValue(a[0],null);d=e.ptValue(a[1],null);if(null==c||null==d)return e.addXStr("");d=JU.V3.newV(d);d.normalize();g=JS.ScriptMathProcessor.planeValue(a[2]);if(null!=g)return b=new JU.P3,f=new JU.V3,h=new JU.V3,c=JU.Measure.getIntersection(c,d,g,b,f,h),null==c?e.addXStr(""):e.addXPt(c);b=e.ptValue(a[2],null);if(null==b)return e.addXStr("");f=new JU.V3;b=JU.P3.newP(b);if(3==a.length)return JU.Measure.projectOntoAxis(b,c,d,f),e.addXPt(b);g=JS.SV.fValue(a[3]);a=
JU.P3.newP(b);JU.Measure.projectOntoAxis(b,c,d,f);a=a.distance(b);c=new JU.Lst;a==g?c.addLast(b):a<g&&(a=Math.sqrt(g*g-a*a),f.scaleAdd2(a,d,b),c.addLast(JU.P3.newP(f)),f.scaleAdd2(-a,d,b),c.addLast(JU.P3.newP(f)));return e.addXList(c)}switch(a[0].tok){case 2:case 3:if(3==a.length)return g=JS.SV.fValue(a[0]),b=JS.SV.fValue(a[1]),a=JS.SV.fValue(a[2]),f=JU.V3.new3(0,0,1),d=JU.P3.new3(0,1,0),a=JU.Quat.newVA(d,a),a.getMatrix().rotate(f),d.set(0,0,1),a=JU.Quat.newVA(d,b),a.getMatrix().rotate(f),d.setT(f),
d.scale(g),g=new JU.P4,JU.Measure.getPlaneThroughPoint(d,f,g),e.addXPt4(g);break;case 10:case 8:c=e.ptValue(a[0],null);d=e.ptValue(a[1],null);if(null==d)return!1;b=2<a.length&&(10==a[2].tok||8==a[2].tok)?e.ptValue(a[2],null):null;f=JU.V3.newV(d);if(null==b)return g=new JU.P4,2==a.length||2!=a[2].tok&&3!=a[2].tok&&!a[2].asBoolean()?(b=JU.P3.newP(c),b.add(d),b.scale(0.5),f.sub(c),f.normalize()):1073742335==a[2].tok?b=c:(f.sub(c),b=new JU.P3,b.scaleAdd2(a[2].asFloat(),f,c)),JU.Measure.getPlaneThroughPoint(b,
f,g),e.addXPt4(g);g=new JU.V3;a=4==a.length?e.ptValue(a[3],null):null;a=JU.Measure.getDirectedNormalThroughPoints(c,d,b,a,f,g);return e.addXPt4(JU.P4.new4(f.x,f.y,f.z,a))}}if(4!=a.length)return!1;b=JS.SV.fValue(a[0]);f=JS.SV.fValue(a[1]);c=JS.SV.fValue(a[2]);a=JS.SV.fValue(a[3]);return e.addXPt4(JU.P4.new4(b,f,c,a))},"JS.ScriptMathProcessor,~A,~N");m(c$,"evaluatePoint",function(e,a){switch(a.length){default:return!1;case 1:if(3==a[0].tok||2==a[0].tok)return e.addXInt(a[0].asInt());var b=null;if(7==
a[0].tok){var c=a[0].getList(),d=c.size();if(0==d)return!1;switch(c.get(0).tok){case 4:b=c.get(0).value;if(!b.startsWith("{")||w(JU.Escape.uP(b),String))break;for(var b=new JU.Lst,g=0;g<d;g++)b.addLast(JS.SV.getVariable(JU.Escape.uP(JS.SV.sValue(c.get(g)))));return e.addXList(b)}b="{"+JS.SV.sValue(a[0])+"}"}null==b&&(b=JS.SV.sValue(a[0]));c=JU.Escape.uP(b);return w(c,JU.P3)?e.addXPt(c):e.addXStr(""+c);case 2:switch(a[1].tok){case 1073742334:case 1073742335:switch(a[0].tok){case 8:c=JU.P3.newP(a[0].value);
break;case 10:c=this.vwr.ms.getAtomSetCenter(a[0].value);break;default:return!1}1073742335==a[1].tok?(this.vwr.tm.transformPt3f(c,c),c.y=this.vwr.tm.height-c.y,this.vwr.antialiased&&c.scale(0.5)):(this.vwr.antialiased&&c.scale(2),c.y=this.vwr.tm.height-c.y,this.vwr.tm.unTransformPoint(c,c));break;case 8:d=a[0].getList();if(null==d||4!=d.size())return!1;b=JS.SV.ptValue(a[1]);c=JU.P3.newP(JS.SV.ptValue(d.get(0)));c.scaleAdd2(b.x,JS.SV.ptValue(d.get(1)),c);c.scaleAdd2(b.y,JS.SV.ptValue(d.get(2)),c);
c.scaleAdd2(b.z,JS.SV.ptValue(d.get(3)),c);break;default:return!1}return e.addXPt(c);case 3:return e.addXPt(JU.P3.new3(a[0].asFloat(),a[1].asFloat(),a[2].asFloat()));case 4:return e.addXPt4(JU.P4.new4(a[0].asFloat(),a[1].asFloat(),a[2].asFloat(),a[3].asFloat()))}},"JS.ScriptMathProcessor,~A");m(c$,"evaluatePrompt",function(e,a){if(1!=a.length&&2!=a.length&&3!=a.length)return!1;var b=JS.SV.sValue(a[0]),c=1<a.length&&7==a[1].tok?JS.SV.strListValue(a[1]):null,d=null!=c||1==a.length||3==a.length&&a[2].asBoolean(),
g=null!=c?null:2<=a.length?JS.SV.sValue(a[1]):"OK",b=""+this.vwr.prompt(b,g,c,d);return d&&null!=c?e.addXInt(Integer.parseInt(b)+1):e.addXStr(b)},"JS.ScriptMathProcessor,~A");m(c$,"evaluateQuaternion",function(e,a,b){var c=null,d=a.length,g=2147483647,f=!1;134221850==b&&(1<d&&(4==a[d-1].tok&&a[d-1].value.equalsIgnoreCase("relative"))&&(d--,f=!0),1<d&&(2==a[d-1].tok&&10==a[0].tok)&&(g=a[d-1].asInt(),0>=g&&(g=2147483646),d--));switch(d){case 0:case 1:case 4:break;case 2:if(134221850==b){if(7==a[0].tok&&
(7==a[1].tok||1073742335==a[1].tok))break;if(10==a[0].tok&&(2==a[1].tok||10==a[1].tok))break}if(null==(c=e.ptValue(a[0],null))||134221850!=b&&8==a[1].tok)return!1;break;case 3:if(134221850!=b)return!1;if(9==a[0].tok){if(8!=a[2].tok&&10!=a[2].tok)return!1;break}for(var h=0;3>h;h++)if(8!=a[h].tok&&10!=a[h].tok)return!1;break;default:return!1}var k=h=null,j=null;switch(d){case 0:return e.addXPt4(this.vwr.tm.getRotationQ().toPoint4f());default:if(134221850==b&&7==a[0].tok){b=this.e.getQuaternionArray(a[0].getList(),
1073742001);a=JU.Quat.sphereMean(b,null,1E-4);h=w(a,JU.Quat)?a:null;break}else if(134221850==b&&10==a[0].tok)k=this.vwr.getAtomGroupQuaternions(a[0].value,g);else if(11==a[0].tok)h=JU.Quat.newM(a[0].value);else if(9==a[0].tok)j=a[0].value;else if(j=JS.SV.sValue(a[0]),j=JU.Escape.uP(j.equalsIgnoreCase("best")?this.vwr.getOrientationText(1073741864,"best",null).toString():j),!w(j,JU.P4))return!1;134217731==b&&(h=JU.Quat.newVA(JU.P3.new3(j.x,j.y,j.z),j.w));break;case 2:if(134221850==b){if(7==a[0].tok&&
7==a[1].tok){b=this.e.getQuaternionArray(a[0].getList(),1073742001);k=this.e.getQuaternionArray(a[1].getList(),1073742001);k=JU.Quat.div(k,b,g,f);break}if(7==a[0].tok&&1073742335==a[1].tok)return b=this.e.getQuaternionArray(a[0].getList(),1073742001),g=u(1,0),JU.Quat.sphereMean(b,g,1E-4),e.addXFloat(g[0]);if(10==a[0].tok&&10==a[1].tok){b=this.vwr.getAtomGroupQuaternions(a[0].value,2147483647);k=this.vwr.getAtomGroupQuaternions(a[1].value,2147483647);k=JU.Quat.div(k,b,g,f);break}}h=e.ptValue(a[1],
null);j=JS.ScriptMathProcessor.planeValue(a[0]);h=null!=h?JU.Quat.getQuaternionFrame(JU.P3.new3(0,0,0),c,h):JU.Quat.newVA(c,JS.SV.fValue(a[1]));break;case 3:if(9==a[0].tok)return g=8==a[2].tok?a[2].value:this.vwr.ms.getAtomSetCenter(a[2].value),e.addXStr(JU.Escape.drawQuat(JU.Quat.newP4(a[0].value),"q",JS.SV.sValue(a[1]),g,1));b=Array(3);for(h=0;3>h;h++)b[h]=8==a[h].tok?a[h].value:this.vwr.ms.getAtomSetCenter(a[h].value);h=JU.Quat.getQuaternionFrame(b[0],b[1],b[2]);break;case 4:134221850==b?j=JU.P4.new4(JS.SV.fValue(a[1]),
JS.SV.fValue(a[2]),JS.SV.fValue(a[3]),JS.SV.fValue(a[0])):h=JU.Quat.newVA(JU.P3.new3(JS.SV.fValue(a[0]),JS.SV.fValue(a[1]),JS.SV.fValue(a[2])),JS.SV.fValue(a[3]))}if(null!=k){if(2147483647!=g){g=new JU.Lst;for(h=0;h<k.length;h++)g.addLast(k[h].toPoint4f());return e.addXList(g)}h=0<k.length?k[0]:null}return e.addXPt4((null==h?JU.Quat.newP4(j):h).toPoint4f())},"JS.ScriptMathProcessor,~A,~N");m(c$,"evaluateRandom",function(e,a){if(3<a.length)return!1;null==this.rand&&(this.rand=new java.util.Random);
var b=0,c=1;switch(a.length){case 3:this.rand.setSeed(T(JS.SV.fValue(a[2])));case 2:c=JS.SV.fValue(a[1]);case 1:b=JS.SV.fValue(a[0]);case 0:break;default:return!1}return e.addXFloat(this.rand.nextFloat()*(c-b)+b)},"JS.ScriptMathProcessor,~A");m(c$,"evaluateRowCol",function(e,a,b){if(1!=a.length)return!1;a=a[0].asInt()-1;var c=e.getX();switch(c.tok){case 11:if(0>a||2<a)break;c=c.value;switch(b){case 1275068935:return b=u(3,0),c.getRow(a,b),e.addXAF(b);default:return b=u(3,0),c.getColumn(a,b),e.addXAF(b)}case 12:if(0>
a||2<a)break;c=c.value;switch(b){case 1275068935:return b=u(4,0),c.getRow(a,b),e.addXAF(b);default:return b=u(4,0),c.getColumn(a,b),e.addXAF(b)}case 7:b=c.getList();for(var c=new JU.Lst,d=0,g=b.size();d<g;d++){var f=b.get(d).getList();if(null==f)return e.addXStr("");c.addLast(a<f.size()?f.get(a):JS.SV.newS(""))}return e.addXList(c)}return!1},"JS.ScriptMathProcessor,~A,~N");m(c$,"evaluateIn",function(e,a){var b=e.getX();switch(a.length){case 1:var c=a[0].getList();if(null!=c)for(var d=0,g=c.size();d<
g;d++)if(JS.SV.areEqual(b,c.get(d)))return e.addXInt(d+1);break;default:for(d=0;d<a.length;d++)if(JS.SV.areEqual(b,a[d]))return e.addXInt(d+1)}return e.addXInt(0)},"JS.ScriptMathProcessor,~A");m(c$,"evaluateReplace",function(e,a){var b=!1,c,d;switch(a.length){case 0:b=!0;c=d=null;break;case 3:b=JS.SV.bValue(a[2]);case 2:c=JS.SV.sValue(a[0]);d=JS.SV.sValue(a[1]);break;default:return!1}var g=e.getX();if(7==g.tok){for(var g=JS.SV.strListValue(g),f=Array(g.length),h=g.length;0<=--h;)f[h]=null==c?JU.PT.clean(g[h]):
b?JU.PT.replaceAllCharacters(g[h],c,d):JU.PT.rep(g[h],c,d);return e.addXAS(f)}g=JS.SV.sValue(g);return e.addXStr(null==c?JU.PT.clean(g):b?JU.PT.replaceAllCharacters(g,c,d):JU.PT.rep(g,c,d))},"JS.ScriptMathProcessor,~A");m(c$,"evaluateScript",function(e,a,b){if((134222350==b||134238732==b)&&1!=a.length||0==a.length)return!1;var c=JS.SV.sValue(a[0]),d=new JU.SB;switch(b){case 134218759:return 2==a.length?c.equalsIgnoreCase("JSON")&&e.addXObj(this.vwr.parseJSON(JS.SV.sValue(a[1]))):e.addXObj(this.vwr.evaluateExpressionAsVariable(c));
case 134222850:a=2==a.length?JS.SV.sValue(a[1]):".";a.equals(".")||d.append(this.vwr.jsEval(a+"\u0001"+c));(a.equals(".")||a.equals("*"))&&this.e.runScriptBuffer(c,d,!0);break;case 134222350:this.e.runScriptBuffer("show "+c,d,!0);break;case 134238732:return e.addX(this.vwr.jsEvalSV(c))}var c=d.toString(),g;return Float.isNaN(g=JU.PT.parseFloatStrict(c))?e.addXStr(c):0<=c.indexOf(".")?e.addXFloat(g):e.addXInt(JU.PT.parseInt(c))},"JS.ScriptMathProcessor,~A,~N");m(c$,"evaluateSort",function(e,a,b){if(1<
a.length)return!1;if(1275068444==b){if(1==a.length&&4==a[0].tok)return e.addX(e.getX().sortMapArray(a[0].asString()));var c=0==a.length?0:a[0].asInt();return e.addX(e.getX().sortOrReverse(c))}b=e.getX();a=0==a.length?null:a[0];if(4==b.tok){var c=0,d=JS.SV.sValue(b);if(null==a)return e.addXInt(0);a=JS.SV.sValue(a);for(b=0;b<d.length;b++){b=d.indexOf(a,b);if(0>b)break;c++}return e.addXInt(c)}var c=new JU.Lst,g=d=null,f=JS.SV.getVariable(b.value).sortOrReverse(0).getList();if(null==f)return null==a?
e.addXStr(""):e.addXInt(0);b=0;for(var h=f.size();b<=h;b++){var k=b==h?null:f.get(b);if(!(null!=a&&null!=k&&!JS.SV.areEqual(k,a)))if(JS.SV.areEqual(k,d))g.intValue++;else{if(null!=d){var j=new JU.Lst;j.addLast(d);j.addLast(g);c.addLast(JS.SV.getVariableList(j))}g=JS.SV.newI(1);d=k}}return null==a?e.addX(JS.SV.getVariableList(c)):c.isEmpty()?e.addXInt(0):e.addX(c.get(0).getList().get(1))},"JS.ScriptMathProcessor,~A,~N");m(c$,"evaluateString",function(e,a,b){var c=e.getX(),d=0<b.length?JS.SV.sValue(b[0]):
1275068932==a?"":"\n";switch(b.length){case 0:break;case 1:if(1073742335==b[0].tok)return e.addX(JS.SV.getVariable(JU.PT.getTokens(c.asString())));break;case 2:if(7==c.tok)break;if(1275069447==a){c=JS.SV.getVariable(JU.PT.split(JU.PT.rep(c.value,"\n\r","\n").$replace("\r","\n"),"\n"));break}default:return!1}if(7==c.tok&&1275068932!=a&&(1275069447!=a||2==b.length))return e.addX(c),this.evaluateList(e,a,b);b=1275069447==a&&10==c.tok||1275068932==a&&7==c.tok?null:JS.SV.sValue(c);switch(a){case 1275069447:if(10==
c.tok){d=c.value;c=this.vwr.ms.mc;b=new JU.Lst;for(a=0;a<c;a++){var g=this.vwr.getModelUndeletedAtomsBitSet(a);g.and(d);b.addLast(JS.SV.getVariable(g))}return e.addXList(b)}return e.addXAS(JU.PT.split(b,d));case 1275069446:return 0<b.length&&"\n"==b.charAt(b.length-1)&&(b=b.substring(0,b.length-1)),e.addXStr(JU.PT.rep(b,"\n",d));case 1275068932:if(null!=b)return e.addXStr(JU.PT.trim(b,d));c=JS.SV.strListValue(c);for(a=c.length;0<=--a;)c[a]=JU.PT.trim(c[a],d);return e.addXAS(c)}return e.addXStr("")},
"JS.ScriptMathProcessor,~N,~A");m(c$,"evaluateSubstructure",function(e,a,b,c){if(0==a.length||c&&1<a.length)return!1;var d=new JU.BS,g=JS.SV.sValue(a[0]);if(0<g.length)try{var f=c?e.getX().value:2==a.length&&10==a[1].tok?a[1].value:null,d=this.vwr.getSmilesMatcher().getSubstructureSet(g,this.vwr.ms.at,this.vwr.ms.ac,f,134218757==b?1:2)}catch(h){if(L(h,Exception))this.e.evalError(h.getMessage(),null);else throw h;}return e.addXBs(d)},"JS.ScriptMathProcessor,~A,~N,~B");m(c$,"evaluateSymop",function(e,
a,b){b=b?e.getX():null;if(null!=b&&10!=b.tok)return!1;b=null==b?null:b.value;null==b&&1==this.vwr.ms.mc&&(b=this.vwr.getModelUndeletedAtomsBitSet(0));var c=a.length;if(0==c){if(b.isEmpty())return!1;a=JU.PT.split(JU.PT.trim(this.vwr.getSymTemp().getSpaceGroupInfo(this.vwr.ms,null,this.vwr.ms.at[b.nextSetBit(0)].mi,!1,null).get("symmetryInfo"),"\n"),"\n");b=new JU.Lst;for(var d=0,g=a.length;d<g;d++)b.addLast(JU.PT.split(a[d],"\t"));return e.addXList(b)}var d=null,g=-2147483648,f=0;switch(a[0].tok){case 4:d=
JS.SV.sValue(a[0]);f++;break;case 12:d=a[0].escape();f++;break;case 2:g=a[0].asInt(),f++}null==b&&(f<c&&10==a[f].tok&&(b=new JU.BS).or(a[f].value),f+1<c&&10==a[f+1].tok&&(null==b?b=new JU.BS:b).or(a[f+1].value));var h=null,k=null;null!=(h=c>f?e.ptValue(a[f],b):null)&&f++;null!=(k=c>f?e.ptValue(a[f],b):null)&&f++;var j=null!=k&&a.length>f&&-2147483648==g&&2==a[f].tok?a[f].intValue:-1;0<=j&&f++;-2147483648==g&&(g=0);c=c==f?null!=k?"all":null!=h?"point":"matrix":JS.SV.sValue(a[f++]).toLowerCase();return null!=
b&&!b.isEmpty()&&f==a.length&&e.addXObj(this.vwr.getSymmetryInfo(b.nextSetBit(0),d,g,h,k,0,c,0,j,0))},"JS.ScriptMathProcessor,~A,~B");m(c$,"evaluateTensor",function(e,a){var b=2==a.length&&1275068445==a[1].tok,c=b?null:e.getX();if(2<a.length||!b&&10!=c.tok)return!1;var c=c.value,d=b||0==a.length?null:JS.SV.sValue(a[0]).toLowerCase(),g=this.vwr.getNMRCalculation();if("unique".equals(d))return e.addXBs(g.getUniqueTensorSet(c));var f=2>a.length?null:JS.SV.sValue(a[1]).toLowerCase();return b?e.addXObj(a[0].value.getInfo(f)):
e.addXList(g.getTensorInfo(d,f,c))},"JS.ScriptMathProcessor,~A");m(c$,"evaluateUserFunction",function(e,a,b,c,d){var g=null;if(d)switch(g=e.getX(),g.tok){case 10:break;case 6:if(0<b.length)return!1;g=g.getMap().get(a);return null==g?e.addXStr(""):e.addX(g);default:return!1}a=a.toLowerCase();e.wasX=!1;for(var f=new JU.Lst,h=0;h<b.length;h++)f.addLast(b[h]);if(d)return e.addXObj(this.e.getBitsetProperty(g.value,null,c,null,null,g.value,C(-1,[a,f]),!1,g.index,!1));a=this.e.getUserFunctionResult(a,f,
null);return null==a?!1:e.addX(a)},"JS.ScriptMathProcessor,~S,~A,~N,~B");m(c$,"evaluateWithin",function(e,a){if(1>a.length||5<a.length)return!1;var b=a.length;if(1==b&&10==a[0].tok)return e.addX(a[0]);var c=0,d=a[0].value,g=""+d,f=a[0].tok;4==f&&(f=JS.T.getTokFromName(g));var h=this.vwr.ms,k=!1,j=!1,l=!1,m=!1,n=null;switch(f){case 1648363544:k=!0,d=null;case 3:case 2:m=!0;if(2>b||3==b&&7==a[1].tok&&7!=a[2].tok)return!1;c=k?100:JS.SV.fValue(a[0]);switch(f=a[1].tok){case 1073742335:case 1073742334:j=
a[1].asBoolean();2<b&&JS.SV.sValue(a[2]).equalsIgnoreCase("unitcell")&&(f=1814695966);b=0;break;case 4:f=JS.SV.sValue(a[1]);if(f.startsWith("$"))return e.addXBs(this.getAtomsNearSurface(c,f.substring(1)));if(f.equalsIgnoreCase("group"))l=!0,f=1086324742;else if(f.equalsIgnoreCase("vanderwaals")||f.equalsIgnoreCase("vdw"))d=null,k=!0,f=1648363544;else if(f.equalsIgnoreCase("unitcell"))f=1814695966;else return!1}break;case 7:1==b&&(d=a[0].asString(),f=0);break;case 1073742328:return 3==b&&w(a[1].value,
JU.BS)&&w(a[2].value,JU.BS)&&e.addXBs(this.vwr.getBranchBitSet(a[2].value.nextSetBit(0),a[1].value.nextSetBit(0),!0));case 134218757:case 1237320707:case 134218756:c=null;d=!0;switch(b){case 2:break;case 3:if(d=10==a[2].tok)c=a[2].value;break;default:d=!1}d||this.e.invArg();return e.addXObj(this.e.getSmilesExt().getSmilesMatches(JS.SV.sValue(a[1]),null,c,null,134218756==f?2:1,e.asBitSet,!1))}if(w(d,String)){if(0==f){f=1073742362;if(2<b)return!1;b=2}}else if(!m)return!1;switch(b){case 1:switch(f){case 136314895:case 2097184:case 1678381065:return e.addXBs(h.getAtoms(f,
null));case 1073741863:return e.addXBs(h.getAtoms(f,""));case 1073742362:return e.addXBs(h.getAtoms(1086324744,g))}return!1;case 2:switch(f){case 1073742362:f=1086324744;break;case 1073741824:case 1086326786:case 1086326785:case 1073741863:case 1086324744:case 1111490587:case 1073742128:case 1073741925:case 1073742189:return e.addXBs(this.vwr.ms.getAtoms(f,JS.SV.sValue(a[a.length-1])))}break;case 3:switch(f){case 1073742335:case 1073742334:case 1086324742:case 1648363544:case 1814695966:case 134217750:case 134219265:case 1073742329:case 8:case 7:break;
case 1086324744:g=JS.SV.sValue(a[2]);break;default:return!1}}var p=null,d=b=null,r=a.length-1;switch(a[r].tok){case 9:p=a[r].value;break;case 8:b=a[r].value;JS.SV.sValue(a[1]).equalsIgnoreCase("hkl")&&(p=this.e.getHklPlane(b));break;case 7:d=2==r&&7==a[1].tok?a[1].getList():null,b=2==r?JS.SV.ptValue(a[1]):1==r?JU.P3.new3(NaN,0,0):null}if(null!=p)return e.addXBs(h.getAtomsNearPlane(c,p));h=10==a[r].tok?a[r].value:null;if(0<r&&null==b&&null==d&&null==h)return!1;if(1814695966==f)return(null!=h||null!=
b)&&e.addXObj(this.vwr.ms.getUnitCellPointsWithin(c,h,b,j));if(null!=b||null!=d){if(7==a[r].tok){k=a[r].getList();f=Array(k.size());for(g=f.length;0<=--g;)f[g]=JS.SV.ptValue(k.get(g));k=null;if(null!=d){k=Array(d.size());for(g=k.length;0<=--g;)k[g]=JS.SV.ptValue(d.get(g))}d=Array(1);switch(J.bspt.PointIterator.withinDistPoints(c,b,f,k,d)){case 134217751:return e.addXPt(d[0]);case 1073742001:return e.addXList(d[0]);case 1275068418:return e.addXAI(d[0]);case 4:return e.addXStr(d[0]);default:return!1}}return e.addXBs(this.vwr.getAtomsNearPt(c,
b))}if(1086324744==f)return e.addXBs(this.vwr.ms.getSequenceBits(g,h,new JU.BS));null==h&&(h=new JU.BS);if(!m)return e.addXBs(this.vwr.ms.getAtoms(f,h));if(l)return e.addXBs(this.vwr.getGroupsWithin(T(c),h));k&&(n=new J.atomdata.RadiusData(null,10<c?c/100:c,10<c?J.atomdata.RadiusData.EnumType.FACTOR:J.atomdata.RadiusData.EnumType.OFFSET,J.c.VDW.AUTO),0>c&&(c=0));return e.addXBs(this.vwr.ms.getAtomsWithinRadius(c,h,j,n))},"JS.ScriptMathProcessor,~A");m(c$,"evaluateWrite",function(e,a){switch(a.length){case 0:return!1;
case 1:var b=a[0].asString().toUpperCase();if(b.equals("PNGJ"))return e.addXMap(this.vwr.fm.getFileAsMap(null,"PNGJ"));if(JU.PT.isOneOf(b,";ZIP;ZIPALL;JMOL;")){var c=new java.util.Hashtable,d=new JU.OC;c.put("outputChannel",d);this.vwr.createZip(null,b,c);b=JU.Rdr.getBIS(d.toByteArray());c=new java.util.Hashtable;this.vwr.readFileAsMap(b,c,null);return e.addXMap(c)}}return e.addXStr(this.e.getCmdExt().dispatch(134221856,!0,a))},"JS.ScriptMathProcessor,~A");m(c$,"getAtomsNearSurface",function(e,a){var b=
C(-1,[a,null,null]);if(this.e.getShapePropertyData(24,"getVertices",b))return this.getAtomsNearPts(e,b[1],b[2]);b[1]=Integer.$valueOf(0);b[2]=Integer.$valueOf(-1);if(this.e.getShapePropertyData(22,"getCenter",b))return this.vwr.getAtomsNearPt(e,b[2]);b[1]=Float.$valueOf(e);return this.e.getShapePropertyData(21,"getAtomsWithin",b)?b[2]:new JU.BS},"~N,~S");m(c$,"getAtomsNearPts",function(e,a,b){var c=new JU.BS;if(0==a.length||null!=b&&b.isEmpty())return c;null==b&&(b=JU.BSUtil.setAll(a.length));for(var d=
this.vwr.ms.at,g=this.vwr.ms.ac;0<=--g;)for(var f=d[g],h=b.nextSetBit(0);0<=h;h=b.nextSetBit(h+1))if(f.distance(a[h])<e){c.set(g);break}return c},"~N,~A,JU.BS");m(c$,"getMinMax",function(e,a){for(var b=null,c=null,d=0,g=null;;){if(JU.AU.isAF(e)){if(1275068437==a)break;b=e;d=b.length;if(0==d)break}else if(w(e,JU.Lst))if(c=e,d=c.size(),0==d){if(1275068437!=a)break}else{if(1275068437!=a){var f=c.get(0);if(8==f.tok)return this.getMinMaxPoint(c,a);if(4==f.tok&&f.value.startsWith("{")){b=JS.SV.ptValue(f);
if(w(b,JU.P3))return this.getMinMaxPoint(c,a);if(w(b,JU.P4))return this.getMinMaxQuaternion(c,a);break}}}else break;var h,k=!1;switch(a){case 1275068437:g=new java.util.Hashtable;f=h=0;break;case 32:k=!0;f=3.4028235E38;h=2147483647;break;case 64:f=-3.4028235E38;h=-2147483647;break;default:f=h=0}for(var j=0,l=0,m=!0,n=1275068437==a;0<=--d;){var p=null==c?JS.SV.vF:c.get(d),r=n?1:null==b?JS.SV.fValue(p):b[d];if(!Float.isNaN(r))switch(l++,a){case 160:case 192:j+=r*r;case 128:case 96:f+=r;break;case 1275068437:m=
(new Boolean(m&2==p.tok)).valueOf();p=p.asString();r=g.get(p);g.put(p,null==r?new Integer(1):new Integer(r.intValue()+1));break;case 32:case 64:m=(new Boolean(m&2==p.tok)).valueOf(),k==r<f&&(f=r,m&&(h=p.intValue))}}if(1275068437==a)return g;if(0==l)break;switch(a){case 96:f/=l;break;case 192:if(1==l)break;f=Math.sqrt((j-f*f/l)/(l-1));break;case 32:case 64:if(m)return Integer.$valueOf(h);break;case 160:f=j}return Float.$valueOf(f)}return"NaN"},"~O,~N");m(c$,"getMinMaxPoint",function(e,a){var b=null,
c=null,d=0;w(e,Array)?(b=e,d=b.length):w(e,JU.Lst)&&(c=e,d=c.size());if(null==c&&null==b)return"NaN";for(var g=new JU.P3,f=u(d,0),h=0;3>h;h++){for(var k=0;k<d;k++){var j=null==b?JS.SV.ptValue(c.get(k)):b[k];if(null==j)return"NaN";switch(h){case 0:f[k]=j.x;break;case 1:f[k]=j.y;break;case 2:f[k]=j.z}}k=this.getMinMax(f,a);if(!w(k,Number))return"NaN";k=k.floatValue();switch(h){case 0:g.x=k;break;case 1:g.y=k;break;case 2:g.z=k}}return g},"~O,~N");m(c$,"getMinMaxQuaternion",function(e,a){var b;switch(a){case 32:case 64:case 128:case 160:return"NaN"}for(;;){b=
this.e.getQuaternionArray(e,1073742001);if(null==b)break;var c=u(1,0);b=JU.Quat.sphereMean(b,c,1E-4);switch(a){case 96:return b;case 192:return Float.$valueOf(c[0])}break}return"NaN"},"JU.Lst,~N");m(c$,"getPatternMatcher",function(){return null==this.pm?this.pm=J.api.Interface.getUtil("PatternMatcher",this.e.vwr,"script"):this.pm});m(c$,"opTokenFor",function(e){switch(e){case 1275069441:case 1275069446:return JS.T.tokenPlus;case 1275068931:return JS.T.tokenMinus;case 1275068929:return JS.T.tokenTimes;
case 1275068930:return JS.T.tokenMul3;case 1275068928:return JS.T.tokenDivide}return null},"~N");m(c$,"setContactBitSets",function(e,a,b,c,d,g){var f,h;null==a?(a=JU.BSUtil.setAll(this.vwr.ms.ac),JU.BSUtil.andNot(a,this.vwr.slm.bsDeleted),a.andNot(e),f=!1):(h=JU.BSUtil.copy(e),h.or(a),h=this.vwr.ms.getModelBS(h,!1).cardinality(),f=1<h,g&&(1<h&&!this.e.tQuiet)&&this.e.showString(J.i18n.GT.$("Note: More than one model is involved in this contact!")));if(!e.equals(a)){if(g=!b||e.cardinality()<a.cardinality())h=
this.vwr.ms.getAtomsWithinRadius(c,e,f,Float.isNaN(c)?d:null),a.and(h);b&&(h=this.vwr.ms.getAtomsWithinRadius(c,a,f,Float.isNaN(c)?d:null),e.and(h),g||(h=this.vwr.ms.getAtomsWithinRadius(c,e,f,Float.isNaN(c)?d:null),a.and(h)),h=JU.BSUtil.copy(a),h.and(e),h.equals(e)?a.andNot(e):h.equals(a)&&e.andNot(a))}return a},"JU.BS,JU.BS,~B,~N,J.atomdata.RadiusData,~B");c$.t0=c$.prototype.t0=Zystem.currentTimeMillis()})})(Clazz,Clazz.getClassName,Clazz.newLongArray,Clazz.doubleToByte,Clazz.doubleToInt,Clazz.doubleToLong,
Clazz.declarePackage,Clazz.instanceOf,Clazz.load,Clazz.instantialize,Clazz.decorateAsClass,Clazz.floatToInt,Clazz.floatToLong,Clazz.makeConstructor,Clazz.defineEnumConstant,Clazz.exceptionOf,Clazz.newIntArray,Clazz.defineStatics,Clazz.newFloatArray,Clazz.declareType,Clazz.prepareFields,Clazz.superConstructor,Clazz.newByteArray,Clazz.declareInterface,Clazz.p0p,Clazz.pu$h,Clazz.newShortArray,Clazz.innerTypeInstance,Clazz.isClassDefined,Clazz.prepareCallback,Clazz.newArray,Clazz.castNullAs,Clazz.floatToShort,
Clazz.superCall,Clazz.decorateAsType,Clazz.newBooleanArray,Clazz.newCharArray,Clazz.implementOf,Clazz.newDoubleArray,Clazz.overrideConstructor,Clazz.clone,Clazz.doubleToShort,Clazz.getInheritedLevel,Clazz.getParamsType,Clazz.isAF,Clazz.isAB,Clazz.isAI,Clazz.isAS,Clazz.isASS,Clazz.isAP,Clazz.isAFloat,Clazz.isAII,Clazz.isAFF,Clazz.isAFFF,Clazz.tryToSearchAndExecute,Clazz.getStackTrace,Clazz.inheritArgs,Clazz.alert,Clazz.defineMethod,Clazz.overrideMethod,Clazz.declareAnonymous,Clazz.cloneFinals);
