(function(sa,ta,ua,va,X,wa,V,z,W,Y,Z,$,xa,qa,ya,O,P,D,aa,za,Aa,Ba,Ca,Da,Ea,Fa,Ga,t,Ha,Ia,Ja,Ka,La,Ma,Na,Oa,Pa,Qa,Ra,Sa,Ta,Ua,Va,Wa,Xa,Ya,Za,$a,ab,bb,cb,db,eb,fb,gb,p){V("JS");W(null,"JS.MathExt","java.util.Date $.Hashtable $.Random JU.A4 $.AU $.BArray $.BS $.CU $.Lst $.M3 $.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 $.T JU.BSUtil $.BoxInfo $.Edge $.Escape $.JmolMolecule $.Logger $.Parser $.Point3fi $.SimpleUnitCell JV.FileManager $.JC $.Viewer".split(" "),
function(){var m=Z(function(){this.pm=this.rand=this.e=this.vwr=null;Y(this,arguments)},JS,"MathExt",null);p(m,"init",function(d){this.e=d;this.vwr=this.e.vwr;return this},"~O");p(m,"evaluate",function(d,a,b,c){switch(c){case 134218760:return 1<=b.length&&4==b[0].tok?d.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()):d.addXInt(System.currentTimeMillis()-JS.MathExt.t0-(0==b.length?0:b[0].asInt()));case 134218250:return 1==
b.length&&2==b[0].tok?d.addXInt(Math.abs(b[0].intValue)):d.addXFloat(Math.abs(b[0].asFloat()));case 134218241:case 134218245:case 134218244:case 134218246:case 134218255:return 1==b.length&&this.evaluateMath(d,b,c);case 1275069441:case 1275068928:case 1275068929:case 1275068930:case 1275068931:case 1275335685:case 1275334681:return this.evaluateList(d,a.intValue,b);case 268437504:0==b.length&&(d.wasX=!1);case 1275068418:return this.evaluateArray(d,b,1275068418==c&&268442113==a.tok);case 134217766:return this.evaluateMatrix(d,
b);case 134217765:return this.evaluateCallbackParam(d,b);case 134217731:case 134221850:return this.evaluateQuaternion(d,b,c);case 1275068420:return this.evaluateBin(d,b);case 134221829:return this.evaluateCache(d,b);case 1275068934:case 1275068935:return this.evaluateRowCol(d,b,c);case 1765808134:return this.evaluateColor(d,b);case 134221831:return this.evaluateCompare(d,b);case 1228931586:case 134217736:case 1275203608:return this.evaluateConnected(d,b,c,a.intValue);case 1812599299:case 1814695966:return this.evaluateUnitCell(d,
b,268442113==a.tok,268442113==a.tok?a.intValue:a.tok);case 134353926:return this.evaluateContact(d,b);case 134221834:return this.evaluateData(d,b);case 1275069444:case 1275069442:return this.evaluateDotDist(d,b,c,a.intValue);case 1275069443:if(268442113==a.tok)return this.evaluateDotDist(d,b,c,a.intValue);case 134217729:case 1745489939:return this.evaluateMeasure(d,b,a.tok);case 1228935687:case 134223363:return this.evaluateLoad(d,b,1228935687==c);case 1275068427:return this.evaluateFind(d,b);case 1275068433:return this.evaluateInChI(d,
b);case 1287653388:case 1825200146:return this.evaluateFormat(d,a.intValue,b,1825200146==c);case 134320141:return this.evaluateUserFunction(d,a.value,b,a.intValue,268442113==a.tok);case 1275068437:c=1275068725;case 1275068446:case 1275068725:case 1275082241:case 1275072526:return this.evaluateGetProperty(d,b,c,268442113==a.tok);case 136314895:return this.evaluateHelix(d,b);case 134219777:case 134217750:case 134217763:return this.evaluatePlane(d,b,c,268442113==a.tok);case 134218759:case 134238732:case 134222850:case 134222350:return this.evaluateScript(d,
b,c);case 1275069446:case 1275069447:case 1275068932:return this.evaluateString(d,a.intValue,b);case 134217751:return this.evaluatePoint(d,b);case 1275068447:return this.evaluatePointGroup(d,b,268442113==a.tok);case 134256129:return this.evaluatePrompt(d,b);case 134219266:return this.evaluateRandom(d,b);case 1275068432:return this.evaluateIn(d,b);case 1275072532:return this.evaluateModulation(d,b);case 1275068443:return this.evaluateReplace(d,b);case 134218753:case 134218756:case 134218757:case 1237320707:return this.evaluateSubstructure(d,
b,c,268442113==a.tok);case 1275068444:case 1275068425:return this.evaluateSort(d,b,c);case 134217764:return this.evaluateSpacegroup(d,b);case 1296041985:return this.evaluateSymop(d,b,268442113==a.tok);case 1275068445:return this.evaluateTensor(d,b);case 134217759:return this.evaluateWithin(d,b,268442113==a.tok);case 134221856:return this.evaluateWrite(d,b)}return!1},"JS.ScriptMathProcessor,JS.T,~A,~N");p(m,"evaluateMatrix",function(d,a){var b=a.length,c=null,e=null,f=0<b&&4==a[0].tok?a[0].value:null,
h=2>b||null==f?null:a[1].getMap(),f=2>b||null==f?null:a[1].getList(),g=1<b&&4==a[b-1].tok?a[b-1].value:null,j="uvw".equalsIgnoreCase(g),k="abc".equalsIgnoreCase(g),l=j||!k&&"xyz".equalsIgnoreCase(g),x=!j&&!k&&!l&&"rxyz".equalsIgnoreCase(g),n=null;(null!=g||null!=f||null!=h)&&b--;switch(b){case 0:c=new JU.M4;c.setIdentity();break;case 1:switch(a[0].tok){case 12:c=a[0].value;break;case 4:b=a[0].value;if(b.equals("h")||b.equals("r")||0<=b.indexOf(",")&&0>b.indexOf(":")){if(0<=b.indexOf("*")){if(c=this.vwr.getCurrentUnitCell(),
null==c)return!1}else c=this.vwr.getSymTemp();c=c.convertTransform(b,null)}if(null!=c)break;var r=null;null!=g&&(!k&&!l&&!j)&&("map".equals(g)?h=new java.util.Hashtable:("list".equals(g)||(r="[SELECT ("+g+")]"),f=new JU.Lst));var C=null==f&&null==h,q=null==h?null:new java.util.Hashtable,g=null==f?null:new JU.Lst;C&&(q=new java.util.Hashtable,q.put("ASM4",Boolean.TRUE));c=this.vwr.getSymStatic().staticGetMatrixTransform(b,null==q?g:q);if(C)break;if(null!=h){h.clear();for(var m,e=q.entrySet().iterator();e.hasNext()&&
((m=e.next())||1);)h.put(m.getKey(),JS.SV.getVariable(m.getValue()));return d.addXMap(h)}if(null!=f){if(null!=r)return d.addXObj(this.vwr.extractProperty(g,r,-1));f.clear();h=0;for(e=g.size();h<e;h++)f.addLast(JS.SV.getVariable(g.get(h)));return d.addXList(f)}break;case 7:switch(f=a[0].getList(),m=f.size(),m){case 3:case 4:n=D(m*m,0);for(b=h=0;h<m;h++)switch(r=f.get(h),r.tok){case 8:C=r.value;n[b++]=C.x;n[b++]=C.y;n[b++]=C.z;break;case 9:g=r.value;n[b++]=g.x;n[b++]=g.y;n[b++]=g.z;n[b++]=g.w;break;
case 7:r=f.get(h).getList();if(null==r||r.size()!=m)return!1;for(g=0;g<m;g++)n[b++]=JS.SV.fValue(r.get(g))}break;case 9:case 16:n=JS.SV.flistValue(a[0],0);break;default:return!1}}break;case 2:e=new JU.M3;if(8!=a[0].tok)return!1;f=JU.V3.newV(JS.SV.ptValue(a[0]));c=JS.SV.fValue(a[1]);e.setAA(JU.A4.newVA(f,3.141592653589793*(c/180)));return d.addXM3(e);case 3:case 4:if(7==a[0].tok){n=D(3==b?9:16,0);for(h=C=0;h<b;h++){r=JS.SV.flistValue(a[h],0);for(g=0;g<b;g++)n[C++]=r[g]}}}if(null!=n)switch(n.length){case 9:e=
JU.M3.newA9(n);break;case 16:c=JU.M4.newA16(n);break;default:return!1}return x||k||j||l?(null!=e&&(c=JU.M4.newMV(e,new JU.P3)),d.addXStr(this.matToString(c,x?1:k?2748:j?3567:0))):null!=e?d.addXM3(e):null!=c?d.addXM4(c):!1},"JS.ScriptMathProcessor,~A");p(m,"matToString",function(d,a){var b=this.vwr.getSymStatic();switch(a){case 1:return b.staticConvertOperation(null,d,"rxyz");case 32:case 2748:return b.staticGetTransformABC(d,!1);default:case 36:case 3567:case 28:return this.vwr.getSymStatic().staticConvertOperation("",
d,36==a||3567==a?"uvw":"xyz")}},"JU.M4,~N");p(m,"evaluateCallbackParam",function(d,a){return d.addX(this.e.getCallbackParameter(0==a.length?-2147483648:a[0].asInt()))},"JS.ScriptMathProcessor,~A");p(m,"evaluateSpacegroup",function(d,a){var b=null,c=a.length;if(0==c)return d.addXObj(this.vwr.getSymTemp().getSpaceGroupInfo(this.vwr.ms,null,this.vwr.am.cmi,!0,null));var e=4==a[a.length-1].tok?a[a.length-1].value:null,f="settings".equalsIgnoreCase(e),h="setting".equalsIgnoreCase(e),g=1<c&&(2!=c||!f&&
!h&&!"list".equalsIgnoreCase(e)&&!"jmol".equalsIgnoreCase(e)),j=a[0].asString();if(g||"subgroups".equals(e))return g=this.getSubgroupInfo(a,"subgroups".equals(e)?c:c+1),null==g?!1:d.addXObj(g);var k=null,g=null;switch(c){default:return!1;case 2:if("list".equals(e)){k=Integer.$valueOf(this.vwr.getSymTemp().getSpaceGroupInfoObj("itaNumber",j,!1,!1));j="list";break}if(4!=a[1].tok){b=JS.SV.flistValue(a[1],0);if(null==b||6!=b.length)return!1;k=b=JU.SimpleUnitCell.newParams(b,NaN)}case 1:if(10==a[0].tok)return j=
JS.SV.getBitSet(a[0],!0),d.addXObj(this.vwr.findSpaceGroup(null,j,null,b,null,null,1));var l=2==a[0].tok?a[0].intValue:1==c?-2147483648:0;if(f||h)return f&&0==l?!1:d.addXObj((-2147483648==l?this.vwr.getCurrentUnitCell():this.vwr.getSymTemp()).getSpaceGroupJSON(e.toLowerCase(),h&&1<c?j:null,l));if("setting".equalsIgnoreCase(j)||"settings".equalsIgnoreCase(j))return b=this.vwr.getOperativeSymmetry(),d.addXObj(null==b?null:b.getSpaceGroupJSON(j.toLowerCase(),null,-2147483648));if(j.toUpperCase().startsWith("AFLOWLIB/"))return d.addXObj(this.vwr.getSymTemp().getSpaceGroupJSON("AFLOWLIB",
j.substring(9),0));if(j.startsWith("Hall:")||0<=j.indexOf("x")||null!=b){g=this.vwr.findSpaceGroup(null,null,j,b,null,null,1);break}if(0<l||3==a[0].tok||4==a[0].tok){if(0<l||1<j.length&&"/"==j.charAt(1)||!j.endsWith(":")&&!Double.isNaN(JU.PT.parseFloat(j)))j="ITA/"+j;if(j.toUpperCase().startsWith("ITA/"))return d.addXObj(this.vwr.getSymTemp().getSpaceGroupJSON("ITA",j.substring(4),0))}}null==g&&(g=this.vwr.getSymStatic().getSpaceGroupInfoObj(j,k,!0,!1));null!=g&&(!"jmol".equals(e)&&!"list".equals(e))&&
(System.out.println("MathExt "+g),b=""+g.get("itaIndex"),g=this.vwr.getSymTemp().getSpaceGroupJSON("ITA",b,0));return d.addXObj(g)},"JS.ScriptMathProcessor,~A");p(m,"getSubgroupInfo",function(d,a){var b,c=-2147483648,e=-2147483648,f=null,h=null;switch(a){case 5:if(e=d[3].intValue,0>e)return null;case 4:if(c=d[2].intValue,0>c||2147483647==c)return null;case 3:h=0==d[1].intValue?"":d[1].asString();case 2:f=d[0].asString();default:if(null==f){b=this.vwr.getOperativeSymmetry();if(null==b)return null;
f=b.getSpaceGroupClegId()}else b=this.vwr.getSymStatic()}return b.getSubgroupJSON(f,h,c,e,0,null,null)},"~A,~N");p(m,"evaluatePointGroup",function(d,a,b){var c=null,e=null,f=-1,h=-1,g=null,j=!1;switch(a.length){case 4:h=a[3].asFloat();case 3:f=a[2].asFloat();case 2:switch(a[1].tok){case 8:e=JS.SV.ptValue(a[1]);break;case 10:g=JS.SV.getBitSet(a[1],!1),a[0].asString().equalsIgnoreCase("spaceGroup")&&(j=!0,2==a.length&&(f=0))}if(j)break;case 1:switch(a[0].tok){case 7:b=a[0].getList();c=Array(b.size());
for(a=c.length;0<=--a;)c[a]=JS.SV.ptValue(b.get(a));break;case 10:g=JS.SV.getBitSet(a[0],!1);c=this.vwr.ms.at;break;case 4:if(b){g=JS.SV.getBitSet(d.getX(),!0);if(null==g||g.isEmpty())return!1;j=a[0].asString();if("spacegroup".equals(j)){j=!0;break}}default:return!1}break;case 0:if(!b)return d.addXObj(this.vwr.ms.getPointGroupInfo(null));g=JS.SV.getBitSet(d.getX(),!1);break;default:return!1}if(null!=g){a=g.nextSetBit(0);if(0>a||a>=this.vwr.ms.ac||j&&1!=g.cardinality())return!1;if(j){e=this.vwr.ms.generateCrystalClass(a,
JU.P3.new3(NaN,NaN,NaN));c=Array(e.size());for(a=c.length;0<=--a;)c[a]=e.get(a);e=new JU.P3}}c=this.vwr.getSymTemp().setPointGroup(this.vwr,null,e,null==c?this.vwr.ms.at:c,g,!1,0>f?this.vwr.getFloat(570425382):f,0>h?this.vwr.getFloat(570425384):h,null==g?c.length:g.cardinality(),!0);return d.addXMap(c.getPointGroupInfo(-1,null,!0,null,0,1))},"JS.ScriptMathProcessor,~A,~B");p(m,"evaluateUnitCell",function(d,a,b,c){var e=b?JS.SV.getBitSet(d.getX(),!0):1812599299==c?this.vwr.getAllAtoms():null,f=(null==
e?this.vwr.getAllAtoms():e).nextSetBit(0),h=a.length-1;b=1;switch(0>h?0:a[h].tok){case 2:case 3:b=a[h].asFloat(),h--}var g=!1,j=0>h?0:a[0].tok,k=null,l=null,x=null;switch(j){case 7:l=a[0].getList();break;case 12:switch(1<h?1073741936:1>h?0:a[1].tok){default:case 1073741936:return!1;case 0:case 1073742334:break;case 1073742335:g=!0}return d.addXStr(this.vwr.getSymStatic().staticGetTransformABC(a[0].value,g));case 4:if(x=a[0].asString(),1814695966==c)if(0==x.indexOf("a=")){k=Array(4);for(g=0;4>g;g++)k[g]=
new JU.P3;JU.SimpleUnitCell.setAbc(x,null,k)}else if(0<=x.indexOf(",")||x.equals("r"))return b=2==a.length&&JS.SV.bValue(a[1])?this.vwr.getSymTemp().convertTransform(x,null):this.vwr.getV0abc(-1,x),d.addXObj(b)}if(1812599299==c)return b=this.vwr.ms.getBoxInfo(e,1),d.addXObj(b.getInfo(x));c=null;g=null!=l;if(null==k&&g&&4>l.size())return!1;x=g?1:0;null==k&&(!g&&8!=j)&&(c=0>f?this.vwr.getCurrentUnitCell():this.vwr.ms.getUnitCell(this.vwr.ms.at[f].mi),k=null==c?t(-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)]):c.getUnitCellVectors());if(null==k)if(k=Array(4),g)switch(l.size()){case 3:k[0]=new JU.P3;for(g=0;3>g;g++)k[g+1]=JU.P3.newP(JS.SV.ptValue(l.get(g)));break;case 4:for(g=0;4>g;g++)k[g]=JU.P3.newP(JS.SV.ptValue(l.get(g)));break;case 6:j=D(6,0);for(g=0;6>g;g++)j[g]=l.get(g).asFloat();JU.SimpleUnitCell.setAbc(null,j,k);break;default:return!1}else switch(k[0]=JU.P3.newP(JS.SV.ptValue(a[0])),h){case 3:for(g=1;4>g;g++)(k[g]=JU.P3.newP(JS.SV.ptValue(a[g]))).sub(k[0]);
break;case 1:if(l=a[1].getList(),null!=l&&3==l.size()){for(g=0;3>g;g++)k[g+1]=JU.P3.newP(JS.SV.ptValue(l.get(g)));break}default:return!1}j=x<=h?a[x].asString():null;if((l="primitive".equalsIgnoreCase(j))||"conventional".equalsIgnoreCase(j)){a=++x>h?"":a[x].asString().toUpperCase();a.equals("BCC")?a="I":0==a.length&&(a=this.vwr.getSymmetryInfo(f,null,0,null,null,null,1073741994,null,0,-1,0,null));if(null==a||0==a.length)return!1;null==c&&(c=this.vwr.getSymTemp());f=this.vwr.getModelForAtomIndex(f).auxiliaryInfo.get("primitiveToCrystal");
if(!c.toFromPrimitive(l,a.charAt(0),k,f))return!1}else if("reciprocal".equalsIgnoreCase(j))k=JU.SimpleUnitCell.getReciprocal(k,null,b),b=1;else if("vertices".equalsIgnoreCase(j))return d.addXObj(JU.BoxInfo.getVerticesFromOABC(k));if(1!=b)for(g=1;4>g;g++)k[g].scale(b);return d.addXObj(k)},"JS.ScriptMathProcessor,~A,~B,~N");p(m,"evaluateArray",function(d,a,b){if(b){b=d.getX();switch(b.tok){case 11:case 12:return d.addX(b.toArray())}if(0==a.length||2<a.length)return!1;var c=1==a.length||1073742334==
a[1].tok,e;switch(b.tok){case 11:case 12:return d.addX(b.toArray());case 6:if(1!=a.length)break;var f=new JU.Lst,h=b.getMap(),g=b.getKeys(!1);b=0;for(var j=g.length;b<j;b++)if(null==h.get(g[b]).getMap())return!1;a=a[0].asString();b=0;for(j=g.length;b<j;b++)e=h.get(g[b]).getMap(),c&&(e=JS.SV.deepCopy(e,!0,!1)),e.put(a,JS.SV.newS(g[b])),f.addLast(JS.SV.newV(6,e));return d.addXList(f);case 7:var k=!0,g=new JU.BS,h=new java.util.Hashtable,l=b.getList();a=a[0].asString();for(b=l.size();0<--b;)if(e=l.get(b).getMap(),
null==e||null==e.get(a))return!1;b=0;for(j=l.size();b<j;b++){e=l.get(b).getMap();if(null==e)return!1;c&&(e=JS.SV.deepCopy(e,!0,!1));var x=e.remove(a);k&&(2==x.tok&&0<=x.intValue&&1E4>=x.intValue?g.set(x.intValue):k=!1);x=x.asString();if(h.containsKey(x))return!1;h.put(x,JS.SV.newV(6,e))}if(k&&(b=g.nextSetBit(0),(new Boolean(0==b|1==b)).valueOf()&&(c=g.cardinality(),g.nextClearBit(b)==c+b))){j=Array(c);for(h=h.entrySet().iterator();h.hasNext()&&((f=h.next())||1);)j[Integer.parseInt(f.getKey())-b]=
f.getValue();f=new JU.Lst;for(b=0;b<c;b++)f.addLast(j[b]);return d.addXList(f)}return d.addXObj(h)}return!1}j=Array(a.length);for(b=j.length;0<=--b;)j[b]=JS.SV.newT(a[b]);return d.addXAV(j)},"JS.ScriptMathProcessor,~A,~B");p(m,"evaluateBin",function(d,a){var b=a.length;if(3>b||5<b)return!1;var c=d.getX(),e=13==c.tok;if(!e&&7!=c.tok)return d.addX(c);var f=JS.SV.fValue(a[0]),h=JS.SV.fValue(a[1]),g=JS.SV.fValue(a[2]),j=4<=b&&1073742335==a[b-1].tok,b=(5==b||4==b&&!j)&&1073742334!=a[3].tok?JS.SV.sValue(a[3]):
null,k=null;if(e)c=c.value;else{e=c.getList();c=D(e.size(),0);null!=b&&(k=JU.AU.createArrayOfHashtable(e.size()));try{for(var l=e.size();0<=--l;)c[l]=JS.SV.fValue(null==b?e.get(l):(k[l]=e.get(l).getMap()).get(b))}catch(x){if(O(x,Exception))return!1;throw x;}}for(var h=Math.max(X(Math.floor((h-f)/g+0.01)),1),e=P(h,0),n=c.length,l=0;l<n;l++){var r=X(Math.floor((c[l]-f)/g));if(!(0>r||r>=h))if(e[r]++,null!=b){var C=k[l];if(null!=C){C.put("_bin",JS.SV.newI(r));var q=f+g*r,m=q+g;C.put("_binMin",JS.SV.newF(0==
r?-3.4028235E38:q));C.put("_binMax",JS.SV.newF(r==h-1?3.4028235E38:m))}}}if(j){j=new JU.Lst;for(l=0;l<h;l++)j.addLast(D(-1,[f+g*l,e[l]]));return d.addXList(j)}return d.addXAI(e)},"JS.ScriptMathProcessor,~A");p(m,"evaluateCache",function(d,a){return 0<a.length?!1:d.addXMap(this.vwr.fm.cacheList())},"JS.ScriptMathProcessor,~A");p(m,"evaluateColor",function(d,a){var b=0<a.length?JS.SV.sValue(a[0]):"",c=b.startsWith("$");if(2==a.length&&b.equalsIgnoreCase("TOHSL"))return d.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 e=JU.P3.newP(8==a[1].tok?JS.SV.ptValue(a[1]):JU.CU.colorPtFromString(a[1].asString()));return d.addXPt(8==a[1].tok?JU.CU.hslToRGB(e):e)}if(4==a.length&&(1073742335==a[3].tok||1073742334==a[3].tok)){var e=JU.P3.newP(8==a[0].tok?JS.SV.ptValue(a[0]):JU.CU.colorPtFromString(a[0].asString())),f=JU.P3.newP(8==a[1].tok?JS.SV.ptValue(a[1]):JU.CU.colorPtFromString(a[1].asString())),
h=1073742335==a[3].tok;h&&(e=JU.CU.rgbToHSL(e,!1),f=JU.CU.rgbToHSL(f,!1));var g=new JU.SB,f=JU.V3.newVsub(f,e),j=a[2].asInt();2>j&&(j=20);f.scale(1/(j-1));for(b=0;b<j;b++)g.append(JU.Escape.escapeColor(JU.CU.colorPtToFFRGB(h?JU.CU.hslToRGB(e):e))),e.add(f);return d.addXStr(g.toString())}j=c?null:this.vwr.cm.getColorEncoder(b);if(!c&&null==j)return d.addXStr("");e=1<a.length?JS.SV.fValue(a[1]):3.4028235E38;f=2<a.length?JS.SV.fValue(a[2]):3.4028235E38;h=3<a.length?JS.SV.fValue(a[3]):3.4028235E38;g=
3.4028235E38!=h||3.4028235E38!=e&&3.4028235E38==f;3.4028235E38==f&&0==b.length&&(h=e,f=this.vwr.getCurrentColorRange(),e=f[0],f=f[1]);if(c){j=b.substring(1);j=t(-1,[j,null]);if(!this.vwr.shm.getShapePropertyData(24,"colorEncoder",j))return d.addXStr("");j=j[1]}else j.setRange(e,f,e>f);b=j.getColorKey();return g?d.addXPt(JU.CU.colorPtFromInt(j.getArgb(3.4028235E38==f?e:h),null)):d.addX(JS.SV.getVariableMap(b))},"JS.ScriptMathProcessor,~A");p(m,"evaluateCompare",function(d,a){var b=a.length;if(2>b||
5<b)return!1;var c,e=1073742335==a[b-1].tok;(e||1073742334==a[b-1].tok)&&b--;var f=JS.SV.sValue(a[b-1]),h=f.equalsIgnoreCase("stddev"),g=f.equalsIgnoreCase("ISOMER"),j=g&&e,k=f.equalsIgnoreCase("BONDS"),e=7==a[0].tok&&7==a[1].tok,l=3<=b?a[2].getList():null,x=null==l&&!e&&!g&&b>(h?3:2),e=10==a[0].tok?a[0].value:null,n=10==a[1].tok?a[1].value:null,r=null==e?JS.SV.sValue(a[0]):"",C=null==n?JS.SV.sValue(a[1]):"";c=NaN;try{if(k){if(4!=b)return!1;r=JS.SV.sValue(a[2]);x=r.equalsIgnoreCase("SMILES");try{x&&
(r=this.vwr.getSmiles(e))}catch(q){if(O(q,Exception))this.e.evalError(q.getMessage(),null);else throw q;}var m=this.e.getSmilesExt().getFlexFitList(e,n,r,!x);return null==m?d.addXStr(""):d.addXAF(m)}if(g){if(3!=b)return!1;if(null==e&&null==n){var p=this.vwr.getSmilesMatcher().getRelationship(r,C).toUpperCase();return d.addXStr(p)}var v=null==e?this.vwr.getSmilesMatcher().getMolecularFormula(r,!1,!1):JU.JmolMolecule.getMolecularFormulaAtoms(this.vwr.ms.at,e,null,!1),ra=null==n?this.vwr.getSmilesMatcher().getMolecularFormula(C,
!1,!1):JU.JmolMolecule.getMolecularFormulaAtoms(this.vwr.ms.at,n,null,!1);if(!v.equals(ra))return d.addXStr("NONE");null!=e&&(r=this.e.getSmilesExt().getSmilesMatches("/strict///",null,e,null,1,!0,!1));var y;null==n?y=0<this.vwr.getSmilesMatcher().areEqual(C,r):(C=this.e.getSmilesExt().getSmilesMatches("/strict///",null,n,null,1,!0,!1),y=0<=this.e.getSmilesExt().getSmilesMatches("/strict///"+r,null,n,null,1,!0,!1).nextSetBit(0));if(!y){var E=r+C;if(0<=E.indexOf("/")||0<=E.indexOf("\\")||0<=E.indexOf("@")){if(0<=
r.indexOf("@")&&(null!=n||0<=C.indexOf("@"))&&0>r.indexOf("@SP")){var M=r.toLowerCase().indexOf("invertstereo"),r=0<=M?"/strict/"+r.substring(0,M)+r.substring(M+12):"/invertstereo strict/"+r;if(y=null==n?0<this.vwr.getSmilesMatcher().areEqual(r,C):0<=this.e.getSmilesExt().getSmilesMatches(r,null,n,null,1,!0,!1).nextSetBit(0))return d.addXStr("ENANTIOMERS")}null==n?y=0<this.vwr.getSmilesMatcher().areEqual("/nostereo/"+C,r):(p=this.e.getSmilesExt().getSmilesMatches("/nostereo/"+r,null,n,null,1,!0,!1),
y=0<=p.nextSetBit(0));if(y)return d.addXStr("DIASTEREOMERS")}p="CONSTITUTIONAL ISOMERS";if(j){var w=this.vwr.getInchi(e,null,null);null!=w&&w.equals(this.vwr.getInchi(n,null,null))&&(p="TAUTOMERS")}return d.addXStr(p)}if(null==e||null==n)return d.addXStr("IDENTICAL");c=this.e.getSmilesExt().getSmilesCorrelation(e,n,r,null,null,null,null,!1,null,null,!1,1);return d.addXStr(0.2>c?"IDENTICAL":"IDENTICAL or CONFORMATIONAL ISOMERS (RMSD="+c+")")}var D=new JU.M4,w=y=null;if(x){if(null==e||null==n)return!1;
var f=JS.SV.sValue(a[2]),z=f.equalsIgnoreCase("MAP"),x=f.equalsIgnoreCase("SMILES"),t=z||f.equalsIgnoreCase("SMARTS");if(x||t)f=b>(h?4:3)?JS.SV.sValue(a[3]):null;var H="H".equalsIgnoreCase(f)||"allH".equalsIgnoreCase(f)||"bestH".equalsIgnoreCase(f),N=!H&&("polyhedra".equalsIgnoreCase(f)||"polyhedron".equalsIgnoreCase(f));if(N)c=this.e.getSmilesExt().mapPolyhedra(e.nextSetBit(0),n.nextSetBit(0),x,D);else{y=new JU.Lst;var w=new JU.Lst,E="all".equalsIgnoreCase(f)||"allH".equalsIgnoreCase(f),s="best".equalsIgnoreCase(f)||
"bestH".equalsIgnoreCase(f);"stddev".equals(f)&&(f=null);var A=f;if(null==f||H||E||s){if(!z&&!x||H&&N)return!1;A="/noaromatic"+(E||s?"/":" nostereo/")+this.e.getSmilesExt().getSmilesMatches(H?"H":"",null,e,null,32769,!0,!1)}else E=!0;c=this.e.getSmilesExt().getSmilesCorrelation(e,n,A,y,w,D,null,z,null,null,s,(x?1:2)|(!E&&!s?8:0));if(z){var U=y.size();if(0==U)return d.addXStr("");for(var ba=X(w.size()/U),p=new JU.Lst,M=A=0;A<ba;A++){var S=JU.AU.newInt2(U);p.addLast(S);for(f=0;f<U;f++,M++)S[f]=P(-1,
[y.get(f).i,w.get(M).i])}return E?d.addXList(p):0<p.size()?d.addXAII(p.get(0)):d.addXStr("")}}}else{y=this.e.getPointVector(a[0],0);w=this.e.getPointVector(a[1],0);if(null==y||null==w)return!1;if(null!=l){b--;var G=l.size();if(G>y.size()||G!=w.size())return!1;for(var ca=new JU.Lst,A=0;A<G;A++)ca.addLast(y.get(l.get(A).intValue-1));y=ca}switch(b){case 2:break;case 3:if(h)break;default:return!1}y.size()==w.size()&&(J.api.Interface.getInterface("JU.Eigen",this.vwr,"script"),c=JU.Measure.getTransformMatrix4(y,
w,D,null))}return h||Float.isNaN(c)?d.addXFloat(c):d.addXM4(D.round(1E-7))}catch(I){if(O(I,Exception))return this.e.evalError(null==I.getMessage()?I.toString():I.getMessage(),null),!1;throw I;}},"JS.ScriptMathProcessor,~A");p(m,"evaluateConnected",function(d,a,b,c){if(5<a.length)return!1;var e=-2147483648,f=2147483647,h=0,g=3.4028235E38,j=65535,k=null,l=null,x=!1,n=!1;switch(b){case 1275203608:l=-2147483648;h=null;if(0<a.length)switch(a[0].tok){case 2:l=a[0].intValue;break;case 4:h=JS.SV.sValue(a[0])}1275203608==
c&&(k=JS.SV.getBitSet(d.getX(),!0));k=t(-1,[Integer.$valueOf(l),h,k]);this.vwr.shm.getShapePropertyData(21,"getCenters",k)||(k[1]=null);return d.addXBs(null==k[1]?new JU.BS:k[1]);case 1228931586:k=d.getX();if(10!=k.tok||1!=a.length||10!=a[0].tok)return!1;k=k.value;l=a[0].value;a=new JU.Lst;h=this.vwr.ms.at;for(c=k.nextSetBit(0);0<=c;c=k.nextSetBit(c+1)){b=0;g=h[c].bonds;for(n=g.length;0<=--n;)l.get(g[n].getOtherAtom(h[c]).i)&&b++;a.addLast(Integer.$valueOf(b))}return d.addXList(a)}for(c=0;c<a.length;c++){var r=
a[c];switch(r.tok){case 10:if((n=z(r.value,"JM.BondSet"))&&null!=k)return!1;if(null==k)k=r.value;else if(null==l)l=r.value;else return!1;break;case 4:b=JS.SV.sValue(r);j=b.equalsIgnoreCase("hbond")?30720:JU.Edge.getBondOrderFromString(b);if(131071==j)return!1;break;case 3:x=!0;default:b=r.asInt();r=r.asFloat();if(2147483647!=f)return!1;-2147483648==e?(e=Math.max(b,0),h=r):(f=b,g=r)}}-2147483648==e?(e=1,f=100,h=0.1,g=1E8):2147483647==f&&(f=e,g=h,h=0.1);null==k&&(k=this.vwr.getAllAtoms());x&&null==
l&&(l=k);return null!=l?(a=new JU.BS,this.vwr.makeConnections(h,g,j,1086324745,k,l,a,n,!1,0),d.addX(JS.SV.newV(10,JM.BondSet.newBS(a)))):d.addXBs(this.vwr.ms.getAtomsConnected(e,f,j,k))},"JS.ScriptMathProcessor,~A,~N,~N");p(m,"evaluateContact",function(d,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||!z(a[b].value,"JU.BS"))return!1;var e=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(e,b,!0,NaN,c,!1);b.or(e);return d.addXBs(b)},"JS.ScriptMathProcessor,~A");p(m,"evaluateData",function(d,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 d.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(),e=a[3].asInt(),b=JU.Parser.parseFloatArrayFromMatchAndField(JS.SV.sValue(a[0]),null,0,0,null,b,c,null,e);return d.addXStr(JU.Escape.escapeFloatA(b,!1));default:return!1}if(0==b.indexOf("data2d_"))return b=this.vwr.getDataObj(b,null,2),null==b?d.addXStr(""):2==a.length&&2==a[1].tok?(c=a[1].intValue,0>c&&(c+=b.length),0<=c&&c<b.length?d.addXStr(JU.Escape.escapeFloatA(b[c],!1)):d.addXStr("")):d.addXStr(JU.Escape.escapeFloatAA(b,!1));if(b.endsWith("*"))return d.addXList(this.vwr.getDataObj(b,
null,0));if(0==b.indexOf("property_"))return b=this.vwr.getDataObj(b,null,1),null==b?d.addXStr(""):d.addXStr(JU.Escape.escapeFloatA(b,!1));b=this.vwr.getDataObj(b,null,-1);return d.addXStr(null==b||2>b.length?"":""+b[1])},"JS.ScriptMathProcessor,~A");p(m,"evaluateDotDist",function(d,a,b,c){var e=1275069443==b,f,h,g=null;switch(a.length){case 2:if(2147483647==c){f=a[0];h=a[1];break}g=a[1];case 1:f=d.getX();h=a[0];break;case 0:if(e){f=d.getX();h=JS.SV.getVariable(new JU.P3);break}default:return!1}a=
NaN;try{if(1275069442==b){var j=JU.P3.newP(d.ptValue(f,null));j.cross(j,d.ptValue(h,null));return d.addXPt(j)}var k=7==h.tok?null:d.ptValue(h,null),l=this.e.planeValue(h);if(e){b=-2147483648==c?0:c&480;var j=32==b||64==b,x=480==b;switch(f.tok){case 7:case 10:var n=10==f.tok,r=10==h.tok,C=8==h.tok,q=n?f.value:null,m=r?h.value:null,p=n?null:f.getList(),v=r?null:h.getList(),z=j&&null!=g&&g.asBoolean();switch(h.tok){case 10:case 7:case 8:var y=this.vwr.ms.at;if(z){var E=NaN,M=2147483647;if(n){for(var w=
q.nextSetBit(0);0<=w;w=q.nextSetBit(w+1)){var t=C?y[w].distanceSquared(k):this.e.getBitsetProperty(m,v,c,y[w],l,f.value,null,!1,f.index,!1).floatValue();if(!(32==b?t>=E:t<=E))E=t,M=w}return d.addXBs(2147483647==M?new JU.BS:JU.BSUtil.newAndSetBit(M))}for(w=p.size();0<=--w;){var P=JS.SV.ptValue(p.get(w)),t=C?P.distanceSquared(k):this.e.getBitsetProperty(m,v,c,P,l,f.value,null,!1,2147483647,!1).floatValue();if(!(32==b?t>=E:t<=E))E=t,M=w}return d.addXInt(M)}if(x){if(null==m){for(var Q=D(q.cardinality(),
0),E=0,w=q.nextSetBit(0);0<=w;w=q.nextSetBit(w+1),E++)Q[E]=y[w].distance(k);return d.addXAF(Q)}M=D(q.cardinality(),m.cardinality(),0);E=0;for(w=q.nextSetBit(0);0<=w;w=q.nextSetBit(w+1),E++){c=0;for(var H=m.nextSetBit(0);0<=H;H=m.nextSetBit(H+1),c++)M[E][c]=y[w].distance(y[H])}return d.addXAFF(M)}if(j){Q=D(n?q.cardinality():p.size(),0);if(n){w=q.nextSetBit(0);for(E=0;0<=w;w=q.nextSetBit(w+1))Q[E++]=this.e.getBitsetProperty(m,v,c,y[w],l,f.value,null,!1,f.index,!1).floatValue();return d.addXAF(Q)}for(w=
Q.length;0<=--w;)Q[w]=this.e.getBitsetProperty(m,v,c,JS.SV.ptValue(p.get(w)),l,null,null,!1,2147483647,!1).floatValue();return d.addXAF(Q)}return d.addXObj(this.e.getBitsetProperty(q,p,c,k,l,f.value,null,!1,f.index,!1))}}}var N=d.ptValue(f,null),s=this.e.planeValue(f);e?a=null!=l&&null!=g?JU.Measure.directedDistanceToPlane(N,l,JS.SV.ptValue(g)):null==s?null==l?k.distance(N):JU.Measure.distanceToPlane(l,N):JU.Measure.distanceToPlane(s,k):null!=s&&null!=l?a=s.x*l.x+s.y*l.y+s.z*l.z+s.w*l.w:(null!=s?
N=JU.P3.new3(s.x,s.y,s.z):null!=l&&(k=JU.P3.new3(l.x,l.y,l.z)),a=N.dot(k))}catch(A){if(!O(A,Exception))throw A;}return d.addXFloat(a)},"JS.ScriptMathProcessor,~A,~N,~N");p(m,"evaluateHelix",function(d,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 e=d.ptValue(a[0],null),f=d.ptValue(a[1],null);if(0==b||9!=a[2].tok||null==e||null==f)return!1;var h=JU.Quat.newP4(a[2].value),h=JU.Measure.computeHelicalAxis(e,
f,h);return null==h?!1:d.addXObj(JU.Escape.escapeHelical(c,b,e,f,h))}c=z(a[0].value,"JU.BS")?a[0].value:this.vwr.ms.getAtoms(1094715412,Integer.$valueOf(a[0].asInt()));switch(b){case 134217751:case 1073741854:case 1665140738:return d.addXObj(this.getHelixData(c,b));case 134217729:return d.addXFloat(this.getHelixData(c,134217729).floatValue());case 135176:case 1745489939:return d.addXObj(this.getHelixData(c,b));case 1275068418:h=this.getHelixData(c,1073742001);if(null==h)break;return d.addXAS(h)}return!1},
"JS.ScriptMathProcessor,~A");p(m,"getHelixData",function(d,a){var b=d.nextSetBit(0);return 0>b?"null":this.vwr.ms.at[b].group.getHelixData(a,this.vwr.getQuaternionFrame(),this.vwr.getInt(553648142))},"JU.BS,~N");p(m,"evaluateInChI",function(d,a){var b=d.getX(),c=0<a.length?JS.SV.sValue(a[0]):"fixedh?";c.toLowerCase().equals("standard")&&(c="");var e=JS.SV.getBitSet(b,!0),b=null==e?JS.SV.sValue(b):null,e=this.vwr.getInchi(e,b,c);return 0<=c.indexOf("model")?d.addXMap(this.vwr.parseJSONMap(e)):d.addXStr(e)},
"JS.ScriptMathProcessor,~A");p(m,"evaluateFind",function(d,a){var b=d.getX(),c=7==b.tok,e=10==b.tok,f=0==a.length,h=0==a.length?0:a[0].tok,g=f||4!=h?"":JS.SV.sValue(a[0]),j=1<a.length&&1073742334==a[1].tok,k=0==h?0:a[a.length-1].tok,l=0==k?JS.SV.vF:a[a.length-1],m=!c&&1073742335==k,k=c&&4==l.tok&&"index".equalsIgnoreCase(JS.SV.sValue(l)),n=1<a.length&&1073742335!=a[1].tok&&1073742334!=a[1].tok&&10!=a[1].tok?JS.SV.sValue(a[1]):"",r=!c&&!j&&g.equalsIgnoreCase("SEQUENCE"),C=!c&&!j&&g.equalsIgnoreCase("SEQ");
if(g.toUpperCase().startsWith("SMILES/")){g.endsWith("/")||(g+="/");var q=g.substring(6)+"//";JV.JC.isSmilesCanonical(q)?(n="SMILES",g="CHEMICAL"):(g="SMILES",n=q+n)}else g.toUpperCase().startsWith("SMARTS/")&&(g.endsWith("/")||(g+="/"),n=g.substring(6)+(0==n.length?"//":n),g="SMARTS");var p=null,u=!1,v=0<a.length&&134218753==a[0].tok;if(!v&&4==b.tok)switch(a.length){case 1:if(b.value.startsWith("InChI=")&&g.equalsIgnoreCase("SMILES"))return d.addXStr(this.vwr.getInchi(null,b.value,"SMILES"+n));u=
!g.equals("SMILES");break;case 2:case 3:j||m?u=!0:b.value.startsWith("InChI=")?g.equals("SMARTS")?p=this.vwr.getInchi(null,b.value,"SMILES"):u=!0:3>=n.length&&0==n.$replace("m"," ").$replace("i"," ").$replace("v"," ").trim().length&&(u=!0)}var z=!u&&g.equalsIgnoreCase("SMILES"),y=v||!u&&g.equalsIgnoreCase("SMARTS"),E=!c&&!u&&g.equalsIgnoreCase("CHEMICAL"),D=!c&&!u&&g.equalsIgnoreCase("MF"),w=!c&&!u&&g.equalsIgnoreCase("CELLFORMULA"),X=e&&!c&&g.equalsIgnoreCase("INCHI"),V=e&&!c&&g.equalsIgnoreCase("INCHIKEY"),
Q=!z&&!y&&10==h&&0<=n.toLowerCase().indexOf("map"),u=!z&&!y&&(10==b.tok||8==b.tok||7==b.tok)&&g.toLowerCase().startsWith("equivalent");try{if(u)switch(b.tok){case 10:return d.addXBs(this.vwr.ms.getSymmetryEquivAtoms(b.value,null,null));case 8:return d.addXList(this.vwr.getSymmetryEquivPoints(b.value,g+n));case 7:for(var H=new JU.Lst,N=b.getList(),s=0,A=N.size();s<A;s++){var U=JS.SV.ptValue(N.get(s));if(null==U)return!1;H.addLast(U)}return d.addXList(this.vwr.getSymmetryEquivPointList(H,g+n))}else if(X||
V)return V&&(n+=" key"),d.addXStr(this.vwr.getInchi(JS.SV.getBitSet(b,!0),null,n));if(E){var ba=e?b.value:null,S=null==ba?JS.SV.sValue(b):this.vwr.getOpenSmiles(ba),S=(0==S.length?"":this.vwr.getChemicalInfo(S,n.toLowerCase(),ba)).trim();S.startsWith("InChI")&&(S=JU.PT.rep(JU.PT.rep(S,"InChI=",""),"InChIKey=",""));return d.addXStr(S)}if(z||y||e){var e=Q?0:z||y?2:1,G=e<a.length&&10==a[e].tok?a[e++].value:null,ca=4==l.tok&&"bonds".equalsIgnoreCase(JS.SV.sValue(l)),N=ca||m,H=!1,e=null;switch(b.tok){case 134218753:H=
!0;case 7:case 4:null==p&&!c&&(p=b.value);if((z||y)&&1==a.length&&null==n||null!=G)return!1;if(n.equalsIgnoreCase("mf"))e=this.vwr.getSmilesMatcher().getMolecularFormula(p.toString(),y,m);else{var I=v?a[0].value:n,B=!0,A=!1;if(v)switch(a.length){case 3:B=JS.SV.bValue(a[2]);case 2:A=JS.SV.bValue(a[1])}else switch(a.length){case 4:B=JS.SV.bValue(a[3]);case 3:A=JS.SV.bValue(a[2])}var W=!v&&I.equals("chirality"),G=!A&&(!B||!y&&!W);try{if(c){for(var R=b.getList(),F=Array(R.size()),s=F.length;0<=--s;)F[s]=
R.get(s).value;p=F}e=this.e.getSmilesExt().getSmilesMatches(I,p,null,null,y?2:1,!A,!B);if(c)return d.addXObj(e)}catch(ia){if(O(ia,Exception))return System.out.println(ia.getMessage()),d.addXInt(-1);throw ia;}var ja=W?1:(JU.AU.isAI(e),e.length);if(0==ja&&"MF_FAILED"!==this.vwr.getSmilesMatcher().getLastException()&&(H||0>p.toLowerCase().indexOf("noaromatic")&&0>p.toLowerCase().indexOf("strict")))e=this.e.getSmilesExt().getSmilesMatches(I,p,null,null,16|(y?2:1),!A,!B);if(G)return d.addXInt(!B&&0<ja?
1:ja)}break;case 10:B=b.value;if(g.equalsIgnoreCase("spacegroup"))return F=this.vwr.findSpaceGroup(null,B,null,null,null,null,"parent".equals(n.toLowerCase())?8:0),null!=F&&(q=F.toString(),F=JU.PT.rep(q.substring(q.indexOf(" ")+1)," #","\t")),d.addXStr(F.toString());if(g.equalsIgnoreCase("crystalClass"))return A=B.nextSetBit(0),s=null,2!=a.length&&(s=new JU.BS,s.set(A)),d.addXList(this.vwr.ms.generateCrystalClass(A,null!=s?this.vwr.ms.getAtomSetCenter(s):10==l.tok?this.vwr.ms.getAtomSetCenter(l.value):
JS.SV.ptValue(l)));if(D&&0!=n.length)return d.addXBs(JU.JmolMolecule.getBitSetForMF(this.vwr.ms.at,B,n));if(D||w)return d.addXStr(this.vwr.getFormulaForAtoms(B,D?"MF":"CELLFORMULA",m));if(r||C){var Y=l.asString().equalsIgnoreCase("H"),N=(new Boolean(N|Y)).valueOf();return d.addXStr(this.vwr.getSmilesOpt(B,-1,-1,(N?7340032|(Y?9437184:0):0)|(C?34603008:1048576),null))}if(Q){var K=null,A=R=I=null,L=3==a.length?JS.SV.sValue(l):null,Z=null==L||L.equals("%i")||L.equals("number")?"i":L.equals("%a")||L.equals("name")?
"a":L.equals("%D")||L.equals("index")?"D":"?";null==L&&(L="number");F=null;n=n.$replace("map","").trim();g=this.vwr.getSmilesOpt(B,0,0,0,n);if(B.cardinality()!=G.cardinality())F="atom sets are not the same size";else try{0<n.length&&(g="/"+n+"/"+g);var I=this.vwr.getSmilesMatcher().getCorrelationMaps(g,this.vwr.ms.at,this.vwr.ms.ac,B,137)[0],$=this.vwr.getSmilesMatcher().getCorrelationMaps(g,this.vwr.ms.at,this.vwr.ms.ac,G,137);if(0<$.length){K=P(B.length(),0);for(s=K.length;0<=--s;)K[s]=-1;R=$[0];
for(s=I.length;0<=--s;)K[I[s]]=R[s];var A=t(I.length,2,null),ka=JU.BS.copy(B);ka.or(G);var da="?"==Z?Array(ka.length()):null;null!=da&&(da=this.e.getCmdExt().getBitsetIdentFull(ka,L,!1,2147483647,!1,da));for(var ga=this.vwr.ms.at,l=0,s=B.nextSetBit(0);0<=s;s=B.nextSetBit(s+1)){var ea=K[s];if(-1!=ea){var fa;switch(Z.charCodeAt(0)){case 97:fa=t(-1,[ga[s].getAtomName(),ga[ea].getAtomName()]);break;case 105:fa=t(-1,[Integer.$valueOf(ga[s].getAtomNumber()),Integer.$valueOf(ga[ea].getAtomNumber())]);break;
case 68:fa=t(-1,[Integer.$valueOf(s),Integer.$valueOf(ea)]);break;default:fa=t(-1,[da[s],da[ea]])}A[l++]=fa}}}}catch(la){if(O(la,Exception))F=la.getMessage();else throw la;}var T=new java.util.Hashtable;T.put("BS1",B);T.put("BS2",G);T.put("SMILES",g);null==F?(T.put("SMILEStoBS1",I),T.put("SMILEStoBS2",R),T.put("BS1toBS2",K),T.put("MAP1to2",A),T.put("key",L)):T.put("error",F);return d.addXMap(T)}if(z||y)g=1<a.length&&10==a[1].tok?this.vwr.getSmilesOpt(a[1].value,0,0,0,n):n;n=n.toUpperCase();if(0<=
n.indexOf("INCHI"))return d.addXStr(this.vwr.getInchi(B,null,"SMILES/"+n));if(n.equals("MF"))p=this.e.getSmilesExt().getSmilesMatches("",null,B,G,1,!0,!1),e=this.vwr.getSmilesMatcher().getMolecularFormula(p.toString(),!1,m);else if(ca)K=this.vwr.getSmilesMatcher().getCorrelationMaps(g,this.vwr.ms.at,this.vwr.ms.ac,B,(z?1:2)|8),e=0<K.length?this.vwr.ms.getDihedralMap(K[0]):P(0,0);else if(n.equals("MAP"))e=K=this.vwr.getSmilesMatcher().getCorrelationMaps(g,this.vwr.ms.at,this.vwr.ms.ac,B,(z?1:2)|144);
else{var ha=(z?0<=n.indexOf("OPEN")?5:1:2)|(m&&0==g.length?22020096:0);z&&0<=n.indexOf("/ALL/")&&(ha|=32768);if(0<=n.indexOf("/MOLECULE/")){for(var ma=this.vwr.ms.getMolecules(),aa=new JU.Lst,s=0;s<ma.length;s++)if(ma[s].atomList.intersects(B)){var pa=this.e.getSmilesExt().getSmilesMatches(g,null,ma[s].atomList,G,ha,!m,!1);pa.isEmpty()||aa.addLast(pa)}e=aa}else e=this.e.getSmilesExt().getSmilesMatches(g,null,B,G,ha,!m,!1)}}null==e&&this.e.invArg();return d.addXObj(e)}}catch(na){if(O(na,Exception))this.e.evalError(na.getMessage(),
null);else throw na;}B=new JU.BS;G=c?b.getList():null;if(c&&4!=h&&0!=h){b=a[0];s=0;for(A=G.size();s<A;s++)JS.SV.areEqual(G.get(s),b)&&B.set(s);e=P(B.cardinality(),0);l=0;for(s=B.nextSetBit(0);0<=s;s=B.nextSetBit(s+1))e[l++]=s+1;return d.addXAI(e)}h=0<=n.indexOf("v");s=0<=n.indexOf("i")||j;j=0<=n.indexOf("m");n=0==g.length;u=!n&&!u&&a.length==(k?3:2);if(c||u){r=u?this.getPatternMatcher():null;I=null;if(u)try{I=r.compile(g,s)}catch(oa){if(O(oa,Exception))this.e.evalError(oa.toString(),null);else throw oa;
}R=n?null:JS.SV.strListValue(b);r=n?G.size():R.length;JU.Logger.debugging&&JU.Logger.debug("finding "+g);A=0;K=null;b=j?new JU.Lst:null;L="";for(s=0;s<r;s++){if(n)switch(F=G.get(s),F.tok){case 6:F=F.getMap().isEmpty()!=f;break;case 7:F=0==F.getList().size()!=f;break;case 4:F=0==F.asString().length!=f;break;default:F=!0}else u?(L=R[s],K=I.matcher(L),F=K.find()):F=0<=JS.SV.sValue(G.get(s)).indexOf(g);if(j&&F||!j&&F==!h)A++,B.set(s),j&&b.addLast(h?L.substring(0,K.start())+L.substring(K.end()):K.group())}if(!c)return j?
d.addXStr(1==b.size()?b.get(0):""):h?d.addXBool(1==A):j?d.addXStr(0==A?"":K.group()):d.addXInt(0==A?0:K.start()+1);if(k){H=new JU.Lst;for(s=B.nextSetBit(0);0<=s;s=B.nextSetBit(s+1))H.addLast(JS.SV.newI(s+1));return d.addXList(H)}if(j){c=Array(A);if(0<A)for(s=R.length;0<=--s;)B.get(s)&&(--A,c[A]=j?b.get(A):R[s]);return d.addXAS(c)}c=new JU.Lst;for(s=B.nextSetBit(0);0<=s;s=B.nextSetBit(s+1))c.addLast(G.get(s));return d.addXList(c)}return r?d.addXStr(this.vwr.getJBR().toStdAmino3(JS.SV.sValue(b))):d.addXInt(JS.SV.sValue(b).indexOf(g)+
1)},"JS.ScriptMathProcessor,~A");p(m,"evaluateGetProperty",function(d,a,b,c){var e=a.length,f=c&&1275082241==b,h=c&&1275068725==b,g=1275068446==b,j=0,k=0==e?0:a[0].tok;if(2==e&&(7==k||6==k||14==k))return d.addXObj(this.vwr.extractProperty(a[0].value,a[1].value.toString(),-1));var l=c&&1==e&&10==a[0].tok?a[0].value:null,m=null==l&&0<e?JS.SV.sValue(a[j++]):"",k=m,n=k.toLowerCase();!f&&0>n.indexOf("[select ")&&(k=n);var r=!1;k.equals("json")&&e>j&&(r=!0,k=JS.SV.sValue(a[j++]));var p=null;if(c){p=d.getX();
switch(p.tok){case 10:break;case 4:var q=p.value,e=Array(3);q.startsWith("$")?(q=q.substring(1),a=this.vwr.shm.getShapeIdFromObjectName(q),0<=a&&(e[0]=q,this.vwr.shm.getShapePropertyData(a,"index",e),null!=e[1]&&!m.equals("index")&&(q=e[1].intValue(),e[1]=this.vwr.shm.getShapePropertyIndex(a,m.intern(),q)))):(a=JV.JC.shapeTokenIndex(JS.T.getTokFromName(q)),0<=a&&(e[0]=m,e[1]=Integer.$valueOf(-1),this.vwr.shm.getShapePropertyData(a,m.intern(),e)));return null==e[1]?d.addXStr(""):d.addXObj(e[1]);case 7:if(h){g=
p.getList();if(0==e)return d.addXObj(this.getMinMax(g,1275068725,!0));c=new java.util.Hashtable;k=1<e?JS.SV.sValue(a[e-1]):null;null!=k&&e--;n=Array(e);for(q=0;q<e;q++)n[q]=JS.SV.sValue(a[q]);q=0;for(r=g.size();q<r;q++)if(j=g.get(q),6==j.tok){m=j.getMap();a="";for(p=0;p<e;p++)l=m.get(n[p]),a+=(0==p?"":k)+JS.SV.sValue(l);m=c.get(a);null==m&&c.put(a,m=JS.SV.newV(7,new JU.Lst));m.getList().addLast(j)}return d.addXMap(c)}if(null!=l){e=p.getList();a=new JU.Lst;for(q=l.nextSetBit(0);0<=q;q=l.nextSetBit(q+
1))a.addLast(e.get(q));return d.addXList(a)}default:if(1275068725==b&&6==p.tok){c=new java.util.Hashtable;for(e=p.getMap().entrySet().iterator();e.hasNext()&&((q=e.next())||1);)a=q.getKey(),j=q.getValue().asString(),g=c.get(j),null==g&&c.put(j,g=new JU.Lst),g.addLast(a);if("count".equals(n))for(e=c.entrySet().iterator();e.hasNext()&&((q=e.next())||1);)q.setValue(Integer.$valueOf(q.getValue().size()));return d.addXMap(c)}f&&(k="[SELECT "+k+"]");return d.addXObj(this.vwr.extractProperty(p,k,-1))}!n.startsWith("bondinfo")&&
(!n.startsWith("atominfo")&&!n.startsWith("modelkitinfo"))&&(k="atomInfo."+k)}q="";if(k.equalsIgnoreCase("fileContents")&&2<=e){j=JS.SV.sValue(a[1]);for(q=2;q<e;q++)j+="|"+JS.SV.sValue(a[q]);q=j;j=e}else if(e>j)switch(a[j].tok){case 10:q=a[j++].value;k.equalsIgnoreCase("bondInfo")&&(e>j&&10==a[j].tok)&&(q=t(-1,[q,a[j].value]));break;case 6:case 4:this.vwr.checkPropertyParameter(k)&&(q=a[j++].value)}if(c&&(q=p.value,0>q.nextSetBit(0)))return d.addXStr("");g&&!c&&(k="auxiliaryInfo.models."+k);k=JU.PT.rep(k,
".[","[");q=this.vwr.getProperty(null,k,q);j<e&&(q=this.vwr.extractProperty(q,a,j));return d.addXObj(r?JS.SV.safeJSON("value",q):JS.SV.isVariableType(q)?q:JU.Escape.toReadable(k,q))},"JS.ScriptMathProcessor,~A,~N,~B");p(m,"evaluateFormat",function(d,a,b,c){if(c&&1<b.length)return!1;var e=2>b.length||1287653388==a?d.getX():null,f;a=-1;var h=null;switch(b.length){case 0:f="%U";break;case 1:if(null==e)return!1;switch(b[0].tok){case 7:f=null;break;case 4:f=b[0].value;a=JS.SV.getFormatType(f);0<=a&&(h=
e);break;default:return!1}break;case 2:4==b[0].tok?(f=JS.SV.sValue(b[0]),h=b[1],4==h.tok&&!"string".equals(f)&&(h=b[0],f="string")):(h=b[0],f=JS.SV.sValue(b[1]));a=JS.SV.getFormatType(f);break;default:if(f=b[0].value,a=JS.SV.getFormatType(f),0<=a)return!1}switch(a){case -1:break;case 28:case 32:case 36:return 12==h.tok&&d.addXStr(this.matToString(h.value,a));default:return d.addXObj(JS.SV.getFormat(h,a))}var g=null!=e&&10==e.tok?e.value:null;if(!c&&0<b.length&&null==g&&null!=f){if(2==b.length){c=
e.getList();e=h.getList();if(null==c||null==e)return!1;e=JS.SV.getVariableList(this.getSublist(c,e))}b=t(-1,[b[0],e]);e=null}if(null==e){if(null==f||0<=a&&2!=b.length)return!1;if(0<=a||2>b.length||7!=b[1].tok)return a=JS.SV.format(b,a),"string"==typeof a?d.addXStr(a):d.addXObj(a);f=b[1].getList();b=t(-1,[b[0],null]);g=Array(f.size());for(c=g.length;0<=--c;)b[1]=f.get(c),g[c]=JS.SV.format(b,a).toString();return d.addXAS(g)}if(7==e.tok&&null==f)return c=e.getList(),e=b[0].getList(),a=this.getSublist(c,
e),d.addXList(a);a=null;a=null==f?"":null==g?JS.SV.sprintf(JU.PT.formatCheck(f),e):this.e.getCmdExt().getBitsetIdent(g,f,e.value,!0,e.index,!1);return d.addXObj(a)},"JS.ScriptMathProcessor,~N,~A,~B");p(m,"getSublist",function(d,a){for(var b=new JU.Lst,c,e,f,h=0,g=d.size();h<g;h++)switch(e=d.get(h),e.tok){case 6:c=e.getMap();f=new JU.Lst;for(var j=0,k=a.size();j<k;j++)e=c.get(JS.SV.sValue(a.get(j))),f.addLast(null==e?JS.SV.newS(""):e);b.addLast(JS.SV.getVariableList(f));break;case 7:c=new java.util.Hashtable;
f=e.getList();j=0;for(k=Math.min(f.size(),a.size());j<k;j++)c.put(JS.SV.sValue(a.get(j)),f.get(j));b.addLast(JS.SV.getVariable(c))}return b},"JU.Lst,JU.Lst");p(m,"evaluateList",function(d,a,b){var c=b.length,e=d.getX(),f;switch(a){case 1275335685:return 2==c&&d.addX(e.pushPop(b[0],b[1]))||1==c&&d.addX(e.pushPop(null,b[0]));case 1275334681:return 1==c&&d.addX(e.pushPop(b[0],null))||0==c&&d.addX(e.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=7==e.tok;if(2==c)return c=this.listSpecial(a,e,JS.SV.sValue(b[0]),b[1],h),null!=c&&d.addXObj(c);f=0==c?JS.SV.newV(1073742327,"all"):b[0];var g=1073742327==f.tok;if(!h&&4!=e.tok)return d.binaryOp(this.opTokenFor(a),e,f);var j=JS.SV.isScalar(e),k=JS.SV.isScalar(f),l=null,m=null;b=e.getList();var n=f.getList(),r=null,p=null;h?c=b.size():j?c=2147483647:(r=JU.PT.split(JS.SV.sValue(e),"\n"),l=D(c=r.length,0),JU.PT.parseFloatArrayData(r,l));if(g&&1275069446!=a){a=0;if(h)for(e=
c;0<=--e;)a+=JS.SV.fValue(b.get(e));else if(!j)for(e=c;0<=--e;)a+=l[e];return d.addXFloat(a)}if(1275069446==a&&4==f.tok){h=new JU.SB;if(j)h.append(JS.SV.sValue(e));else{j=g?"":f.value.toString();for(e=0;e<c;e++)h.append(0<e?j:"").append(JS.SV.sValue(b.get(e)))}return d.addXStr(h.toString())}var q=null;k?q=f:7==f.tok?c=Math.min(c,n.size()):(p=JU.PT.split(JS.SV.sValue(f),"\n"),m=D(p.length,0),JU.PT.parseFloatArrayData(p,m),c=Math.min(c,m.length));var z=this.opTokenFor(a);if(h&&g)return c=new JU.Lst,
d.addXList(this.addAllLists(e.getList(),c));var g=j?e:null,u,v=2147483647==c;v&&(c=1);for(var t=Array(c),e=0;e<c;e++){u=k?q:7==f.tok?n.get(e):Float.isNaN(m[e])?JS.SV.getVariable(JS.SV.unescapePointOrBitsetAsVariable(p[e])):JS.SV.newF(m[e]);j||(g=h?b.get(e):Float.isNaN(l[e])?JS.SV.getVariable(JS.SV.unescapePointOrBitsetAsVariable(r[e])):JS.SV.newF(l[e]));if(1275069446==a&&7!=g.tok){var y=new JU.Lst;y.addLast(g);g=JS.SV.getVariableList(y)}if(!d.binaryOp(z,g,u))return!1;t[e]=d.getX()}return v?d.addXObj(t[0]):
d.addXAV(t)},"JS.ScriptMathProcessor,~N,~A");p(m,"listSpecial",function(d,a,b,c,e){var f=null,h=null,g=null;if(1275069441==d){f=e?JS.SV.strListValue(a):JU.PT.split(JS.SV.sValue(a),"\n");h=7==c.tok?JS.SV.strListValue(c):JU.PT.split(JS.SV.sValue(c),"\n");a=Math.max(f.length,h.length);g=Array(a);for(d=0;d<a;d++)g[d]=(d>=f.length?"":f[d])+b+(d>=h.length?"":h[d]);return g}if(1073742335!=c.tok)return null;f=a.getList();(h=0==b.length)&&(b=",");if(1275069446==d){e=Array(f.size());for(d=f.size();0<=--d;){var j=
f.get(d).getList();if(null==j)e[d]=f.get(d);else{var k=new JU.SB;a=0;for(c=j.size();a<c;a++){0<a&&k.append(b);var l=j.get(a),g=null;if(4==l.tok){var m=l.value;h&&(g='"'+JU.PT.rep(m,'"','""')+'"')}k.append(null==g?""+l.asString():g)}e[d]=JS.SV.newS(k.toString())}}return e}e=new JU.Lst;h&&(b="\x00");j=P(2,0);d=0;for(k=f.size();d<k;d++){a=f.get(d).asString();if(h){j[1]=0;for(c=j[0]=0;;){g=JU.PT.getCSVString(a,j);if(null==g){if(-1==j[1]){a+=++d<k?"\n"+f.get(d).asString():'"';j[1]=c;continue}a=a.substring(0,
c)+a.substring(c).$replace(",","\x00");break}a=a.substring(0,c)+a.substring(c,j[0]).$replace(",","\x00")+g+a.substring(j[1]);j[1]=c=j[0]+g.length}}l=a.$plit(b);m=new JU.Lst;a=0;for(c=l.length;a<c;a++){g=l[a];if(0>g.indexOf("."))try{m.addLast(JS.SV.newI(Integer.parseInt(g)));continue}catch(n){if(!O(n,Exception))throw n;}else try{m.addLast(JS.SV.getVariable(Float.$valueOf(Float.parseFloat(g))));continue}catch(r){if(!O(r,Exception))throw r;}m.addLast(JS.SV.newS(g))}e.addLast(JS.SV.getVariableList(m))}return JS.SV.getVariableList(e)},
"~N,JS.SV,~S,JS.SV,~B");p(m,"addAllLists",function(d,a){for(var b=d.size(),c=0;c<b;c++){var e=d.get(c);7==e.tok?this.addAllLists(e.getList(),a):a.addLast(e)}return a},"JU.Lst,JU.Lst");p(m,"evaluateLoad",function(d,a,b){if(!this.checkAccess()||1>a.length||3<a.length)return!1;var c=JV.FileManager.fixDOSName(JS.SV.sValue(a[0])),e=1<a.length&&1073742335==a[1].tok,f=this.vwr.async||2<a.length&&1073742335==a[a.length-1].tok,h=1<a.length&&2==a[1].tok?a[1].asInt():-1;a=1<a.length&&a[1].asString().equalsIgnoreCase("JSON");
if(e)return d.addXMap(this.vwr.fm.getFileAsMap(c,null,!1));e=c.startsWith("?");if(JV.Viewer.isJS&&(e||f)){if(b&&e)return d.addXStr("");c=this.e.loadFileAsync("load()_",c,d.oPt,!0)}b=b?this.vwr.fm.getFilePath(c,!1,!1):this.vwr.getFileAsString4(c,h,!1,!1,!0,"script");try{return a?d.addXObj(this.vwr.parseJSON(b)):d.addXStr(b)}catch(g){if(O(g,Exception))return!1;throw g;}},"JS.ScriptMathProcessor,~A,~B");p(m,"evaluateMath",function(d,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 134218255:a=Math.tan(3.141592653589793*a/180);break;case 134218241:a=180*Math.acos(a)/3.141592653589793}return d.addXFloat(a)},"JS.ScriptMathProcessor,~A,~N");p(m,"evaluateMeasure",function(d,a,b){var c=0;switch(b){case 1745489939:b=null;for(var e=new JU.Lst,f=D(-1,[3.4028235E38,3.4028235E38]),h=null,g=null,j=!1,k=!1,l=0,m=!1,n=null,r=0,p=3.4028235E38,q=!1,z=!1,n=0;n<a.length;n++)switch(a[n].tok){case 10:var u=
a[n].value;0==u.length()&&(m=!0);e.addLast(u);c++;r++;break;case 8:u=new JU.Point3fi;u.setT(a[n].value);e.addLast(u);c++;break;case 2:case 3:f[l++%2]=JS.SV.fValue(a[n]);break;case 4:u=JS.SV.sValue(a[n]);if(u.startsWith("property_")){b=u;break}u.equalsIgnoreCase("vdw")||u.equalsIgnoreCase("vanderwaals")?p=(n+1<a.length&&2==a[n+1].tok?a[++n].asInt():100)/100:u.equalsIgnoreCase("notConnected")?k=!0:u.equalsIgnoreCase("connected")?j=!0:u.equalsIgnoreCase("minArray")?q=1<=r:u.equalsIgnoreCase("asArray")||
0==u.length?z=1<=r:JM.Measurement.isUnits(u)?g=u.toLowerCase():h=c+":"+u;break;default:return!1}if(2>c||4<c||2<l||k&&j)return!1;if(m||3.4028235E38!=p&&(2!=r||2!=c))return d.addXStr("");n=3.4028235E38==p?new J.atomdata.RadiusData(f,0,null,null):new J.atomdata.RadiusData(null,p,J.atomdata.RadiusData.EnumType.FACTOR,J.c.VDW.AUTO);a=this.vwr.newMeasurementData(null,e).set(0,null,n,b,h,g,null,j,k,null,!0,0,0,null,NaN,null).getMeasurements(z,q);return d.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]=d.ptValue(a[n],null)))return!1;switch(c){case 2:return d.addXFloat(b[0].distance(b[1]));case 3:return d.addXFloat(JU.Measure.computeAngleABC(b[0],b[1],b[2],!0));case 4:return d.addXFloat(JU.Measure.computeTorsion(b[0],b[1],b[2],b[3],!0))}return!1},"JS.ScriptMathProcessor,~A,~N");p(m,"evaluateModulation",function(d,a){var b="",c=NaN,e=null;switch(a.length){case 0:break;case 1:switch(a[0].tok){case 8:e=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==e&&1E6>c&&(e=JU.P3.new3(c,c,c));c=d.getX();c=10==c.tok?c.value:new JU.BS;return d.addXList(this.vwr.ms.getModulationList(c,(b+"D").toUpperCase().charAt(0),e))},"JS.ScriptMathProcessor,~A");p(m,"evaluatePlane",function(d,a,b,c){if(134219777==b&&3!=a.length&&4!=a.length||134217763==b&&2!=a.length&&3!=a.length&&4!=a.length||0==a.length||4<a.length)return!1;
var e,f,h=this.e.planeValue(a[0]),g;switch(a.length){case 1:if(134217750==b){if(7!=a[0].tok)return!1;h=JS.SV.flistValue(a[0],3);if(3!=h.length)return!1;b=this.vwr.getOperativeSymmetry();if(null==b)return!1;h=JU.P3.new3(h[0],h[1],h[2]);b.toCartesian(h,!1);h=JU.P4.new4(h.x,h.y,h.z,0);if(c)break}return null!=h&&d.addXPt4(h);case 2:if(134217763==b){e=this.e.planeValue(a[1]);if(null==e)return!1;c=new JU.P3;b=new JU.V3;g=new JU.V3;if(null!=h)return a=JU.Measure.getIntersectionPP(h,e),null==a?d.addXStr(""):
d.addXList(a);f=d.ptValue(a[0],null);return null==f?d.addXStr(""):d.addXPt(JU.Measure.getIntersection(f,null,e,c,b,g))}case 3:case 4:switch(b){case 134219777:b=4==a.length?JS.SV.fValue(a[3]):NaN;h=this.e.getHklPlane(JU.P3.new3(JS.SV.fValue(a[0]),JS.SV.fValue(a[1]),JS.SV.fValue(a[2])),b,null);if(c)break;return null!=h&&d.addXPt4(h);case 134217763:e=d.ptValue(a[0],null);f=d.ptValue(a[1],null);if(null==e||null==f)return d.addXStr("");f=JU.V3.newV(f);f.normalize();h=this.e.planeValue(a[2]);if(null!=h)return c=
new JU.P3,b=new JU.V3,g=new JU.V3,e=JU.Measure.getIntersection(e,f,h,c,b,g),null==e?d.addXStr(""):d.addXPt(e);c=d.ptValue(a[2],null);if(null==c)return d.addXStr("");b=new JU.V3;c=JU.P3.newP(c);if(3==a.length)return JU.Measure.projectOntoAxis(c,e,f,b),d.addXPt(c);h=JS.SV.fValue(a[3]);a=JU.P3.newP(c);JU.Measure.projectOntoAxis(c,e,f,b);a=a.distance(c);e=new JU.Lst;a==h?e.addLast(c):a<h&&(a=Math.sqrt(h*h-a*a),b.scaleAdd2(a,f,c),e.addLast(JU.P3.newP(b)),b.scaleAdd2(-a,f,c),e.addLast(JU.P3.newP(b)));return d.addXList(e)}switch(a[0].tok){case 2:case 3:if(3==
a.length)return h=JS.SV.fValue(a[0]),c=JS.SV.fValue(a[1]),a=JS.SV.fValue(a[2]),b=JU.V3.new3(0,0,1),f=JU.P3.new3(0,1,0),a=JU.Quat.newVA(f,a),a.getMatrix().rotate(b),f.set(0,0,1),a=JU.Quat.newVA(f,c),a.getMatrix().rotate(b),f.setT(b),f.scale(h),h=new JU.P4,JU.Measure.getPlaneThroughPoint(f,b,h),d.addXPt4(h);break;case 10:case 8:e=d.ptValue(a[0],null);f=d.ptValue(a[1],null);if(null==f)return!1;c=2<a.length&&(10==a[2].tok||8==a[2].tok)?d.ptValue(a[2],null):null;b=JU.V3.newV(f);if(null==c)return h=new JU.P4,
2==a.length||2!=a[2].tok&&3!=a[2].tok&&!a[2].asBoolean()?(c=JU.P3.newP(e),c.add(f),c.scale(0.5),b.sub(e),b.normalize()):1073742335==a[2].tok?c=e:(b.sub(e),c=new JU.P3,c.scaleAdd2(a[2].asFloat(),b,e)),JU.Measure.getPlaneThroughPoint(c,b,h),d.addXPt4(h);h=new JU.V3;a=4==a.length?d.ptValue(a[3],null):null;a=JU.Measure.getDirectedNormalThroughPoints(e,f,c,a,b,h);return d.addXPt4(JU.P4.new4(b.x,b.y,b.z,a))}}if(c)switch(c=d.getX(),c.tok){case 10:a=new JU.Lst;b=JS.SV.getBitSet(c,!1);for(e=b.nextSetBit(0);0<=
e;e=b.nextSetBit(e+1))c=new JU.P3,JU.Measure.getPlaneProjection(this.vwr.ms.at[e],h,c,new JU.V3),a.addLast(JS.SV.getVariable(c));return d.addXList(a);case 8:return a=JS.SV.ptValue(c),c=new JU.P3,JU.Measure.getPlaneProjection(a,h,c,new JU.V3),d.addXPt(c)}if(4!=a.length)return!1;c=JS.SV.fValue(a[0]);b=JS.SV.fValue(a[1]);h=JS.SV.fValue(a[2]);a=JS.SV.fValue(a[3]);return d.addXPt4(JU.P4.new4(c,b,h,a))},"JS.ScriptMathProcessor,~A,~N,~B");p(m,"evaluatePoint",function(d,a){var b=null;switch(a.length){default:return!1;
case 1:switch(a[0].tok){case 3:case 2:return d.addXInt(a[0].asInt());case 4:b=a[0].value;if(b.startsWith("(")&&")"==b.charAt(b.length-1))return d.addXPt(this.getRealPointFromFraction(b));break;case 7:var c=a[0].getList(),e=c.size();if(0==e)return!1;switch(c.get(0).tok){case 2:case 3:break;case 7:for(var f=new JU.Lst,b=0;b<e;b++)f.addLast(JS.SV.getVariable(JU.Escape.uP("{"+c.get(b).asString()+"}")));return d.addXList(f);case 4:b=c.get(0).value;if(!b.startsWith("{")||"string"==typeof JU.Escape.uP(b)){b=
null;break}f=new JU.Lst;for(b=0;b<e;b++)f.addLast(JS.SV.getVariable(JU.Escape.uP(JS.SV.sValue(c.get(b)))));return d.addXList(f);default:return!1}b="{"+b+"}"}null==b&&(b=JS.SV.sValue(a[0]));c=JU.Escape.uP(b);return z(c,"JU.P3")?d.addXPt(c):d.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:e=a[0].getList();if(null==e||4!=e.size())return!1;b=JS.SV.ptValue(a[1]);c=JU.P3.newP(JS.SV.ptValue(e.get(0)));c.scaleAdd2(b.x,JS.SV.ptValue(e.get(1)),c);c.scaleAdd2(b.y,JS.SV.ptValue(e.get(2)),c);c.scaleAdd2(b.z,JS.SV.ptValue(e.get(3)),c);break;default:return!1}return d.addXPt(c);case 3:return d.addXPt(JU.P3.new3(a[0].asFloat(),a[1].asFloat(),a[2].asFloat()));
case 4:return d.addXPt4(JU.P4.new4(a[0].asFloat(),a[1].asFloat(),a[2].asFloat(),a[3].asFloat()))}},"JS.ScriptMathProcessor,~A");p(m,"getRealPointFromFraction",function(d){d=JU.PT.rep(d.substring(1,d.length-1).$replace(","," "),"  "," ");d=JU.PT.split(d.trim()," ");return 3!=d.length?null:JU.P3.new3(JU.SimpleUnitCell.parseCalcFunctions(this.vwr,null,d[0]),JU.SimpleUnitCell.parseCalcFunctions(this.vwr,null,d[1]),JU.SimpleUnitCell.parseCalcFunctions(this.vwr,null,d[2]))},"~S");p(m,"evaluatePrompt",function(d,
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,e=null!=c||1==a.length||3==a.length&&a[2].asBoolean(),f=null!=c?null:2<=a.length?JS.SV.sValue(a[1]):"OK",b=""+this.vwr.prompt(b,f,c,e);return e&&null!=c?d.addXInt(Integer.parseInt(b)+1):d.addXStr(b)},"JS.ScriptMathProcessor,~A");p(m,"evaluateQuaternion",function(d,a,b){var c=null,e=a.length,f=2147483647,h=!1;134221850==b&&(1<e&&(4==a[e-1].tok&&a[e-1].value.equalsIgnoreCase("relative"))&&
(e--,h=!0),1<e&&(2==a[e-1].tok&&10==a[0].tok)&&(f=a[e-1].asInt(),0>=f&&(f=2147483646),e--));switch(e){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=d.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 g=0;3>g;g++)if(8!=a[g].tok&&10!=a[g].tok)return!1;break;default:return!1}var j=
g=null,k=null;switch(e){case 0:return d.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);g=z(a,"JU.Quat")?a:null;break}else if(134221850==b&&10==a[0].tok)j=this.vwr.getAtomGroupQuaternions(a[0].value,f);else if(11==a[0].tok)g=JU.Quat.newM(a[0].value);else if(9==a[0].tok)k=a[0].value;else if(k=JS.SV.sValue(a[0]),k=JU.Escape.uP(k.equalsIgnoreCase("best")?this.vwr.getOrientation(1073741864,
"best",null,null).toString():k),!z(k,"JU.P4"))return!1;134217731==b&&(g=JU.Quat.newVA(JU.P3.new3(k.x,k.y,k.z),k.w));break;case 2:if(134221850==b){if(7==a[0].tok&&7==a[1].tok){b=this.e.getQuaternionArray(a[0].getList(),1073742001);j=this.e.getQuaternionArray(a[1].getList(),1073742001);j=JU.Quat.arrayDiv(j,b,f,h);break}if(7==a[0].tok&&1073742335==a[1].tok)return b=this.e.getQuaternionArray(a[0].getList(),1073742001),f=D(1,0),JU.Quat.sphereMean(b,f,1E-4),d.addXFloat(f[0]);if(10==a[0].tok&&10==a[1].tok){b=
this.vwr.getAtomGroupQuaternions(a[0].value,2147483647);j=this.vwr.getAtomGroupQuaternions(a[1].value,2147483647);j=JU.Quat.arrayDiv(j,b,f,h);break}}g=d.ptValue(a[1],null);k=this.e.planeValue(a[0]);g=null!=g?JU.Quat.getQuaternionFrame(JU.P3.new3(0,0,0),c,g):JU.Quat.newVA(c,JS.SV.fValue(a[1]));break;case 3:if(9==a[0].tok)return f=8==a[2].tok?a[2].value:this.vwr.ms.getAtomSetCenter(a[2].value),d.addXStr(JU.Escape.drawQuat(JU.Quat.newP4(a[0].value),"q",JS.SV.sValue(a[1]),f,1));b=Array(3);for(g=0;3>g;g++)b[g]=
8==a[g].tok?a[g].value:this.vwr.ms.getAtomSetCenter(a[g].value);g=JU.Quat.getQuaternionFrame(b[0],b[1],b[2]);break;case 4:134221850==b?k=JU.P4.new4(JS.SV.fValue(a[1]),JS.SV.fValue(a[2]),JS.SV.fValue(a[3]),JS.SV.fValue(a[0])):g=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!=j){if(2147483647!=f){f=new JU.Lst;for(g=0;g<j.length;g++)f.addLast(j[g].toPoint4f());return d.addXList(f)}g=0<j.length?j[0]:null}return d.addXPt4((null==g?JU.Quat.newP4(k):
g).toPoint4f())},"JS.ScriptMathProcessor,~A,~N");p(m,"evaluateRandom",function(d,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($(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 d.addXFloat(this.rand.nextFloat()*(c-b)+b)},"JS.ScriptMathProcessor,~A");p(m,"evaluateRowCol",function(d,a,b){if(1!=a.length)return!1;a=a[0].asInt()-1;var c=d.getX();switch(c.tok){case 11:if(0>
a||2<a)break;c=c.value;switch(b){case 1275068935:return b=D(3,0),c.getRow(a,b),d.addXAF(b);default:return b=D(3,0),c.getColumn(a,b),d.addXAF(b)}case 12:if(0>a||2<a)break;c=c.value;switch(b){case 1275068935:return b=D(4,0),c.getRow(a,b),d.addXAF(b);default:return b=D(4,0),c.getColumn(a,b),d.addXAF(b)}case 7:b=c.getList();for(var c=new JU.Lst,e=0,f=b.size();e<f;e++){var h=b.get(e).getList();if(null==h)return d.addXStr("");c.addLast(a<h.size()?h.get(a):JS.SV.newS(""))}return d.addXList(c)}return!1},
"JS.ScriptMathProcessor,~A,~N");p(m,"evaluateIn",function(d,a){var b=d.getX();switch(a.length){case 1:var c=a[0].getList();if(null!=c)for(var e=0,f=c.size();e<f;e++)if(JS.SV.areEqual(b,c.get(e)))return d.addXInt(e+1);break;default:for(e=0;e<a.length;e++)if(JS.SV.areEqual(b,a[e]))return d.addXInt(e+1)}return d.addXInt(0)},"JS.ScriptMathProcessor,~A");p(m,"evaluateReplace",function(d,a){var b=!1,c,e;switch(a.length){case 0:b=!0;c=e=null;break;case 3:b=JS.SV.bValue(a[2]);case 2:c=JS.SV.sValue(a[0]);
e=JS.SV.sValue(a[1]);break;default:return!1}var f=d.getX();if(7==f.tok){for(var f=JS.SV.strListValue(f),h=Array(f.length),g=f.length;0<=--g;)h[g]=null==c?JU.PT.clean(f[g]):b?JU.PT.replaceAllCharacters(f[g],c,e):JU.PT.rep(f[g],c,e);return d.addXAS(h)}f=JS.SV.sValue(f);return d.addXStr(null==c?JU.PT.clean(f):b?JU.PT.replaceAllCharacters(f,c,e):JU.PT.rep(f,c,e))},"JS.ScriptMathProcessor,~A");p(m,"evaluateScript",function(d,a,b){if(134222350!=b&&!this.checkAccess()||0==a.length||1!=a.length&&(134222350==
b||134238732==b)||(134222350==b||134238732==b)&&1!=a.length||0==a.length)return!1;var c=JS.SV.sValue(a[0]),e=new JU.SB;switch(b){case 134218759:return 2==a.length?c.equalsIgnoreCase("JSON")&&d.addXObj(this.vwr.parseJSON(JS.SV.sValue(a[1]))):d.addXObj(this.vwr.evaluateExpressionAsVariable(c));case 134222850:a=2==a.length?JS.SV.sValue(a[1]):".";a.equals(".")||e.append(this.vwr.jsEval(a+"\u0001"+c));(a.equals(".")||a.equals("*"))&&this.e.runScriptBuffer(c,e,!0);break;case 134222350:this.e.runScriptBuffer("show "+
c,e,!0);break;case 134238732:return d.addX(this.vwr.jsEvalSV(c))}var c=e.toString(),f;return Float.isNaN(f=JU.PT.parseFloatStrict(c))?d.addXStr(c):0<=c.indexOf(".")?d.addXFloat(f):d.addXInt(JU.PT.parseInt(c))},"JS.ScriptMathProcessor,~A,~N");p(m,"checkAccess",function(){return!this.vwr.haveAccessInternal(null)});p(m,"evaluateSort",function(d,a,b){if(1<a.length)return!1;if(1275068444==b){if(1==a.length&&4==a[0].tok)return d.addX(d.getX().sortMapArray(a[0].asString()));var c=0==a.length?0:a[0].asInt();
return d.addX(d.getX().sortOrReverse(c))}b=d.getX();a=0==a.length?null:a[0];if(4==b.tok){var c=0,e=JS.SV.sValue(b);if(null==a)return d.addXInt(0);a=JS.SV.sValue(a);for(b=0;b<e.length;b++){b=e.indexOf(a,b);if(0>b)break;c++}return d.addXInt(c)}var c=new JU.Lst,f=e=null,h=JS.SV.getVariable(b.value).sortOrReverse(0).getList();if(null==h)return null==a?d.addXStr(""):d.addXInt(0);b=0;for(var g=h.size();b<=g;b++){var j=b==g?null:h.get(b);if(!(null!=a&&null!=j&&!JS.SV.areEqual(j,a)))if(JS.SV.areEqual(j,e))f.intValue++;
else{if(null!=e){var k=new JU.Lst;k.addLast(e);k.addLast(f);c.addLast(JS.SV.getVariableList(k))}f=JS.SV.newI(1);e=j}}return null==a?d.addX(JS.SV.getVariableList(c)):c.isEmpty()?d.addXInt(0):d.addX(c.get(0).getList().get(1))},"JS.ScriptMathProcessor,~A,~N");p(m,"evaluateString",function(d,a,b){var c=d.getX(),e=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 d.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 d.addX(c),this.evaluateList(d,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){e=c.value;c=this.vwr.ms.mc;b=new JU.Lst;for(a=0;a<c;a++){var f=this.vwr.getModelUndeletedAtomsBitSet(a);f.and(e);b.addLast(JS.SV.getVariable(f))}return d.addXList(b)}return d.addXAS(JU.PT.split(b,
e));case 1275069446:return 0<b.length&&"\n"==b.charAt(b.length-1)&&(b=b.substring(0,b.length-1)),d.addXStr(JU.PT.rep(b,"\n",e));case 1275068932:if(null!=b)return d.addXStr(JU.PT.trim(b,e));c=JS.SV.strListValue(c);for(a=c.length;0<=--a;)c[a]=JU.PT.trim(c[a],e);return d.addXAS(c)}return d.addXStr("")},"JS.ScriptMathProcessor,~N,~A");p(m,"evaluateSubstructure",function(d,a,b,c){var e=c?d.getX():null,f=null,h=null;if(null!=e)switch(e.tok){case 10:h=e.value;break;case 4:if(f=e.value,f.startsWith("InChI"))return d.addX(e),
this.evaluateInChI(d,t(-1,[JS.SV.newS("SMILES "+(0<a.length?a[0].asString():0<=f.indexOf("/f")?"fixedh":"amide"))]))}if(c&&134218757==b)return d.addXObj(this.e.getSmilesExt().getSmilesMatches("",null,h,null,1,!0,!1));if(0==a.length||c&&(134218753==b||1<a.length))return!1;e=134218756==b&&!c&&134218756==a[0].tok?a[0].value:null;if(null!=e&&2>a.length)return!1;c=134218756==b&&!c&&10==a[0].tok;f=134218753==a[0].tok?a[0].value:null!=e&&134218753==a[1].tok?a[1].value:null;if(null!=e&&null==f)return!1;var g=
c?null:null==f?JS.SV.sValue(a[0]):null,j=new JU.BS;if(null==g||0<g.length)try{if(c)return d.addX(JS.SV.newV(134218756,this.vwr.getSmilesMatcher().compileSearchTarget(this.vwr.ms.at,this.vwr.ms.ac,JS.SV.getBitSet(a[0],!1))));if(null!=e)return d.addXBs(this.vwr.getSmilesMatcher().getSubstructureSet(f,e,0,null,2));if(134218753==b)return d.addX(JS.SV.newV(134218753,this.vwr.getSmilesMatcher().compileSmartsPattern(g)));null==h&&(h=2==a.length&&10==a[1].tok?a[1].value:this.vwr.getModelUndeletedAtomsBitSet(-1));
j=this.vwr.getSmilesMatcher().getSubstructureSet(null==f?g:f,this.vwr.ms.at,this.vwr.ms.ac,h,134218757==b?1:2)}catch(k){if(O(k,Exception))this.e.evalError(k.getMessage(),null);else throw k;}return 134218753!=b&&d.addXBs(j)},"JS.ScriptMathProcessor,~A,~N,~B");p(m,"evaluateSymop",function(d,a,b){if(!b&&2==a.length&&7==a[0].tok&&4==a[1].tok){for(var c=new JU.Lst,e=a[0].value,f=0,h=e.size();f<h;f++){b=this.getSymopInfo(d,null,t(-1,[e.get(f),a[1]]),f+1,!1);if(null==b)return!1;c.addLast(b)}return d.addXList(c)}c=
b?d.getX():null;b=this.getSymopInfo(d,c,a,0,b);return d.addXObj(b)},"JS.ScriptMathProcessor,~A,~B");p(m,"getSymopInfo",function(d,a,b,c,e){var f=null,h=b.length,g=2==h&&4==b[1].tok?b[1].value.toLowerCase():null,j="rxyz".equals(g);if(null!=g){var k=null,l=null;switch(b[0].tok){case 4:switch(g){case "rxyz":case "matrix":l=b[0].value}break;case 12:switch(g){case "rxyz":case "xyz":k=b[0].value}}if(null!=k||null!=l)return this.vwr.getSymStatic().staticConvertOperation(l,k,j?"rxyz":null)}var m=!1;if(null!=
a&&10!=a.tok&&!(m=8==a.tok))return null;f=null==a||m?null:a.value;a=m?JS.SV.ptValue(a):null;!m&&null==f&&(f=this.vwr.getThisModelAtoms());if(0==h){k=JU.PT.split(JU.PT.trim(this.vwr.getSymTemp().getSpaceGroupInfo(this.vwr.ms,null,null==f||f.isEmpty()?Math.max(0,this.vwr.am.cmi):this.vwr.ms.at[f.nextSetBit(0)].mi,!1,null).get("symmetryInfo"),"\n"),"\n");a=new JU.Lst;for(var n=0,l=k.length;n<l;n++)a.addLast(JU.PT.split(k[n],"\t"));return a}var l=null,r=0,j=-2147483648,p=0,q=null,t=null,u=!1;switch(b[0].tok){case 4:l=
JS.SV.sValue(b[0]);switch(null==l?"":l.toLowerCase()){case "count":return n=this.vwr.getOperativeSymmetry(),1!=h?null:Integer.$valueOf(null==n?0:n.getSpaceGroupOperationCount());case "":r=0;break;case "invariant":r=36868;break;case "wyckoff":r=1086324754;u=!0;break;case "wyckoffm":r=1086324755,u=!0}p++;break;case 12:l=b[0].escape();p++;break;case 2:j=b[0].asInt();p++;break;case 10:m||(t=1==b.length||10!=b[1].tok?f:null,f=this.vwr.getModelUndeletedAtomsBitSet(this.vwr.getModelIndexForAtom(f.nextSetBit(0))))}null==
f?(p<h&&10==b[p].tok&&(f=new JU.BS).or(b[p].value),p+1<h&&10==b[p+1].tok&&(null==f?f=new JU.BS:f).or(b[p+1].value)):f.isEmpty()||(f=this.vwr.getModelUndeletedAtomsBitSet(this.vwr.getModelIndexForAtom(f.nextSetBit(0))));m=null;if(h>p&&7==b[p].tok){q=b[p++].getList();if(3!=q.size())return null;m=JU.P3.new3(JS.SV.fValue(q.get(0)),JS.SV.fValue(q.get(1)),JS.SV.fValue(q.get(2)))}else h>p&&2==b[p].tok&&JU.SimpleUnitCell.ijkToPoint3f(JS.SV.iValue(b[p++]),m=new JU.P3,0,0);null==a&&null!=(a=h>p?d.ptValue(b[p],
f):null)&&p++;null!=(q=h>p?d.ptValue(b[p],f):null)&&p++;if(null!=a&&null==q&&null!=t&&!t.isEmpty()){q=a;t=JU.BSUtil.copy(t);t.and(f);a=this.vwr.ms.getSymmetryEquivAtoms(t,null,null).nextSetBit(0);if("basis".equals(g))return JU.BSUtil.newAndSetBit(a);a=JU.P3.newP(this.vwr.ms.at[a])}d=null!=q&&b.length>p&&-2147483648==j&&2==b[p].tok?b[p].intValue:-1;0<=d&&p++;-2147483648==j&&36868!=r&&(j=0);g=null;0==r&&(null!=l&&0>l.indexOf(","))&&(p==h?g=this.vwr.ms.getPointGroupInfo(null):6==b[p].tok&&(g=b[p].getMap()));
if(null!=g){b=l.indexOf(".");c=l.indexOf("^");0<c?d=JU.PT.parseInt(l.substring(c+1)):(c=l.length,d=1);0<b&&c>b+1?(j=JU.PT.parseInt(l.substring(b+1,c)),1>j&&(j=1),c=b):j=1;l=l.substring(0,c);f=g.get(l+"_m");if(null==f)return f=g.get(l),null==f?"":f;var v;try{if(z(f,"JS.SV"))if(v=g.get("center").value,l=f,11==l.tok)k=l.value;else if(7==l.tok)k=l.getList().get(j-1).value;else return null;else v=g.get("center"),k=z(f,"JU.M3")?f:f.get(j-1);l=k;k=JU.M3.newM3(k);if(1<d)for(n=1;n<d;n++)k.mul(l);if(null==
a)return k;a=JU.P3.newP(a);a.sub(v);k.rotate(a);a.add(v);return a}catch(D){if(!O(D,Exception))throw D;}return null}v=h==p?u?"":36868==r?"id":null!=q||null==a?"matrix":"point":JS.SV.sValue(b[p++]);2<h&&"rxyz".equals(v);h=(n=(!u||e)&&null!=f&&!f.isEmpty())?f.nextSetBit(0):-1;if(u){for(b=n?this.vwr.ms.getAtom(h):a;0<v.length&&JU.PT.isDigit(v.charAt(0));)v=v.substring(1);if(null==b)switch(v){case "":case "*":v="*";break;default:if(1==v.length)v+="*";else return null}if(0==v.length||v.equalsIgnoreCase("label"))v=
null;k=null==v?1086324755==r?"":null:v.endsWith("*")||v.equalsIgnoreCase("coord")||v.equalsIgnoreCase("coords")?v:v.substring(0,1);n=this.vwr.getOperativeSymmetry();return null==n?null:n.getWyckoffPosition(this.vwr,b,null==k?1086324755==r?"M":null:(1086324755==r?"M":"")+k)}v=v.toLowerCase();if(36868==r||v.equals("invariant")&&e)n&&null==a&&(a=this.vwr.ms.at[h]),0>h&&(h=this.vwr.getThisModelAtoms().nextSetBit(0));if(36868==r&&-2147483648==j){l=null;n=this.vwr.getCurrentUnitCell();null!=a?l=null==n?
P(0,0):n.getInvariantSymops(a,null):null!=f&&!f.isEmpty()&&(n=f.nextSetBit(0),a=this.vwr.ms.at[n],l=this.vwr.ms.getSymmetryInvariant(n));if(null!=l&&0<l.length){k=Array(l.length);for(n=0;n<k.length;n++)j=l[n],k[n]=this.vwr.getSymmetryInfo(h,null,j,null,a,a,1275068418,v,0,-1,0,null);return k}return l}return p==b.length?this.vwr.getSymmetryInfo(h,l,0<c?c:j,m,a,q,1275068418,v,0,d,0,null):null},"JS.ScriptMathProcessor,JS.SV,~A,~N,~B");p(m,"evaluateTensor",function(d,a){var b=2==a.length&&1275068445==
a[1].tok,c=b?null:d.getX();if(2<a.length||!b&&10!=c.tok)return!1;var c=c.value,e=b||0==a.length?null:JS.SV.sValue(a[0]).toLowerCase(),f=this.vwr.getNMRCalculation();if("unique".equals(e))return d.addXBs(f.getUniqueTensorSet(c));var h=2>a.length?null:JS.SV.sValue(a[1]).toLowerCase();return b?d.addXObj(a[0].value.getInfo(h)):d.addXList(f.getTensorInfo(e,h,c))},"JS.ScriptMathProcessor,~A");p(m,"evaluateUserFunction",function(d,a,b,c,e){var f=null;if(e)switch(f=d.getX(),f.tok){case 10:break;case 6:if(0<
b.length)return!1;f=f.getMap().get(a);return null==f?d.addXStr(""):d.addX(f);default:return!1}a=a.toLowerCase();d.wasX=!1;for(var h=new JU.Lst,g=0;g<b.length;g++)h.addLast(b[g]);if(e)return d.addXObj(this.e.getBitsetProperty(f.value,null,c,null,null,f.value,t(-1,[a,h]),!1,f.index,!1));a=this.e.getUserFunctionResult(a,h,null);return null==a?!1:d.addX(a)},"JS.ScriptMathProcessor,~S,~A,~N,~B");p(m,"evaluateWithin",function(d,a,b){var c=a.length;if(1>c||5<c)return!1;if(1==c&&10==a[0].tok)return d.addX(a[0]);
var e=b?JS.SV.getBitSet(d.getX(),!1):null,f=0,h=a[0].value,g=""+h,j=this.vwr.ms,k=!1,l=!1,p=!1,n=!1,m=null,C=null,q=a[0].tok;a:for(;;){switch(4==q?q=JS.T.getTokFromName(g):q){case 1648363544:k=!0,h=null;case 3:case 2:n=!0;if(2>c||3==c&&7==a[1].tok&&7!=a[2].tok)return!1;f=k?100:JS.SV.fValue(a[0]);switch(q=a[1].tok){case 1073742335:case 1073742334:l=a[1].asBoolean();if(2<c&&JS.SV.sValue(a[2]).equalsIgnoreCase("unitcell"))q=1814695966;else if(2<c&&10!=a[2].tok)return!1;c=0;break;case 4:q=JS.SV.sValue(a[1]);
if(q.startsWith("$")){m=this.getAtomsNearSurface(f,q.substring(1));break a}if(q.equalsIgnoreCase("group"))p=!0,q=1086324742;else if(q.equalsIgnoreCase("vanderwaals")||q.equalsIgnoreCase("vdw"))h=null,k=!0,q=1648363544;else if(q=JS.T.getTokFromName(q),0==q)return!1}break;case 7:1==c&&(h=a[0].asString(),q=0);break;case 1073742328:m=3==c&&z(a[1].value,"JU.BS")&&z(a[2].value,"JU.BS")?this.vwr.getBranchBitSet(a[2].value.nextSetBit(0),a[1].value.nextSetBit(0),!0):null;break a;case 134218757:case 1237320707:case 134218756:f=
!0;switch(c){case 2:m=e;break;case 3:if(f=10==a[2].tok)m=a[2].value;break;default:f=!1}return f&&d.addXObj(this.e.getSmilesExt().getSmilesMatches(JS.SV.sValue(a[1]),null,m,null,134218756==q?2:1,d.asBitSet,!1))}if("string"==typeof h){if(0==q){q=1073742362;if(2<c)return!1;c=2}}else if(!n)return!1;switch(c){case 1:switch(q){case 2097184:case 136314895:case 1812599299:case 1814695966:m=j.getAtoms(q,null);break a;case 1073741863:m=j.getAtoms(q,"");break a;case 1073742362:m=j.getAtoms(1086324744,g);break a}return!1;
case 2:switch(q){case 1073742362:q=1086324744;break;case 1073741824:case 1086326786:case 1086326785:case 1073741863:case 1086324744:case 1111490587:case 1073742128:case 1073741925:case 1073742189:m=this.vwr.ms.getAtoms(q,JS.SV.sValue(a[1]));break a;case 1094713349:case 1094713350:m=this.vwr.ms.getAtoms(q,JS.SV.ptValue(a[1]));break a;case 1814695966:f=a[1].getList();if(null==f)return!1;c=c=null;if(4!=f.size())return!1;c=Array(4);for(a=0;4>a;a++)if(null==(c[a]=JS.SV.ptValue(f.get(a))))return!1;c=this.vwr.getSymTemp().getUnitCell(c,
!1,null);m=this.vwr.ms.getAtoms(q,c);break a}break;case 3:switch(q){case 1073742335:case 1073742334:case 1086324742:case 1648363544:case 1814695966:case 134217750:case 134219777:case 1073742329:case 8:case 7:break;case 1086324744:g=JS.SV.sValue(a[1]);break;default:return!1}}var t=null,h=c=null,m=a.length-1;switch(a[m].tok){case 9:t=a[m].value;break;case 8:c=a[m].value;JS.SV.sValue(a[1]).equalsIgnoreCase("hkl")&&(t=this.e.getHklPlane(c,NaN,null));break;case 7:h=2==m&&7==a[1].tok?a[1].getList():null,
c=2==m?JS.SV.ptValue(a[1]):1==m?JU.P3.new3(NaN,0,0):null}if(null!=t){m=j.getAtomsNearPlane(f,t);break a}j=10==a[m].tok?a[m].value:null;null==e&&(e=j);if(0<m&&null==c&&null==h&&null==e)return!1;if(1814695966==q)return q=l,(null!=e||null!=c)&&d.addXObj(this.vwr.ms.getUnitCellPointsWithin(f,e,c,q));if(null!=c||null!=h){if(7==a[m].tok){b=a[m].getList();q=Array(b.size());for(a=q.length;0<=--a;)q[a]=JS.SV.ptValue(b.get(a));b=null;if(null!=h){b=Array(h.size());for(a=b.length;0<=--a;)b[a]=JS.SV.ptValue(h.get(a))}a=
Array(1);null!=e&&(e.and(this.vwr.getAllAtoms()),b=this.vwr.ms.at);switch(J.bspt.PointIterator.withinDistPoints(f,c,q,b,e,a)){case 10:return d.addXBs(a[0]);case 134217751:return d.addXPt(a[0]);case 1073742001:return d.addXList(a[0]);case 1275068418:return d.addXAI(a[0]);case 4:return d.addXStr(a[0]);default:return!1}}return d.addXBs(this.vwr.getAtomsNearPt(f,c,null))}if(1086324744==q)return d.addXBs(this.vwr.ms.getSequenceBits(g,e,new JU.BS));null==e&&(e=new JU.BS);if(!n)try{return d.addXBs(this.vwr.ms.getAtoms(q,
e))}catch(u){if(O(u,Exception))return!1;throw u;}if(p)return d.addXBs(this.vwr.getGroupsWithin($(f),e));k&&(C=new J.atomdata.RadiusData(null,10<f?f/100:f,10<f?J.atomdata.RadiusData.EnumType.FACTOR:J.atomdata.RadiusData.EnumType.OFFSET,J.c.VDW.AUTO),0>f&&(f=0));e=this.vwr.ms.getAtomsWithinRadius(f,b?j:e,l,C,b?e:null);b&&e.andNot(j);return d.addXBs(e)}return null!=m?(null!=e&&m.and(e),d.addXBs(m)):!1},"JS.ScriptMathProcessor,~A,~B");p(m,"evaluateWrite",function(d,a){if(!this.checkAccess())return!1;
var b=a.length,c=!1;2==b&&1073742335==a[1].tok&&(b=1,c=!0);switch(b){case 0:return!1;case 1:var e=a[0].asString().toUpperCase();if(e.equals("PNGJ"))return b=this.vwr.fm.getFileAsMap(null,"PNGJ",c),c?d.addX(JS.SV.newV(15,new JU.BArray(b))):d.addXMap(b);if(JU.PT.isOneOf(e,";ZIP;ZIPALL;JMOL;")){var b=new java.util.Hashtable,f=new JU.OC;b.put("outputChannel",f);this.vwr.createZip(null,e,b);e=f.toByteArray();if(c)return d.addX(JS.SV.newV(15,new JU.BArray(e)));b=new java.util.Hashtable;this.vwr.readFileAsMap(JU.Rdr.getBIS(e),
b,null);return d.addXMap(b)}}return d.addXStr(this.e.getCmdExt().dispatch(134221856,!0,a))},"JS.ScriptMathProcessor,~A");p(m,"getAtomsNearSurface",function(d,a){var b=t(-1,[a,null,null]);if(this.e.getShapePropertyData(24,"getVertices",b))return this.getAtomsNearPts(d,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(d,b[2],null);b[1]=Float.$valueOf(d);return this.e.getShapePropertyData(21,"getAtomsWithin",
b)?b[2]:new JU.BS},"~N,~S");p(m,"getAtomsNearPts",function(d,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 e=this.vwr.ms.at,f=this.vwr.ms.ac;0<=--f;){var h=e[f];if(null!=h)for(var g=b.nextSetBit(0);0<=g;g=b.nextSetBit(g+1))if(h.distance(a[g])<d){c.set(f);break}}return c},"~N,~A,JU.BS");p(m,"getMinMax",function(d,a,b){for(var c=null,e=null,f=0,h=null;;){if(JU.AU.isAF(d)){if(1275068725==a)return Float.$valueOf(NaN);c=d;f=c.length;
if(0==f)break}else if(z(d,"JU.Lst"))if(e=d,f=e.size(),0==f){if(1275068725!=a)break}else{if(1275068725!=a){d=e.get(0);if(8==d.tok)return this.getMinMaxPoint(e,a);if(4==d.tok&&d.value.startsWith("{")){b=JS.SV.ptValue(d);if(z(b,"JU.P3"))return this.getMinMaxPoint(e,a);if(z(b,"JU.P4"))return this.getMinMaxQuaternion(e,a);break}}}else break;var g,j=!1;switch(a){case 1275068725:h=new java.util.Hashtable;d=g=0;break;case 32:j=!0;d=3.4028235E38;g=2147483647;break;case 64:d=-3.4028235E38;g=-2147483647;break;
default:d=g=0}for(var k=0,l=0,m=!0,n=1275068725==a;0<=--f;){var p=null==e?null:e.get(f),t=!b?null:null==p?JS.SV.vF:p,q=n?1:null==c?JS.SV.fValue(t):c[f];if(!Float.isNaN(q))switch(l++,a){case 160:case 192:k+=q*q;case 128:case 96:d+=q;break;case 1275068725:p=null==t?p.toString():t.asString();t=h.get(p);h.put(p,null==t?Integer.$valueOf(1):Integer.$valueOf(t.intValue()+1));break;case 32:case 64:m=(new Boolean(m&2==t.tok)).valueOf(),j==q<d&&(d=q,m&&(g=t.intValue))}}if(1275068725==a)return h;if(0==l)break;
switch(a){case 96:d/=l;break;case 192:if(1==l)break;d=Math.sqrt((k-d*d/l)/(l-1));break;case 32:case 64:if(m)return Integer.$valueOf(g);break;case 160:d=k}return Float.$valueOf(d)}return JS.MathExt.nan},"~O,~N,~B");p(m,"getMinMaxPoint",function(d,a){var b=null,c=null,e=0;z(d,Array)?(b=d,e=b.length):z(d,"JU.Lst")&&(c=d,e=c.size());if(null==c&&null==b)return JS.MathExt.nan;for(var f=new JU.P3,h=D(e,0),g=0;3>g;g++){for(var j=0;j<e;j++){var k=null==b?JS.SV.ptValue(c.get(j)):b[j];if(null==k)return JS.MathExt.nan;
switch(g){case 0:h[j]=k.x;break;case 1:h[j]=k.y;break;case 2:h[j]=k.z}}j=this.getMinMax(h,a,!0);if(!z(j,Number))return JS.MathExt.nan;j=j.floatValue();switch(g){case 0:f.x=j;break;case 1:f.y=j;break;case 2:f.z=j}}return f},"~O,~N");p(m,"getMinMaxQuaternion",function(d,a){var b;switch(a){case 32:case 64:case 128:case 160:return JS.MathExt.nan}for(;;){b=this.e.getQuaternionArray(d,1073742001);if(null==b)break;var c=D(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 JS.MathExt.nan},
"JU.Lst,~N");p(m,"getPatternMatcher",function(){return null==this.pm?this.pm=J.api.Interface.getUtil("PatternMatcher",this.e.vwr,"script"):this.pm});p(m,"opTokenFor",function(d){switch(d){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");p(m,"setContactBitSets",function(d,a,b,c,e,f){var h,g;null==a?(a=JU.BSUtil.setAll(this.vwr.ms.ac),
JU.BSUtil.andNot(a,this.vwr.slm.bsDeleted),a.andNot(d),h=!1):(g=JU.BSUtil.copy(d),g.or(a),g=this.vwr.ms.getModelBS(g,!1).cardinality(),h=1<g,f&&(1<g&&!this.e.tQuiet)&&this.e.showString(J.i18n.GT.$("Note: More than one model is involved in this contact!")));if(!d.equals(a)){if(f=!b||d.cardinality()<a.cardinality())g=this.vwr.ms.getAtomsWithinRadius(c,d,h,Float.isNaN(c)?e:null,null),a.and(g);b&&(g=this.vwr.ms.getAtomsWithinRadius(c,a,h,Float.isNaN(c)?e:null,null),d.and(g),f||(g=this.vwr.ms.getAtomsWithinRadius(c,
d,h,Float.isNaN(c)?e:null,null),a.and(g)),g=JU.BSUtil.copy(a),g.and(d),g.equals(d)?a.andNot(d):g.equals(a)&&d.andNot(a))}return a},"JU.BS,JU.BS,~B,~N,J.atomdata.RadiusData,~B");m.nan=Float.$valueOf(NaN);m.t0=System.currentTimeMillis()});V("J.bspt");W(null,"J.bspt.PointIterator","JU.BS $.Lst $.P3 J.bspt.Bspt JU.BSUtil $.Point3fi".split(" "),function(){var m=aa(J.bspt,"PointIterator",null);m.withinDistPoints=p(m,"withinDistPoints",function(d,a,b,c,e,f){var h=new JU.Lst,g=new J.bspt.Bspt(3,0),j;if(null!=
a&&Float.isNaN(a.x)){for(var k=Array(b.length),l=k.length;0<=--l;){j=b[l];if(null==j)return 0;null==e?(a=new JU.Point3fi,a.setT(j),a.i=l,k[l]=a,g.addTuple(a)):g.addTuple(j)}j=g.allocateCubeIterator();if(null!=e){b=JU.BS.newN(c.length);for(l=e.nextSetBit(0);0<=l;l=e.nextSetBit(l+1)){j.initialize(c[l],d,!1);for(g=d*d;j.hasMoreElements();)if(j.nextElement().distanceSquared(c[l])<=g){b.set(l);break}}f[0]=b;return 10}b=JU.BSUtil.newBitSet2(0,b.length);for(l=k.length;0<=--l;){j.initialize(a=k[l],d,!1);
g=d*d;for(e=0;j.hasMoreElements();)c=j.nextElement(),b.get(c.i)&&(c.distanceSquared(a)<=g&&1<++e)&&b.clear(c.i)}for(l=b.nextSetBit(0);0<=l;l=b.nextSetBit(l+1))h.addLast(JU.P3.newP(k[l]));f[0]=h;return 1073742001}if(0==d){if(null==c){g=3.4028235E38;k=null;for(l=b.length;0<=--l;)h=b[l],d=h.distanceSquared(a),d<g&&(k=h,g=d);f[0]=null==k?"":k;return null==k?4:134217751}k=P(c.length,0);for(l=k.length;0<=--l;){g=3.4028235E38;e=-1;a=c[l];for(j=b.length;0<=--j;)h=b[j],d=h.distanceSquared(a),d<g&&(e=j,g=d);
k[l]=e}f[0]=k;return 1275068418}for(l=b.length;0<=--l;)g.addTuple(b[l]);j=g.allocateCubeIterator();j.initialize(a,d,!1);for(g=d*d;j.hasMoreElements();)c=j.nextElement(),c.distanceSquared(a)<=g&&h.addLast(c);j.release();f[0]=h;return 1073742001},"~N,JU.P3,~A,~A,JU.BS,~A")});V("JU");W(null,"JU.PatternMatcher",["JV.Viewer"],function(){var m=aa(JU,"PatternMatcher",null);p(m,"compile",function(d,a){if(JV.Viewer.isJS&&!JV.Viewer.isSwingJS)return new JU.PatternMatcher.JSPattern(d,a)},"~S,~B");m=Z(function(){this.strString=
this.regexp=null;this.rightBound=this.leftBound=-1;this.results=null;Y(this,arguments)},JU.PatternMatcher,"JSPattern",null);qa(m,function(d,a){this.regexp=RegExp(d,a?"gi":"g")},"~S,~B");p(m,"find",function(){var d=this.rightBound==this.strString.length?this.strString:this.strString.substring(0,this.rightBound);this.regexp.lastIndex=this.leftBound;this.results=this.regexp.exec(d);this.leftBound=this.regexp.lastIndex;return null!=this.results});p(m,"start",function(){return this.regexp.lastIndex-this.results[0].length});
p(m,"end",function(){return this.regexp.lastIndex});p(m,"group",function(){return null==this.results||0==this.results.length?null:this.results[0]});p(m,"matcher",function(d){this.strString=d;this.leftBound=0;this.rightBound=d.length;return this},"~S")})})(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.newFloatArray,Clazz.declareType,Clazz.prepareFields,Clazz.superConstructor,Clazz.newByteArray,Clazz.declareInterface,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);
