(function(sa,O,U,S,Na,Oa,Pa,Qa,Ra,Sa,V,x,M,Ta,Da,ta,A,Q,ha,m,ca,I,c,K,G,B,Ua,D,X,Va,t,$,e,T,Wa,da,v,r,p,y,q,u,w,Y,z,n,C,N,H,aa,F,Z,P,R,L,ea,fa,Ea,Fa,Ga,Ha,ba,ga,Xa,ua,W,va,ja,ma,pa,Ia,qa,ia,ra,Ja,Ya,ka,Ka,La,na,la,wa,xa,ya,za,Aa,oa,Ba,Ma,Ca){___JmolDate="$Date: 2014-01-05 16:16:19 -0600 (Sun, 05 Jan 2014) $";___fullJmolProperties="src/org/jmol/viewer/Jmol.properties";___JmolVersion="14.0.4";Math.log10||(Math.log10=function(a){return Math.log(a)/2.302585092994046});sa=Number.prototype.toString;java.lang.Number=
Number;if(qa)for(U=0;U<ia.length;U++)S=ia[U],Number.prototype[S]=JavaObject.prototype[S];Number.prototype.toString=sa;Number.__CLASS_NAME__="Number";ma(Number,java.io.Serializable);Number.equals=ka.equals;Number.getName=ka.getName;c(Number,"shortValue",function(){var a=Math.round(this)&65535;return 0>this&&0<a?a-65536:a});c(Number,"byteValue",function(){var a=Math.round(this)&255;return 0>this&&0<a?a-256:a});c(Number,"intValue",function(){return Math.round(this)&4294967295});c(Number,"longValue",
function(){return Math.round(this)});c(Number,"floatValue",function(){return this.valueOf()});c(Number,"doubleValue",function(){return parseFloat(this.valueOf())});e(Number,"hashCode",function(){return this.valueOf()});java.lang.Integer=Integer=function(){u(this,arguments)};W(Integer,"Integer",Number,Comparable,null,!0);Integer.prototype.valueOf=function(){return 0};Integer.toString=Integer.prototype.toString=function(){return 0!=arguments.length?""+arguments[0]:this===Integer?"class java.lang.Integer":
""+this.valueOf()};ca(Integer,function(a){null==a&&(a=0);"number"!=typeof a&&(a=Integer.parseIntRadix(a,10));this.valueOf=function(){return a}});Integer.MIN_VALUE=Integer.prototype.MIN_VALUE=-2147483648;Integer.MAX_VALUE=Integer.prototype.MAX_VALUE=2147483647;Integer.TYPE=Integer.prototype.TYPE=Integer;c(Integer,"bitCount",function(a){a-=a>>>1&1431655765;a=(a&858993459)+(a>>>2&858993459);a=a+(a>>>4)&252645135;a+=a>>>8;return a+(a>>>16)&63},"Number");Integer.bitCount=Integer.prototype.bitCount;c(Integer,
"numberOfLeadingZeros",function(a){if(0==a)return 32;var b=1;0==a>>>16&&(b+=16,a<<=16);0==a>>>24&&(b+=8,a<<=8);0==a>>>28&&(b+=4,a<<=4);0==a>>>30&&(b+=2,a<<=2);return b-(a>>>31)},"Number");Integer.numberOfLeadingZeros=Integer.prototype.numberOfLeadingZeros;c(Integer,"numberOfTrailingZeros",function(a){if(0==a)return 32;var b=31,d=a<<16;0!=d&&(b-=16,a=d);d=a<<8;0!=d&&(b-=8,a=d);d=a<<4;0!=d&&(b-=4,a=d);d=a<<2;0!=d&&(b-=2,a=d);return b-(a<<1>>>31)},"Number");Integer.numberOfTrailingZeros=Integer.prototype.numberOfTrailingZeros;
c(Integer,"parseIntRadix",function(a,b){if(null==a)throw new NumberFormatException("null");if(2>b)throw new NumberFormatException("radix "+b+" less than Character.MIN_RADIX");if(36<b)throw new NumberFormatException("radix "+b+" greater than Character.MAX_RADIX");if(10==b)for(var d=a.length;0<=--d;){var j=a.charCodeAt(d);if(!(48<=j&&57>=j)&&(0<d||43!=j&&45!=j))throw new NumberFormatException("Not a Number : "+a);}d=parseInt(a,b);if(isNaN(d))throw new NumberFormatException("Not a Number : "+a);return d},
"String, Number");Integer.parseIntRadix=Integer.prototype.parseIntRadix;c(Integer,"parseInt",function(a){return Integer.parseIntRadix(a,10)},"String");Integer.parseInt=Integer.prototype.parseInt;e(Integer,"$valueOf",function(a){return new Integer(a)});Integer.$valueOf=Integer.prototype.$valueOf;e(Integer,"equals",function(a){return null==a||!y(a,Integer)?!1:a.valueOf()==this.valueOf()},"Object");Integer.toHexString=Integer.prototype.toHexString=function(a){a.valueOf&&(a=a.valueOf());if(0>a){var b=
a&16777215;return(a>>24&255)._numberToString(16)+(b=b._numberToString(16)).substring(b.length-6)}return a._numberToString(16)};Integer.toOctalString=Integer.prototype.toOctalString=function(a){a.valueOf&&(a=a.valueOf());return a._numberToString(8)};Integer.toBinaryString=Integer.prototype.toBinaryString=function(a){a.valueOf&&(a=a.valueOf());return a._numberToString(2)};Integer.decodeRaw=c(Integer,"decodeRaw",function(a){0<=a.indexOf(".")&&(a="");var b=a.startsWith("-")?1:0;a=a.replace(/\#/,"0x").toLowerCase();
b=a.startsWith("0x",b)?16:a.startsWith("0",b)?8:10;a=Number(a);return 8==b?parseInt(a,8):a},"~S");Integer.decode=c(Integer,"decode",function(a){a=Integer.decodeRaw(a);if(isNaN(a)||a<Integer.MIN_VALUE||a>Integer.MAX_VALUE)throw new NumberFormatException("Invalid Integer");return new Integer(a)},"~S");e(Integer,"hashCode",function(){return this.valueOf()});java.lang.Long=Long=function(){u(this,arguments)};W(Long,"Long",Number,Comparable,null,!0);Long.prototype.valueOf=function(){return 0};Long.toString=
Long.prototype.toString=function(){return 0!=arguments.length?""+arguments[0]:this===Long?"class java.lang.Long":""+this.valueOf()};ca(Long,function(a){null==a&&(a=0);a="number"==typeof a?Math.round(a):Integer.parseIntRadix(a,10);this.valueOf=function(){return a}});Long.TYPE=Long.prototype.TYPE=Long;c(Long,"parseLong",function(a,b){return Integer.parseInteger(a,b||10)});Long.parseLong=Long.prototype.parseLong;e(Long,"$valueOf",function(a){return new Long(a)});Long.$valueOf=Long.prototype.$valueOf;
e(Long,"equals",function(a){return null==a||!y(a,Long)?!1:a.valueOf()==this.valueOf()},"Object");Long.toHexString=Long.prototype.toHexString=function(a){return a.toString(16)};Long.toOctalString=Long.prototype.toOctalString=function(a){return a.toString(8)};Long.toBinaryString=Long.prototype.toBinaryString=function(a){return a.toString(2)};Long.decode=c(Long,"decode",function(a){a=Integer.decodeRaw(a);if(isNaN(a))throw new NumberFormatException("Invalid Long");return new Long(a)},"~S");java.lang.Short=
Short=function(){u(this,arguments)};W(Short,"Short",Number,Comparable,null,!0);Short.prototype.valueOf=function(){return 0};Short.toString=Short.prototype.toString=function(){return 0!=arguments.length?""+arguments[0]:this===Short?"class java.lang.Short":""+this.valueOf()};ca(Short,function(a){null==a&&(a=0);"number"!=typeof a&&(a=Integer.parseIntRadix(a,10));a=a.shortValue();this.valueOf=function(){return a}});Short.MIN_VALUE=Short.prototype.MIN_VALUE=-32768;Short.MAX_VALUE=Short.prototype.MAX_VALUE=
32767;Short.TYPE=Short.prototype.TYPE=Short;c(Short,"parseShortRadix",function(a,b){return Integer.parseIntRadix(a,b).shortValue()},"String, Number");Short.parseShortRadix=Short.prototype.parseShortRadix;c(Short,"parseShort",function(a){return Short.parseShortRadix(a,10)},"String");Short.parseShort=Short.prototype.parseShort;e(Short,"$valueOf",function(a){return new Short(a)});Short.$valueOf=Short.prototype.$valueOf;e(Short,"equals",function(a){return null==a||!y(a,Short)?!1:a.valueOf()==this.valueOf()},
"Object");Short.toHexString=Short.prototype.toHexString=function(a){return a.toString(16)};Short.toOctalString=Short.prototype.toOctalString=function(a){return a.toString(8)};Short.toBinaryString=Short.prototype.toBinaryString=function(a){return a.toString(2)};Short.decode=c(Short,"decode",function(a){a=Integer.decodeRaw(a);if(isNaN(a)||-32768>a||32767<a)throw new NumberFormatException("Invalid Short");return new Short(a)},"~S");java.lang.Byte=Byte=function(){u(this,arguments)};W(Byte,"Byte",Number,
Comparable,null,!0);Byte.prototype.valueOf=function(){return 0};Byte.toString=Byte.prototype.toString=function(){return 0!=arguments.length?""+arguments[0]:this===Byte?"class java.lang.Byte":""+this.valueOf()};z(Byte,function(a){"number"!=typeof a&&(a=Integer.parseIntRadix(a,10));a=a.byteValue();this.valueOf=function(){return a}});Byte.serialVersionUID=Byte.prototype.serialVersionUID=-0x63b19f7b11af0c00;Byte.MIN_VALUE=Byte.prototype.MIN_VALUE=-128;Byte.MAX_VALUE=Byte.prototype.MAX_VALUE=127;Byte.SIZE=
Byte.prototype.SIZE=8;Byte.TYPE=Byte.prototype.TYPE=Byte;c(Byte,"parseByteRadix",function(a,b){return Integer.parseIntRadix(a,b).byteValue()},"String, Number");Byte.parseByteRadix=Byte.prototype.parseByteRadix;c(Byte,"parseByte",function(a){return Byte.parseByte(a,10)},"String");Byte.parseByte=Byte.prototype.parseByte;e(Byte,"$valueOf",function(a){return new Byte(a)});Byte.$valueOf=Byte.prototype.$valueOf;e(Byte,"equals",function(a){return null==a||!y(a,Byte)?!1:a.valueOf()==this.valueOf()},"Object");
Byte.toHexString=Byte.prototype.toHexString=function(a){return a.toString(16)};Byte.toOctalString=Byte.prototype.toOctalString=function(a){return a.toString(8)};Byte.toBinaryString=Byte.prototype.toBinaryString=function(a){return a.toString(2)};Byte.decode=c(Byte,"decode",function(a){a=Integer.decodeRaw(a);if(isNaN(a)||-128>a||127<a)throw new NumberFormatException("Invalid Byte");return new Byte(a)},"~S");java.lang.Float=Float=function(){u(this,arguments)};W(Float,"Float",Number,Comparable,null,!0);
Float.prototype.valueOf=function(){return 0};Float.toString=Float.prototype.toString=function(){return 0!=arguments.length?""+arguments[0]:this===Float?"class java.lang.Float":""+this.valueOf()};ca(Float,function(a){null==a&&(a=0);"number"!=typeof a&&(a=Number(a));this.valueOf=function(){return a}});Float.serialVersionUID=Float.prototype.serialVersionUID=-0x2512365d24c31000;Float.MIN_VALUE=Float.prototype.MIN_VALUE=3.4028235E38;Float.MAX_VALUE=Float.prototype.MAX_VALUE=1.4E-45;Float.NEGATIVE_INFINITY=
Number.NEGATIVE_INFINITY;Float.POSITIVE_INFINITY=Number.POSITIVE_INFINITY;Float.NaN=Number.NaN;Float.TYPE=Float.prototype.TYPE=Float;c(Float,"parseFloat",function(a){if(null==a)throw new NumberFormatException("null");if("number"==typeof a)return a;var b=Number(a);if(isNaN(b))throw new NumberFormatException("Not a Number : "+a);return b},"String");Float.parseFloat=Float.prototype.parseFloat;e(Float,"$valueOf",function(a){return new Float(a)});Float.$valueOf=Float.prototype.$valueOf;c(Float,"isNaN",
function(a){return isNaN(a)},"Number");Float.isNaN=Float.prototype.isNaN;c(Float,"isInfinite",function(a){return!isFinite(a)},"Number");Float.isInfinite=Float.prototype.isInfinite;e(Float,"equals",function(a){return null==a||!y(a,Float)?!1:a.valueOf()==this.valueOf()},"Object");java.lang.Double=Double=function(){u(this,arguments)};W(Double,"Double",Number,Comparable,null,!0);Double.prototype.valueOf=function(){return 0};Double.toString=Double.prototype.toString=function(){return 0!=arguments.length?
""+arguments[0]:this===Double?"class java.lang.Double":""+this.valueOf()};ca(Double,function(a){null==a&&(a=0);"number"!=typeof a&&(a=Double.parseDouble(a));this.valueOf=function(){return a}});Double.serialVersionUID=Double.prototype.serialVersionUID=-0x7f4c3db5d6940400;Double.MIN_VALUE=Double.prototype.MIN_VALUE=4.9E-324;Double.MAX_VALUE=Double.prototype.MAX_VALUE=1.7976931348623157E308;Double.NEGATIVE_INFINITY=Number.NEGATIVE_INFINITY;Double.POSITIVE_INFINITY=Number.POSITIVE_INFINITY;Double.NaN=
Number.NaN;Double.TYPE=Double.prototype.TYPE=Double;c(Double,"isNaN",function(a){return isNaN(a)},"Number");Double.isNaN=Double.prototype.isNaN;c(Double,"isInfinite",function(a){return!isFinite(a)},"Number");Double.isInfinite=Double.prototype.isInfinite;c(Double,"parseDouble",function(a){if(null==a)throw new NumberFormatException("null");if("number"==typeof a)return a;var b=Number(a);if(isNaN(b))throw new NumberFormatException("Not a Number : "+a);return b},"String");Double.parseDouble=Double.prototype.parseDouble;
c(Double,"$valueOf",function(a){return new Double(a)},"Number");Double.$valueOf=Double.prototype.$valueOf;e(Double,"equals",function(a){return null==a||!y(a,Double)?!1:a.valueOf()==this.valueOf()},"Object");java.lang.B00lean=Boolean;Boolean=java.lang.Boolean=Boolean||function(){u(this,arguments)};if(qa)for(U=0;U<ia.length;U++)S=ia[U],Boolean.prototype[S]=JavaObject.prototype[S];Boolean.__CLASS_NAME__="Boolean";ma(Boolean,[java.io.Serializable,java.lang.Comparable]);Boolean.equals=ka.equals;Boolean.getName=
ka.getName;Boolean.serialVersionUID=Boolean.prototype.serialVersionUID=-0x32df8d7f2a630600;Ia(Boolean,function(a){var b=("string"==typeof a?Boolean.toBoolean(a):a)?!0:!1;this.valueOf=function(){return b}},"~O");Boolean.parseBoolean=c(Boolean,"parseBoolean",function(a){return Boolean.toBoolean(a)},"~S");c(Boolean,"booleanValue",function(){return this.valueOf()});Boolean.$valueOf=e(Boolean,"$valueOf",function(a){return a?Boolean.TRUE:Boolean.FALSE});e(Boolean,"toString",function(){return this.valueOf()?
"true":"false"});e(Boolean,"hashCode",function(){return this.valueOf()?1231:1237});e(Boolean,"equals",function(a){return y(a,Boolean)?this.booleanValue()==a.booleanValue():!1},"~O");Boolean.getBoolean=c(Boolean,"getBoolean",function(a){var b=!1;try{b=Boolean.toBoolean(System.getProperty(a))}catch(d){if(!y(d,IllegalArgumentException)&&!y(d,NullPointerException))throw d;}return b},"~S");e(Boolean,"compareTo",function(a){return a.value==this.value?0:this.value?1:-1},"Boolean");Boolean.toBoolean=c(Boolean,
"toBoolean",($fz=function(a){return null!=a&&a.equalsIgnoreCase("true")},$fz.isPrivate=!0,$fz),"~S");Boolean.TRUE=Boolean.prototype.TRUE=new Boolean(!0);Boolean.FALSE=Boolean.prototype.FALSE=new Boolean(!1);Boolean.TYPE=Boolean.prototype.TYPE=Boolean;Encoding={UTF8:"utf-8",UTF16:"utf-16",ASCII:"ascii",guessEncoding:function(a){return 239==a.charCodeAt(0)&&187==a.charCodeAt(1)&&191==a.charCodeAt(2)?Encoding.UTF8:255==a.charCodeAt(0)&&254==a.charCodeAt(1)?Encoding.UTF16:Encoding.ASCII},readUTF8:function(a){var b=
this.guessEncoding(a),d=0;b==Encoding.UTF8?d=3:b==Encoding.UTF16&&(d=2);for(b=[];d<a.length;d++){var j=a.charCodeAt(d);if(128>j)b[b.length]=a.charAt(d);else if(192<j&&224>j){j&=31;d++;var c=a.charCodeAt(d)&63,j=(j<<6)+c;b[b.length]=String.fromCharCode(j)}else if(224<=j){j&=15;d++;c=a.charCodeAt(d)&63;d++;var g=a.charCodeAt(d)&63,j=(j<<12)+(c<<6)+g;b[b.length]=String.fromCharCode(j)}}return b.join("")},convert2UTF8:function(a){var b=this.guessEncoding(a),d=0;if(b==Encoding.UTF8)return a;b==Encoding.UTF16&&
(d=2);for(var b=Array(0+a.length-d),j=d;j<a.length;j++){var c=a.charCodeAt(j);if(128>c)b[0+j-d]=a.charAt(j);else if(2047>=c){var g=192+((c&1984)>>6),e=128+(c&63);b[0+j-d]=String.fromCharCode(g)+String.fromCharCode(e)}else g=224+((c&61440)>>12),e=128+((c&4032)>>6),c=128+(c&63),b[0+j-d]=String.fromCharCode(g)+String.fromCharCode(e)+String.fromCharCode(c)}return b.join("")},base64Chars:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),encodeBase64:function(a){if(null==a||0==
a.length)return a;for(var b=Encoding.base64Chars,d=a.length,j=0,c=[],g,e;j<d;)g=a.charCodeAt(j++),c[c.length]=b[g>>2],j<d?(e=a.charCodeAt(j++),c[c.length]=b[g<<4&48|e>>4],j<d?(g=a.charCodeAt(j++),c[c.length]=b[e<<2&60|g>>6],c[c.length]=b[g&63]):(c[c.length]=b[e<<2&60],c[c.length]="=")):(c[c.length]=b[g<<4&48],c[c.length]="=",c[c.length]="=");return c.join("")},decodeBase64:function(a){if(null==a||0==a.length)return a;var b=Encoding.base64Chars,d=Encoding.xBase64Chars;if(null==Encoding.xBase64Chars){for(var d=
{},j=0;j<b.length;j++)d[b[j]]=j;Encoding.xBase64Chars=d}for(var b=a.length,j=0,c=[],g,e,h,k,s=0;j<b&&6E4>s++;)g=d[a.charAt(j++)],e=d[a.charAt(j++)],h=d[a.charAt(j++)],k=d[a.charAt(j++)],c[c.length]=String.fromCharCode(g<<2&255|e>>4),null!=h&&(c[c.length]=String.fromCharCode(e<<4&255|h>>2),null!=k&&(c[c.length]=String.fromCharCode(h<<6&255|k)));return c.join("")}};if(null==String.prototype.$replace){java.lang.String=String;if(qa)for(U=0;U<ia.length;U++)S=ia[U],"to$tring"==S||("toString"==S||"equals"==
S||"hashCode"==S)||(String.prototype[S]=JavaObject.prototype[S]);ma(String,[java.io.Serializable,CharSequence,Comparable]);String.getName=ka.getName;String.serialVersionUID=String.prototype.serialVersionUID=-0x5f0f5bc785c44c00;String.prototype.$replace=function(a,b){if(a==b||0>this.indexOf(a))return""+this;1==a.length?0<="\\$.*+|?^{}()[]".indexOf(a)&&(a="\\"+a):a=a.replace(/([\\\$\.\*\+\|\?\^\{\}\(\)\[\]])/g,function(a,b){return"\\"+b});return this.replace(RegExp(a,"gm"),b)};String.prototype.$generateExpFunction=
function(a){var b=[],d=[],j=0;b[0]="";for(var c=0;c<a.length;c++){var g=a.charAt(c);c!=a.length-1&&"\\"==g?(c++,g=a.charAt(c),"\\"==g&&(b[j]+="\\"),b[j]+=g):c!=a.length-1&&"$"==g?(c++,d[j]=parseInt(a.charAt(c)),j++,b[j]=""):b[j]="\r"==g?b[j]+"\\r":"\n"==g?b[j]+"\\n":"\t"==g?b[j]+"\\t":'"'==g?b[j]+'\\"':b[j]+g}a="f = function (";j=Math.max.apply({},d);for(c=0;c<=j;c++)a+="$"+c,c!=j&&(a+=", ");a+=") { return ";for(c=0;c<b.length-1;c++)a+='"'+b[c]+'" + $'+d[c]+" + ";a+='"'+b[c]+'"; }';eval(a);return null};
String.prototype.replaceAll=function(a,b){return this.replace(RegExp(a,"gm"),this.$generateExpFunction(b))};String.prototype.replaceFirst=function(a,b){return this.replace(RegExp(a,"m"),this.$generateExpFunction(b))};String.prototype.matches=function(a){null!=a&&(a="^("+a+")$");a=this.match(RegExp(a,"gm"));return null!=a&&0!=a.length};String.prototype.regionMatches=function(a,b,d,j,c){if("number"==typeof a||!0!=a&&!1!=a)c=j,j=d,d=b,b=a,a=!1;if(0>j||0>b||b>this.length-c||j>d.length-c)return!1;b=this.substring(b,
b+c);d=d.substring(j,j+c);a&&(b=b.toLowerCase(),d=d.toLowerCase());return b==d};String.prototype.$plit=function(a,b){if(null!=b&&0<b){if(1==b)return this;var d=RegExp("("+a+")","gm"),j=1,c=this.replace(d,function(a){j++;return j==b?"@@_@@":a}),d=RegExp(a,"gm"),d=this.split(d);d.length>b&&(d[b-1]=c.substring(c.indexOf("@@_@@")+5),d.length=b);return d}d=RegExp(a,"gm");return this.split(d)};String.prototype.trim=function(){for(var a=this.length,b=0;b<a&&" ">=this.charAt(b);)b++;for(;b<a&&" ">=this.charAt(a-
1);)a--;return 0<b?this.substring(b,a):this};String.prototype.trim=function(){return this.replace(/^\s+/g,"").replace(/\s+$/g,"")};String.prototype.startsWith_string_number=function(a,b){var d=b,j=0,c=a.length;if(0>b||b>this.length-c)return!1;for(;0<=--c;)if(this.charAt(d++)!=a.charAt(j++))return!1;return!0};String.prototype.startsWith=function(a){return 1==arguments.length?this.startsWith_string_number(arguments[0],0):2==arguments.length?this.startsWith_string_number(arguments[0],arguments[1]):!1};
String.prototype.endsWith=function(a){return this.startsWith(a,this.length-a.length)};String.prototype.equals=function(a){return this.valueOf()==a};String.prototype.equalsIgnoreCase=function(a){return null==a?!1:this==a||this.toLowerCase()==a.toLowerCase()};String.prototype.hash=0;String.prototype.hashCode=function(){var a=this.hash;if(0==a){for(var b=0,d=this.length,j=0;j<d;j++)a=31*a+this.charCodeAt(b++),a&=4294967295;this.hash=a}return a};String.prototype.getBytes=function(){if(4==arguments.length)return this.getChars(arguments[0],
arguments[1],arguments[2],arguments[3]);var a=this;if(1==arguments.length){for(var b=arguments[0].toString().toLowerCase(),d="utf-8 UTF8 us-ascii iso-8859-1 8859_1 gb2312 gb18030 gbk".split(" "),j=!1,c=0;c<d.length;c++)if(d[c]==b){j=!0;break}if(!j)throw new java.io.UnsupportedEncodingException;if("utf-8"==b||"utf8"==b)a=Encoding.convert2UTF8(this)}b=Array(a.length);for(c=j=d=0;c<a.length;c++)d=a.charCodeAt(c),255<d?(b[j]=26,b[j+1]=d&255,b[j+2]=(d&65280)>>8,j+=2):b[j]=d,j++;return b};String.prototype.contains=
function(a){return 0<=this.indexOf(a)};String.prototype.compareTo=function(a){return this>a?1:this<a?-1:0};String.prototype.toCharArray=function(){for(var a=Array(this.length),b=0;b<this.length;b++)a[b]=this.charAt(b);return a};String.value0f=String.valueOf;String.valueOf=function(a){if("undefined"==a)return String.value0f();if(a instanceof Array){if(1==arguments.length)return a.join("");for(var b=arguments[1],d=arguments[2],j=Array(d),c=0;c<d;c++)j[c]=a[b+c];return j.join("")}return""+a};String.prototype.subSequence=
function(a,b){return this.substring(a,b)};String.prototype.compareToIgnoreCase=function(a){if(null==a)throw new NullPointerException;var b=this.toUpperCase(),d=a.toUpperCase();if(b==d)return 0;b=this.toLowerCase();d=a.toLowerCase();return b==d?0:b>d?1:-1};String.prototype.contentEquals=function(a){if(this.length!=a.length())return!1;a=a.getValue();for(var b=0,d=0,j=this.length;0!=j--;)if(this.charCodeAt(b++)!=a[d++])return!1;return!0};String.prototype.getChars=function(a,b,d,j){if(0>a)throw new StringIndexOutOfBoundsException(a);
if(b>this.length)throw new StringIndexOutOfBoundsException(b);if(a>b)throw new StringIndexOutOfBoundsException(b-a);if(null==d)throw new NullPointerException;for(var c=0;c<b-a;c++)d[j+c]=this.charAt(a+c)};String.prototype.$concat=String.prototype.concat;String.prototype.concat=function(a){if(null==a)throw new NullPointerException;return this.$concat(a)};String.prototype.$lastIndexOf=String.prototype.lastIndexOf;String.prototype.lastIndexOf=function(a,b){return null!=b&&0>=b+this.length?-1:null!=b?
this.$lastIndexOf(a,b):this.$lastIndexOf(a)};String.prototype.intern=function(){return this.valueOf()};String.copyValueOf=String.prototype.copyValueOf=function(){return 1==arguments.length?String.instantialize(arguments[0]):String.instantialize(arguments[0],arguments[1],arguments[2])};String.indexOf=function(a,b,d,j,c,g,e){if(e>=d)return 0==g?d:-1;0>e&&(e=0);if(0==g)return e;var h=j[c];e=b+e;d=b+(d-g);a:for(;;){for(;e<=d&&a[e]!=h;)e++;if(e>d)return-1;for(var k=e+1,s=k+g-1,n=c+1;k<s;)if(a[k++]!=j[n++]){e++;
continue a}return e-b}};String.instantialize=function(){switch(arguments.length){case 0:return new String;case 1:var a=arguments[0];if("string"==typeof a||a instanceof String)return new String(a);if(a instanceof Array||a instanceof Int32Array){if(0<a.length&&"number"==typeof a[0]){for(var b=Array(a.length),d=0;d<a.length;d++)b[d]=String.fromCharCode(a[d]&255);return Encoding.readUTF8(b.join(""))}return a.join("")}if("StringBuffer"==a.__CLASS_NAME__||"java.lang.StringBuffer"==a.__CLASS_NAME__){for(var b=
a.shareValue(),j=a.length(),a=Array(j),d=0;d<j;d++)a[d]=b[d];return a.join("")}return""+a;case 2:return a=arguments[0],j=arguments[1],"string"==typeof j?String.instantialize(a,0,a.length,j):String.instantialize(a,j,0,a.length);case 3:var a=arguments[0],c=arguments[1],j=arguments[2];arguments[2]instanceof Array&&(a=arguments[2],c=arguments[0],j=arguments[1]);b=Array(j);if(0>c||j+c>a.length)throw new IndexOutOfBoundsException;if(0<j)if(null!=a[c].length)for(d=0;d<j;d++)b[d]=a[c+d];else for(d=0;d<j;d++)b[d]=
String.fromCharCode(a[c+d]);return b.join("");case 4:var a=arguments[0],g=arguments[3];if("string"==typeof g||g instanceof String){c=arguments[1];j=arguments[2];b=Array(j);for(d=0;d<j;d++)b[d]=a[c+d],"number"==typeof b[d]&&(b[d]=String.fromCharCode(b[d]&255));d=g.toLowerCase();return"utf-8"==d||"utf8"==d?Encoding.readUTF8(b.join("")):b.join("")}d=arguments[3];c=arguments[2];j=arguments[1];b=Array(d);if(0==j)for(;0<d--;)b[d]=String.fromCharCode(a[d+c]&255);else for(j<<=8;0<d--;)b[d]=String.fromCharCode(j|
a[d+c]&255);return b.join("");default:b="";for(d=0;d<arguments.length;d++)b+=arguments[d];return b}};-1!=navigator.userAgent.toLowerCase().indexOf("chrome")&&(String.prototype.toString=function(){return this})}c$=x(function(){this.value=0;v(this,arguments)},java.lang,"Character",null,[java.io.Serializable,Comparable]);m(c$,function(a){this.value=a},"~N");c(c$,"charValue",function(){return this.value});e(c$,"hashCode",function(){return this.value.charCodeAt(0)});e(c$,"equals",function(a){return G(a,
Character)?this.value.charCodeAt(0)==a.charValue().charCodeAt(0):!1},"~O");e(c$,"compareTo",function(a){return this.value.charCodeAt(0)-a.value.charCodeAt(0)},"Character");c$.toLowerCase=c(c$,"toLowerCase",function(a){return(""+a).toLowerCase().charAt(0)},"~N");c$.toUpperCase=c(c$,"toUpperCase",function(a){return(""+a).toUpperCase().charAt(0)},"~N");c$.isDigit=c(c$,"isDigit",function(a){if(48<=a.charCodeAt(0)&&57>=a.charCodeAt(0))return!0;a.charCodeAt(0);return!1},"~N");c$.isUpperCase=c(c$,"isUpperCase",
function(a){return 65<=a.charCodeAt(0)&&90>=a.charCodeAt(0)?!0:!1},"~N");c$.isLowerCase=c(c$,"isLowerCase",function(a){return 97<=a.charCodeAt(0)&&122>=a.charCodeAt(0)?!0:!1},"~N");c$.isWhitespace=c(c$,"isWhitespace",function(a){return 28<=a.charCodeAt(0)&&32>=a.charCodeAt(0)||9<=a.charCodeAt(0)&&13>=a.charCodeAt(0)||5760==a.charCodeAt(0)?!0:8192>a.charCodeAt(0)||8199==a.charCodeAt(0)?!1:8203>=a.charCodeAt(0)||8232==a.charCodeAt(0)||8233==a.charCodeAt(0)||12288==a.charCodeAt(0)},"~N");c$.isLetter=
c(c$,"isLetter",function(a){if(65<=a.charCodeAt(0)&&90>=a.charCodeAt(0)||97<=a.charCodeAt(0)&&122>=a.charCodeAt(0))return!0;a.charCodeAt(0);return!1},"~N");c$.isLetterOrDigit=c(c$,"isLetterOrDigit",function(a){return Character.isLetter(a)||Character.isDigit(a)},"~N");c$.isSpaceChar=c(c$,"isSpaceChar",function(a){return 32==a.charCodeAt(0)||160==a.charCodeAt(0)||5760==a.charCodeAt(0)?!0:8192>a.charCodeAt(0)?!1:8203>=a.charCodeAt(0)||8232==a.charCodeAt(0)||8233==a.charCodeAt(0)||8239==a.charCodeAt(0)||
12288==a.charCodeAt(0)},"~N");c$.digit=c(c$,"digit",function(a,b){if(2<=b&&36>=b&&128>a.charCodeAt(0)){var d=-1;48<=a.charCodeAt(0)&&57>=a.charCodeAt(0)?d=a.charCodeAt(0)-48:97<=a.charCodeAt(0)&&122>=a.charCodeAt(0)?d=a.charCodeAt(0)-87:65<=a.charCodeAt(0)&&90>=a.charCodeAt(0)&&(d=a.charCodeAt(0)-55);return d<b?d:-1}return-1},"~N,~N");e(c$,"toString",function(){return String.valueOf([this.value])});c$.toString=e(c$,"toString",function(a){return this===Character?"class java.lang.Character":String.valueOf(a)},
"~N");X(c$,"MIN_VALUE","\x00","MAX_VALUE","\uffff","MIN_RADIX",2,"MAX_RADIX",36,"TYPE",null);java.lang.Character.TYPE=java.lang.Character.prototype.TYPE=java.lang.Character;Array.getComponentType=function(){return Object};c$=t(java.lang.reflect,"Array");c$.newInstance=c(c$,"newInstance",function(){return O(length)},"Class,~N");java.util.Date=Date;Date.TYPE="java.util.Date";Date.__CLASS_NAME__="Date";ma(Date,[java.io.Serializable,java.lang.Comparable]);c(java.util.Date,"clone",function(){return new Date(this.getTime())});
c(java.util.Date,"before",function(a){return this.getTime()<a.getTime()},"java.util.Date");c(java.util.Date,"after",function(a){return this.getTime()>a.getTime()},"java.util.Date");c(java.util.Date,"equals",function(a){return y(a,java.util.Date)&&this.getTime()==a.getTime()},"Object");c(java.util.Date,"compareTo",function(a){var b=this.getTime();a=a.getTime();return b<a?-1:b==a?0:1},"java.util.Date");c(java.util.Date,"compareTo",function(a){return this.compareTo(a)},"Object");e(java.util.Date,"hashCode",
function(){var a=this.getTime();return parseInt(a)^parseInt(a>>32)});c$=x(function(){this.source=null;v(this,arguments)},java.util,"EventObject",null,java.io.Serializable);m(c$,function(a){if(null!=a)this.source=a;else throw new IllegalArgumentException;},"~O");c(c$,"getSource",function(){return this.source});e(c$,"toString",function(){return this.getClass().getName()+"[source="+String.valueOf(this.source)+"]"});Q(java.util,"EventListener");c$=x(function(){this.listener=null;v(this,arguments)},java.util,
"EventListenerProxy",null,java.util.EventListener);m(c$,function(a){this.listener=a},"java.util.EventListener");c(c$,"getListener",function(){return this.listener});Q(java.util,"Iterator");Q(java.util,"ListIterator",java.util.Iterator);Q(java.util,"Enumeration");Q(java.util,"Collection",Iterable);Q(java.util,"Set",java.util.Collection);Q(java.util,"Map");Q(java.util.Map,"Entry");Q(java.util,"List",java.util.Collection);Q(java.util,"Queue",java.util.Collection);Q(java.util,"RandomAccess");c$=x(function(){this.stackTrace=
this.cause=this.detailMessage=null;v(this,arguments)},java.lang,"Throwable",null,java.io.Serializable);da(c$,function(){this.cause=this});m(c$,function(){this.fillInStackTrace()});m(c$,function(a){this.fillInStackTrace();this.detailMessage=a},"~S");m(c$,function(a,b){this.fillInStackTrace();this.detailMessage=a;this.cause=b},"~S,Throwable");m(c$,function(a){this.fillInStackTrace();this.detailMessage=null==a?null:a.toString();this.cause=a},"Throwable");c(c$,"getMessage",function(){return"undefined"!=
typeof this.message?this.message:this.detailMessage});c(c$,"getLocalizedMessage",function(){return this.getMessage()});c(c$,"getCause",function(){return this.cause===this?null:this.cause});c(c$,"initCause",function(a){if(this.cause!==this)throw new IllegalStateException("Can't overwrite cause");if(a===this)throw new IllegalArgumentException("Self-causation not permitted");this.cause=a;return this},"Throwable");e(c$,"toString",function(){var a=this.getClass().getName(),b=this.getLocalizedMessage();
return null!=b?a+": "+b:a});c(c$,"printStackTrace",function(){System.err.println(this);for(var a=0;a<this.stackTrace.length;a++){var b=this.stackTrace[a],d=b.methodName.indexOf("(");("construct"!=b.methodName.substring(0,d).replace(/\s+/g,"")||null==b.nativeClazz||0>Ka(b.nativeClazz,Throwable))&&System.err.println(b)}});c(c$,"printStackTrace",function(){this.printStackTrace()},"java.io.PrintStream");c(c$,"printStackTrace",function(){this.printStackTrace()},"java.io.PrintWriter");c(c$,"fillInStackTrace",
function(){this.stackTrace=[];for(var a=arguments.callee.caller,b=null,d=[],j=ra.length-1,c=!0;-1<j||null!=a;){var g=null;if(!c||a==Ma||a==$||null==a){if(0>j)break;c=!0;b=ra[j].caller;g=ra[j].owner;j--}else b=a,null!=b.claxxOwner?g=b.claxxOwner:null!=b.exClazz&&(g=b.exClazz);a=new StackTraceElement(null!=g&&0!=g.__CLASS_NAME__.length?g.__CLASS_NAME__:"anonymous",(null==b.exName?"anonymous":b.exName)+" ("+La(b.arguments)+")",null,-1);a.nativeClazz=g;this.stackTrace[this.stackTrace.length]=a;for(g=
0;g<d.length;g++)d[g]==b&&(a=new StackTraceElement("lost","missing",null,-3),a.nativeClazz=null,this.stackTrace[this.stackTrace.length]=a,c=!1);null!=b&&(d[d.length]=b);a=b.arguments.callee.caller}Clazz_initializingException=!1;return this});c(c$,"setStackTrace",function(a){a=a.clone();for(var b=0;b<a.length;b++)if(null==a[b])throw new NullPointerException("stackTrace["+b+"]");this.stackTrace=a},"~A");c$=x(function(){this.fileName=this.methodName=this.declaringClass=null;this.lineNumber=0;v(this,
arguments)},java.lang,"StackTraceElement",null,java.io.Serializable);m(c$,function(a,b,d,j){if(null==a||null==b)throw new NullPointerException;this.declaringClass=a;this.methodName=b;this.fileName=d;this.lineNumber=j},"~S,~S,~S,~N");e(c$,"equals",function(a){if(!G(a,StackTraceElement)||(null==this.methodName||null==a.methodName)||!this.getMethodName().equals(a.getMethodName())||!this.getClassName().equals(a.getClassName()))return!1;var b=this.getFileName();if(null==b){if(null!=a.getFileName())return!1}else if(!b.equals(a.getFileName()))return!1;
return this.getLineNumber()!=a.getLineNumber()?!1:!0},"~O");c(c$,"getClassName",function(){return null==this.declaringClass?"<unknown class>":this.declaringClass});c(c$,"getFileName",function(){return this.fileName});c(c$,"getLineNumber",function(){return this.lineNumber});c(c$,"getMethodName",function(){return null==this.methodName?"<unknown method>":this.methodName});e(c$,"hashCode",function(){return null==this.methodName?0:this.methodName.hashCode()^this.declaringClass.hashCode()});c(c$,"isNativeMethod",
function(){return-2==this.lineNumber});e(c$,"toString",function(){var a=new StringBuilder(80);a.append(this.getClassName());a.append(".");a.append(this.getMethodName());if(this.isNativeMethod())a.append("(Native Method)");else{var b=this.getFileName();if(null==b)a.append("(Unknown Source)");else{var d=this.getLineNumber();a.append("(");a.append(b);0<=d&&(a.append(":"),a.append(d));a.append(")")}}return a.toString()});c$=t(java.lang,"Error",Throwable);c$=t(java.lang,"LinkageError",Error);c$=t(java.lang,
"IncompatibleClassChangeError",LinkageError);c$=t(java.lang,"AbstractMethodError",IncompatibleClassChangeError);c$=t(java.lang,"AssertionError",Error);m(c$,function(a){D(this,AssertionError,[String.valueOf(a),G(a,Throwable)?a:null])},"~O");m(c$,function(a){this.construct(String.valueOf(a))},"~B");m(c$,function(a){this.construct(String.valueOf(a))},"~N");m(c$,function(a){this.construct(Integer.toString(a))},"~N");m(c$,function(a){this.construct(Long.toString(a))},"~N");m(c$,function(a){this.construct(Float.toString(a))},
"~N");m(c$,function(a){this.construct(Double.toString(a))},"~N");c$=t(java.lang,"ClassCircularityError",LinkageError);c$=t(java.lang,"ClassFormatError",LinkageError);c$=x(function(){this.exception=null;v(this,arguments)},java.lang,"ExceptionInInitializerError",LinkageError);m(c$,function(){D(this,ExceptionInInitializerError);this.initCause(null)});m(c$,function(a){D(this,ExceptionInInitializerError,[a]);this.initCause(null)},"~S");m(c$,function(a){D(this,ExceptionInInitializerError);this.exception=
a;this.initCause(a)},"Throwable");c(c$,"getException",function(){return this.exception});e(c$,"getCause",function(){return this.exception});c$=t(java.lang,"IllegalAccessError",IncompatibleClassChangeError);c$=t(java.lang,"InstantiationError",IncompatibleClassChangeError);c$=t(java.lang,"VirtualMachineError",Error);c$=t(java.lang,"InternalError",VirtualMachineError);c$=t(java.lang,"NoClassDefFoundError",LinkageError);c$=t(java.lang,"NoSuchFieldError",IncompatibleClassChangeError);c$=t(java.lang,"NoSuchMethodError",
IncompatibleClassChangeError);c$=t(java.lang,"OutOfMemoryError",VirtualMachineError);c$=t(java.lang,"StackOverflowError",VirtualMachineError);c$=t(java.lang,"UnknownError",VirtualMachineError);c$=t(java.lang,"UnsatisfiedLinkError",LinkageError);c$=t(java.lang,"UnsupportedClassVersionError",ClassFormatError);c$=t(java.lang,"VerifyError",LinkageError);c$=t(java.lang,"ThreadDeath",Error);m(c$,function(){D(this,ThreadDeath,[])});c$=t(java.lang,"Exception",Throwable);c$=t(java.lang,"RuntimeException",
Exception);c$=t(java.lang,"ArithmeticException",RuntimeException);c$=t(java.lang,"IndexOutOfBoundsException",RuntimeException);c$=t(java.lang,"ArrayIndexOutOfBoundsException",IndexOutOfBoundsException);m(c$,function(a){D(this,ArrayIndexOutOfBoundsException,["Array index out of range: "+a])},"~N");c$=t(java.lang,"ArrayStoreException",RuntimeException);c$=t(java.lang,"ClassCastException",RuntimeException);c$=x(function(){this.ex=null;v(this,arguments)},java.lang,"ClassNotFoundException",Exception);
m(c$,function(){D(this,ClassNotFoundException,[ga("Throwable")])});m(c$,function(a){D(this,ClassNotFoundException,[a,null])},"~S");m(c$,function(a,b){D(this,ClassNotFoundException,[a]);this.ex=b},"~S,Throwable");c(c$,"getException",function(){return this.ex});e(c$,"getCause",function(){return this.ex});c$=t(java.lang,"CloneNotSupportedException",Exception);c$=t(java.lang,"IllegalAccessException",Exception);c$=t(java.lang,"IllegalArgumentException",RuntimeException);m(c$,function(a){D(this,IllegalArgumentException,
[null==a?null:a.toString(),a])},"Throwable");c$=t(java.lang,"IllegalMonitorStateException",RuntimeException);c$=t(java.lang,"IllegalStateException",RuntimeException);m(c$,function(a){D(this,IllegalStateException,[null==a?null:a.toString(),a])},"Throwable");c$=t(java.lang,"IllegalThreadStateException",IllegalArgumentException);c$=t(java.lang,"InstantiationException",Exception);c$=t(java.lang,"InterruptedException",Exception);c$=t(java.lang,"NegativeArraySizeException",RuntimeException);c$=t(java.lang,
"NoSuchFieldException",Exception);c$=t(java.lang,"NoSuchMethodException",Exception);c$=t(java.lang,"NullPointerException",RuntimeException);c$=t(java.lang,"NumberFormatException",IllegalArgumentException);c$=t(java.lang,"SecurityException",RuntimeException);m(c$,function(a){D(this,SecurityException,[null==a?null:a.toString(),a])},"Throwable");c$=t(java.lang,"StringIndexOutOfBoundsException",IndexOutOfBoundsException);m(c$,function(a){D(this,StringIndexOutOfBoundsException,["String index out of range: "+
a])},"~N");c$=t(java.lang,"UnsupportedOperationException",RuntimeException);m(c$,function(){D(this,UnsupportedOperationException,[])});m(c$,function(a){D(this,UnsupportedOperationException,[null==a?null:a.toString(),a])},"Throwable");c$=x(function(){this.target=null;v(this,arguments)},java.lang.reflect,"InvocationTargetException",Exception);m(c$,function(){D(this,java.lang.reflect.InvocationTargetException,[ga("Throwable")])});m(c$,function(a){D(this,java.lang.reflect.InvocationTargetException,[null,
a]);this.target=a},"Throwable");m(c$,function(a,b){D(this,java.lang.reflect.InvocationTargetException,[b,a]);this.target=a},"Throwable,~S");c(c$,"getTargetException",function(){return this.target});e(c$,"getCause",function(){return this.target});c$=x(function(){this.undeclaredThrowable=null;v(this,arguments)},java.lang.reflect,"UndeclaredThrowableException",RuntimeException);m(c$,function(a){D(this,java.lang.reflect.UndeclaredThrowableException);this.undeclaredThrowable=a;this.initCause(a)},"Throwable");
m(c$,function(a,b){D(this,java.lang.reflect.UndeclaredThrowableException,[b]);this.undeclaredThrowable=a;this.initCause(a)},"Throwable,~S");c(c$,"getUndeclaredThrowable",function(){return this.undeclaredThrowable});e(c$,"getCause",function(){return this.undeclaredThrowable});c$=t(java.io,"IOException",Exception);c$=t(java.io,"CharConversionException",java.io.IOException);c$=t(java.io,"EOFException",java.io.IOException);c$=t(java.io,"FileNotFoundException",java.io.IOException);c$=x(function(){this.bytesTransferred=
0;v(this,arguments)},java.io,"InterruptedIOException",java.io.IOException);c$=t(java.io,"ObjectStreamException",java.io.IOException);c$=x(function(){this.classname=null;v(this,arguments)},java.io,"InvalidClassException",java.io.ObjectStreamException);m(c$,function(a,b){D(this,java.io.InvalidClassException,[b]);this.classname=a},"~S,~S");c(c$,"getMessage",function(){var a=$(this,java.io.InvalidClassException,"getMessage",[]);null!=this.classname&&(a=this.classname+"; "+a);return a});c$=t(java.io,"InvalidObjectException",
java.io.ObjectStreamException);c$=t(java.io,"NotActiveException",java.io.ObjectStreamException);c$=t(java.io,"NotSerializableException",java.io.ObjectStreamException);c$=x(function(){this.eof=!1;this.length=0;v(this,arguments)},java.io,"OptionalDataException",java.io.ObjectStreamException);c$=t(java.io,"StreamCorruptedException",java.io.ObjectStreamException);c$=t(java.io,"SyncFailedException",java.io.IOException);c$=t(java.io,"UnsupportedEncodingException",java.io.IOException);c$=t(java.io,"UTFDataFormatException",
java.io.IOException);c$=x(function(){this.detail=null;v(this,arguments)},java.io,"WriteAbortedException",java.io.ObjectStreamException);m(c$,function(a,b){D(this,java.io.WriteAbortedException,[a]);this.detail=b;this.initCause(b)},"~S,Exception");c(c$,"getMessage",function(){var a=$(this,java.io.WriteAbortedException,"getMessage",[]);null!=this.detail&&(a=a+"; "+this.detail.toString());return a});e(c$,"getCause",function(){return this.detail});c$=t(java.util,"ConcurrentModificationException",RuntimeException);
m(c$,function(){D(this,java.util.ConcurrentModificationException,[])});c$=t(java.util,"EmptyStackException",RuntimeException);c$=x(function(){this.key=this.className=null;v(this,arguments)},java.util,"MissingResourceException",RuntimeException);m(c$,function(a,b,d){D(this,java.util.MissingResourceException,[a]);this.className=b;this.key=d},"~S,~S,~S");c(c$,"getClassName",function(){return this.className});c(c$,"getKey",function(){return this.key});c$=t(java.util,"NoSuchElementException",RuntimeException);
c$=t(java.util,"TooManyListenersException",Exception);c$=t(java.lang,"Void");X(c$,"TYPE",null);java.lang.Void.TYPE=java.lang.Void;Q(java.lang.reflect,"GenericDeclaration");Q(java.lang.reflect,"AnnotatedElement");c$=t(java.lang.reflect,"AccessibleObject",null,java.lang.reflect.AnnotatedElement);m(c$,function(){});c(c$,"isAccessible",function(){return!1});c$.setAccessible=c(c$,"setAccessible",function(){},"~A,~B");c(c$,"setAccessible",function(){},"~B");e(c$,"isAnnotationPresent",function(){return!1},
"Class");e(c$,"getDeclaredAnnotations",function(){return[]});e(c$,"getAnnotations",function(){return[]});e(c$,"getAnnotation",function(){return null},"Class");c$.marshallArguments=c(c$,"marshallArguments",function(){return null},"~A,~A");c(c$,"invokeV",function(){},"~O,~A");c(c$,"invokeL",function(){return null},"~O,~A");c(c$,"invokeI",function(){return 0},"~O,~A");c(c$,"invokeJ",function(){return 0},"~O,~A");c(c$,"invokeF",function(){return 0},"~O,~A");c(c$,"invokeD",function(){return 0},"~O,~A");
c$.emptyArgs=c$.prototype.emptyArgs=[];Q(java.lang.reflect,"InvocationHandler");c$=Q(java.lang.reflect,"Member");X(c$,"PUBLIC",0,"DECLARED",1);c$=t(java.lang.reflect,"Modifier");m(c$,function(){});c$.isAbstract=c(c$,"isAbstract",function(a){return 0!=(a&1024)},"~N");c$.isFinal=c(c$,"isFinal",function(a){return 0!=(a&16)},"~N");c$.isInterface=c(c$,"isInterface",function(a){return 0!=(a&512)},"~N");c$.isNative=c(c$,"isNative",function(a){return 0!=(a&256)},"~N");c$.isPrivate=c(c$,"isPrivate",function(a){return 0!=
(a&2)},"~N");c$.isProtected=c(c$,"isProtected",function(a){return 0!=(a&4)},"~N");c$.isPublic=c(c$,"isPublic",function(a){return 0!=(a&1)},"~N");c$.isStatic=c(c$,"isStatic",function(a){return 0!=(a&8)},"~N");c$.isStrict=c(c$,"isStrict",function(a){return 0!=(a&2048)},"~N");c$.isSynchronized=c(c$,"isSynchronized",function(a){return 0!=(a&32)},"~N");c$.isTransient=c(c$,"isTransient",function(a){return 0!=(a&128)},"~N");c$.isVolatile=c(c$,"isVolatile",function(a){return 0!=(a&64)},"~N");c$.toString=
c(c$,"toString",function(a){var b=[];java.lang.reflect.Modifier.isPublic(a)&&(b[b.length]="public");java.lang.reflect.Modifier.isProtected(a)&&(b[b.length]="protected");java.lang.reflect.Modifier.isPrivate(a)&&(b[b.length]="private");java.lang.reflect.Modifier.isAbstract(a)&&(b[b.length]="abstract");java.lang.reflect.Modifier.isStatic(a)&&(b[b.length]="static");java.lang.reflect.Modifier.isFinal(a)&&(b[b.length]="final");java.lang.reflect.Modifier.isTransient(a)&&(b[b.length]="transient");java.lang.reflect.Modifier.isVolatile(a)&&
(b[b.length]="volatile");java.lang.reflect.Modifier.isSynchronized(a)&&(b[b.length]="synchronized");java.lang.reflect.Modifier.isNative(a)&&(b[b.length]="native");java.lang.reflect.Modifier.isStrict(a)&&(b[b.length]="strictfp");java.lang.reflect.Modifier.isInterface(a)&&(b[b.length]="interface");return 0<b.length?b.join(" "):""},"~N");X(c$,"PUBLIC",1,"PRIVATE",2,"PROTECTED",4,"STATIC",8,"FINAL",16,"SYNCHRONIZED",32,"VOLATILE",64,"TRANSIENT",128,"NATIVE",256,"INTERFACE",512,"ABSTRACT",1024,"STRICT",
2048,"BRIDGE",64,"VARARGS",128,"SYNTHETIC",4096,"ANNOTATION",8192,"ENUM",16384);c$=x(function(){this.exceptionTypes=this.parameterTypes=this.clazz=null;this.modifiers=0;v(this,arguments)},java.lang.reflect,"Constructor",java.lang.reflect.AccessibleObject,[java.lang.reflect.GenericDeclaration,java.lang.reflect.Member]);m(c$,function(a,b,d,j){D(this,java.lang.reflect.Constructor,[]);this.clazz=a;this.parameterTypes=b;this.exceptionTypes=d;this.modifiers=j},"Class,~A,~A,~N");e(c$,"getTypeParameters",
function(){return null});c(c$,"toGenericString",function(){return null});c(c$,"getGenericParameterTypes",function(){return null});c(c$,"getGenericExceptionTypes",function(){return null});c(c$,"getParameterAnnotations",function(){return null});c(c$,"isVarArgs",function(){return!1});e(c$,"isSynthetic",function(){return!1});e(c$,"equals",function(a){if(null!=a&&G(a,java.lang.reflect.Constructor)&&this.getDeclaringClass()===a.getDeclaringClass()){var b=this.parameterTypes;a=a.parameterTypes;if(b.length==
a.length){for(var d=0;d<b.length;d++)if(b[d]!==a[d])return!1;return!0}}return!1},"~O");e(c$,"getDeclaringClass",function(){return this.clazz});c(c$,"getExceptionTypes",function(){return this.exceptionTypes});e(c$,"getModifiers",function(){return this.modifiers});e(c$,"getName",function(){return this.getDeclaringClass().getName()});c(c$,"getParameterTypes",function(){return this.parameterTypes});e(c$,"hashCode",function(){return this.getDeclaringClass().getName().hashCode()});c(c$,"newInstance",function(a){var b=
new this.clazz(ta);v(b,a);return b},"~A");e(c$,"toString",function(){return null});c$=t(java.lang.reflect,"Field",java.lang.reflect.AccessibleObject,java.lang.reflect.Member);e(c$,"isSynthetic",function(){return!1});c(c$,"toGenericString",function(){return null});c(c$,"isEnumConstant",function(){return!1});c(c$,"getGenericType",function(){return null});e(c$,"equals",function(){return!1},"~O");e(c$,"getDeclaringClass",function(){return null});e(c$,"getName",function(){return null});c(c$,"getType",
function(){return null});e(c$,"hashCode",function(){return 0});e(c$,"toString",function(){return null});c$=x(function(){this.exceptionTypes=this.parameterTypes=this.returnType=this.name=this.clazz=null;this.modifiers=0;v(this,arguments)},java.lang.reflect,"Method",java.lang.reflect.AccessibleObject,[java.lang.reflect.GenericDeclaration,java.lang.reflect.Member]);m(c$,function(a,b,d,j,c,g){D(this,java.lang.reflect.Method,[]);this.clazz=a;this.name=b;this.parameterTypes=d;this.returnType=j;this.exceptionTypes=
c;this.modifiers=g},"Class,~S,~A,Class,~A,~N");e(c$,"getTypeParameters",function(){return null});c(c$,"toGenericString",function(){return null});c(c$,"getGenericParameterTypes",function(){return null});c(c$,"getGenericExceptionTypes",function(){return null});c(c$,"getGenericReturnType",function(){return null});c(c$,"getParameterAnnotations",function(){return null});c(c$,"isVarArgs",function(){return!1});c(c$,"isBridge",function(){return!1});e(c$,"isSynthetic",function(){return!1});c(c$,"getDefaultValue",
function(){return null});e(c$,"equals",function(a){if(null!=a&&G(a,java.lang.reflect.Method)&&this.getDeclaringClass()===a.getDeclaringClass()&&this.getName()===a.getName()){var b=this.parameterTypes;a=a.parameterTypes;if(b.length==a.length){for(var d=0;d<b.length;d++)if(b[d]!==a[d])return!1;return!0}}return!1},"~O");e(c$,"getDeclaringClass",function(){return this.clazz});c(c$,"getExceptionTypes",function(){return this.exceptionTypes});e(c$,"getModifiers",function(){return this.modifiers});e(c$,"getName",
function(){return this.name});c(c$,"getParameterTypes",function(){return this.parameterTypes});c(c$,"getReturnType",function(){return this.returnType});e(c$,"hashCode",function(){return this.getDeclaringClass().getName().hashCode()^this.getName().hashCode()});c(c$,"invoke",function(a,b){var d=this.clazz.prototype[this.getName()];null==d&&(d=this.clazz[this.getName()]);null!=d&&d.apply(a,b)},"~O,~A");e(c$,"toString",function(){return null});Jmol._debugCode||(I(null,"java.lang.AbstractStringBuilder",
"java.io.InvalidObjectException java.lang.ArrayIndexOutOfBoundsException $.IndexOutOfBoundsException $.NegativeArraySizeException $.NullPointerException $.StringIndexOutOfBoundsException".split(" "),function(){c$=x(function(){this.value=null;this.count=0;this.shared=!1;v(this,arguments)},java.lang,"AbstractStringBuilder");c(c$,"getValue",function(){return this.value});c(c$,"shareValue",function(){this.shared=!0;return this.value});c(c$,"set",function(a,b){null==a&&(a=O(0,"\x00"));if(a.length<b)throw new java.io.InvalidObjectException("K0199");
this.shared=!1;this.value=a;this.count=b},"~A,~N");m(c$,function(){this.value=O(16,"\x00")});m(c$,function(a){if(0>a)throw new NegativeArraySizeException;this.value=O(a,"\x00")},"~N");m(c$,function(a){this.count=a.length;this.shared=!1;this.value=O(this.count+16,"\x00");a.getChars(0,this.count,this.value,0)},"~S");c(c$,"enlargeBuffer",($fz=function(a){var b=(this.value.length<<1)+2;a=O(a>b?a:b,"\x00");System.arraycopy(this.value,0,a,0,this.count);this.value=a;this.shared=!1},$fz.isPrivate=!0,$fz),
"~N");c(c$,"appendNull",function(){var a=this.count+4;a>this.value.length?this.enlargeBuffer(a):this.shared&&(this.value=this.value.clone(),this.shared=!1);this.value[this.count++]="n";this.value[this.count++]="u";this.value[this.count++]="l";this.value[this.count++]="l"});c(c$,"append0",function(a){var b=this.count+a.length;b>this.value.length?this.enlargeBuffer(b):this.shared&&(this.value=this.value.clone(),this.shared=!1);System.arraycopy(a,0,this.value,this.count,a.length);this.count=b},"~A");
c(c$,"append0",function(a,b,d){if(null==a)throw new NullPointerException;if(0<=b&&0<=d&&d<=a.length-b){var j=this.count+d;j>this.value.length?this.enlargeBuffer(j):this.shared&&(this.value=this.value.clone(),this.shared=!1);System.arraycopy(a,b,this.value,this.count,d);this.count=j}else throw new ArrayIndexOutOfBoundsException;},"~A,~N,~N");c(c$,"append0",function(a){this.count==this.value.length&&this.enlargeBuffer(this.count+1);this.shared&&(this.value=this.value.clone(),this.shared=!1);this.value[this.count++]=
a},"~N");c(c$,"append0",function(a){if(null==a)this.appendNull();else{var b=a.length,d=this.count+b;d>this.value.length?this.enlargeBuffer(d):this.shared&&(this.value=this.value.clone(),this.shared=!1);a.getChars(0,b,this.value,this.count);this.count=d}},"~S");c(c$,"append0",function(a,b,d){null==a&&(a="null");if(0>b||0>d||b>d||d>a.length())throw new IndexOutOfBoundsException;this.append0(a.subSequence(b,d).toString())},"CharSequence,~N,~N");c(c$,"capacity",function(){return this.value.length});c(c$,
"charAt",function(a){if(0>a||a>=this.count)throw new StringIndexOutOfBoundsException(a);return this.value[a]},"~N");c(c$,"delete0",function(a,b){if(0<=a){b>this.count&&(b=this.count);if(b==a)return;if(b>a){var d=this.count-b;if(0<d)if(this.shared){var j=O(this.value.length,"\x00");System.arraycopy(this.value,0,j,0,a);System.arraycopy(this.value,b,j,a,d);this.value=j;this.shared=!1}else System.arraycopy(this.value,b,this.value,a,d);this.count-=b-a;return}}throw new StringIndexOutOfBoundsException;
},"~N,~N");c(c$,"deleteCharAt0",function(a){if(0>a||a>=this.count)throw new StringIndexOutOfBoundsException(a);var b=this.count-a-1;if(0<b)if(this.shared){var d=O(this.value.length,"\x00");System.arraycopy(this.value,0,d,0,a);System.arraycopy(this.value,a+1,d,a,b);this.value=d;this.shared=!1}else System.arraycopy(this.value,a+1,this.value,a,b);this.count--},"~N");c(c$,"ensureCapacity",function(a){a>this.value.length&&this.enlargeBuffer(a)},"~N");c(c$,"getChars",function(a,b,d,j){if(a>this.count||
b>this.count||a>b)throw new StringIndexOutOfBoundsException;System.arraycopy(this.value,a,d,j,b-a)},"~N,~N,~A,~N");c(c$,"insert0",function(a,b){if(0>a||a>this.count)throw new StringIndexOutOfBoundsException(a);0!=b.length&&(this.move(b.length,a),System.arraycopy(b,0,this.value,a,b.length),this.count+=b.length)},"~N,~A");c(c$,"insert0",function(a,b,d,j){if(0<=a&&a<=this.count){if(0<=d&&0<=j&&j<=b.length-d){0!=j&&(this.move(j,a),System.arraycopy(b,d,this.value,a,j),this.count+=j);return}throw new StringIndexOutOfBoundsException("offset "+
d+", len "+j+", array.length "+b.length);}throw new StringIndexOutOfBoundsException(a);},"~N,~A,~N,~N");c(c$,"insert0",function(a,b){if(0>a||a>this.count)throw new ArrayIndexOutOfBoundsException(a);this.move(1,a);this.value[a]=b;this.count++},"~N,~N");c(c$,"insert0",function(a,b){if(0<=a&&a<=this.count){null==b&&(b="null");var d=b.length;0!=d&&(this.move(d,a),b.getChars(0,d,this.value,a),this.count+=d)}else throw new StringIndexOutOfBoundsException(a);},"~N,~S");c(c$,"insert0",function(a,b,d,j){null==
b&&(b="null");if(0>a||a>this.count||0>d||0>j||d>j||j>b.length())throw new IndexOutOfBoundsException;this.insert0(a,b.subSequence(d,j).toString())},"~N,CharSequence,~N,~N");c(c$,"length",function(){return this.count});c(c$,"move",($fz=function(a,b){var d;if(this.value.length-this.count>=a){if(!this.shared){System.arraycopy(this.value,b,this.value,b+a,this.count-b);return}d=this.value.length}else{d=this.count+a;var j=(this.value.length<<1)+2;d=d>j?d:j}d=O(d,"\x00");System.arraycopy(this.value,0,d,0,
b);System.arraycopy(this.value,b,d,b+a,this.count-b);this.value=d;this.shared=!1},$fz.isPrivate=!0,$fz),"~N,~N");c(c$,"replace0",function(a,b,d){if(0<=a){b>this.count&&(b=this.count);if(b>a){var j=d.length,c=b-a-j;if(0<c)if(this.shared){var g=O(this.value.length,"\x00");System.arraycopy(this.value,0,g,0,a);System.arraycopy(this.value,b,g,a+j,this.count-b);this.value=g;this.shared=!1}else System.arraycopy(this.value,b,this.value,a+j,this.count-b);else 0>c?this.move(-c,b):this.shared&&(this.value=this.value.clone(),
this.shared=!1);d.getChars(0,j,this.value,a);this.count-=c;return}if(a==b){if(null==d)throw new NullPointerException;this.insert0(a,d);return}}throw new StringIndexOutOfBoundsException;},"~N,~N,~S");c(c$,"reverse0",function(){if(!(2>this.count))if(this.shared){for(var a=O(this.value.length,"\x00"),b=0,d=this.count;b<this.count;b++)a[--d]=this.value[b];this.value=a;this.shared=!1}else for(var b=0,d=this.count,a=Math.floor(this.count/2);b<a;b++){var j=this.value[--d];this.value[d]=this.value[b];this.value[b]=
j}});c(c$,"setCharAt",function(a,b){if(0>a||a>=this.count)throw new StringIndexOutOfBoundsException(a);this.shared&&(this.value=this.value.clone(),this.shared=!1);this.value[a]=b},"~N,~N");c(c$,"setLength",function(a){if(0>a)throw new StringIndexOutOfBoundsException(a);if(this.count<a)if(a>this.value.length)this.enlargeBuffer(a);else if(this.shared){var b=O(this.value.length,"\x00");System.arraycopy(this.value,0,b,0,this.count);this.value=b;this.shared=!1}else for(b=this.count;b<a;b++)this.value[b]=
String.fromCharCode(0);this.count=a},"~N");c(c$,"substring",function(a){if(0<=a&&a<=this.count){if(a==this.count)return"";this.shared=!0;return String.instantialize(a,this.count-a,this.value)}throw new StringIndexOutOfBoundsException(a);},"~N");c(c$,"substring",function(a,b){if(0<=a&&a<=b&&b<=this.count){if(a==b)return"";this.shared=!0;return String.instantialize(this.value,a,b-a)}throw new StringIndexOutOfBoundsException;},"~N,~N");e(c$,"toString",function(){if(0==this.count)return"";if(256<=this.count&&
this.count<=this.value.length>>1)return String.instantialize(this.value,0,this.count);this.shared=!0;return String.instantialize(0,this.count,this.value)});c(c$,"subSequence",function(a,b){return this.substring(a,b)},"~N,~N");c(c$,"indexOf",function(a){return this.indexOf(a,0)},"~S");c(c$,"indexOf",function(a,b){0>b&&(b=0);var d=a.length;if(0<d){if(d+b>this.count)return-1;for(var j=a.charAt(0);;){for(var c=b,g=!1;c<this.count;c++)if(this.value[c].charCodeAt(0)==j.charCodeAt(0)){g=!0;break}if(!g||
d+c>this.count)return-1;for(var g=c,e=0;++e<d&&this.value[++g].charCodeAt(0)==a.charAt(e).charCodeAt(0););if(e==d)return c;b=c+1}}return b<this.count||0==b?b:this.count},"~S,~N");c(c$,"lastIndexOf",function(a){return this.lastIndexOf(a,this.count)},"~S");c(c$,"lastIndexOf",function(a,b){var d=a.length;if(d<=this.count&&0<=b){if(0<d){b>this.count-d&&(b=this.count-d);for(var j=a.charAt(0);;){for(var c=b,g=!1;0<=c;--c)if(this.value[c].charCodeAt(0)==j.charCodeAt(0)){g=!0;break}if(!g)return-1;for(var g=
c,e=0;++e<d&&this.value[++g].charCodeAt(0)==a.charAt(e).charCodeAt(0););if(e==d)return c;b=c-1}}return b<this.count?b:this.count}return-1},"~S,~N");c(c$,"trimToSize",function(){if(this.count<this.value.length){var a=O(this.count,"\x00");System.arraycopy(this.value,0,a,0,this.count);this.value=a;this.shared=!1}});X(c$,"INITIAL_CAPACITY",16)}),I(null,"java.lang.Enum",["java.lang.CloneNotSupportedException","$.IllegalArgumentException","$.NullPointerException","java.security.AccessController","$.PrivilegedExceptionAction"],
function(){c$=x(function(){this.$name=null;this.$ordinal=0;v(this,arguments)},java.lang,"Enum",null,[java.io.Serializable,Comparable]);m(c$,function(a,b){this.$name=a;this.$ordinal=b},"~S,~N");c(c$,"name",function(){return this.$name});c(c$,"ordinal",function(){return this.$ordinal});e(c$,"toString",function(){return this.$name});e(c$,"equals",function(a){return this===a},"~O");e(c$,"hashCode",function(){return this.$ordinal+(null==this.$name?0:this.$name.hashCode())});e(c$,"clone",function(){throw new CloneNotSupportedException("KA004");
});e(c$,"compareTo",function(a){return this.$ordinal-a.$ordinal},"~O");c(c$,"getDeclaringClass",function(){var a=this.getClass(),b=a.getSuperclass();return Enum===b?a:b});c$.$valueOf=c(c$,"$valueOf",function(a,b){if(null==a||null==b)throw new NullPointerException("KA001");var d=Enum.getValues(a);if(null==d)throw new IllegalArgumentException("KA005");for(var j,c=0;c<d.length&&((j=d[c])||1);c++)if(j.$name.equals(b))return j;throw new IllegalArgumentException("KA006");},"Class,~S");c$.getValues=c(c$,
"getValues",function(a){try{return java.security.AccessController.doPrivileged((M("Enum$1")?0:java.lang.Enum.$Enum$1$(),K(Enum$1,this,Da("enumType",a)))).invoke(a,ga("Array"))}catch(b){if(G(b,Exception))return null;throw b;}},"Class");c$.$Enum$1$=function(){A();c$=T(null,"Enum$1",null,java.security.PrivilegedExceptionAction);e(c$,"run",function(){var a=this.f$.enumType.getMethod("values",null);a.setAccessible(!0);return a});c$=B()}}),I(["java.lang.AbstractStringBuilder","$.Appendable"],"java.lang.StringBuffer",
["java.lang.Character","$.Double","$.Float","$.Long"],function(){c$=t(java.lang,"StringBuffer",AbstractStringBuilder,[Appendable,java.io.Serializable,CharSequence]);m(c$,function(a){if(null==a)throw new NullPointerException;D(this,StringBuffer,[a.toString()])},"CharSequence");c(c$,"append",function(a){return this.append(a?"true":"false")},"~B");c(c$,"append",function(a){this.append0(a);return this},"~N");c(c$,"append",function(a){return this.append(Double.toString(a))},"~N");c(c$,"append",function(a){null==
a?this.appendNull():this.append0(a.toString());return this},"~O");c(c$,"append",function(a){this.append0(a);return this},"~S");c(c$,"append",function(a){null==a?this.appendNull():this.append0(a.getValue(),0,a.length());return this},"StringBuffer");c(c$,"append",function(a){this.append0(a);return this},"~A");c(c$,"append",function(a,b,d){this.append0(a,b,d);return this},"~A,~N,~N");c(c$,"append",function(a){null==a?this.appendNull():this.append0(a.toString());return this},"CharSequence");c(c$,"append",
function(a,b,d){this.append0(a,b,d);return this},"CharSequence,~N,~N");c(c$,"appendCodePoint",function(a){return this.append(Character.toChars(a))},"~N");c(c$,"$delete",function(a,b){this.delete0(a,b);return this},"~N,~N");c(c$,"deleteCharAt",function(a){this.deleteCharAt0(a);return this},"~N");c(c$,"insert",function(a,b){this.insert0(a,b);return this},"~N,~N");c(c$,"insert",function(a,b){return this.insert(a,b?"true":"false")},"~N,~B");c(c$,"insert",function(a,b){return this.insert(a,Integer.toString(b))},
"~N,~N");c(c$,"insert",function(a,b){return this.insert(a,Long.toString(b))},"~N,~N");c(c$,"insert",function(a,b){return this.insert(a,Double.toString(b))},"~N,~N");c(c$,"insert",function(a,b){return this.insert(a,Float.toString(b))},"~N,~N");c(c$,"insert",function(a,b){return this.insert(a,null==b?"null":b.toString())},"~N,~O");c(c$,"insert",function(a,b){this.insert0(a,b);return this},"~N,~S");c(c$,"insert",function(a,b){this.insert0(a,b);return this},"~N,~A");c(c$,"insert",function(a,b,d,j){this.insert0(a,
b,d,j);return this},"~N,~A,~N,~N");c(c$,"insert",function(a,b){this.insert0(a,null==b?"null":b.toString());return this},"~N,CharSequence");c(c$,"insert",function(a,b,d,j){this.insert0(a,b,d,j);return this},"~N,CharSequence,~N,~N");c(c$,"replace",function(a,b,d){this.replace0(a,b,d);return this},"~N,~N,~S");c(c$,"reverse",function(){this.reverse0();return this});e(c$,"subSequence",function(a,b){return $(this,StringBuffer,"substring",[a,b])},"~N,~N")}),I(["java.lang.AbstractStringBuilder","$.Appendable"],
"java.lang.StringBuilder",["java.lang.Double","$.Float","$.Long"],function(){c$=t(java.lang,"StringBuilder",AbstractStringBuilder,[Appendable,CharSequence,java.io.Serializable]);m(c$,function(a){D(this,StringBuilder,[a.toString()])},"CharSequence");c(c$,"append",function(a){this.append0(a?"true":"false");return this},"~B");c(c$,"append",function(a){this.append0(a);return this},"~N");c(c$,"append",function(a){this.append0(Integer.toString(a));return this},"~N");c(c$,"append",function(a){this.append0(Long.toString(a));
return this},"~N");c(c$,"append",function(a){this.append0(Float.toString(a));return this},"~N");c(c$,"append",function(a){this.append0(Double.toString(a));return this},"~N");c(c$,"append",function(a){null==a?this.appendNull():this.append0(a.toString());return this},"~O");c(c$,"append",function(a){this.append0(a);return this},"~S");c(c$,"append",function(a){null==a?this.appendNull():this.append0(a.getValue(),0,a.length());return this},"StringBuffer");c(c$,"append",function(a){this.append0(a);return this},
"~A");c(c$,"append",function(a,b,d){this.append0(a,b,d);return this},"~A,~N,~N");c(c$,"append",function(a){null==a?this.appendNull():this.append0(a.toString());return this},"CharSequence");c(c$,"append",function(a,b,d){this.append0(a,b,d);return this},"CharSequence,~N,~N");c(c$,"$delete",function(a,b){this.delete0(a,b);return this},"~N,~N");c(c$,"deleteCharAt",function(a){this.deleteCharAt0(a);return this},"~N");c(c$,"insert",function(a,b){this.insert0(a,b?"true":"false");return this},"~N,~B");c(c$,
"insert",function(a,b){this.insert0(a,b);return this},"~N,~N");c(c$,"insert",function(a,b){this.insert0(a,Integer.toString(b));return this},"~N,~N");c(c$,"insert",function(a,b){this.insert0(a,Long.toString(b));return this},"~N,~N");c(c$,"insert",function(a,b){this.insert0(a,Float.toString(b));return this},"~N,~N");c(c$,"insert",function(a,b){this.insert0(a,Double.toString(b));return this},"~N,~N");c(c$,"insert",function(a,b){this.insert0(a,null==b?"null":b.toString());return this},"~N,~O");c(c$,"insert",
function(a,b){this.insert0(a,b);return this},"~N,~S");c(c$,"insert",function(a,b){this.insert0(a,b);return this},"~N,~A");c(c$,"insert",function(a,b,d,j){this.insert0(a,b,d,j);return this},"~N,~A,~N,~N");c(c$,"insert",function(a,b){this.insert0(a,null==b?"null":b.toString());return this},"~N,CharSequence");c(c$,"insert",function(a,b,d,j){this.insert0(a,b,d,j);return this},"~N,CharSequence,~N,~N");c(c$,"replace",function(a,b,d){this.replace0(a,b,d);return this},"~N,~N,~S");c(c$,"reverse",function(){this.reverse0();
return this})}),I(null,"java.lang.Thread",["java.lang.IllegalArgumentException","$.ThreadGroup","java.util.Date"],function(){c$=x(function(){this.name=this.group=this.target=null;this.priority=0;v(this,arguments)},java.lang,"Thread",null,Runnable);c$.currentThread=c(c$,"currentThread",function(){null==Thread.J2S_THREAD&&(Thread.J2S_THREAD=new Thread,Thread.prototype.J2S_THREAD=Thread.J2S_THREAD);return Thread.J2S_THREAD});c$.sleep=c(c$,"sleep",function(){Clazz_alert("Thread.sleep is not implemented in Java2Script!")},
"~N");m(c$,function(){});m(c$,function(a){this.init(null,a,"Thread-"+(new java.util.Date).getTime()+Math.random(),0)},"Runnable");m(c$,function(a,b){this.init(a,b,"Thread-"+(new java.util.Date).getTime()+Math.random(),0)},"ThreadGroup,Runnable");m(c$,function(a){this.init(null,null,a,0)},"~S");m(c$,function(a,b){this.init(a,null,b,0)},"ThreadGroup,~S");m(c$,function(a,b){this.init(null,a,b,0)},"Runnable,~S");m(c$,function(a,b,d){this.init(a,b,d,0)},"ThreadGroup,Runnable,~S");m(c$,function(a,b,d,j){this.init(a,
b,d,j)},"ThreadGroup,Runnable,~S,~N");c(c$,"init",($fz=function(a,b,d){null==a&&(a=new ThreadGroup);this.group=a;this.target=b;this.name=d;this.priority=5},$fz.isPrivate=!0,$fz),"ThreadGroup,Runnable,~S,~N");c(c$,"start",function(){window.setTimeout(function(a){return function(){a.run()}}(this),0)});c(c$,"run",function(){null!=this.target&&this.target.run()});c(c$,"setPriority",function(a){if(10<a||1>a)throw new IllegalArgumentException;this.priority=a},"~N");c(c$,"getPriority",function(){return this.priority});
c(c$,"interrupt",function(){});c(c$,"setName",function(a){this.name=a},"~S");c(c$,"getName",function(){return String.valueOf(this.name)});c(c$,"getThreadGroup",function(){return this.group});e(c$,"toString",function(){var a=this.getThreadGroup();return null!=a?"Thread["+this.getName()+","+this.getPriority()+","+a.getName()+"]":"Thread["+this.getName()+","+this.getPriority()+",]"});X(c$,"MIN_PRIORITY",1,"NORM_PRIORITY",5,"MAX_PRIORITY",10,"J2S_THREAD",null)}),I(null,"java.lang.ThreadGroup",["java.lang.NullPointerException",
"$.Thread"],function(){c$=x(function(){this.name=this.parent=null;this.maxPriority=0;v(this,arguments)},java.lang,"ThreadGroup");m(c$,function(){this.name="system";this.maxPriority=10});m(c$,function(a){this.construct(Thread.currentThread().getThreadGroup(),a)},"~S");m(c$,function(a,b){if(null==a)throw new NullPointerException;this.name=b;this.parent=a;this.maxPriority=10},"ThreadGroup,~S");c(c$,"getName",function(){return this.name});c(c$,"getParent",function(){return this.parent});c(c$,"getMaxPriority",
function(){return this.maxPriority})}),q(["java.io.FilterInputStream"],"java.io.BufferedInputStream",["java.io.IOException","java.lang.IndexOutOfBoundsException"],function(){c$=w(function(){this.buf=null;this.pos=this.count=0;this.markpos=-1;this.marklimit=0;u(this,arguments)},java.io,"BufferedInputStream",java.io.FilterInputStream);c(c$,"getInIfOpen",function(){var a=this.$in;if(null==a)throw new java.io.IOException("Stream closed");return a});c(c$,"getBufIfOpen",function(){var a=this.buf;if(null==
a)throw new java.io.IOException("Stream closed");return a});e(c$,"resetStream",function(){});z(c$,function(a){P(this,java.io.BufferedInputStream,[a]);this.buf=R(java.io.BufferedInputStream.defaultBufferSize,0)},"java.io.InputStream");c(c$,"fill",function(){var a=this.getBufIfOpen();if(0>this.markpos)this.pos=0;else if(this.pos>=a.length)if(0<this.markpos){var b=this.pos-this.markpos;System.arraycopy(a,this.markpos,a,0,b);this.pos=b;this.markpos=0}else a.length>=this.marklimit?(this.markpos=-1,this.pos=
0):(b=2*this.pos,b>this.marklimit&&(b=this.marklimit),b=R(b,0),System.arraycopy(a,0,b,0,this.pos),a=this.buf=b);this.count=this.pos;a=this.getInIfOpen().read(a,this.pos,a.length-this.pos);0<a&&(this.count=a+this.pos)});e(c$,"readByteAsInt",function(){return this.pos>=this.count&&(this.fill(),this.pos>=this.count)?-1:this.getBufIfOpen()[this.pos++]&255});c(c$,"read1",function(a,b,d){var j=this.count-this.pos;if(0>=j){if(d>=this.getBufIfOpen().length&&0>this.markpos)return this.getInIfOpen().read(a,
b,d);this.fill();j=this.count-this.pos;if(0>=j)return-1}d=j<d?j:d;System.arraycopy(this.getBufIfOpen(),this.pos,a,b,d);this.pos+=d;return d},"~A,~N,~N");e(c$,"read",function(a,b,d){this.getBufIfOpen();if(0>(b|d|b+d|a.length-(b+d)))throw new IndexOutOfBoundsException;if(0==d)return 0;for(var j=0;;){var c=this.read1(a,b+j,d-j);if(0>=c)return 0==j?c:j;j+=c;if(j>=d)return j;c=this.$in;if(null!=c&&0>=c.available())return j}},"~A,~N,~N");e(c$,"skip",function(a){this.getBufIfOpen();if(0>=a)return 0;var b=
this.count-this.pos;if(0>=b){if(0>this.markpos)return this.getInIfOpen().skip(a);this.fill();b=this.count-this.pos;if(0>=b)return 0}a=b<a?b:a;this.pos+=a;return a},"~N");e(c$,"available",function(){var a=this.count-this.pos,b=this.getInIfOpen().available();return a>2147483647-b?2147483647:a+b});e(c$,"mark",function(a){this.marklimit=a;this.markpos=this.pos},"~N");e(c$,"reset",function(){this.getBufIfOpen();if(0>this.markpos)throw new java.io.IOException("Resetting to invalid mark");this.pos=this.markpos});
e(c$,"markSupported",function(){return!0});e(c$,"close",function(){var a=this.$in;this.$in=null;null!=a&&a.close()});H(c$,"defaultBufferSize",8192)}),q(["java.io.Reader"],"java.io.BufferedReader",["java.io.IOException","java.lang.IllegalArgumentException","$.IndexOutOfBoundsException","JU.SB"],function(){c$=w(function(){this.cb=this.$in=null;this.nextChar=this.nChars=0;this.markedChar=-1;this.readAheadLimit=0;this.markedSkipLF=this.skipLF=!1;u(this,arguments)},java.io,"BufferedReader",java.io.Reader);
c(c$,"setSize",function(a){if(0>=a)throw new IllegalArgumentException("Buffer size <= 0");this.cb=ja(a,"\x00");this.nextChar=this.nChars=0},"~N");z(c$,function(a){P(this,java.io.BufferedReader,[a]);this.$in=a;this.setSize(java.io.BufferedReader.defaultCharBufferSize)},"java.io.Reader");c(c$,"ensureOpen",function(){if(null==this.$in)throw new java.io.IOException("Stream closed");});c(c$,"fill",function(){var a;if(-1>=this.markedChar)a=0;else{var b=this.nextChar-this.markedChar;b>=this.readAheadLimit?
(this.markedChar=-2,a=this.readAheadLimit=0):(this.readAheadLimit<=this.cb.length?System.arraycopy(this.cb,this.markedChar,this.cb,0,b):(a=ja(this.readAheadLimit,"\x00"),System.arraycopy(this.cb,this.markedChar,a,0,b),this.cb=a),this.markedChar=0,this.nextChar=this.nChars=a=b)}do b=this.$in.read(this.cb,a,this.cb.length-a);while(0==b);0<b&&(this.nChars=a+b,this.nextChar=a)});c(c$,"read1",function(a,b,d){if(this.nextChar>=this.nChars){if(d>=this.cb.length&&-1>=this.markedChar&&!this.skipLF)return this.$in.read(a,
b,d);this.fill()}if(this.nextChar>=this.nChars||this.skipLF&&(this.skipLF=!1,"\n"==this.cb[this.nextChar]&&(this.nextChar++,this.nextChar>=this.nChars&&this.fill(),this.nextChar>=this.nChars)))return-1;d=Math.min(d,this.nChars-this.nextChar);System.arraycopy(this.cb,this.nextChar,a,b,d);this.nextChar+=d;return d},"~A,~N,~N");c(c$,"read",function(a,b,d){this.ensureOpen();if(0>b||b>a.length||0>d||b+d>a.length||0>b+d)throw new IndexOutOfBoundsException;if(0==d)return 0;var j=this.read1(a,b,d);if(0>=
j)return j;for(;j<d&&this.$in.ready();){var c=this.read1(a,b+j,d-j);if(0>=c)break;j+=c}return j},"~A,~N,~N");c(c$,"readLine1",function(a){var b=null,d;this.ensureOpen();for(var j=a||this.skipLF;;){this.nextChar>=this.nChars&&this.fill();if(this.nextChar>=this.nChars)return null!=b&&0<b.length()?b.toString():null;var c=!1;a=String.fromCharCode(0);var g;j&&"\n"==this.cb[this.nextChar]&&this.nextChar++;j=this.skipLF=!1;g=this.nextChar;a:for(;g<this.nChars;g++)if(a=this.cb[g],"\n"==a||"\r"==a){c=!0;break a}d=
this.nextChar;this.nextChar=g;if(c)return null==b?b=String.instantialize(this.cb,d,g-d):(b.appendCB(this.cb,d,g-d),b=b.toString()),this.nextChar++,"\r"==a&&(this.skipLF=!0),b;null==b&&(b=JU.SB.newN(java.io.BufferedReader.defaultExpectedLineLength));b.appendCB(this.cb,d,g-d)}},"~B");c(c$,"readLine",function(){return this.readLine1(!1)});e(c$,"skip",function(a){if(0>a)throw new IllegalArgumentException("skip value is negative");this.ensureOpen();for(var b=a;0<b;){this.nextChar>=this.nChars&&this.fill();
if(this.nextChar>=this.nChars)break;this.skipLF&&(this.skipLF=!1,"\n"==this.cb[this.nextChar]&&this.nextChar++);var d=this.nChars-this.nextChar;if(b<=d){this.nextChar+=b;b=0;break}b-=d;this.nextChar=this.nChars}return a-b},"~N");c(c$,"ready",function(){this.ensureOpen();this.skipLF&&(this.nextChar>=this.nChars&&this.$in.ready()&&this.fill(),this.nextChar<this.nChars&&("\n"==this.cb[this.nextChar]&&this.nextChar++,this.skipLF=!1));return this.nextChar<this.nChars||this.$in.ready()});e(c$,"markSupported",
function(){return!0});e(c$,"mark",function(a){if(0>a)throw new IllegalArgumentException("Read-ahead limit < 0");this.ensureOpen();this.readAheadLimit=a;this.markedChar=this.nextChar;this.markedSkipLF=this.skipLF},"~N");e(c$,"reset",function(){this.ensureOpen();if(0>this.markedChar)throw new java.io.IOException(-2==this.markedChar?"Mark invalid":"Stream not marked");this.nextChar=this.markedChar;this.skipLF=this.markedSkipLF});c(c$,"close",function(){null!=this.$in&&(this.$in.close(),this.cb=this.$in=
null)});H(c$,"INVALIDATED",-2,"UNMARKED",-1,"defaultCharBufferSize",8192,"defaultExpectedLineLength",80)}),I(["java.io.Writer"],"java.io.BufferedWriter",["java.io.IOException","java.lang.IllegalArgumentException","$.IndexOutOfBoundsException","$.StringIndexOutOfBoundsException"],function(){c$=x(function(){this.buf=this.out=null;this.pos=0;this.lineSeparator="\r\n";v(this,arguments)},java.io,"BufferedWriter",java.io.Writer);m(c$,function(a){D(this,java.io.BufferedWriter,[a]);this.out=a;this.buf=O(8192,
"\x00")},"java.io.Writer");m(c$,function(a,b){D(this,java.io.BufferedWriter,[a]);if(0<b)this.out=a,this.buf=O(b,"\x00");else throw new IllegalArgumentException("K0058");},"java.io.Writer,~N");c(c$,"close",function(){this.isOpen()&&(this.flush(),this.out.close(),this.out=this.buf=null)});c(c$,"flush",function(){if(this.isOpen())0<this.pos&&this.out.write(this.buf,0,this.pos),this.pos=0,this.out.flush();else throw new java.io.IOException("K005d");});c(c$,"isOpen",($fz=function(){return null!=this.out},
$fz.isPrivate=!0,$fz));c(c$,"newLine",function(){this.write("\r\n",0,2)});c(c$,"write",function(a,b,d){if(!this.isOpen())throw new java.io.IOException("K005d");if(0>b||b>a.length-d||0>d)throw new IndexOutOfBoundsException;if(0==this.pos&&d>=this.buf.length)this.out.write(a,b,d);else{var j=this.buf.length-this.pos;d<j&&(j=d);0<j&&(System.arraycopy(a,b,this.buf,this.pos,j),this.pos+=j);this.pos==this.buf.length&&(this.out.write(this.buf,0,this.buf.length),this.pos=0,d>j&&(b+=j,j=d-j,j>=this.buf.length?
this.out.write(a,b,j):(System.arraycopy(a,b,this.buf,this.pos,j),this.pos+=j)))}},"~A,~N,~N");c(c$,"write",function(a){if(this.isOpen())this.pos>=this.buf.length&&(this.out.write(this.buf,0,this.buf.length),this.pos=0),this.buf[this.pos++]=String.fromCharCode(a);else throw new java.io.IOException("K005d");},"~N");c(c$,"write",function(a,b,d){if(!this.isOpen())throw new java.io.IOException("K005d");if(!(0>=d)){if(b>a.length-d||0>b)throw new StringIndexOutOfBoundsException;if(0==this.pos&&d>=this.buf.length){var j=
O(d,"\x00");a.getChars(b,b+d,j,0);this.out.write(j,0,d)}else{var c=this.buf.length-this.pos;d<c&&(c=d);0<c&&(a.getChars(b,b+c,this.buf,this.pos),this.pos+=c);this.pos==this.buf.length&&(this.out.write(this.buf,0,this.buf.length),this.pos=0,d>c&&(b+=c,c=d-c,c>=this.buf.length?(j=O(d,"\x00"),a.getChars(b,b+c,j,0),this.out.write(j,0,c)):(a.getChars(b,b+c,this.buf,this.pos),this.pos+=c)))}}},"~S,~N,~N")}),q(["java.io.InputStream"],"java.io.ByteArrayInputStream",["java.lang.IndexOutOfBoundsException",
"$.NullPointerException"],function(){c$=w(function(){this.buf=null;this.count=this.$mark=this.pos=0;u(this,arguments)},java.io,"ByteArrayInputStream",java.io.InputStream);z(c$,function(a){P(this,java.io.ByteArrayInputStream,[]);this.buf=a;this.pos=0;this.count=a.length},"~A");e(c$,"readByteAsInt",function(){return this.pos<this.count?this.buf[this.pos++]&255:-1});e(c$,"read",function(a,b,d){if(null==a)throw new NullPointerException;if(0>b||0>d||d>a.length-b)throw new IndexOutOfBoundsException;if(this.pos>=
this.count)return-1;var j=this.count-this.pos;d>j&&(d=j);if(0>=d)return 0;System.arraycopy(this.buf,this.pos,a,b,d);this.pos+=d;return d},"~A,~N,~N");e(c$,"skip",function(a){var b=this.count-this.pos;a<b&&(b=0>a?0:a);this.pos+=b;return b},"~N");e(c$,"available",function(){return this.count-this.pos});e(c$,"markSupported",function(){return!0});e(c$,"mark",function(){this.$mark=this.pos},"~N");e(c$,"resetStream",function(){});e(c$,"reset",function(){this.pos=this.$mark});e(c$,"close",function(){})}),
q(["java.io.OutputStream"],"java.io.ByteArrayOutputStream",["java.lang.IllegalArgumentException","$.IndexOutOfBoundsException","$.OutOfMemoryError"],function(){c$=w(function(){this.buf=null;this.count=0;u(this,arguments)},java.io,"ByteArrayOutputStream",java.io.OutputStream);z(c$,function(){this.construct(32)});z(c$,function(a){P(this,java.io.ByteArrayOutputStream,[]);if(0>a)throw new IllegalArgumentException("Negative initial size: "+a);this.buf=R(a,0)},"~N");c(c$,"ensureCapacity",function(a){0<
a-this.buf.length&&this.grow(a)},"~N");c(c$,"grow",function(a){var b=this.buf.length<<1;0>b-a&&(b=a);if(0>b){if(0>a)throw new OutOfMemoryError;b=a}this.buf=java.io.ByteArrayOutputStream.arrayCopyByte(this.buf,b)},"~N");c$.arrayCopyByte=c(c$,"arrayCopyByte",function(a,b){var d=R(b,0);System.arraycopy(a,0,d,0,a.length<b?a.length:b);return d},"~A,~N");e(c$,"writeByteAsInt",function(a){this.ensureCapacity(this.count+1);this.buf[this.count]=a;this.count+=1},"~N");c(c$,"write",function(a,b,d){if(0>b||b>
a.length||0>d||0<b+d-a.length)throw new IndexOutOfBoundsException;this.ensureCapacity(this.count+d);System.arraycopy(a,b,this.buf,this.count,d);this.count+=d},"~A,~N,~N");c(c$,"writeTo",function(a){a.write(this.buf,0,this.count)},"java.io.OutputStream");c(c$,"reset",function(){this.count=0});c(c$,"toByteArray",function(){return this.count==this.buf.length?this.buf:java.io.ByteArrayOutputStream.arrayCopyByte(this.buf,this.count)});c(c$,"size",function(){return this.count});e(c$,"toString",function(){return String.instantialize(this.buf,
0,this.count)});e(c$,"close",function(){})}),q(["java.io.InputStream"],"java.io.FilterInputStream",null,function(){c$=w(function(){this.$in=null;u(this,arguments)},java.io,"FilterInputStream",java.io.InputStream);z(c$,function(a){P(this,java.io.FilterInputStream,[]);this.$in=a},"java.io.InputStream");c(c$,"readByteAsInt",function(){return this.$in.readByteAsInt()});c(c$,"read",function(a,b,d){return this.$in.read(a,b,d)},"~A,~N,~N");c(c$,"skip",function(a){return this.$in.skip(a)},"~N");c(c$,"available",
function(){return this.$in.available()});c(c$,"close",function(){this.$in.close()});c(c$,"mark",function(a){this.$in.mark(a)},"~N");c(c$,"reset",function(){this.$in.reset()});c(c$,"markSupported",function(){return this.$in.markSupported()})}),q(null,"java.io.InputStream",["java.io.IOException","java.lang.IndexOutOfBoundsException","$.NullPointerException"],function(){c$=F(java.io,"InputStream");c(c$,"read",function(a,b,d){if(null==a)throw new NullPointerException;if(0>b||0>d||d>a.length-b)throw new IndexOutOfBoundsException;
if(0==d)return 0;var j=this.readByteAsInt();if(-1==j)return-1;a[b]=j;var c=1;try{for(;c<d;c++){j=this.readByteAsInt();if(-1==j)break;a[b+c]=j}}catch(g){if(!C(g,java.io.IOException))throw g;}return c},"~A,~N,~N");c(c$,"skip",function(a){var b=a,d;null==java.io.InputStream.skipBuffer&&(java.io.InputStream.skipBuffer=R(2048,0));var j=java.io.InputStream.skipBuffer;if(0>=a)return 0;for(;0<b;){d=this.read(j,0,Math.min(2048,b));if(0>d)break;b-=d}return a-b},"~N");c(c$,"available",function(){return 0});
c(c$,"close",function(){});c(c$,"mark",function(){},"~N");c(c$,"reset",function(){throw new java.io.IOException("mark/reset not supported");});c(c$,"markSupported",function(){return!1});c(c$,"resetStream",function(){});H(c$,"SKIP_BUFFER_SIZE",2048,"skipBuffer",null)}),q(["java.io.Reader"],"java.io.InputStreamReader",["java.lang.NullPointerException"],function(){c$=w(function(){this.$in=null;this.isOpen=!0;this.charsetName=null;this.isUTF8=!1;this.bytearr=null;this.pos=0;u(this,arguments)},java.io,
"InputStreamReader",java.io.Reader);z(c$,function(a,b){P(this,java.io.InputStreamReader,[a]);this.$in=a;this.charsetName=b;if(!(this.isUTF8="UTF-8".equals(b))&&!"ISO-8859-1".equals(b))throw new NullPointerException("charsetName");},"java.io.InputStream,~S");c(c$,"getEncoding",function(){return this.charsetName});e(c$,"read",function(a,b,d){if(null==this.bytearr||this.bytearr.length<d)this.bytearr=R(d,0);var j,c,g=0,e=b,h=this.$in.read(this.bytearr,this.pos,d-this.pos),k=this.$in.available();if(0>
h)return-1;for(var s=h;g<s;){d=this.bytearr[g]&255;if(this.isUTF8)switch(d>>4){case 12:case 13:if(g+1>=h){if(1<=k){s=g;continue}}else if(128==((j=this.bytearr[g+1])&192)){a[e++]=String.fromCharCode((d&31)<<6|j&63);g+=2;continue}this.isUTF8=!1;break;case 14:if(g+2>=h){if(2<=k){s=g;continue}}else if(128==((j=this.bytearr[g+1])&192)&&128==((c=this.bytearr[g+2])&192)){a[e++]=String.fromCharCode((d&15)<<12|(j&63)<<6|c&63);g+=3;continue}this.isUTF8=!1}g++;a[e++]=String.fromCharCode(d)}this.pos=h-g;for(a=
0;a<this.pos;a++)this.bytearr[a]=this.bytearr[g++];return e-b},"~A,~N,~N");e(c$,"ready",function(){return this.isOpen});e(c$,"close",function(){this.$in.close();this.isOpen=!1})}),q(["java.io.Closeable","$.Flushable"],"java.io.OutputStream",["java.lang.IndexOutOfBoundsException","$.NullPointerException"],function(){c$=F(java.io,"OutputStream",null,[java.io.Closeable,java.io.Flushable]);c(c$,"write",function(a,b,d){if(null==a)throw new NullPointerException;if(0>b||b>a.length||0>d||b+d>a.length||0>
b+d)throw new IndexOutOfBoundsException;if(0!=d)for(var j=0;j<d;j++)this.writeByteAsInt(a[b+j])},"~A,~N,~N");e(c$,"flush",function(){});e(c$,"close",function(){})}),q(["java.io.Closeable"],"java.io.Reader",["java.io.IOException","java.lang.IllegalArgumentException","$.NullPointerException"],function(){c$=w(function(){this.skipBuffer=this.lock=null;u(this,arguments)},java.io,"Reader",null,java.io.Closeable);z(c$,function(a){if(null==a)throw new NullPointerException;this.lock=a},"~O");c(c$,"skip",function(a){if(0>
a)throw new IllegalArgumentException("skip value is negative");var b=Math.min(a,8192);if(null==this.skipBuffer||this.skipBuffer.length<b)this.skipBuffer=ja(b,"\x00");for(var d=a;0<d;){var j=this.read(this.skipBuffer,0,Math.min(d,b));if(-1==j)break;d-=j}return a-d},"~N");c(c$,"ready",function(){return!1});c(c$,"markSupported",function(){return!1});c(c$,"mark",function(){throw new java.io.IOException("mark() not supported");},"~N");c(c$,"reset",function(){throw new java.io.IOException("reset() not supported");
});H(c$,"maxSkipBufferSize",8192)}),q(["java.io.Reader"],"java.io.StringReader",["java.io.IOException","java.lang.IllegalArgumentException","$.IndexOutOfBoundsException"],function(){c$=w(function(){this.str=null;this.$mark=this.next=this.length=0;u(this,arguments)},java.io,"StringReader",java.io.Reader);z(c$,function(a){P(this,java.io.StringReader,[a]);this.str=a;this.length=a.length},"~S");c(c$,"ensureOpen",function(){if(null==this.str)throw new java.io.IOException("Stream closed");});e(c$,"read",
function(a,b,d){this.ensureOpen();if(0>b||b>a.length||0>d||b+d>a.length||0>b+d)throw new IndexOutOfBoundsException;if(0==d)return 0;if(this.next>=this.length)return-1;d=Math.min(this.length-this.next,d);this.str.getChars(this.next,this.next+d,a,b);this.next+=d;return d},"~A,~N,~N");e(c$,"skip",function(a){this.ensureOpen();if(this.next>=this.length)return 0;a=Math.min(this.length-this.next,a);a=Math.max(-this.next,a);this.next+=a;return a},"~N");e(c$,"ready",function(){this.ensureOpen();return!0});
e(c$,"markSupported",function(){return!0});e(c$,"mark",function(a){if(0>a)throw new IllegalArgumentException("Read-ahead limit < 0");this.ensureOpen();this.$mark=this.next},"~N");e(c$,"reset",function(){this.ensureOpen();this.next=this.$mark});e(c$,"close",function(){this.str=null})}),I(["java.io.Closeable","$.Flushable","java.lang.Appendable"],"java.io.Writer",["java.lang.NullPointerException","$.StringIndexOutOfBoundsException"],function(){c$=x(function(){this.lock=null;v(this,arguments)},java.io,
"Writer",null,[Appendable,java.io.Closeable,java.io.Flushable]);m(c$,function(){this.lock=this});m(c$,function(a){if(null!=a)this.lock=a;else throw new NullPointerException;},"~O");c(c$,"write",function(a){this.write(a,0,a.length)},"~A");c(c$,"write",function(a){var b=O(1,"\x00");b[0]=String.fromCharCode(a);this.write(b)},"~N");c(c$,"write",function(a){var b=O(a.length,"\x00");a.getChars(0,b.length,b,0);this.write(b)},"~S");c(c$,"write",function(a,b,d){if(0<=d){var j=O(d,"\x00");a.getChars(b,b+d,
j,0);this.write(j)}else throw new StringIndexOutOfBoundsException;},"~S,~N,~N");c(c$,"append",function(a){this.write(a.charCodeAt(0));return this},"~N");c(c$,"append",function(a){null==a?this.write("null"):this.write(a.toString());return this},"CharSequence");c(c$,"append",function(a,b,d){null==a?this.write("null".substring(b,d)):this.write(a.subSequence(b,d).toString());return this},"CharSequence,~N,~N");X(c$,"TOKEN_NULL","null")}),p("java.net"),q(["java.io.IOException"],"java.net.MalformedURLException",
null,function(){c$=F(java.net,"MalformedURLException",java.io.IOException);z(c$,function(){P(this,java.net.MalformedURLException,[])})}),p("java.net"),q(["java.util.Hashtable"],"java.net.URL",["java.io.IOException","java.lang.Character","$.Error","java.net.MalformedURLException"],function(){c$=w(function(){this.host=this.protocol=null;this.port=-1;this.handler=this.ref=this.userInfo=this.path=this.authority=this.query=this.file=null;this.$hashCode=-1;u(this,arguments)},java.net,"URL",null,java.io.Serializable);
z(c$,function(a,b,d){var j,c,g,e=0,h=null,k=!1,s=!1;if(null!=d){var n=System.getSecurityManager();null!=n&&this.checkSpecifyHandler(n)}try{for(c=b.length;0<c&&" ">=b.charAt(c-1);)c--;for(;e<c&&" ">=b.charAt(e);)e++;b.regionMatches(!0,e,"url:",0,4)&&(e+=4);e<b.length&&"#"==b.charAt(e)&&(k=!0);for(j=e;!k&&j<c&&47!=(g=b.charCodeAt(j));j++)if(58==g){var p=b.substring(e,j).toLowerCase();this.isValidProtocol(p)&&(h=p,e=j+1);break}this.protocol=h;if(null!=a&&(null==h||h.equalsIgnoreCase(a.protocol)))null==
d&&(d=a.handler),null!=a.path&&a.path.startsWith("/")&&(h=null),null==h&&(this.protocol=a.protocol,this.authority=a.authority,this.userInfo=a.userInfo,this.host=a.host,this.port=a.port,this.file=a.file,this.path=a.path,s=!0);if(null==this.protocol)throw new java.net.MalformedURLException("no protocol: "+b);if(null==d&&null==(d=java.net.URL.getURLStreamHandler(this.protocol)))throw new java.net.MalformedURLException("unknown protocol: "+this.protocol);this.handler=d;j=b.indexOf("#",e);0<=j&&(this.ref=
b.substring(j+1,c),c=j);s&&e==c&&(this.query=a.query,null==this.ref&&(this.ref=a.ref));d.parseURL(this,b,e,c)}catch(E){if(C(E,java.net.MalformedURLException))throw E;if(C(E,Exception))throw a=E,b=new java.net.MalformedURLException(a.getMessage()),b.initCause(a),b;throw E;}},"java.net.URL,~S,java.net.URLStreamHandler");c(c$,"isValidProtocol",function(a){var b=a.length;if(1>b)return!1;var d=a.charAt(0);if(!Character.isLetter(d))return!1;for(var j=1;j<b;j++)if(d=a.charAt(j),!Character.isLetterOrDigit(d)&&
"."!=d&&"+"!=d&&"-"!=d)return!1;return!0},"~S");c(c$,"checkSpecifyHandler",function(){},"SecurityManager");c(c$,"set5",function(a,b,d,j,c){this.protocol=a;this.host=b;this.authority=-1==d?b:b+":"+d;this.port=d;this.file=j;this.ref=c;this.$hashCode=-1;a=j.lastIndexOf("?");-1!=a?(this.query=j.substring(a+1),this.path=j.substring(0,a)):this.path=j},"~S,~S,~N,~S,~S");c(c$,"set",function(a,b,d,j,c,g,e,h){this.protocol=a;this.host=b;this.port=d;this.file=null==e?g:g+"?"+e;this.userInfo=c;this.path=g;this.ref=
h;this.$hashCode=-1;this.query=e;this.authority=j},"~S,~S,~N,~S,~S,~S,~S,~S");c(c$,"getQuery",function(){return this.query});c(c$,"getPath",function(){return this.path});c(c$,"getUserInfo",function(){return this.userInfo});c(c$,"getAuthority",function(){return this.authority});c(c$,"getPort",function(){return this.port});c(c$,"getDefaultPort",function(){return this.handler.getDefaultPort()});c(c$,"getProtocol",function(){return this.protocol});c(c$,"getHost",function(){return this.host});c(c$,"getFile",
function(){return this.file});c(c$,"getRef",function(){return this.ref});e(c$,"equals",function(a){return!y(a,java.net.URL)?!1:this.handler.equals2(this,a)},"~O");e(c$,"hashCode",function(){return-1!=this.$hashCode?this.$hashCode:this.$hashCode=this.handler.hashCode(this)});c(c$,"sameFile",function(a){return this.handler.sameFile(this,a)},"java.net.URL");e(c$,"toString",function(){return this.toExternalForm()});c(c$,"toExternalForm",function(){return this.handler.toExternalForm(this)});c(c$,"openConnection",
function(){return this.handler.openConnection(this)});c(c$,"openStream",function(){return this.openConnection().getInputStream()});c(c$,"getContent",function(){return this.openConnection().getInputStream()});c$.setURLStreamHandlerFactory=c(c$,"setURLStreamHandlerFactory",function(a){if(null!=java.net.URL.factory)throw Error("factory already defined");var b=System.getSecurityManager();null!=b&&b.checkSetFactory();java.net.URL.handlers.clear();java.net.URL.factory=a},"java.net.URLStreamHandlerFactory");
c$.getURLStreamHandler=c(c$,"getURLStreamHandler",function(a){var b=java.net.URL.handlers.get(a);null==b&&null!=java.net.URL.factory&&(b=java.net.URL.factory.createURLStreamHandler(a));return b},"~S");H(c$,"factory",null);c$.handlers=c$.prototype.handlers=new java.util.Hashtable;c$.streamHandlerLock=c$.prototype.streamHandlerLock=new JavaObject}),p("java.net"),q(null,"java.net.URLConnection",["java.lang.IllegalStateException","$.NullPointerException","java.net.UnknownServiceException","JU.List"],
function(){c$=w(function(){this.url=null;this.doInput=!0;this.connected=this.doOutput=!1;this.requests=null;u(this,arguments)},java.net,"URLConnection");c(c$,"setDoInput",function(a){if(this.connected)throw new IllegalStateException("Already connected");this.doInput=a},"~B");c(c$,"getDoInput",function(){return this.doInput});c(c$,"setDoOutput",function(a){if(this.connected)throw new IllegalStateException("Already connected");this.doOutput=a},"~B");c(c$,"getDoOutput",function(){return this.doOutput});
z(c$,function(a){this.url=a},"java.net.URL");c(c$,"getURL",function(){return this.url});c(c$,"getInputStream",function(){throw new java.net.UnknownServiceException("protocol doesn't support input");});c(c$,"getOutputStream",function(){throw new java.net.UnknownServiceException("protocol doesn't support output");});c(c$,"setRequestProperty",function(a,b){if(this.connected)throw new IllegalStateException("Already connected");if(null==a)throw new NullPointerException("key is null");null==this.requests&&
(this.requests=new JU.List);for(var d=this.requests.size();0<=--d;)if(this.requests.get(d)[0].equals(a)){this.requests.get(d)[1]=b;return}this.requests.addLast([a,b])},"~S,~S")}),ha("java.net"),c$=t(java.net,"URLEncoder"),c$.encode=c(c$,"encode",function(a){return encodeURIComponent(a)},"~S"),c$.encode=c(c$,"encode",function(a){return encodeURIComponent(a)},"~S,~S"),X(c$,"digits","0123456789ABCDEF"),p("java.net"),q(null,"java.net.URLStreamHandler",["java.lang.IllegalArgumentException","$.SecurityException",
"$.UnsupportedOperationException"],function(){c$=F(java.net,"URLStreamHandler");c(c$,"openConnectionProxy",function(){throw new UnsupportedOperationException("Method not implemented.");},"java.net.URL,java.net.Proxy");c(c$,"parseURL",function(a,b,d,j){var c=a.getProtocol(),g=a.getAuthority(),e=a.getUserInfo(),h=a.getHost(),k=a.getPort(),s=a.getPath(),n=a.getQuery(),p=a.getRef(),E=!1,m=!1;if(d<j){var q=b.indexOf("?"),m=q==d;-1!=q&&q<j&&(n=b.substring(q+1,j),j>q&&(j=q),b=b.substring(0,q))}var r=0;if(!(d<=
j-4&&"/"==b.charAt(d)&&"/"==b.charAt(d+1)&&"/"==b.charAt(d+2)&&"/"==b.charAt(d+3))&&d<=j-2&&"/"==b.charAt(d)&&"/"==b.charAt(d+1)){d+=2;r=b.indexOf("/",d);0>r&&(r=b.indexOf("?",d),0>r&&(r=j));h=g=b.substring(d,r);q=g.indexOf("@");-1!=q?(e=g.substring(0,q),h=g.substring(q+1)):e=null;if(null!=h){if(0<h.length&&"["==h.charAt(0))throw new IllegalArgumentException("Invalid host: "+h);q=h.indexOf(":");k=-1;0<=q&&(h.length>q+1&&(k=Integer.parseInt(h.substring(q+1))),h=h.substring(0,q))}else h="";if(-1>k)throw new IllegalArgumentException("Invalid port number :"+
k);d=r;0<g.length&&(s="")}null==h&&(h="");d<j?"/"==b.charAt(d)?s=b.substring(d,j):null!=s&&0<s.length?(E=!0,q=s.lastIndexOf("/"),m="",-1==q&&null!=g&&(m="/"),s=s.substring(0,q+1)+m+b.substring(d,j)):s=(null!=g?"/":"")+b.substring(d,j):m&&null!=s&&(q=s.lastIndexOf("/"),0>q&&(q=0),s=s.substring(0,q)+"/");null==s&&(s="");if(E){for(;0<=(r=s.indexOf("/./"));)s=s.substring(0,r)+s.substring(r+2);for(r=0;0<=(r=s.indexOf("/../",r));)0<r&&0<=(j=s.lastIndexOf("/",r-1))&&0!=s.indexOf("/../",j)?(s=s.substring(0,
j)+s.substring(r+3),r=0):r+=3;for(;s.endsWith("/..");)if(r=s.indexOf("/.."),0<=(j=s.lastIndexOf("/",r-1)))s=s.substring(0,j+1);else break;s.startsWith("./")&&2<s.length&&(s=s.substring(2));s.endsWith("/.")&&(s=s.substring(0,s.length-1))}this.setURL(a,c,h,k,g,e,s,n,p)},"java.net.URL,~S,~N,~N");c(c$,"getDefaultPort",function(){return-1});c(c$,"equals2",function(a,b){var d=a.getRef(),j=b.getRef();return(d===j||null!=d&&d.equals(j))&&this.sameFile(a,b)},"java.net.URL,java.net.URL");c(c$,"hashCode",function(a){var b=
0,d=a.getProtocol();null!=d&&(b+=d.hashCode());b+=a.toString().hashCode();d=a.getFile();null!=d&&(b+=d.hashCode());b=-1==a.getPort()?b+this.getDefaultPort():b+a.getPort();a=a.getRef();null!=a&&(b+=a.hashCode());return b},"java.net.URL");c(c$,"sameFile",function(a,b){if(!(a.getProtocol()===b.getProtocol()||null!=a.getProtocol()&&a.getProtocol().equalsIgnoreCase(b.getProtocol()))||!(a.getFile()===b.getFile()||null!=a.getFile()&&a.getFile().equals(b.getFile())))return!1;var d,j;d=-1!=a.getPort()?a.getPort():
a.handler.getDefaultPort();j=-1!=b.getPort()?b.getPort():b.handler.getDefaultPort();return d!=j||!this.hostsEqual(a,b)?!1:!0},"java.net.URL,java.net.URL");c(c$,"hostsEqual",function(a,b){return null!=a.getHost()&&null!=b.getHost()?a.getHost().equalsIgnoreCase(b.getHost()):null==a.getHost()&&null==b.getHost()},"java.net.URL,java.net.URL");c(c$,"toExternalForm",function(){return""},"java.net.URL");c(c$,"setURL",function(a,b,d,j,c,g,e,h,k){if(this!==a.handler)throw new SecurityException("handler for url different from this handler");
a.set(a.getProtocol(),d,j,c,g,e,h,k)},"java.net.URL,~S,~S,~N,~S,~S,~S,~S,~S");c(c$,"setURLDeprecated",function(a,b,d,j,c,g){var e=null,h=null;if(null!=d&&0!=d.length){var e=-1==j?d:d+":"+j,k=d.lastIndexOf("@");-1!=k&&(h=d.substring(0,k),d=d.substring(k+1))}var s=null,k=null;null!=c&&(s=c.lastIndexOf("?"),-1!=s?(k=c.substring(s+1),s=c.substring(0,s)):s=c);this.setURL(a,b,d,j,e,h,s,k,g)},"java.net.URL,~S,~S,~N,~S,~S")}),p("java.net"),L(java.net,"URLStreamHandlerFactory"),ha("java.text"),c$=x(function(){this.pattern=
null;v(this,arguments)},java.text,"MessageFormat"),m(c$,function(a){this.pattern=a},"~S"),m(c$,function(a){this.pattern=a},"~S,java.util.Locale"),c$.format=c(c$,"format",function(a,b){return a.replace(/\{(\d+)\}/g,function(a,j){var c=parseInt(j);return null==b?null:b[c]})},"~S,~A"),c(c$,"format",function(a){return java.text.MessageFormat.format(this.pattern,[a])},"~O"),I(["java.util.Collection"],"java.util.AbstractCollection",["java.lang.StringBuilder","$.UnsupportedOperationException","java.lang.reflect.Array"],
function(){c$=t(java.util,"AbstractCollection",null,java.util.Collection);m(c$,function(){});e(c$,"add",function(){throw new UnsupportedOperationException;},"~O");e(c$,"addAll",function(a){var b=!1;for(a=a.iterator();a.hasNext();)this.add(a.next())&&(b=!0);return b},"java.util.Collection");e(c$,"clear",function(){for(var a=this.iterator();a.hasNext();)a.next(),a.remove()});e(c$,"contains",function(a){var b=this.iterator();if(null!=a)for(;b.hasNext();){if(a.equals(b.next()))return!0}else for(;b.hasNext();)if(null==
b.next())return!0;return!1},"~O");e(c$,"containsAll",function(a){for(a=a.iterator();a.hasNext();)if(!this.contains(a.next()))return!1;return!0},"java.util.Collection");e(c$,"isEmpty",function(){return 0==this.size()});e(c$,"remove",function(a){var b=this.iterator();if(null!=a)for(;b.hasNext();){if(a.equals(b.next()))return b.remove(),!0}else for(;b.hasNext();)if(null==b.next())return b.remove(),!0;return!1},"~O");e(c$,"removeAll",function(a){for(var b=!1,d=this.iterator();d.hasNext();)a.contains(d.next())&&
(d.remove(),b=!0);return b},"java.util.Collection");e(c$,"retainAll",function(a){for(var b=!1,d=this.iterator();d.hasNext();)a.contains(d.next())||(d.remove(),b=!0);return b},"java.util.Collection");c(c$,"toArray",function(){for(var a=this.size(),b=0,d=this.iterator(),j=Array(a);b<a;)j[b++]=d.next();return j});c(c$,"toArray",function(a){var b=this.size(),d=0;b>a.length&&(a=a.getClass().getComponentType(),a=java.lang.reflect.Array.newInstance(a,b));for(var j,b=this.iterator();b.hasNext()&&((j=b.next())||
1);)a[d++]=j;d<a.length&&(a[d]=null);return a},"~A");e(c$,"toString",function(){if(this.isEmpty())return"[]";var a=new StringBuilder(16*this.size());a.append("[");for(var b=this.iterator();b.hasNext();){var d=b.next();d!==this?a.append(d):a.append("(this Collection)");b.hasNext()&&a.append(", ")}a.append("]");return a.toString()})}),I("java.util.AbstractCollection $.Iterator $.List $.ListIterator $.RandomAccess $.NoSuchElementException".split(" "),"java.util.AbstractList",["java.lang.IllegalArgumentException",
"$.IllegalStateException","$.IndexOutOfBoundsException","$.UnsupportedOperationException","java.util.ConcurrentModificationException"],function(){c$=x(function(){this.modCount=0;M("java.util.AbstractList.SimpleListIterator")||java.util.AbstractList.$AbstractList$SimpleListIterator$();M("java.util.AbstractList.FullListIterator")||java.util.AbstractList.$AbstractList$FullListIterator$();v(this,arguments)},java.util,"AbstractList",java.util.AbstractCollection,java.util.List);c(c$,"add",function(){throw new UnsupportedOperationException;
},"~N,~O");c(c$,"add",function(a){this.add(this.size(),a);return!0},"~O");c(c$,"addAll",function(a,b){for(var d=b.iterator();d.hasNext();)this.add(a++,d.next());return!b.isEmpty()},"~N,java.util.Collection");e(c$,"clear",function(){this.removeRange(0,this.size())});e(c$,"equals",function(a){if(this===a)return!0;if(G(a,java.util.List)){if(a.size()!=this.size())return!1;var b=this.iterator();for(a=a.iterator();b.hasNext();){var d=b.next(),j=a.next();if(!(null==d?null==j:d.equals(j)))return!1}return!0}return!1},
"~O");e(c$,"hashCode",function(){for(var a=1,b=this.iterator();b.hasNext();)var d=b.next(),a=31*a+(null==d?0:d.hashCode());return a});e(c$,"indexOf",function(a){var b=this.listIterator();if(null!=a)for(;b.hasNext();){if(a.equals(b.next()))return b.previousIndex()}else for(;b.hasNext();)if(null==b.next())return b.previousIndex();return-1},"~O");e(c$,"iterator",function(){return K(java.util.AbstractList.SimpleListIterator,this,null)});e(c$,"lastIndexOf",function(a){var b=this.listIterator(this.size());
if(null!=a)for(;b.hasPrevious();){if(a.equals(b.previous()))return b.nextIndex()}else for(;b.hasPrevious();)if(null==b.previous())return b.nextIndex();return-1},"~O");c(c$,"listIterator",function(){return this.listIterator(0)});c(c$,"listIterator",function(a){return K(java.util.AbstractList.FullListIterator,this,null,a)},"~N");c(c$,"remove",function(){throw new UnsupportedOperationException;},"~N");c(c$,"removeRange",function(a,b){for(var d=this.listIterator(a),j=a;j<b;j++)d.next(),d.remove()},"~N,~N");
e(c$,"set",function(){throw new UnsupportedOperationException;},"~N,~O");e(c$,"subList",function(a,b){if(0<=a&&b<=this.size()){if(a<=b)return G(this,java.util.RandomAccess)?new java.util.AbstractList.SubAbstractListRandomAccess(this,a,b):new java.util.AbstractList.SubAbstractList(this,a,b);throw new IllegalArgumentException;}throw new IndexOutOfBoundsException;},"~N,~N");c$.$AbstractList$SimpleListIterator$=function(){A();c$=x(function(){V(this,arguments);this.pos=-1;this.expectedModCount=0;this.lastPosition=
-1;v(this,arguments)},java.util.AbstractList,"SimpleListIterator",null,java.util.Iterator);m(c$,function(){this.expectedModCount=this.b$["java.util.AbstractList"].modCount});e(c$,"hasNext",function(){return this.pos+1<this.b$["java.util.AbstractList"].size()});e(c$,"next",function(){if(this.expectedModCount==this.b$["java.util.AbstractList"].modCount)try{var a=this.b$["java.util.AbstractList"].get(this.pos+1);this.lastPosition=++this.pos;return a}catch(b){if(G(b,IndexOutOfBoundsException))throw new java.util.NoSuchElementException;
throw b;}throw new java.util.ConcurrentModificationException;});e(c$,"remove",function(){if(this.expectedModCount==this.b$["java.util.AbstractList"].modCount){try{this.b$["java.util.AbstractList"].remove(this.lastPosition)}catch(a){if(G(a,IndexOutOfBoundsException))throw new IllegalStateException;throw a;}this.b$["java.util.AbstractList"].modCount!=this.expectedModCount&&this.expectedModCount++;this.pos==this.lastPosition&&this.pos--;this.lastPosition=-1}else throw new java.util.ConcurrentModificationException;
});c$=B()};c$.$AbstractList$FullListIterator$=function(){A();c$=x(function(){V(this,arguments);v(this,arguments)},java.util.AbstractList,"FullListIterator",java.util.AbstractList.SimpleListIterator,java.util.ListIterator,K(java.util.AbstractList.SimpleListIterator,this,null,ta));m(c$,function(a){D(this,java.util.AbstractList.FullListIterator);if(0<=a&&a<=this.b$["java.util.AbstractList"].size())this.pos=a-1;else throw new IndexOutOfBoundsException;},"~N");e(c$,"add",function(a){if(this.expectedModCount==
this.b$["java.util.AbstractList"].modCount){try{this.b$["java.util.AbstractList"].add(this.pos+1,a)}catch(b){if(G(b,IndexOutOfBoundsException))throw new java.util.NoSuchElementException;throw b;}this.pos++;this.lastPosition=-1;this.b$["java.util.AbstractList"].modCount!=this.expectedModCount&&this.expectedModCount++}else throw new java.util.ConcurrentModificationException;},"~O");e(c$,"hasPrevious",function(){return 0<=this.pos});e(c$,"nextIndex",function(){return this.pos+1});e(c$,"previous",function(){if(this.expectedModCount==
this.b$["java.util.AbstractList"].modCount)try{var a=this.b$["java.util.AbstractList"].get(this.pos);this.lastPosition=this.pos;this.pos--;return a}catch(b){if(G(b,IndexOutOfBoundsException))throw new java.util.NoSuchElementException;throw b;}throw new java.util.ConcurrentModificationException;});e(c$,"previousIndex",function(){return this.pos});e(c$,"set",function(a){if(this.expectedModCount==this.b$["java.util.AbstractList"].modCount)try{this.b$["java.util.AbstractList"].set(this.lastPosition,a)}catch(b){if(G(b,
IndexOutOfBoundsException))throw new IllegalStateException;throw b;}else throw new java.util.ConcurrentModificationException;},"~O");c$=B()};A();c$=t(java.util.AbstractList,"SubAbstractListRandomAccess",java.util.AbstractList.SubAbstractList,java.util.RandomAccess);c$=B();A();c$=x(function(){this.fullList=null;this.$size=this.offset=0;v(this,arguments)},java.util.AbstractList,"SubAbstractList",java.util.AbstractList);m(c$,function(a,b,d){D(this,java.util.AbstractList.SubAbstractList);this.fullList=
a;this.modCount=this.fullList.modCount;this.offset=b;this.$size=d-b},"java.util.AbstractList,~N,~N");c(c$,"add",function(a,b){if(this.modCount==this.fullList.modCount)if(0<=a&&a<=this.$size)this.fullList.add(a+this.offset,b),this.$size++,this.modCount=this.fullList.modCount;else throw new IndexOutOfBoundsException;else throw new java.util.ConcurrentModificationException;},"~N,~O");c(c$,"addAll",function(a,b){if(this.modCount==this.fullList.modCount){if(0<=a&&a<=this.$size){var d=this.fullList.addAll(a+
this.offset,b);d&&(this.$size+=b.size(),this.modCount=this.fullList.modCount);return d}throw new IndexOutOfBoundsException;}throw new java.util.ConcurrentModificationException;},"~N,java.util.Collection");c(c$,"addAll",function(a){if(this.modCount==this.fullList.modCount){var b=this.fullList.addAll(this.offset+this.$size,a);b&&(this.$size+=a.size(),this.modCount=this.fullList.modCount);return b}throw new java.util.ConcurrentModificationException;},"java.util.Collection");c(c$,"get",function(a){if(this.modCount==
this.fullList.modCount){if(0<=a&&a<this.$size)return this.fullList.get(a+this.offset);throw new IndexOutOfBoundsException;}throw new java.util.ConcurrentModificationException;},"~N");e(c$,"iterator",function(){return this.listIterator(0)});c(c$,"listIterator",function(a){if(this.modCount==this.fullList.modCount){if(0<=a&&a<=this.$size)return new java.util.AbstractList.SubAbstractList.SubAbstractListIterator(this.fullList.listIterator(a+this.offset),this,this.offset,this.$size);throw new IndexOutOfBoundsException;
}throw new java.util.ConcurrentModificationException;},"~N");c(c$,"remove",function(a){if(this.modCount==this.fullList.modCount){if(0<=a&&a<this.$size)return a=this.fullList.remove(a+this.offset),this.$size--,this.modCount=this.fullList.modCount,a;throw new IndexOutOfBoundsException;}throw new java.util.ConcurrentModificationException;},"~N");c(c$,"removeRange",function(a,b){if(a!=b)if(this.modCount==this.fullList.modCount)this.fullList.removeRange(a+this.offset,b+this.offset),this.$size-=b-a,this.modCount=
this.fullList.modCount;else throw new java.util.ConcurrentModificationException;},"~N,~N");c(c$,"set",function(a,b){if(this.modCount==this.fullList.modCount){if(0<=a&&a<this.$size)return this.fullList.set(a+this.offset,b);throw new IndexOutOfBoundsException;}throw new java.util.ConcurrentModificationException;},"~N,~O");e(c$,"size",function(){return this.$size});c(c$,"sizeChanged",function(a){a?this.$size++:this.$size--;this.modCount=this.fullList.modCount},"~B");A();c$=x(function(){this.iterator=
this.subList=null;this.end=this.start=0;v(this,arguments)},java.util.AbstractList.SubAbstractList,"SubAbstractListIterator",null,java.util.ListIterator);m(c$,function(a,b,d,j){this.iterator=a;this.subList=b;this.start=d;this.end=this.start+j},"java.util.ListIterator,java.util.AbstractList.SubAbstractList,~N,~N");c(c$,"add",function(a){this.iterator.add(a);this.subList.sizeChanged(!0);this.end++},"~O");e(c$,"hasNext",function(){return this.iterator.nextIndex()<this.end});e(c$,"hasPrevious",function(){return this.iterator.previousIndex()>=
this.start});c(c$,"next",function(){if(this.iterator.nextIndex()<this.end)return this.iterator.next();throw new java.util.NoSuchElementException;});c(c$,"nextIndex",function(){return this.iterator.nextIndex()-this.start});c(c$,"previous",function(){if(this.iterator.previousIndex()>=this.start)return this.iterator.previous();throw new java.util.NoSuchElementException;});c(c$,"previousIndex",function(){var a=this.iterator.previousIndex();return a>=this.start?a-this.start:-1});c(c$,"remove",function(){this.iterator.remove();
this.subList.sizeChanged(!1);this.end--});c(c$,"set",function(a){this.iterator.set(a)},"~O");c$=B();c$=B()}),I(["java.util.Map"],"java.util.AbstractMap",["java.lang.StringBuilder","$.UnsupportedOperationException","java.util.AbstractCollection","$.AbstractSet","$.Iterator"],function(){c$=x(function(){this.valuesCollection=this.$keySet=null;v(this,arguments)},java.util,"AbstractMap",null,java.util.Map);m(c$,function(){});e(c$,"clear",function(){this.entrySet().clear()});e(c$,"containsKey",function(a){var b=
this.entrySet().iterator();if(null!=a)for(;b.hasNext();){if(a.equals(b.next().getKey()))return!0}else for(;b.hasNext();)if(null==b.next().getKey())return!0;return!1},"~O");e(c$,"containsValue",function(a){var b=this.entrySet().iterator();if(null!=a)for(;b.hasNext();){if(a.equals(b.next().getValue()))return!0}else for(;b.hasNext();)if(null==b.next().getValue())return!0;return!1},"~O");e(c$,"equals",function(a){if(this===a)return!0;if(G(a,java.util.Map)){if(this.size()!=a.size())return!1;a=a.entrySet();
for(var b=this.entrySet().iterator();b.hasNext();)if(!a.contains(b.next()))return!1;return!0}return!1},"~O");e(c$,"get",function(a){var b=this.entrySet().iterator();if(null!=a)for(;b.hasNext();){var d=b.next();if(a.equals(d.getKey()))return d.getValue()}else for(;b.hasNext();)if(d=b.next(),null==d.getKey())return d.getValue();return null},"~O");e(c$,"hashCode",function(){for(var a=0,b=this.entrySet().iterator();b.hasNext();)a+=b.next().hashCode();return a});e(c$,"isEmpty",function(){return 0==this.size()});
e(c$,"keySet",function(){null==this.$keySet&&(this.$keySet=(M("java.util.AbstractMap$1")?0:java.util.AbstractMap.$AbstractMap$1$(),K(java.util.AbstractMap$1,this,null)));return this.$keySet});e(c$,"put",function(){throw new UnsupportedOperationException;},"~O,~O");e(c$,"putAll",function(a){var b;for(a=a.entrySet().iterator();a.hasNext()&&((b=a.next())||1);)this.put(b.getKey(),b.getValue())},"java.util.Map");e(c$,"remove",function(a){var b=this.entrySet().iterator();if(null!=a)for(;b.hasNext();){var d=
b.next();if(a.equals(d.getKey()))return b.remove(),d.getValue()}else for(;b.hasNext();)if(d=b.next(),null==d.getKey())return b.remove(),d.getValue();return null},"~O");e(c$,"size",function(){return this.entrySet().size()});e(c$,"toString",function(){if(this.isEmpty())return"{}";var a=new StringBuilder(28*this.size());a.append("{");for(var b=this.entrySet().iterator();b.hasNext();){var d=b.next(),j=d.getKey();j!==this?a.append(j):a.append("(this Map)");a.append("=");d=d.getValue();d!==this?a.append(d):
a.append("(this Map)");b.hasNext()&&a.append(", ")}a.append("}");return a.toString()});e(c$,"values",function(){null==this.valuesCollection&&(this.valuesCollection=(M("java.util.AbstractMap$2")?0:java.util.AbstractMap.$AbstractMap$2$(),K(java.util.AbstractMap$2,this,null)));return this.valuesCollection});c(c$,"clone",function(){var a=$(this,java.util.AbstractMap,"clone",[]);a.$keySet=null;a.valuesCollection=null;return a});c$.$AbstractMap$1$=function(){A();c$=T(java.util,"AbstractMap$1",java.util.AbstractSet);
e(c$,"contains",function(a){return this.b$["java.util.AbstractMap"].containsKey(a)},"~O");e(c$,"size",function(){return this.b$["java.util.AbstractMap"].size()});e(c$,"iterator",function(){return M("java.util.AbstractMap$1$1")?0:java.util.AbstractMap.$AbstractMap$1$1$(),K(java.util.AbstractMap$1$1,this,null)});c$=B()};c$.$AbstractMap$1$1$=function(){A();c$=x(function(){V(this,arguments);this.setIterator=null;v(this,arguments)},java.util,"AbstractMap$1$1",null,java.util.Iterator);da(c$,function(){this.setIterator=
this.b$["java.util.AbstractMap"].entrySet().iterator()});e(c$,"hasNext",function(){return this.setIterator.hasNext()});e(c$,"next",function(){return this.setIterator.next().getKey()});e(c$,"remove",function(){this.setIterator.remove()});c$=B()};c$.$AbstractMap$2$=function(){A();c$=T(java.util,"AbstractMap$2",java.util.AbstractCollection);e(c$,"size",function(){return this.b$["java.util.AbstractMap"].size()});e(c$,"contains",function(a){return this.b$["java.util.AbstractMap"].containsValue(a)},"~O");
e(c$,"iterator",function(){return M("java.util.AbstractMap$2$1")?0:java.util.AbstractMap.$AbstractMap$2$1$(),K(java.util.AbstractMap$2$1,this,null)});c$=B()};c$.$AbstractMap$2$1$=function(){A();c$=x(function(){V(this,arguments);this.setIterator=null;v(this,arguments)},java.util,"AbstractMap$2$1",null,java.util.Iterator);da(c$,function(){this.setIterator=this.b$["java.util.AbstractMap"].entrySet().iterator()});e(c$,"hasNext",function(){return this.setIterator.hasNext()});e(c$,"next",function(){return this.setIterator.next().getValue()});
e(c$,"remove",function(){this.setIterator.remove()});c$=B()}}),I(["java.util.AbstractCollection","$.Set"],"java.util.AbstractSet",null,function(){c$=t(java.util,"AbstractSet",java.util.AbstractCollection,java.util.Set);e(c$,"equals",function(a){return this===a?!0:G(a,java.util.Set)?this.size()==a.size()&&this.containsAll(a):!1},"~O");e(c$,"hashCode",function(){for(var a=0,b=this.iterator();b.hasNext();)var d=b.next(),a=a+(null==d?0:d.hashCode());return a});e(c$,"removeAll",function(a){var b=!1;if(this.size()<=
a.size())for(var d=this.iterator();d.hasNext();)a.contains(d.next())&&(d.remove(),b=!0);else for(d=a.iterator();d.hasNext();)b=this.remove(d.next())||b;return b},"java.util.Collection")}),I(["java.util.AbstractList","$.List","$.RandomAccess"],"java.util.ArrayList",["java.lang.IllegalArgumentException","$.IndexOutOfBoundsException","java.lang.reflect.Array","java.util.Arrays"],function(){c$=x(function(){this.lastIndex=this.firstIndex=0;this.array=null;v(this,arguments)},java.util,"ArrayList",java.util.AbstractList,
[java.util.List,Cloneable,java.io.Serializable,java.util.RandomAccess]);ca(c$,function(){this.setup(0)});c(c$,"setup",function(a){D(this,java.util.ArrayList,[]);this.firstIndex=this.lastIndex=0;try{this.array=this.newElementArray(a)}catch(b){if(G(b,NegativeArraySizeException))throw new IllegalArgumentException;throw b;}},"~N");c(c$,"newElementArray",($fz=function(a){return Array(a)},$fz.isPrivate=!0,$fz),"~N");e(c$,"add",function(a,b){if(1==arguments.length)return this.add1(a);var d=this.size();if(0<
a&&a<d){if(0==this.firstIndex&&this.lastIndex==this.array.length)this.growForInsert(a,1);else if(a<Math.floor(d/2)&&0<this.firstIndex||this.lastIndex==this.array.length)System.arraycopy(this.array,this.firstIndex,this.array,--this.firstIndex,a);else{var j=a+this.firstIndex;System.arraycopy(this.array,j,this.array,j+1,d-a);this.lastIndex++}this.array[a+this.firstIndex]=b}else if(0==a)0==this.firstIndex&&this.growAtFront(1),this.array[--this.firstIndex]=b;else if(a==d)this.lastIndex==this.array.length&&
this.growAtEnd(1),this.array[this.lastIndex++]=b;else throw new IndexOutOfBoundsException;this.modCount++},"~N,~O");e(c$,"add1",function(a){this.lastIndex==this.array.length&&this.growAtEnd(1);this.array[this.lastIndex++]=a;this.modCount++;return!0},"~O");e(c$,"addAll",function(a){var b=a.size();if(0<b){this.lastIndex>this.array.length-b&&this.growAtEnd(b);a=a.iterator();for(b=this.lastIndex+b;this.lastIndex<b;)this.array[this.lastIndex++]=a.next();this.modCount++;return!0}return!1},"java.util.Collection");
e(c$,"clear",function(){this.firstIndex!=this.lastIndex&&(this.fill(this.firstIndex,this.lastIndex),this.firstIndex=this.lastIndex=0,this.modCount++)});c(c$,"fill",function(a,b){for(var d=b;--d>=a;)this.array[d]=null},"~N,~N");c(c$,"clone",function(){try{var a=$(this,java.util.ArrayList,"clone",[]);a.array=this.array.clone();return a}catch(b){if(G(b,CloneNotSupportedException))return null;throw b;}});e(c$,"contains",function(a){if(null!=a)for(var b=this.firstIndex;b<this.lastIndex;b++){if(a.equals(this.array[b]))return!0}else for(b=
this.firstIndex;b<this.lastIndex;b++)if(null==this.array[b])return!0;return!1},"~O");c(c$,"ensureCapacity",function(a){this.array.length<a&&(0<this.firstIndex?this.growAtFront(a-this.array.length):this.growAtEnd(a-this.array.length))},"~N");e(c$,"get",function(a){if(0<=a&&a<this.size())return this.array[this.firstIndex+a];throw new IndexOutOfBoundsException;},"~N");c(c$,"growAtEnd",($fz=function(a){var b=this.size();if(this.firstIndex>=a-(this.array.length-this.lastIndex))a=this.lastIndex-this.firstIndex,
0<b&&(System.arraycopy(this.array,this.firstIndex,this.array,0,b),this.fill(a<this.firstIndex?this.firstIndex:a,this.array.length)),this.firstIndex=0,this.lastIndex=a;else{var d=Math.floor(b/2);a>d&&(d=a);12>d&&(d=12);a=this.newElementArray(b+d);0<b&&System.arraycopy(this.array,this.firstIndex,a,this.firstIndex,b);this.array=a}},$fz.isPrivate=!0,$fz),"~N");c(c$,"growAtFront",($fz=function(a){var b=this.size();if(this.array.length-this.lastIndex>=a)a=this.array.length-b,0<b&&(System.arraycopy(this.array,
this.firstIndex,this.array,a,b),this.fill(this.firstIndex,this.firstIndex+b>a?a:this.firstIndex+b)),this.firstIndex=a,this.lastIndex=this.array.length;else{var d=Math.floor(b/2);a>d&&(d=a);12>d&&(d=12);a=this.newElementArray(b+d);0<b&&System.arraycopy(this.array,this.firstIndex,a,a.length-b,b);this.firstIndex=a.length-b;this.lastIndex=a.length;this.array=a}},$fz.isPrivate=!0,$fz),"~N");c(c$,"growForInsert",($fz=function(a,b){var d=this.size(),j=Math.floor(d/2);b>j&&(j=b);12>j&&(j=12);var c=this.newElementArray(d+
j);if(a<Math.floor(d/2)){var g=c.length-(d+b);System.arraycopy(this.array,a,c,a+j,d-a);System.arraycopy(this.array,this.firstIndex,c,g,a);this.firstIndex=g;this.lastIndex=c.length}else System.arraycopy(this.array,this.firstIndex,c,0,a),System.arraycopy(this.array,a,c,a+b,d-a),this.firstIndex=0,this.lastIndex+=b;this.array=c},$fz.isPrivate=!0,$fz),"~N,~N");e(c$,"indexOf",function(a){if(null!=a)for(var b=this.firstIndex;b<this.lastIndex;b++){if(a.equals(this.array[b]))return b-this.firstIndex}else for(b=
this.firstIndex;b<this.lastIndex;b++)if(null==this.array[b])return b-this.firstIndex;return-1},"~O");e(c$,"isEmpty",function(){return this.lastIndex==this.firstIndex});e(c$,"lastIndexOf",function(a){if(null!=a)for(var b=this.lastIndex-1;b>=this.firstIndex;b--){if(a.equals(this.array[b]))return b-this.firstIndex}else for(b=this.lastIndex-1;b>=this.firstIndex;b--)if(null==this.array[b])return b-this.firstIndex;return-1},"~O");e(c$,"remove",function(a){var b,d=this.size();if(0<=a&&a<d)if(a==d-1)b=this.array[--this.lastIndex],
this.array[this.lastIndex]=null;else if(0==a)b=this.array[this.firstIndex],this.array[this.firstIndex++]=null;else{var j=this.firstIndex+a;b=this.array[j];a<Math.floor(d/2)?(System.arraycopy(this.array,this.firstIndex,this.array,this.firstIndex+1,a),this.array[this.firstIndex++]=null):(System.arraycopy(this.array,j+1,this.array,j,d-a-1),this.array[--this.lastIndex]=null)}else throw new IndexOutOfBoundsException;this.modCount++;return b},"~N");c(c$,"removeObject",function(a){a=this.indexOf(a);return 0>
a?null:this.remove(a)},"~O");e(c$,"removeRange",function(a,b){if(0<=a&&a<=b&&b<=this.size()){if(a!=b){var d=this.size();b==d?(this.fill(this.firstIndex+a,this.lastIndex),this.lastIndex=this.firstIndex+a):0==a?(this.fill(this.firstIndex,this.firstIndex+b),this.firstIndex+=b):(System.arraycopy(this.array,this.firstIndex+b,this.array,this.firstIndex+a,d-b),d=this.lastIndex+a-b,this.fill(d,this.lastIndex),this.lastIndex=d);this.modCount++}}else throw new IndexOutOfBoundsException;},"~N,~N");e(c$,"set",
function(a,b){if(0<=a&&a<this.size()){var d=this.array[this.firstIndex+a];this.array[this.firstIndex+a]=b;return d}throw new IndexOutOfBoundsException;},"~N,~O");e(c$,"size",function(){return this.lastIndex-this.firstIndex});e(c$,"toArray",function(a){var b=this.size();if(!a||b>a.length)a=Array(b);System.arraycopy(this.array,this.firstIndex,a,0,b);b<a.length&&(a[b]=null);return a},"~O");c(c$,"trimToSize",function(){var a=this.size(),b=this.newElementArray(a);System.arraycopy(this.array,this.firstIndex,
b,0,a);this.array=b;this.firstIndex=0;this.lastIndex=this.array.length})}),I(["java.util.AbstractList","$.RandomAccess"],"java.util.Arrays",["java.lang.ArrayIndexOutOfBoundsException","$.IllegalArgumentException","$.NullPointerException"],function(){c$=t(java.util,"Arrays");c$.sort=e(c$,"sort",function(a,b,d,j){switch(arguments.length){case 1:for(var c=a.sort(function(a,b){return"string"==typeof a||a instanceof Comparable?a.compareTo(b):a-b}),g=0;g<a.length;g++)a[g]=c[g];break;case 2:c=a.sort(function(a,
d){return null!=b?b.compare(a,d):"string"==typeof a||a instanceof Comparable?a.compareTo(d):a-d});for(g=0;g<a.length;g++)a[g]=c[g];break;case 3:var e=b,h=d;this.rangeCheck(a.length,e,h);c=[];for(g=e;g<h;g++)c[g-e]=a[g];c=c.sort(function(a,b){return"string"==typeof a||a instanceof Comparable?a.compareTo(b):a-b});for(g=e;g<h;g++)a[g]=c[g-e];break;case 4:e=b;h=d;b=j;this.rangeCheck(a.length,e,h);c=[];for(g=e;g<h;g++)c[g-e]=a[g];c=c.sort(function(a,d){return null!=b?b.compare(a,d):"string"==typeof a||
a instanceof Comparable?a.compareTo(d):a-d});for(g=e;g<h;g++)a[g]=c[g-e]}});c$.rangeCheck=c(c$,"rangeCheck",($fz=function(a,b,d){if(b>d)throw new IllegalArgumentException("fromIndex("+b+") > toIndex("+d+")");if(0>b)throw new ArrayIndexOutOfBoundsException(b);if(d>a)throw new ArrayIndexOutOfBoundsException(d);},$fz.isPrivate=!0,$fz),"~N,~N,~N");c$.binarySearch=c(c$,"binarySearch",function(a,b){for(var d=0,j=a.length-1;d<=j;){var c=d+j>>1,g=a[c];if(g<b)d=c+1;else if(g>b)j=c-1;else return c}return-(d+
1)},"~A,~N");c$.binarySearch=c(c$,"binarySearch",function(a,b){for(var d=0,j=a.length-1;d<=j;){var c=d+j>>1,g=a[c].compareTo(b);if(0>g)d=c+1;else if(0<g)j=c-1;else return c}return-(d+1)},"~A,~O");c$.binarySearch=c(c$,"binarySearch",function(a,b,d){if(null==d)return java.util.Arrays.binarySearch(a,b);for(var j=0,c=a.length-1;j<=c;){var g=j+c>>1,e=d.compare(a[g],b);if(0>e)j=g+1;else if(0<e)c=g-1;else return g}return-(j+1)},"~A,~O,java.util.Comparator");c$.equals=c(c$,"equals",function(a,b){if(a===b)return!0;
if(null==a||null==b)return!1;var d=a.length;if(b.length!=d)return!1;for(var j=0;j<d;j++){var c=a[j],g=b[j];if(!(null==c?null==g:null==c.equals?c==g:c.equals(g)))return!1}return!0},"~A,~A");c$.fill=e(c$,"fill",function(a,b,d,c){2==arguments.length&&(c=b,b=0,d=a.length);java.util.Arrays.rangeCheck(a.length,b,d);for(var f=b;f<d;f++)a[f]=c});c$.asList=c(c$,"asList",function(a){return new java.util.Arrays.ArrayList(a)},"~A");A();c$=x(function(){this.a=null;v(this,arguments)},java.util.Arrays,"ArrayList",
java.util.AbstractList,[java.util.RandomAccess,java.io.Serializable]);m(c$,function(a){D(this,java.util.Arrays.ArrayList,[]);if(null==a)throw new NullPointerException;this.a=a},"~A");e(c$,"size",function(){return this.a.length});c(c$,"toArray",function(){return this.a.clone()});e(c$,"get",function(a){return this.a[a]},"~N");e(c$,"set",function(a,b){var d=this.a[a];this.a[a]=b;return d},"~N,~O");e(c$,"indexOf",function(a){if(null==a)for(var b=0;b<this.a.length;b++){if(null==this.a[b])return b}else for(b=
0;b<this.a.length;b++)if(a.equals(this.a[b]))return b;return-1},"~O");e(c$,"contains",function(a){return-1!=this.indexOf(a)},"~O");c$=B();X(c$,"INSERTIONSORT_THRESHOLD",7)}),I("java.util.AbstractList $.AbstractMap $.AbstractSet $.Collection $.Iterator $.List $.ListIterator $.Map $.RandomAccess $.Set $.SortedMap $.SortedSet java.lang.NullPointerException $.UnsupportedOperationException java.lang.reflect.Array".split(" "),"java.util.Collections","java.lang.ArrayIndexOutOfBoundsException $.ClassCastException $.IllegalArgumentException $.IndexOutOfBoundsException java.util.ArrayList $.Arrays $.Enumeration java.util.Map.Entry java.util.NoSuchElementException $.Random".split(" "),
function(){c$=t(java.util,"Collections");c$.binarySearch=c(c$,"binarySearch",function(a,b){if(null==a)throw new NullPointerException;if(a.isEmpty())return-1;if(!G(a,java.util.RandomAccess)){for(var d=a.listIterator();d.hasNext();){var c;if(0>=(c=b.compareTo(d.next())))return 0==c?d.previousIndex():-d.previousIndex()-1}return-a.size()-1}var d=0,f=a.size(),g=f-1;for(c=-1;d<=g;)if(f=d+g>>1,0<(c=b.compareTo(a.get(f))))d=f+1;else{if(0==c)return f;g=f-1}return-f-(0>c?1:2)},"java.util.List,~O");c$.binarySearch=
c(c$,"binarySearch",function(a,b,d){if(null==d)return java.util.Collections.binarySearch(a,b);if(!G(a,java.util.RandomAccess)){for(var c=a.listIterator();c.hasNext();){var f;if(0>=(f=d.compare(b,c.next())))return 0==f?c.previousIndex():-c.previousIndex()-1}return-a.size()-1}var c=0,g=a.size(),e=g-1;for(f=-1;c<=e;)if(g=c+e>>1,0<(f=d.compare(b,a.get(g))))c=g+1;else{if(0==f)return g;e=g-1}return-g-(0>f?1:2)},"java.util.List,~O,java.util.Comparator");c$.copy=c(c$,"copy",function(a,b){if(a.size()<b.size())throw new ArrayIndexOutOfBoundsException;
for(var d=b.iterator(),c=a.listIterator();d.hasNext();){try{c.next()}catch(f){if(G(f,java.util.NoSuchElementException))throw new ArrayIndexOutOfBoundsException;throw f;}c.set(d.next())}},"java.util.List,java.util.List");c$.enumeration=c(c$,"enumeration",function(a){M("java.util.Collections$1")||java.util.Collections.$Collections$1$(a);return K(java.util.Collections$1,this,null)},"java.util.Collection");c$.fill=c(c$,"fill",function(a,b){for(var d=a.listIterator();d.hasNext();)d.next(),d.set(b)},"java.util.List,~O");
c$.max=c(c$,"max",function(a){a=a.iterator();for(var b=a.next();a.hasNext();){var d=a.next();0>b.compareTo(d)&&(b=d)}return b},"java.util.Collection");c$.max=c(c$,"max",function(a,b){for(var d=a.iterator(),c=d.next();d.hasNext();){var f=d.next();0>b.compare(c,f)&&(c=f)}return c},"java.util.Collection,java.util.Comparator");c$.min=c(c$,"min",function(a){a=a.iterator();for(var b=a.next();a.hasNext();){var d=a.next();0<b.compareTo(d)&&(b=d)}return b},"java.util.Collection");c$.min=c(c$,"min",function(a,
b){for(var d=a.iterator(),c=d.next();d.hasNext();){var f=d.next();0<b.compare(c,f)&&(c=f)}return c},"java.util.Collection,java.util.Comparator");c$.nCopies=c(c$,"nCopies",function(a,b){return new java.util.Collections.CopiesList(a,b)},"~N,~O");c$.reverse=c(c$,"reverse",function(a){var b=a.size(),d=a.listIterator();a=a.listIterator(b);for(var c=0;c<Math.floor(b/2);c++){var f=d.next(),g=a.previous();d.set(g);a.set(f)}},"java.util.List");c$.reverseOrder=c(c$,"reverseOrder",function(){return new java.util.Collections.ReverseComparator});
c$.reverseOrder=c(c$,"reverseOrder",function(a){return null==a?java.util.Collections.reverseOrder():new java.util.Collections.ReverseComparatorWithComparator(a)},"java.util.Comparator");c$.shuffle=c(c$,"shuffle",function(a){java.util.Collections.shuffle(a,new java.util.Random)},"java.util.List");c$.shuffle=c(c$,"shuffle",function(a,b){if(G(a,java.util.RandomAccess))for(c=a.size()-1;0<c;c--)f=b.nextInt()%(c+1),0>f&&(f=-f),a.set(f,a.set(c,a.get(f)));else{for(var d=a.toArray(),c=d.length-1;0<c;c--){var f=
b.nextInt()%(c+1);0>f&&(f=-f);var g=d[c];d[c]=d[f];d[f]=g}c=0;for(f=a.listIterator();f.hasNext();)f.next(),f.set(d[c++])}},"java.util.List,java.util.Random");c$.singleton=c(c$,"singleton",function(a){return new java.util.Collections.SingletonSet(a)},"~O");c$.singletonList=c(c$,"singletonList",function(a){return new java.util.Collections.SingletonList(a)},"~O");c$.singletonMap=c(c$,"singletonMap",function(a,b){return new java.util.Collections.SingletonMap(a,b)},"~O,~O");c$.sort=c(c$,"sort",function(a){var b=
a.toArray();java.util.Arrays.sort(b);var d=0;for(a=a.listIterator();a.hasNext();)a.next(),a.set(b[d++])},"java.util.List");c$.sort=c(c$,"sort",function(a,b){var d=a.toArray(Array(a.size()));java.util.Arrays.sort(d,b);for(var c=0,f=a.listIterator();f.hasNext();)f.next(),f.set(d[c++])},"java.util.List,java.util.Comparator");c$.swap=c(c$,"swap",function(a,b,d){if(null==a)throw new NullPointerException;b!=d&&a.set(d,a.set(b,a.get(d)))},"java.util.List,~N,~N");c$.replaceAll=c(c$,"replaceAll",function(a,
b,d){for(var c,f=!1;-1<(c=a.indexOf(b));)f=!0,a.set(c,d);return f},"java.util.List,~O,~O");c$.rotate=c(c$,"rotate",function(a,b){var d=a.size();if(0!=d){var c;c=0<b?b%d:d- -1*(b%d);if(!(0==c||c==d))if(G(a,java.util.RandomAccess))for(var f=a.get(0),g=0,e=0,h=0;h<d;h++)g=(g+c)%d,f=a.set(g,f),g==e&&(g=++e,f=a.get(e));else f=(d-c)%d,c=a.subList(0,f),d=a.subList(f,d),java.util.Collections.reverse(c),java.util.Collections.reverse(d),java.util.Collections.reverse(a)}},"java.util.List,~N");c$.indexOfSubList=
c(c$,"indexOfSubList",function(a,b){var d=a.size(),c=b.size();if(c>d)return-1;if(0==c)return 0;var f=b.get(0),g=a.indexOf(f);if(-1==g)return-1;for(;g<d&&d-g>=c;){var e=a.listIterator(g);if(null==f?null==e.next():f.equals(e.next())){for(var h=b.listIterator(1),k=!1;h.hasNext();){var s=h.next();if(!e.hasNext())return-1;if(null==s?null!=e.next():!s.equals(e.next())){k=!0;break}}if(!k)return g}g++}return-1},"java.util.List,java.util.List");c$.lastIndexOfSubList=c(c$,"lastIndexOfSubList",function(a,b){var d=
b.size(),c=a.size();if(d>c)return-1;if(0==d)return c;for(var c=b.get(d-1),f=a.lastIndexOf(c);-1<f&&f+1>=d;){var g=a.listIterator(f+1);if(null==c?null==g.previous():c.equals(g.previous())){for(var e=b.listIterator(d-1),h=!1;e.hasPrevious();){var k=e.previous();if(!g.hasPrevious())return-1;if(null==k?null!=g.previous():!k.equals(g.previous())){h=!0;break}}if(!h)return g.nextIndex()}f--}return-1},"java.util.List,java.util.List");c$.list=c(c$,"list",function(a){for(var b=new java.util.ArrayList;a.hasMoreElements();)b.add(a.nextElement());
return b},"java.util.Enumeration");c$.synchronizedCollection=c(c$,"synchronizedCollection",function(a){if(null==a)throw new NullPointerException;return new java.util.Collections.SynchronizedCollection(a)},"java.util.Collection");c$.synchronizedList=c(c$,"synchronizedList",function(a){if(null==a)throw new NullPointerException;return G(a,java.util.RandomAccess)?new java.util.Collections.SynchronizedRandomAccessList(a):new java.util.Collections.SynchronizedList(a)},"java.util.List");c$.synchronizedMap=
c(c$,"synchronizedMap",function(a){if(null==a)throw new NullPointerException;return new java.util.Collections.SynchronizedMap(a)},"java.util.Map");c$.synchronizedSet=c(c$,"synchronizedSet",function(a){if(null==a)throw new NullPointerException;return new java.util.Collections.SynchronizedSet(a)},"java.util.Set");c$.synchronizedSortedMap=c(c$,"synchronizedSortedMap",function(a){if(null==a)throw new NullPointerException;return new java.util.Collections.SynchronizedSortedMap(a)},"java.util.SortedMap");
c$.synchronizedSortedSet=c(c$,"synchronizedSortedSet",function(a){if(null==a)throw new NullPointerException;return new java.util.Collections.SynchronizedSortedSet(a)},"java.util.SortedSet");c$.unmodifiableCollection=c(c$,"unmodifiableCollection",function(a){if(null==a)throw new NullPointerException;return new java.util.Collections.UnmodifiableCollection(a)},"java.util.Collection");c$.unmodifiableList=c(c$,"unmodifiableList",function(a){if(null==a)throw new NullPointerException;return G(a,java.util.RandomAccess)?
new java.util.Collections.UnmodifiableRandomAccessList(a):new java.util.Collections.UnmodifiableList(a)},"java.util.List");c$.unmodifiableMap=c(c$,"unmodifiableMap",function(a){if(null==a)throw new NullPointerException;return new java.util.Collections.UnmodifiableMap(a)},"java.util.Map");c$.unmodifiableSet=c(c$,"unmodifiableSet",function(a){if(null==a)throw new NullPointerException;return new java.util.Collections.UnmodifiableSet(a)},"java.util.Set");c$.unmodifiableSortedMap=c(c$,"unmodifiableSortedMap",
function(a){if(null==a)throw new NullPointerException;return new java.util.Collections.UnmodifiableSortedMap(a)},"java.util.SortedMap");c$.unmodifiableSortedSet=c(c$,"unmodifiableSortedSet",function(a){if(null==a)throw new NullPointerException;return new java.util.Collections.UnmodifiableSortedSet(a)},"java.util.SortedSet");c$.frequency=c(c$,"frequency",function(a,b){if(null==a)throw new NullPointerException;if(a.isEmpty())return 0;for(var d=0,c=a.iterator();c.hasNext();){var f=c.next();(null==b?
null==f:b.equals(f))&&d++}return d},"java.util.Collection,~O");c$.emptyList=c(c$,"emptyList",function(){return java.util.Collections.EMPTY_LIST});c$.emptySet=c(c$,"emptySet",function(){return java.util.Collections.EMPTY_SET});c$.emptyMap=c(c$,"emptyMap",function(){return java.util.Collections.EMPTY_MAP});c$.checkedCollection=c(c$,"checkedCollection",function(a,b){return new java.util.Collections.CheckedCollection(a,b)},"java.util.Collection,Class");c$.checkedMap=c(c$,"checkedMap",function(a,b,d){return new java.util.Collections.CheckedMap(a,
b,d)},"java.util.Map,Class,Class");c$.checkedList=c(c$,"checkedList",function(a,b){return G(a,java.util.RandomAccess)?new java.util.Collections.CheckedRandomAccessList(a,b):new java.util.Collections.CheckedList(a,b)},"java.util.List,Class");c$.checkedSet=c(c$,"checkedSet",function(a,b){return new java.util.Collections.CheckedSet(a,b)},"java.util.Set,Class");c$.checkedSortedMap=c(c$,"checkedSortedMap",function(a,b,d){return new java.util.Collections.CheckedSortedMap(a,b,d)},"java.util.SortedMap,Class,Class");
c$.checkedSortedSet=c(c$,"checkedSortedSet",function(a,b){return new java.util.Collections.CheckedSortedSet(a,b)},"java.util.SortedSet,Class");c$.addAll=c(c$,"addAll",function(a,b){for(var d=!1,c=0;c<b.length;c++)d=(new Boolean(d|a.add(b[c]))).valueOf();return d},"java.util.Collection,~A");c$.disjoint=c(c$,"disjoint",function(a,b){if(G(a,java.util.Set)&&!G(b,java.util.Set)||b.size()>a.size()){var d=a;a=b;b=d}for(d=a.iterator();d.hasNext();)if(b.contains(d.next()))return!1;return!0},"java.util.Collection,java.util.Collection");
c$.checkType=c(c$,"checkType",function(a,b){if(!b.isInstance(a))throw new ClassCastException("Attempt to insert "+a.getClass()+" element into collection with element type "+b);return a},"~O,Class");c$.$Collections$1$=function(a){A();c$=x(function(){V(this,arguments);this.it=null;v(this,arguments)},java.util,"Collections$1",null,java.util.Enumeration);da(c$,function(){this.it=a.iterator()});c(c$,"hasMoreElements",function(){return this.it.hasNext()});c(c$,"nextElement",function(){return this.it.next()});
c$=B()};A();c$=x(function(){this.n=0;this.element=null;v(this,arguments)},java.util.Collections,"CopiesList",java.util.AbstractList,java.io.Serializable);m(c$,function(a,b){D(this,java.util.Collections.CopiesList,[]);if(0>a)throw new IllegalArgumentException;this.n=a;this.element=b},"~N,~O");e(c$,"contains",function(a){return null==this.element?null==a:this.element.equals(a)},"~O");e(c$,"size",function(){return this.n});e(c$,"get",function(a){if(0<=a&&a<this.n)return this.element;throw new IndexOutOfBoundsException;
},"~N");c$=B();A();c$=t(java.util.Collections,"EmptyList",java.util.AbstractList,java.io.Serializable);e(c$,"contains",function(){return!1},"~O");e(c$,"size",function(){return 0});e(c$,"get",function(){throw new IndexOutOfBoundsException;},"~N");c$=B();A();c$=t(java.util.Collections,"EmptySet",java.util.AbstractSet,java.io.Serializable);e(c$,"contains",function(){return!1},"~O");e(c$,"size",function(){return 0});e(c$,"iterator",function(){return M("java.util.Collections$EmptySet$1")?0:java.util.Collections.EmptySet.$Collections$EmptySet$1$(),
K(java.util.Collections$EmptySet$1,this,null)});c$.$Collections$EmptySet$1$=function(){A();c$=T(java.util,"Collections$EmptySet$1",null,java.util.Iterator);e(c$,"hasNext",function(){return!1});e(c$,"next",function(){throw new java.util.NoSuchElementException;});e(c$,"remove",function(){throw new UnsupportedOperationException;});c$=B()};c$=B();A();c$=t(java.util.Collections,"EmptyMap",java.util.AbstractMap,java.io.Serializable);e(c$,"containsKey",function(){return!1},"~O");e(c$,"containsValue",function(){return!1},
"~O");e(c$,"entrySet",function(){return java.util.Collections.EMPTY_SET});e(c$,"get",function(){return null},"~O");e(c$,"keySet",function(){return java.util.Collections.EMPTY_SET});e(c$,"values",function(){return java.util.Collections.EMPTY_LIST});c$=B();A();c$=t(java.util.Collections,"ReverseComparator",null,[java.util.Comparator,java.io.Serializable]);e(c$,"compare",function(a,b){return b.compareTo(a)},"~O,~O");c$=B();A();c$=x(function(){this.comparator=null;v(this,arguments)},java.util.Collections,
"ReverseComparatorWithComparator",null,[java.util.Comparator,java.io.Serializable]);m(c$,function(a){this.comparator=a},"java.util.Comparator");c(c$,"compare",function(a,b){return this.comparator.compare(b,a)},"~O,~O");c$=B();A();c$=x(function(){this.element=null;v(this,arguments)},java.util.Collections,"SingletonSet",java.util.AbstractSet,java.io.Serializable);m(c$,function(a){D(this,java.util.Collections.SingletonSet,[]);this.element=a},"~O");e(c$,"contains",function(a){return null==this.element?
null==a:this.element.equals(a)},"~O");e(c$,"size",function(){return 1});e(c$,"iterator",function(){return M("java.util.Collections$SingletonSet$1")?0:java.util.Collections.SingletonSet.$Collections$SingletonSet$1$(),K(java.util.Collections$SingletonSet$1,this,null)});c$.$Collections$SingletonSet$1$=function(){A();c$=x(function(){V(this,arguments);this.$hasNext=!0;v(this,arguments)},java.util,"Collections$SingletonSet$1",null,java.util.Iterator);e(c$,"hasNext",function(){return this.$hasNext});e(c$,
"next",function(){if(this.$hasNext)return this.$hasNext=!1,this.b$["java.util.Collections.SingletonSet"].element;throw new java.util.NoSuchElementException;});e(c$,"remove",function(){throw new UnsupportedOperationException;});c$=B()};c$=B();A();c$=x(function(){this.element=null;v(this,arguments)},java.util.Collections,"SingletonList",java.util.AbstractList,java.io.Serializable);m(c$,function(a){D(this,java.util.Collections.SingletonList,[]);this.element=a},"~O");e(c$,"contains",function(a){return null==
this.element?null==a:this.element.equals(a)},"~O");e(c$,"get",function(a){if(0==a)return this.element;throw new IndexOutOfBoundsException;},"~N");e(c$,"size",function(){return 1});c$=B();A();c$=x(function(){this.v=this.k=null;v(this,arguments)},java.util.Collections,"SingletonMap",java.util.AbstractMap,java.io.Serializable);m(c$,function(a,b){D(this,java.util.Collections.SingletonMap,[]);this.k=a;this.v=b},"~O,~O");e(c$,"containsKey",function(a){return null==this.k?null==a:this.k.equals(a)},"~O");
e(c$,"containsValue",function(a){return null==this.v?null==a:this.v.equals(a)},"~O");e(c$,"get",function(a){return this.containsKey(a)?this.v:null},"~O");e(c$,"size",function(){return 1});e(c$,"entrySet",function(){return M("java.util.Collections$SingletonMap$1")?0:java.util.Collections.SingletonMap.$Collections$SingletonMap$1$(),K(java.util.Collections$SingletonMap$1,this,null)});c$.$Collections$SingletonMap$1$=function(){A();c$=T(java.util,"Collections$SingletonMap$1",java.util.AbstractSet);e(c$,
"contains",function(a){return G(a,java.util.Map.Entry)?this.b$["java.util.Collections.SingletonMap"].containsKey(a.getKey())&&this.b$["java.util.Collections.SingletonMap"].containsValue(a.getValue()):!1},"~O");e(c$,"size",function(){return 1});e(c$,"iterator",function(){return M("java.util.Collections$SingletonMap$1$1")?0:java.util.Collections.$Collections$SingletonMap$1$1$(),K(java.util.Collections$SingletonMap$1$1,this,null)});c$=B()};c$.$Collections$SingletonMap$1$1$=function(){A();c$=x(function(){V(this,
arguments);this.$hasNext=!0;v(this,arguments)},java.util,"Collections$SingletonMap$1$1",null,java.util.Iterator);e(c$,"hasNext",function(){return this.$hasNext});e(c$,"next",function(){if(this.$hasNext)return this.$hasNext=!1,M("java.util.Collections$SingletonMap$1$1$1")?0:java.util.Collections.$Collections$SingletonMap$1$1$1$(),K(java.util.Collections$SingletonMap$1$1$1,this,null);throw new java.util.NoSuchElementException;});e(c$,"remove",function(){throw new UnsupportedOperationException;});c$=
B()};c$.$Collections$SingletonMap$1$1$1$=function(){A();c$=T(java.util,"Collections$SingletonMap$1$1$1",null,java.util.Map.Entry);e(c$,"equals",function(a){return this.b$["java.util.Collections$SingletonMap$1"].contains(a)},"~O");e(c$,"getKey",function(){return this.b$["java.util.Collections.SingletonMap"].k});e(c$,"getValue",function(){return this.b$["java.util.Collections.SingletonMap"].v});e(c$,"hashCode",function(){return(null==this.b$["java.util.Collections.SingletonMap"].k?0:this.b$["java.util.Collections.SingletonMap"].k.hashCode())^
(null==this.b$["java.util.Collections.SingletonMap"].v?0:this.b$["java.util.Collections.SingletonMap"].v.hashCode())});e(c$,"setValue",function(){throw new UnsupportedOperationException;},"~O");c$=B()};c$=B();A();c$=x(function(){this.mutex=this.c=null;v(this,arguments)},java.util.Collections,"SynchronizedCollection",null,[java.util.Collection,java.io.Serializable]);m(c$,function(a){this.c=a;this.mutex=this},"java.util.Collection");m(c$,function(a,b){this.c=a;this.mutex=b},"java.util.Collection,~O");
c(c$,"add",function(a){return this.c.add(a)},"~O");c(c$,"addAll",function(a){return this.c.addAll(a)},"java.util.Collection");c(c$,"clear",function(){this.c.clear()});c(c$,"contains",function(a){return this.c.contains(a)},"~O");c(c$,"containsAll",function(a){return this.c.containsAll(a)},"java.util.Collection");c(c$,"isEmpty",function(){return this.c.isEmpty()});c(c$,"iterator",function(){return this.c.iterator()});c(c$,"remove",function(a){return this.c.remove(a)},"~O");c(c$,"removeAll",function(a){return this.c.removeAll(a)},
"java.util.Collection");c(c$,"retainAll",function(a){return this.c.retainAll(a)},"java.util.Collection");c(c$,"size",function(){return this.c.size()});c(c$,"toArray",function(){return this.c.toArray()});c(c$,"toString",function(){return this.c.toString()});c(c$,"toArray",function(a){return this.c.toArray(a)},"~A");c$=B();A();c$=t(java.util.Collections,"SynchronizedRandomAccessList",java.util.Collections.SynchronizedList,java.util.RandomAccess);e(c$,"subList",function(a,b){return new java.util.Collections.SynchronizedRandomAccessList(this.list.subList(a,
b),this.mutex)},"~N,~N");c$=B();A();c$=x(function(){this.list=null;v(this,arguments)},java.util.Collections,"SynchronizedList",java.util.Collections.SynchronizedCollection,java.util.List);m(c$,function(a){D(this,java.util.Collections.SynchronizedList,[a]);this.list=a},"java.util.List");m(c$,function(a,b){D(this,java.util.Collections.SynchronizedList,[a,b]);this.list=a},"java.util.List,~O");c(c$,"add",function(a,b){this.list.add(a,b)},"~N,~O");c(c$,"addAll",function(a,b){return this.list.addAll(a,
b)},"~N,java.util.Collection");e(c$,"equals",function(a){return this.list.equals(a)},"~O");c(c$,"get",function(a){return this.list.get(a)},"~N");e(c$,"hashCode",function(){return this.list.hashCode()});c(c$,"indexOf",function(a){return this.list.indexOf(a)},"~O");c(c$,"lastIndexOf",function(a){return this.list.lastIndexOf(a)},"~O");c(c$,"listIterator",function(){return this.list.listIterator()});c(c$,"listIterator",function(a){return this.list.listIterator(a)},"~N");c(c$,"remove",function(a){return this.list.remove(a)},
"~N");c(c$,"set",function(a,b){return this.list.set(a,b)},"~N,~O");c(c$,"subList",function(a,b){return new java.util.Collections.SynchronizedList(this.list.subList(a,b),this.mutex)},"~N,~N");c$=B();A();c$=x(function(){this.mutex=this.m=null;v(this,arguments)},java.util.Collections,"SynchronizedMap",null,[java.util.Map,java.io.Serializable]);m(c$,function(a){this.m=a;this.mutex=this},"java.util.Map");m(c$,function(a,b){this.m=a;this.mutex=b},"java.util.Map,~O");c(c$,"clear",function(){this.m.clear()});
c(c$,"containsKey",function(a){return this.m.containsKey(a)},"~O");c(c$,"containsValue",function(a){return this.m.containsValue(a)},"~O");c(c$,"entrySet",function(){return new java.util.Collections.SynchronizedSet(this.m.entrySet(),this.mutex)});e(c$,"equals",function(a){return this.m.equals(a)},"~O");c(c$,"get",function(a){return this.m.get(a)},"~O");e(c$,"hashCode",function(){return this.m.hashCode()});c(c$,"isEmpty",function(){return this.m.isEmpty()});c(c$,"keySet",function(){return new java.util.Collections.SynchronizedSet(this.m.keySet(),
this.mutex)});c(c$,"put",function(a,b){return this.m.put(a,b)},"~O,~O");c(c$,"putAll",function(a){this.m.putAll(a)},"java.util.Map");c(c$,"remove",function(a){return this.m.remove(a)},"~O");c(c$,"size",function(){return this.m.size()});c(c$,"values",function(){return new java.util.Collections.SynchronizedCollection(this.m.values(),this.mutex)});c(c$,"toString",function(){return this.m.toString()});c$=B();A();c$=t(java.util.Collections,"SynchronizedSet",java.util.Collections.SynchronizedCollection,
java.util.Set);e(c$,"equals",function(a){return this.c.equals(a)},"~O");e(c$,"hashCode",function(){return this.c.hashCode()});c$=B();A();c$=x(function(){this.sm=null;v(this,arguments)},java.util.Collections,"SynchronizedSortedMap",java.util.Collections.SynchronizedMap,java.util.SortedMap);m(c$,function(a){D(this,java.util.Collections.SynchronizedSortedMap,[a]);this.sm=a},"java.util.SortedMap");m(c$,function(a,b){D(this,java.util.Collections.SynchronizedSortedMap,[a,b]);this.sm=a},"java.util.SortedMap,~O");
c(c$,"comparator",function(){return this.sm.comparator()});c(c$,"firstKey",function(){return this.sm.firstKey()});c(c$,"headMap",function(a){return new java.util.Collections.SynchronizedSortedMap(this.sm.headMap(a),this.mutex)},"~O");c(c$,"lastKey",function(){return this.sm.lastKey()});c(c$,"subMap",function(a,b){return new java.util.Collections.SynchronizedSortedMap(this.sm.subMap(a,b),this.mutex)},"~O,~O");c(c$,"tailMap",function(a){return new java.util.Collections.SynchronizedSortedMap(this.sm.tailMap(a),
this.mutex)},"~O");c$=B();A();c$=x(function(){this.ss=null;v(this,arguments)},java.util.Collections,"SynchronizedSortedSet",java.util.Collections.SynchronizedSet,java.util.SortedSet);m(c$,function(a){D(this,java.util.Collections.SynchronizedSortedSet,[a]);this.ss=a},"java.util.SortedSet");m(c$,function(a,b){D(this,java.util.Collections.SynchronizedSortedSet,[a,b]);this.ss=a},"java.util.SortedSet,~O");c(c$,"comparator",function(){return this.ss.comparator()});c(c$,"first",function(){return this.ss.first()});
c(c$,"headSet",function(a){return new java.util.Collections.SynchronizedSortedSet(this.ss.headSet(a),this.mutex)},"~O");c(c$,"last",function(){return this.ss.last()});c(c$,"subSet",function(a,b){return new java.util.Collections.SynchronizedSortedSet(this.ss.subSet(a,b),this.mutex)},"~O,~O");c(c$,"tailSet",function(a){return new java.util.Collections.SynchronizedSortedSet(this.ss.tailSet(a),this.mutex)},"~O");c$=B();A();c$=x(function(){this.c=null;v(this,arguments)},java.util.Collections,"UnmodifiableCollection",
null,[java.util.Collection,java.io.Serializable]);m(c$,function(a){this.c=a},"java.util.Collection");e(c$,"add",function(){throw new UnsupportedOperationException;},"~O");e(c$,"addAll",function(){throw new UnsupportedOperationException;},"java.util.Collection");e(c$,"clear",function(){throw new UnsupportedOperationException;});c(c$,"contains",function(a){return this.c.contains(a)},"~O");c(c$,"containsAll",function(a){return this.c.containsAll(a)},"java.util.Collection");c(c$,"isEmpty",function(){return this.c.isEmpty()});
c(c$,"iterator",function(){return M("java.util.Collections$UnmodifiableCollection$1")?0:java.util.Collections.UnmodifiableCollection.$Collections$UnmodifiableCollection$1$(),K(java.util.Collections$UnmodifiableCollection$1,this,null)});e(c$,"remove",function(){throw new UnsupportedOperationException;},"~O");e(c$,"removeAll",function(){throw new UnsupportedOperationException;},"java.util.Collection");e(c$,"retainAll",function(){throw new UnsupportedOperationException;},"java.util.Collection");c(c$,
"size",function(){return this.c.size()});c(c$,"toArray",function(){return this.c.toArray()});c(c$,"toArray",function(a){return this.c.toArray(a)},"~A");c(c$,"toString",function(){return this.c.toString()});c$.$Collections$UnmodifiableCollection$1$=function(){A();c$=x(function(){V(this,arguments);this.iterator=null;v(this,arguments)},java.util,"Collections$UnmodifiableCollection$1",null,java.util.Iterator);da(c$,function(){this.iterator=this.b$["java.util.Collections.UnmodifiableCollection"].c.iterator()});
c(c$,"hasNext",function(){return this.iterator.hasNext()});c(c$,"next",function(){return this.iterator.next()});e(c$,"remove",function(){throw new UnsupportedOperationException;});c$=B()};c$=B();A();c$=t(java.util.Collections,"UnmodifiableRandomAccessList",java.util.Collections.UnmodifiableList,java.util.RandomAccess);e(c$,"subList",function(a,b){return new java.util.Collections.UnmodifiableRandomAccessList(this.list.subList(a,b))},"~N,~N");c$=B();A();c$=x(function(){this.list=null;v(this,arguments)},
java.util.Collections,"UnmodifiableList",java.util.Collections.UnmodifiableCollection,java.util.List);m(c$,function(a){D(this,java.util.Collections.UnmodifiableList,[a]);this.list=a},"java.util.List");c(c$,"add",function(){throw new UnsupportedOperationException;},"~N,~O");c(c$,"addAll",function(){throw new UnsupportedOperationException;},"~N,java.util.Collection");e(c$,"equals",function(a){return this.list.equals(a)},"~O");c(c$,"get",function(a){return this.list.get(a)},"~N");e(c$,"hashcode",function(){return this.list.hashCode()});
c(c$,"indexOf",function(a){return this.list.indexOf(a)},"~O");c(c$,"lastIndexOf",function(a){return this.list.lastIndexOf(a)},"~O");c(c$,"listIterator",function(){return this.listIterator(0)});c(c$,"listIterator",function(){return M("java.util.Collections$UnmodifiableList$1")?0:java.util.Collections.UnmodifiableList.$Collections$UnmodifiableList$1$(),K(java.util.Collections$UnmodifiableList$1,this,null)},"~N");c(c$,"remove",function(){throw new UnsupportedOperationException;},"~N");e(c$,"set",function(){throw new UnsupportedOperationException;
},"~N,~O");c(c$,"subList",function(a,b){return new java.util.Collections.UnmodifiableList(this.list.subList(a,b))},"~N,~N");c$.$Collections$UnmodifiableList$1$=function(){A();c$=x(function(){V(this,arguments);this.iterator=null;v(this,arguments)},java.util,"Collections$UnmodifiableList$1",null,java.util.ListIterator);da(c$,function(){this.iterator=this.b$["java.util.Collections.UnmodifiableList"].list.listIterator(location)});e(c$,"add",function(){throw new UnsupportedOperationException;},"~O");c(c$,
"hasNext",function(){return this.iterator.hasNext()});c(c$,"hasPrevious",function(){return this.iterator.hasPrevious()});c(c$,"next",function(){return this.iterator.next()});c(c$,"nextIndex",function(){return this.iterator.nextIndex()});c(c$,"previous",function(){return this.iterator.previous()});c(c$,"previousIndex",function(){return this.iterator.previousIndex()});e(c$,"remove",function(){throw new UnsupportedOperationException;});e(c$,"set",function(){throw new UnsupportedOperationException;},
"~O");c$=B()};c$=B();A();c$=x(function(){this.m=null;v(this,arguments)},java.util.Collections,"UnmodifiableMap",null,[java.util.Map,java.io.Serializable]);m(c$,function(a){this.m=a},"java.util.Map");e(c$,"clear",function(){throw new UnsupportedOperationException;});c(c$,"containsKey",function(a){return this.m.containsKey(a)},"~O");c(c$,"containsValue",function(a){return this.m.containsValue(a)},"~O");c(c$,"entrySet",function(){return new java.util.Collections.UnmodifiableMap.UnmodifiableEntrySet(this.m.entrySet())});
e(c$,"equals",function(a){return this.m.equals(a)},"~O");c(c$,"get",function(a){return this.m.get(a)},"~O");e(c$,"hashcode",function(){return this.m.hashCode()});c(c$,"isEmpty",function(){return this.m.isEmpty()});c(c$,"keySet",function(){return new java.util.Collections.UnmodifiableSet(this.m.keySet())});e(c$,"put",function(){throw new UnsupportedOperationException;},"~O,~O");e(c$,"putAll",function(){throw new UnsupportedOperationException;},"java.util.Map");e(c$,"remove",function(){throw new UnsupportedOperationException;
},"~O");c(c$,"size",function(){return this.m.size()});c(c$,"values",function(){return new java.util.Collections.UnmodifiableCollection(this.m.values())});c(c$,"toString",function(){return this.m.toString()});A();c$=t(java.util.Collections.UnmodifiableMap,"UnmodifiableEntrySet",java.util.Collections.UnmodifiableSet);e(c$,"iterator",function(){return M("java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet$1")?0:java.util.Collections.UnmodifiableMap.UnmodifiableEntrySet.$Collections$UnmodifiableMap$UnmodifiableEntrySet$1$(),
K(java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet$1,this,null)});c(c$,"toArray",function(){for(var a=this.c.size(),b=Array(a),d=this.iterator();0<=--a;)b[a]=d.next();return b});c(c$,"toArray",function(a){var b=this.c.size(),d=0,c=this.iterator();b>a.length&&(a=a.getClass().getComponentType(),a=java.lang.reflect.Array.newInstance(a,b));for(;d<b;)a[d++]=c.next();d<a.length&&(a[d]=null);return a},"~A");c$.$Collections$UnmodifiableMap$UnmodifiableEntrySet$1$=function(){A();c$=x(function(){V(this,
arguments);this.iterator=null;v(this,arguments)},java.util,"Collections$UnmodifiableMap$UnmodifiableEntrySet$1",null,java.util.Iterator);da(c$,function(){this.iterator=this.b$["java.util.Collections.UnmodifiableMap.UnmodifiableEntrySet"].c.iterator()});c(c$,"hasNext",function(){return this.iterator.hasNext()});c(c$,"next",function(){return new java.util.Collections.UnmodifiableMap.UnmodifiableEntrySet.UnmodifiableMapEntry(this.iterator.next())});e(c$,"remove",function(){throw new UnsupportedOperationException;
});c$=B()};A();c$=x(function(){this.mapEntry=null;v(this,arguments)},java.util.Collections.UnmodifiableMap.UnmodifiableEntrySet,"UnmodifiableMapEntry",null,java.util.Map.Entry);m(c$,function(a){this.mapEntry=a},"java.util.Map.Entry");e(c$,"equals",function(a){return this.mapEntry.equals(a)},"~O");c(c$,"getKey",function(){return this.mapEntry.getKey()});c(c$,"getValue",function(){return this.mapEntry.getValue()});e(c$,"hashcode",function(){return this.mapEntry.hashCode()});e(c$,"setValue",function(){throw new UnsupportedOperationException;
},"~O");c(c$,"toString",function(){return this.mapEntry.toString()});c$=B();c$=B();c$=B();A();c$=t(java.util.Collections,"UnmodifiableSet",java.util.Collections.UnmodifiableCollection,java.util.Set);e(c$,"equals",function(a){return this.c.equals(a)},"~O");e(c$,"hashCode",function(){return this.c.hashCode()});c$=B();A();c$=x(function(){this.sm=null;v(this,arguments)},java.util.Collections,"UnmodifiableSortedMap",java.util.Collections.UnmodifiableMap,java.util.SortedMap);m(c$,function(a){D(this,java.util.Collections.UnmodifiableSortedMap,
[a]);this.sm=a},"java.util.SortedMap");c(c$,"comparator",function(){return this.sm.comparator()});c(c$,"firstKey",function(){return this.sm.firstKey()});c(c$,"headMap",function(a){return new java.util.Collections.UnmodifiableSortedMap(this.sm.headMap(a))},"~O");c(c$,"lastKey",function(){return this.sm.lastKey()});c(c$,"subMap",function(a,b){return new java.util.Collections.UnmodifiableSortedMap(this.sm.subMap(a,b))},"~O,~O");c(c$,"tailMap",function(a){return new java.util.Collections.UnmodifiableSortedMap(this.sm.tailMap(a))},
"~O");c$=B();A();c$=x(function(){this.ss=null;v(this,arguments)},java.util.Collections,"UnmodifiableSortedSet",java.util.Collections.UnmodifiableSet,java.util.SortedSet);m(c$,function(a){D(this,java.util.Collections.UnmodifiableSortedSet,[a]);this.ss=a},"java.util.SortedSet");c(c$,"comparator",function(){return this.ss.comparator()});c(c$,"first",function(){return this.ss.first()});c(c$,"headSet",function(a){return new java.util.Collections.UnmodifiableSortedSet(this.ss.headSet(a))},"~O");c(c$,"last",
function(){return this.ss.last()});c(c$,"subSet",function(a,b){return new java.util.Collections.UnmodifiableSortedSet(this.ss.subSet(a,b))},"~O,~O");c(c$,"tailSet",function(a){return new java.util.Collections.UnmodifiableSortedSet(this.ss.tailSet(a))},"~O");c$=B();A();c$=x(function(){this.type=this.c=null;v(this,arguments)},java.util.Collections,"CheckedCollection",null,[java.util.Collection,java.io.Serializable]);m(c$,function(a,b){if(null==a||null==b)throw new NullPointerException;this.c=a;this.type=
b},"java.util.Collection,Class");c(c$,"size",function(){return this.c.size()});c(c$,"isEmpty",function(){return this.c.isEmpty()});c(c$,"contains",function(a){return this.c.contains(a)},"~O");c(c$,"iterator",function(){var a=this.c.iterator();G(a,java.util.ListIterator)&&(a=new java.util.Collections.CheckedListIterator(a,this.type));return a});c(c$,"toArray",function(){return this.c.toArray()});c(c$,"toArray",function(a){return this.c.toArray(a)},"~A");c(c$,"add",function(a){return this.c.add(java.util.Collections.checkType(a,
this.type))},"~O");c(c$,"remove",function(a){return this.c.remove(a)},"~O");c(c$,"containsAll",function(a){return this.c.containsAll(a)},"java.util.Collection");e(c$,"addAll",function(a){var b=a.size();if(0==b)return!1;var d=Array(b);a=a.iterator();for(var c=0;c<b;c++)d[c]=java.util.Collections.checkType(a.next(),this.type);a=!1;for(c=0;c<b;c++)a=(new Boolean(a|this.c.add(d[c]))).valueOf();return a},"java.util.Collection");c(c$,"removeAll",function(a){return this.c.removeAll(a)},"java.util.Collection");
c(c$,"retainAll",function(a){return this.c.retainAll(a)},"java.util.Collection");c(c$,"clear",function(){this.c.clear()});c(c$,"toString",function(){return this.c.toString()});c$=B();A();c$=x(function(){this.type=this.i=null;v(this,arguments)},java.util.Collections,"CheckedListIterator",null,java.util.ListIterator);m(c$,function(a,b){this.i=a;this.type=b},"java.util.ListIterator,Class");c(c$,"hasNext",function(){return this.i.hasNext()});c(c$,"next",function(){return this.i.next()});c(c$,"remove",
function(){this.i.remove()});c(c$,"hasPrevious",function(){return this.i.hasPrevious()});c(c$,"previous",function(){return this.i.previous()});c(c$,"nextIndex",function(){return this.i.nextIndex()});c(c$,"previousIndex",function(){return this.i.previousIndex()});c(c$,"set",function(a){this.i.set(java.util.Collections.checkType(a,this.type))},"~O");c(c$,"add",function(a){this.i.add(java.util.Collections.checkType(a,this.type))},"~O");c$=B();A();c$=x(function(){this.l=null;v(this,arguments)},java.util.Collections,
"CheckedList",java.util.Collections.CheckedCollection,java.util.List);m(c$,function(a,b){D(this,java.util.Collections.CheckedList,[a,b]);this.l=a},"java.util.List,Class");c(c$,"addAll",function(a,b){var d=b.size();if(0==d)return!1;for(var c=Array(d),f=b.iterator(),g=0;g<d;g++)c[g]=java.util.Collections.checkType(f.next(),this.type);return this.l.addAll(a,java.util.Arrays.asList(c))},"~N,java.util.Collection");c(c$,"get",function(a){return this.l.get(a)},"~N");c(c$,"set",function(a,b){return this.l.set(a,
java.util.Collections.checkType(b,this.type))},"~N,~O");c(c$,"add",function(a,b){this.l.add(a,java.util.Collections.checkType(b,this.type))},"~N,~O");c(c$,"remove",function(a){return this.l.remove(a)},"~N");c(c$,"indexOf",function(a){return this.l.indexOf(a)},"~O");c(c$,"lastIndexOf",function(a){return this.l.lastIndexOf(a)},"~O");c(c$,"listIterator",function(){return new java.util.Collections.CheckedListIterator(this.l.listIterator(),this.type)});c(c$,"listIterator",function(a){return new java.util.Collections.CheckedListIterator(this.l.listIterator(a),
this.type)},"~N");c(c$,"subList",function(a,b){return java.util.Collections.checkedList(this.l.subList(a,b),this.type)},"~N,~N");e(c$,"equals",function(a){return this.l.equals(a)},"~O");e(c$,"hashcode",function(){return this.l.hashCode()});c$=B();A();c$=t(java.util.Collections,"CheckedRandomAccessList",java.util.Collections.CheckedList,java.util.RandomAccess);c$=B();A();c$=t(java.util.Collections,"CheckedSet",java.util.Collections.CheckedCollection,java.util.Set);e(c$,"equals",function(a){return this.c.equals(a)},
"~O");e(c$,"hashCode",function(){return this.c.hashCode()});c$=B();A();c$=x(function(){this.valueType=this.keyType=this.m=null;v(this,arguments)},java.util.Collections,"CheckedMap",null,[java.util.Map,java.io.Serializable]);m(c$,($fz=function(a,b,d){if(null==a||null==b||null==d)throw new NullPointerException;this.m=a;this.keyType=b;this.valueType=d},$fz.isPrivate=!0,$fz),"java.util.Map,Class,Class");c(c$,"size",function(){return this.m.size()});c(c$,"isEmpty",function(){return this.m.isEmpty()});
c(c$,"containsKey",function(a){return this.m.containsKey(a)},"~O");c(c$,"containsValue",function(a){return this.m.containsValue(a)},"~O");c(c$,"get",function(a){return this.m.get(a)},"~O");c(c$,"put",function(a,b){return this.m.put(java.util.Collections.checkType(a,this.keyType),java.util.Collections.checkType(b,this.valueType))},"~O,~O");c(c$,"remove",function(a){return this.m.remove(a)},"~O");e(c$,"putAll",function(a){var b=a.size();if(0!=b){var d=Array(b);a=a.entrySet().iterator();for(var c=0;c<
b;c++){var f=a.next();java.util.Collections.checkType(f.getKey(),this.keyType);java.util.Collections.checkType(f.getValue(),this.valueType);d[c]=f}for(f=0;f<b;f++)this.m.put(d[f].getKey(),d[f].getValue())}},"java.util.Map");c(c$,"clear",function(){this.m.clear()});c(c$,"keySet",function(){return this.m.keySet()});c(c$,"values",function(){return this.m.values()});c(c$,"entrySet",function(){return new java.util.Collections.CheckedMap.CheckedEntrySet(this.m.entrySet(),this.valueType)});e(c$,"equals",
function(a){return this.m.equals(a)},"~O");e(c$,"hashcode",function(){return this.m.hashCode()});c(c$,"toString",function(){return this.m.toString()});A();c$=x(function(){this.valueType=this.e=null;v(this,arguments)},java.util.Collections.CheckedMap,"CheckedEntry",null,java.util.Map.Entry);m(c$,function(a,b){if(null==a)throw new NullPointerException;this.e=a;this.valueType=b},"java.util.Map.Entry,Class");c(c$,"getKey",function(){return this.e.getKey()});c(c$,"getValue",function(){return this.e.getValue()});
c(c$,"setValue",function(a){return this.e.setValue(java.util.Collections.checkType(a,this.valueType))},"~O");e(c$,"equals",function(a){return this.e.equals(a)},"~O");e(c$,"hashcode",function(){return this.e.hashCode()});c$=B();A();c$=x(function(){this.valueType=this.s=null;v(this,arguments)},java.util.Collections.CheckedMap,"CheckedEntrySet",null,java.util.Set);m(c$,function(a,b){this.s=a;this.valueType=b},"java.util.Set,Class");c(c$,"iterator",function(){return new java.util.Collections.CheckedMap.CheckedEntrySet.CheckedEntryIterator(this.s.iterator(),
this.valueType)});c(c$,"toArray",function(){for(var a=this.size(),b=Array(a),d=this.iterator(),c=0;c<a;c++)b[c]=d.next();return b});c(c$,"toArray",function(a){var b=this.size();if(a.length<b){var d=a.getClass().getComponentType();a=java.lang.reflect.Array.newInstance(d,b)}for(var d=this.iterator(),c=0;c<b;c++)a[c]=d.next();b<a.length&&(a[b]=null);return a},"~A");c(c$,"retainAll",function(a){return this.s.retainAll(a)},"java.util.Collection");c(c$,"removeAll",function(a){return this.s.removeAll(a)},
"java.util.Collection");c(c$,"containsAll",function(a){return this.s.containsAll(a)},"java.util.Collection");e(c$,"addAll",function(){throw new UnsupportedOperationException;},"java.util.Collection");c(c$,"remove",function(a){return this.s.remove(a)},"~O");c(c$,"contains",function(a){return this.s.contains(a)},"~O");e(c$,"add",function(){throw new UnsupportedOperationException;},"java.util.Map.Entry");c(c$,"isEmpty",function(){return this.s.isEmpty()});c(c$,"clear",function(){this.s.clear()});c(c$,
"size",function(){return this.s.size()});e(c$,"hashcode",function(){return this.s.hashCode()});e(c$,"equals",function(a){return this.s.equals(a)},"~O");A();c$=x(function(){this.valueType=this.i=null;v(this,arguments)},java.util.Collections.CheckedMap.CheckedEntrySet,"CheckedEntryIterator",null,java.util.Iterator);m(c$,function(a,b){this.i=a;this.valueType=b},"java.util.Iterator,Class");c(c$,"hasNext",function(){return this.i.hasNext()});c(c$,"remove",function(){this.i.remove()});c(c$,"next",function(){return new java.util.Collections.CheckedMap.CheckedEntry(this.i.next(),
this.valueType)});c$=B();c$=B();c$=B();A();c$=x(function(){this.ss=null;v(this,arguments)},java.util.Collections,"CheckedSortedSet",java.util.Collections.CheckedSet,java.util.SortedSet);m(c$,function(a,b){D(this,java.util.Collections.CheckedSortedSet,[a,b]);this.ss=a},"java.util.SortedSet,Class");c(c$,"comparator",function(){return this.ss.comparator()});c(c$,"subSet",function(a,b){return new java.util.Collections.CheckedSortedSet(this.ss.subSet(a,b),this.type)},"~O,~O");c(c$,"headSet",function(a){return new java.util.Collections.CheckedSortedSet(this.ss.headSet(a),
this.type)},"~O");c(c$,"tailSet",function(a){return new java.util.Collections.CheckedSortedSet(this.ss.tailSet(a),this.type)},"~O");c(c$,"first",function(){return this.ss.first()});c(c$,"last",function(){return this.ss.last()});c$=B();A();c$=x(function(){this.sm=null;v(this,arguments)},java.util.Collections,"CheckedSortedMap",java.util.Collections.CheckedMap,java.util.SortedMap);m(c$,function(a,b,d){D(this,java.util.Collections.CheckedSortedMap,[a,b,d]);this.sm=a},"java.util.SortedMap,Class,Class");
c(c$,"comparator",function(){return this.sm.comparator()});c(c$,"subMap",function(a,b){return new java.util.Collections.CheckedSortedMap(this.sm.subMap(a,b),this.keyType,this.valueType)},"~O,~O");c(c$,"headMap",function(a){return new java.util.Collections.CheckedSortedMap(this.sm.headMap(a),this.keyType,this.valueType)},"~O");c(c$,"tailMap",function(a){return new java.util.Collections.CheckedSortedMap(this.sm.tailMap(a),this.keyType,this.valueType)},"~O");c(c$,"firstKey",function(){return this.sm.firstKey()});
c(c$,"lastKey",function(){return this.sm.lastKey()});c$=B();c$.EMPTY_LIST=c$.prototype.EMPTY_LIST=new java.util.Collections.EmptyList;c$.EMPTY_SET=c$.prototype.EMPTY_SET=new java.util.Collections.EmptySet;c$.EMPTY_MAP=c$.prototype.EMPTY_MAP=new java.util.Collections.EmptyMap}),c$=t(java.util,"Dictionary"),m(c$,function(){}),I("java.util.Dictionary $.Enumeration $.Iterator $.Map $.MapEntry $.NoSuchElementException".split(" "),"java.util.Hashtable","java.lang.IllegalArgumentException $.IllegalStateException $.NullPointerException $.StringBuilder java.util.AbstractCollection $.AbstractSet $.Arrays $.Collections $.ConcurrentModificationException java.util.MapEntry.Type".split(" "),
function(){c$=x(function(){this.elementCount=0;this.elementData=null;this.firstSlot=this.threshold=this.loadFactor=0;this.lastSlot=-1;this.modCount=0;M("java.util.Hashtable.HashIterator")||java.util.Hashtable.$Hashtable$HashIterator$();M("java.util.Hashtable.HashEnumerator")||java.util.Hashtable.$Hashtable$HashEnumerator$();v(this,arguments)},java.util,"Hashtable",java.util.Dictionary,[java.util.Map,Cloneable,java.io.Serializable]);c$.newEntry=c(c$,"newEntry",($fz=function(a,b){return new java.util.Hashtable.Entry(a,
b)},$fz.isPrivate=!0,$fz),"~O,~O,~N");ca(c$,function(){this.elementCount=0;this.elementData=this.newElementArray(11);this.firstSlot=this.elementData.length;this.loadFactor=0.75;this.computeMaxSize()});c(c$,"newElementArray",($fz=function(a){return Array(a)},$fz.isPrivate=!0,$fz),"~N");e(c$,"clear",function(){this.elementCount=0;for(var a=this.elementData.length;0<=--a;)this.elementData[a]=null;this.modCount++});c(c$,"clone",function(){try{var a=$(this,java.util.Hashtable,"clone",[]);a.elementData=
this.elementData.clone();for(var b,d=this.elementData.length;0<=--d;)if(null!=(b=this.elementData[d]))a.elementData[d]=b.clone();return a}catch(c){if(G(c,CloneNotSupportedException))return null;throw c;}});c(c$,"computeMaxSize",($fz=function(){this.threshold=Math.round(this.elementData.length*this.loadFactor)},$fz.isPrivate=!0,$fz));c(c$,"contains",function(a){if(null==a)throw new NullPointerException;for(var b=this.elementData.length;0<=--b;)for(var d=this.elementData[b];null!=d;){if(a.equals(d.value))return!0;
d=d.next}return!1},"~O");e(c$,"containsKey",function(a){return null!=this.getEntry(a)},"~O");e(c$,"containsValue",function(a){return this.contains(a)},"~O");e(c$,"elements",function(){return 0==this.elementCount?java.util.Hashtable.EMPTY_ENUMERATION:K(java.util.Hashtable.HashEnumerator,this,null,!1)});e(c$,"entrySet",function(){return new java.util.Collections.SynchronizedSet((M("java.util.Hashtable$2")?0:java.util.Hashtable.$Hashtable$2$(),K(java.util.Hashtable$2,this,null)),this)});e(c$,"equals",
function(a){if(this===a)return!0;if(G(a,java.util.Map)){if(this.size()!=a.size())return!1;var b=this.entrySet(),d;for(a=a.entrySet().iterator();a.hasNext()&&((d=a.next())||1);)if(!b.contains(d))return!1;return!0}return!1},"~O");e(c$,"get",function(a){for(var b=a.hashCode(),d=this.elementData[(b&2147483647)%this.elementData.length];null!=d;){if(d.equalsKey(a,b))return d.value;d=d.next}return null},"~O");c(c$,"getEntry",function(a){for(var b=a.hashCode(),d=this.elementData[(b&2147483647)%this.elementData.length];null!=
d;){if(d.equalsKey(a,b))return d;d=d.next}return null},"~O");e(c$,"hashCode",function(){for(var a=0,b=this.entrySet().iterator();b.hasNext();)var d=b.next(),c=d.getKey(),d=d.getValue(),c=(c!==this?c.hashCode():0)^(d!==this?null!=d?d.hashCode():0:0),a=a+c;return a});e(c$,"isEmpty",function(){return 0==this.elementCount});e(c$,"keys",function(){return 0==this.elementCount?java.util.Hashtable.EMPTY_ENUMERATION:K(java.util.Hashtable.HashEnumerator,this,null,!0)});e(c$,"keySet",function(){return new java.util.Collections.SynchronizedSet((M("java.util.Hashtable$3")?
0:java.util.Hashtable.$Hashtable$3$(),K(java.util.Hashtable$3,this,null)),this)});e(c$,"put",function(a,b){if(null!=a&&null!=b){if(!a.hashCode){var d=Math.floor(1E7*Math.random());a.hashCode=function(){return d};a.equals=function(a){return this.hashCode()==a.hashCode()}}for(var c=a.hashCode(),f=(c&2147483647)%this.elementData.length,g=this.elementData[f];null!=g&&!g.equalsKey(a,c);)g=g.next;if(null==g)return this.modCount++,++this.elementCount>this.threshold&&(this.rehash(),f=(c&2147483647)%this.elementData.length),
f<this.firstSlot&&(this.firstSlot=f),f>this.lastSlot&&(this.lastSlot=f),g=java.util.Hashtable.newEntry(a,b,c),g.next=this.elementData[f],this.elementData[f]=g,null;c=g.value;g.value=b;return c}throw new NullPointerException;},"~O,~O");e(c$,"putAll",function(a){var b;for(a=a.entrySet().iterator();a.hasNext()&&((b=a.next())||1);)this.put(b.getKey(),b.getValue())},"java.util.Map");c(c$,"rehash",function(){var a=(this.elementData.length<<1)+1;0==a&&(a=1);for(var b=a,d=-1,c=this.newElementArray(a),f=this.lastSlot+
1;--f>=this.firstSlot;)for(var g=this.elementData[f];null!=g;){var e=(g.getKeyHash()&2147483647)%a;e<b&&(b=e);e>d&&(d=e);var h=g.next;g.next=c[e];c[e]=g;g=h}this.firstSlot=b;this.lastSlot=d;this.elementData=c;this.computeMaxSize()});e(c$,"remove",function(a){for(var b=a.hashCode(),d=(b&2147483647)%this.elementData.length,c=null,f=this.elementData[d];null!=f&&!f.equalsKey(a,b);)c=f,f=f.next;return null!=f?(this.modCount++,null==c?this.elementData[d]=f.next:c.next=f.next,this.elementCount--,a=f.value,
f.value=null,a):null},"~O");e(c$,"size",function(){return this.elementCount});e(c$,"toString",function(){if(this.isEmpty())return"{}";var a=new StringBuilder(28*this.size());a.append("{");for(var b=this.lastSlot;b>=this.firstSlot;b--)for(var d=this.elementData[b];null!=d;)d.key!==this?a.append(d.key):a.append("(this Map)"),a.append("="),d.value!==this?a.append(d.value):a.append("(this Map)"),a.append(", "),d=d.next;0<this.elementCount&&a.setLength(a.length()-2);a.append("}");return a.toString()});
e(c$,"values",function(){return new java.util.Collections.SynchronizedCollection((M("java.util.Hashtable$4")?0:java.util.Hashtable.$Hashtable$4$(),K(java.util.Hashtable$4,this,null)),this)});c$.$Hashtable$HashIterator$=function(){A();c$=x(function(){V(this,arguments);this.expectedModCount=this.position=0;this.lastEntry=this.type=null;this.lastPosition=0;this.canRemove=!1;v(this,arguments)},java.util.Hashtable,"HashIterator",null,java.util.Iterator);m(c$,function(a){this.type=a;this.position=this.b$["java.util.Hashtable"].lastSlot;
this.expectedModCount=this.b$["java.util.Hashtable"].modCount},"java.util.MapEntry.Type");e(c$,"hasNext",function(){if(null!=this.lastEntry&&null!=this.lastEntry.next)return!0;for(;this.position>=this.b$["java.util.Hashtable"].firstSlot;)if(null==this.b$["java.util.Hashtable"].elementData[this.position])this.position--;else return!0;return!1});e(c$,"next",function(){if(this.expectedModCount==this.b$["java.util.Hashtable"].modCount){null!=this.lastEntry&&(this.lastEntry=this.lastEntry.next);if(null==
this.lastEntry){for(;this.position>=this.b$["java.util.Hashtable"].firstSlot&&null==(this.lastEntry=this.b$["java.util.Hashtable"].elementData[this.position]);)this.position--;null!=this.lastEntry&&(this.lastPosition=this.position,this.position--)}if(null!=this.lastEntry)return this.canRemove=!0,this.type.get(this.lastEntry);throw new java.util.NoSuchElementException;}throw new java.util.ConcurrentModificationException;});e(c$,"remove",function(){if(this.expectedModCount==this.b$["java.util.Hashtable"].modCount)if(this.canRemove){var a=
this.canRemove=!1,b=this.b$["java.util.Hashtable"].elementData[this.lastPosition];if(b===this.lastEntry)this.b$["java.util.Hashtable"].elementData[this.lastPosition]=b.next,a=!0;else{for(;null!=b&&b.next!==this.lastEntry;)b=b.next;null!=b&&(b.next=this.lastEntry.next,a=!0)}if(a){this.b$["java.util.Hashtable"].modCount++;this.b$["java.util.Hashtable"].elementCount--;this.expectedModCount++;return}}else throw new IllegalStateException;throw new java.util.ConcurrentModificationException;});c$=B()};c$.$Hashtable$HashEnumerator$=
function(){A();c$=x(function(){V(this,arguments);this.key=!1;this.start=0;this.entry=null;v(this,arguments)},java.util.Hashtable,"HashEnumerator",null,java.util.Enumeration);m(c$,function(a){this.key=a;this.start=this.b$["java.util.Hashtable"].lastSlot+1},"~B");e(c$,"hasMoreElements",function(){if(null!=this.entry)return!0;for(;--this.start>=this.b$["java.util.Hashtable"].firstSlot;)if(null!=this.b$["java.util.Hashtable"].elementData[this.start])return this.entry=this.b$["java.util.Hashtable"].elementData[this.start],
!0;return!1});e(c$,"nextElement",function(){if(this.hasMoreElements()){var a=this.key?this.entry.key:this.entry.value;this.entry=this.entry.next;return a}throw new java.util.NoSuchElementException;});c$=B()};c$.$Hashtable$2$=function(){A();c$=T(java.util,"Hashtable$2",java.util.AbstractSet);e(c$,"size",function(){return this.b$["java.util.Hashtable"].elementCount});e(c$,"clear",function(){this.b$["java.util.Hashtable"].clear()});e(c$,"remove",function(a){return this.contains(a)?(this.b$["java.util.Hashtable"].remove(a.getKey()),
!0):!1},"~O");c(c$,"contains",function(a){var b=this.b$["java.util.Hashtable"].getEntry(a.getKey());return a.equals(b)},"~O");c(c$,"iterator",function(){return K(java.util.Hashtable.HashIterator,this,null,(M("java.util.Hashtable$2$1")?0:java.util.Hashtable.$Hashtable$2$1$(),K(java.util.Hashtable$2$1,this,null)))});c$=B()};c$.$Hashtable$2$1$=function(){A();c$=T(java.util,"Hashtable$2$1",null,java.util.MapEntry.Type);e(c$,"get",function(a){return a},"java.util.MapEntry");c$=B()};c$.$Hashtable$3$=function(){A();
c$=T(java.util,"Hashtable$3",java.util.AbstractSet);e(c$,"contains",function(a){return this.b$["java.util.Hashtable"].containsKey(a)},"~O");e(c$,"size",function(){return this.b$["java.util.Hashtable"].elementCount});e(c$,"clear",function(){this.b$["java.util.Hashtable"].clear()});e(c$,"remove",function(a){return this.b$["java.util.Hashtable"].containsKey(a)?(this.b$["java.util.Hashtable"].remove(a),!0):!1},"~O");e(c$,"iterator",function(){return K(java.util.Hashtable.HashIterator,this,null,(M("java.util.Hashtable$3$1")?
0:java.util.Hashtable.$Hashtable$3$1$(),K(java.util.Hashtable$3$1,this,null)))});c$=B()};c$.$Hashtable$3$1$=function(){A();c$=T(java.util,"Hashtable$3$1",null,java.util.MapEntry.Type);e(c$,"get",function(a){return a.key},"java.util.MapEntry");c$=B()};c$.$Hashtable$4$=function(){A();c$=T(java.util,"Hashtable$4",java.util.AbstractCollection);e(c$,"contains",function(a){return this.b$["java.util.Hashtable"].contains(a)},"~O");e(c$,"size",function(){return this.b$["java.util.Hashtable"].elementCount});
e(c$,"clear",function(){this.b$["java.util.Hashtable"].clear()});e(c$,"iterator",function(){return K(java.util.Hashtable.HashIterator,this,null,(M("java.util.Hashtable$4$1")?0:java.util.Hashtable.$Hashtable$4$1$(),K(java.util.Hashtable$4$1,this,null)))});c$=B()};c$.$Hashtable$4$1$=function(){A();c$=T(java.util,"Hashtable$4$1",null,java.util.MapEntry.Type);e(c$,"get",function(a){return a.value},"java.util.MapEntry");c$=B()};c$.$Hashtable$1$=function(){A();c$=T(java.util,"Hashtable$1",null,java.util.Enumeration);
e(c$,"hasMoreElements",function(){return!1});e(c$,"nextElement",function(){throw new java.util.NoSuchElementException;});c$=B()};A();c$=x(function(){this.next=null;this.hashcode=0;v(this,arguments)},java.util.Hashtable,"Entry",java.util.MapEntry);ca(c$,function(a,b){this.key=a;this.value=b;this.hashcode=a.hashCode()});c(c$,"clone",function(){var a=$(this,java.util.Hashtable.Entry,"clone",[]);null!=this.next&&(a.next=this.next.clone());return a});e(c$,"setValue",function(a){if(null==a)throw new NullPointerException;
var b=this.value;this.value=a;return b},"~O");c(c$,"getKeyHash",function(){return this.key.hashCode()});c(c$,"equalsKey",function(a){return this.hashcode==a.hashCode()&&this.key.equals(a)},"~O,~N");e(c$,"toString",function(){return this.key+"="+this.value});c$=B();c$.EMPTY_ENUMERATION=c$.prototype.EMPTY_ENUMERATION=(M("java.util.Hashtable$1")?0:java.util.Hashtable.$Hashtable$1$(),K(java.util.Hashtable$1,this,null))}),I(["java.util.Map"],"java.util.MapEntry",null,function(){c$=x(function(){this.value=
this.key=null;v(this,arguments)},java.util,"MapEntry",null,[java.util.Map.Entry,Cloneable]);m(c$,function(a){this.key=a},"~O");m(c$,function(a,b){this.key=a;this.value=b},"~O,~O");c(c$,"clone",function(){try{return $(this,java.util.MapEntry,"clone",[])}catch(a){if(G(a,CloneNotSupportedException))return null;throw a;}});e(c$,"equals",function(a){return this===a?!0:G(a,java.util.Map.Entry)?(null==this.key?null==a.getKey():this.key.equals(a.getKey()))&&(null==this.value?null==a.getValue():this.value.equals(a.getValue())):
!1},"~O");e(c$,"getKey",function(){return this.key});e(c$,"getValue",function(){return this.value});e(c$,"hashCode",function(){return(null==this.key?0:this.key.hashCode())^(null==this.value?0:this.value.hashCode())});e(c$,"setValue",function(a){var b=this.value;this.value=a;return b},"~O");e(c$,"toString",function(){return this.key+"="+this.value});Q(java.util.MapEntry,"Type")}),I(["java.util.Hashtable"],"java.util.Properties",["java.lang.NullPointerException","$.StringBuffer"],function(){c$=x(function(){this.defaults=
this.builder=null;v(this,arguments)},java.util,"Properties",java.util.Hashtable);m(c$,function(a){D(this,java.util.Properties,[]);this.defaults=a},"java.util.Properties");c(c$,"dumpString",($fz=function(a,b,d){var c=0;!d&&(c<b.length&&32==b.charAt(c).charCodeAt(0))&&(a.append("\\ "),c++);for(;c<b.length;c++){var f=b.charAt(c);switch(f){case "\t":a.append("\\t");break;case "\n":a.append("\\n");break;case "\f":a.append("\\f");break;case "\r":a.append("\\r");break;default:(0<="\\#!=:".indexOf(f)||d&&
32==f.charCodeAt(0))&&a.append("\\");if(!(32<=f.charCodeAt(0)&&126>=f.charCodeAt(0))){f=Integer.toHexString(f.charCodeAt(0));a.append("\\u");for(var g=0;g<4-f.length;g++)a.append("0")}a.append(f)}}},$fz.isPrivate=!0,$fz),"StringBuilder,~S,~B");c(c$,"getProperty",function(a){var b=this.get(a),b=G(b,String)?b:null;null==b&&null!=this.defaults&&(b=this.defaults.getProperty(a));return b},"~S");c(c$,"getProperty",function(a,b){var d=this.get(a),d=G(d,String)?d:null;null==d&&null!=this.defaults&&(d=this.defaults.getProperty(a));
return null==d?b:d},"~S,~S");c(c$,"list",function(a){if(null==a)throw new NullPointerException;for(var b=new StringBuffer(80),d=this.propertyNames();d.hasMoreElements();){var c=d.nextElement();b.append(c);b.append("=");for(var f=this.get(c),g=this.defaults;null==f;)f=g.get(c),g=g.defaults;40<f.length?(b.append(f.substring(0,37)),b.append("...")):b.append(f);a.println(b.toString());b.setLength(0)}},"java.io.PrintStream");c(c$,"list",function(a){if(null==a)throw new NullPointerException;for(var b=new StringBuffer(80),
d=this.propertyNames();d.hasMoreElements();){var c=d.nextElement();b.append(c);b.append("=");for(var f=this.get(c),g=this.defaults;null==f;)f=g.get(c),g=g.defaults;40<f.length?(b.append(f.substring(0,37)),b.append("...")):b.append(f);a.println(b.toString());b.setLength(0)}},"java.io.PrintWriter");c(c$,"load",function(){},"java.io.InputStream");c(c$,"propertyNames",function(){if(null==this.defaults)return this.keys();for(var a=new java.util.Hashtable(this.defaults.size()+this.size()),b=this.defaults.propertyNames();b.hasMoreElements();)a.put(b.nextElement(),
a);for(b=this.keys();b.hasMoreElements();)a.put(b.nextElement(),a);return a.keys()});c(c$,"save",function(a,b){try{this.store(a,b)}catch(d){if(!G(d,java.io.IOException))throw d;}},"java.io.OutputStream,~S");c(c$,"setProperty",function(a,b){return this.put(a,b)},"~S,~S");c(c$,"store",function(){},"java.io.OutputStream,~S");c(c$,"loadFromXML",function(){},"java.io.InputStream");c(c$,"storeToXML",function(){},"java.io.OutputStream,~S");c(c$,"storeToXML",function(){},"java.io.OutputStream,~S,~S");c(c$,
"substitutePredefinedEntries",($fz=function(a){return a.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll("'","&apos;").replaceAll('"',"&quot;")},$fz.isPrivate=!0,$fz),"~S");X(c$,"PROP_DTD_NAME","http://java.sun.com/dtd/properties.dtd","PROP_DTD",'<?xml version="1.0" encoding="UTF-8"?>    <!ELEMENT properties (comment?, entry*) >    <!ATTLIST properties version CDATA #FIXED "1.0" >    <!ELEMENT comment (#PCDATA) >    <!ELEMENT entry (#PCDATA) >    <!ATTLIST entry key CDATA #REQUIRED >',
"NONE",0,"SLASH",1,"UNICODE",2,"CONTINUE",3,"KEY_DONE",4,"IGNORE",5,"lineSeparator",null)}),I(null,"java.util.Random",["java.lang.IllegalArgumentException"],function(){c$=x(function(){this.haveNextNextGaussian=!1;this.nextNextGaussian=this.seed=0;v(this,arguments)},java.util,"Random",null,java.io.Serializable);m(c$,function(){this.setSeed(System.currentTimeMillis())});m(c$,function(a){this.setSeed(a)},"~N");c(c$,"next",function(a){this.seed=25214903917*this.seed+11&0xffffffffffff;return this.seed>>>
48-a},"~N");c(c$,"nextBoolean",function(){return 0.5<Math.random()});c(c$,"nextBytes",function(){for(var a=0;a<bytes.length;a++)bytes[a]=Math.round(256*Math.random())},"~A");c(c$,"nextDouble",function(){return Math.random()});c(c$,"nextFloat",function(){return Math.random()});c(c$,"nextGaussian",function(){if(this.haveNextNextGaussian)return this.haveNextNextGaussian=!1,this.nextNextGaussian;var a,b,d;do a=2*this.nextDouble()-1,b=2*this.nextDouble()-1,d=a*a+b*b;while(1<=d);d=Math.sqrt(-2*Math.log(d)/
d);this.nextNextGaussian=b*d;this.haveNextNextGaussian=!0;return a*d});c(c$,"nextInt",function(){return Math.ceil(65535*Math.random())-32768});c(c$,"nextInt",function(a){if(0<a){if((a&-a)==a)return a*this.next(31)>>31;var b,d;do b=this.next(31),d=b%a;while(0>b-d+(a-1));return d}throw new IllegalArgumentException;},"~N");c(c$,"nextLong",function(){return Math.ceil(4294967295*Math.random())-2147483648});c(c$,"setSeed",function(a){this.seed=(a^25214903917)&0xffffffffffff;this.haveNextNextGaussian=!1},
"~N");X(c$,"multiplier",25214903917)}),I(["java.util.Map"],"java.util.SortedMap",null,function(){Q(java.util,"SortedMap",java.util.Map)}),I(["java.util.Set"],"java.util.SortedSet",null,function(){Q(java.util,"SortedSet",java.util.Set)}),I(["java.util.Enumeration"],"java.util.StringTokenizer",["java.lang.NullPointerException","java.util.NoSuchElementException"],function(){c$=x(function(){this.delimiters=this.string=null;this.returnDelimiters=!1;this.position=0;v(this,arguments)},java.util,"StringTokenizer",
null,java.util.Enumeration);m(c$,function(a){this.construct(a," \t\n\r\f",!1)},"~S");m(c$,function(a,b){this.construct(a,b,!1)},"~S,~S");m(c$,function(a,b,d){if(null!=a)this.string=a,this.delimiters=b,this.returnDelimiters=d,this.position=0;else throw new NullPointerException;},"~S,~S,~B");c(c$,"countTokens",function(){for(var a=0,b=!1,d=this.position,c=this.string.length;d<c;d++)0<=this.delimiters.indexOf(this.string.charAt(d),0)?(this.returnDelimiters&&a++,b&&(a++,b=!1)):b=!0;b&&a++;return a});
e(c$,"hasMoreElements",function(){return this.hasMoreTokens()});c(c$,"hasMoreTokens",function(){var a=this.string.length;if(this.position<a){if(this.returnDelimiters)return!0;for(var b=this.position;b<a;b++)if(-1==this.delimiters.indexOf(this.string.charAt(b),0))return!0}return!1});e(c$,"nextElement",function(){return this.nextToken()});c(c$,"nextToken",function(){var a=this.position,b=this.string.length;if(a<b){if(this.returnDelimiters){if(0<=this.delimiters.indexOf(this.string.charAt(this.position),
0))return String.valueOf(this.string.charAt(this.position++));for(this.position++;this.position<b;this.position++)if(0<=this.delimiters.indexOf(this.string.charAt(this.position),0))return this.string.substring(a,this.position);return this.string.substring(a)}for(;a<b&&0<=this.delimiters.indexOf(this.string.charAt(a),0);)a++;this.position=a;if(a<b){for(this.position++;this.position<b;this.position++)if(0<=this.delimiters.indexOf(this.string.charAt(this.position),0))return this.string.substring(a,this.position);
return this.string.substring(a)}}throw new java.util.NoSuchElementException;});c(c$,"nextToken",function(a){this.delimiters=a;return this.nextToken()},"~S")}),p("javajs.api"),L(javajs.api,"BytePoster"),p("javajs.api"),L(javajs.api,"EventManager"),p("javajs.api"),L(javajs.api,"FontManager"),p("javajs.api"),L(javajs.api,"GenericColor"),p("javajs.api"),L(javajs.api,"GenericFileInterface"),p("javajs.api"),L(javajs.api,"GenericMouseInterface"),p("javajs.api"),q(["javajs.api.FontManager"],"javajs.api.GenericPlatform",
null,function(){c$=L(javajs.api,"GenericPlatform",javajs.api.FontManager);H(c$,"CURSOR_DEFAULT",0,"CURSOR_CROSSHAIR",1,"CURSOR_WAIT",3,"CURSOR_ZOOM",8,"CURSOR_HAND",12,"CURSOR_MOVE",13)}),p("javajs.api"),L(javajs.api,"JSInterface"),p("javajs.api"),L(javajs.api,"PlatformViewer"),p("javajs.api"),L(javajs.api,"ZInputStream"),p("javajs.awt"),q(["javajs.api.GenericColor"],"javajs.awt.Color",null,function(){c$=w(function(){this.argb=0;u(this,arguments)},javajs.awt,"Color",null,javajs.api.GenericColor);
e(c$,"getRGB",function(){return this.argb&16777215});e(c$,"getOpacity255",function(){return this.argb>>24&255});e(c$,"setOpacity255",function(a){this.argb=this.argb&16777215|(a&255)<<24},"~N");c$.get1=c(c$,"get1",function(a){var b=new javajs.awt.Color;b.argb=a|4278190080;return b},"~N");c$.get3=c(c$,"get3",function(a,b,d){return(new javajs.awt.Color).set4(a,b,d,255)},"~N,~N,~N");c$.get4=c(c$,"get4",function(a,b,d,c){return(new javajs.awt.Color).set4(a,b,d,c)},"~N,~N,~N,~N");c(c$,"set4",function(a,
b,d,c){this.argb=(c<<24|a<<16|b<<8|d)&4294967295;return this},"~N,~N,~N,~N")}),p("javajs.awt"),c$=w(function(){this.height=this.width=0;u(this,arguments)},javajs.awt,"Dimension"),z(c$,function(a,b){this.set(a,b)},"~N,~N"),c(c$,"set",function(a,b){this.width=a;this.height=b;return this},"~N,~N"),p("javajs.awt.event"),c$=w(function(){this.source=null;u(this,arguments)},javajs.awt.event,"Event"),c(c$,"getSource",function(){return this.source}),H(c$,"MOUSE_LEFT",16,"MOUSE_MIDDLE",8,"MOUSE_RIGHT",4,"MOUSE_WHEEL",
32,"MAC_COMMAND",20,"BUTTON_MASK",28,"MOUSE_DOWN",501,"MOUSE_UP",502,"MOUSE_MOVE",503,"MOUSE_ENTER",504,"MOUSE_EXIT",505,"MOUSE_DRAG",506,"SHIFT_MASK",1,"ALT_MASK",8,"CTRL_MASK",2,"CTRL_ALT",10,"CTRL_SHIFT",3,"META_MASK",4,"VK_SHIFT",16,"VK_ALT",18,"VK_CONTROL",17,"VK_META",157,"VK_LEFT",37,"VK_RIGHT",39,"VK_PERIOD",46,"VK_SPACE",32,"VK_DOWN",40,"VK_UP",38,"VK_ESCAPE",27,"VK_DELETE",127,"VK_BACK_SPACE",8,"VK_PAGE_DOWN",34,"VK_PAGE_UP",33,"MOVED",0,"DRAGGED",1,"CLICKED",2,"WHEELED",3,"PRESSED",4,"RELEASED",
5),p("javajs.awt"),q(null,"javajs.awt.Font",["JU.AU"],function(){c$=w(function(){this.fid=0;this.fontStyle=this.fontFace=null;this.fontSize=this.idFontStyle=this.idFontFace=this.fontSizeNominal=0;this.manager=this.fontMetrics=this.font=null;this.descent=this.ascent=0;this.isItalic=this.isBold=!1;u(this,arguments)},javajs.awt,"Font");z(c$,function(a,b,d,c,f,g,e){this.manager=a;this.fid=b;this.fontFace=javajs.awt.Font.fontFaces[d];this.fontStyle=javajs.awt.Font.fontStyles[c];this.idFontFace=d;this.idFontStyle=
c;this.fontSize=f;this.isBold=1==(c&1);this.isItalic=2==(c&2);this.fontSizeNominal=g;this.font=a.newFont(javajs.awt.Font.fontFaces[d],this.isBold,this.isItalic,f);this.fontMetrics=a.getFontMetrics(this,e);this.descent=a.getFontDescent(this.fontMetrics);this.ascent=a.getFontAscent(this.fontMetrics)},"javajs.api.FontManager,~N,~N,~N,~N,~N,~O");c$.getFont3D=c(c$,"getFont3D",function(a){return javajs.awt.Font.font3ds[a&255]},"~N");c$.createFont3D=c(c$,"createFont3D",function(a,b,d,c,f,g){255<d&&(d=255);
for(var e=Y(d)<<4,e=a&3|(b&3)<<2|e<<4,h=javajs.awt.Font.fontkeyCount;0<--h;)if(e==javajs.awt.Font.fontkeys[h]&&javajs.awt.Font.font3ds[h].fontSizeNominal==c)return javajs.awt.Font.font3ds[h];h=javajs.awt.Font.fontkeyCount++;h==javajs.awt.Font.fontkeys.length&&(javajs.awt.Font.fontkeys=JU.AU.arrayCopyI(javajs.awt.Font.fontkeys,h+8));javajs.awt.Font.font3ds=JU.AU.arrayCopyObject(javajs.awt.Font.font3ds,h+8);a=new javajs.awt.Font(f,h,a,b,d,c,g);javajs.awt.Font.font3ds[h]=a;javajs.awt.Font.fontkeys[h]=
e;return a},"~N,~N,~N,~N,javajs.api.FontManager,~O");c$.getFontFaceID=c(c$,"getFontFaceID",function(a){return"Monospaced".equalsIgnoreCase(a)?2:"Serif".equalsIgnoreCase(a)?1:0},"~S");c$.getFontStyleID=c(c$,"getFontStyleID",function(a){for(var b=4;0<=--b;)if(javajs.awt.Font.fontStyles[b].equalsIgnoreCase(a))return b;return-1},"~S");c(c$,"getAscent",function(){return this.ascent});c(c$,"getDescent",function(){return this.descent});c(c$,"getHeight",function(){return this.getAscent()+this.getDescent()});
c(c$,"getFontMetrics",function(){return this.fontMetrics});c(c$,"stringWidth",function(a){return this.manager.fontStringWidth(this,a)},"~S");c(c$,"getInfo",function(){return this.fontSizeNominal+" "+this.fontFace+" "+this.fontStyle});H(c$,"FONT_ALLOCATION_UNIT",8,"fontkeyCount",1,"fontkeys",N(8,0));c$.font3ds=c$.prototype.font3ds=Array(8);H(c$,"FONT_FACE_SANS",0,"FONT_FACE_SERIF",1,"FONT_FACE_MONO",2,"fontFaces",["SansSerif","Serif","Monospaced",""],"FONT_STYLE_PLAIN",0,"FONT_STYLE_BOLD",1,"FONT_STYLE_ITALIC",
2,"FONT_STYLE_BOLDITALIC",3,"fontStyles",["Plain","Bold","Italic","BoldItalic"])}),p("JU"),q(null,"JU.A4",["JU.T3"],function(){c$=w(function(){this.angle=this.z=this.y=this.x=0;u(this,arguments)},JU,"A4",null,java.io.Serializable);z(c$,function(){this.z=1});c$.new4=c(c$,"new4",function(a,b,d,c){var f=new JU.A4;f.set4(a,b,d,c);return f},"~N,~N,~N,~N");c$.newAA=c(c$,"newAA",function(a){var b=new JU.A4;b.set4(a.x,a.y,a.z,a.angle);return b},"JU.A4");c$.newVA=c(c$,"newVA",function(a,b){var d=new JU.A4;
d.setVA(a,b);return d},"JU.V3,~N");c(c$,"setVA",function(a,b){this.x=a.x;this.y=a.y;this.z=a.z;this.angle=b},"JU.V3,~N");c(c$,"set4",function(a,b,d,c){this.x=a;this.y=b;this.z=d;this.angle=c},"~N,~N,~N,~N");c(c$,"setAA",function(a){this.x=a.x;this.y=a.y;this.z=a.z;this.angle=a.angle},"JU.A4");c(c$,"setM",function(a){this.setFromMat(a.m00,a.m01,a.m02,a.m10,a.m11,a.m12,a.m20,a.m21,a.m22)},"JU.M3");c(c$,"setFromMat",function(a,b,d,c,f,g,e,h,k){a=0.5*(a+f+k-1);this.x=h-g;this.y=d-e;this.z=c-b;b=0.5*Math.sqrt(this.x*
this.x+this.y*this.y+this.z*this.z);this.angle=Math.atan2(b,a)},"~N,~N,~N,~N,~N,~N,~N,~N,~N");e(c$,"toString",function(){return"("+this.x+", "+this.y+", "+this.z+", "+this.angle+")"});e(c$,"equals",function(a){return!y(a,JU.A4)?!1:this.x==a.x&&this.y==a.y&&this.z==a.z&&this.angle==a.angle},"~O");e(c$,"hashCode",function(){return JU.T3.floatToIntBits0(this.x)^JU.T3.floatToIntBits0(this.y)^JU.T3.floatToIntBits0(this.z)^JU.T3.floatToIntBits0(this.angle)})}),p("JU"),q(["java.net.URLConnection"],"JU.AjaxURLConnection",
null,function(){c$=w(function(){this.bytesOut=null;this.postOut="";u(this,arguments)},JU,"AjaxURLConnection",java.net.URLConnection);c(c$,"doAjax",function(){return Jmol._doAjax(this.url,this.postOut,this.bytesOut)});e(c$,"connect",function(){});c(c$,"outputBytes",function(a){this.bytesOut=a},"~A");c(c$,"outputString",function(a){this.postOut=a},"~S");c(c$,"getSB",function(){return this.doAjax()})}),p("JU"),q(["java.net.URLStreamHandler"],"JU.AjaxURLStreamHandler",["JU.AjaxURLConnection","$.SB"],
function(){c$=w(function(){this.protocol=null;u(this,arguments)},JU,"AjaxURLStreamHandler",java.net.URLStreamHandler);z(c$,function(a){P(this,JU.AjaxURLStreamHandler,[]);this.protocol=a},"~S");e(c$,"openConnection",function(a){return new JU.AjaxURLConnection(a)},"java.net.URL");e(c$,"toExternalForm",function(a){var b=new JU.SB;b.append(a.getProtocol());b.append(":");null!=a.getAuthority()&&0<a.getAuthority().length&&(b.append("//"),b.append(a.getAuthority()));null!=a.getPath()&&b.append(a.getPath());
null!=a.getQuery()&&(b.append("?"),b.append(a.getQuery()));null!=a.getRef()&&(b.append("#"),b.append(a.getRef()));return b.toString()},"java.net.URL")}),p("JU"),q(["java.net.URLStreamHandlerFactory","java.util.Hashtable"],"JU.AjaxURLStreamHandlerFactory",["JU.AjaxURLStreamHandler"],function(){c$=w(function(){this.htFactories=null;u(this,arguments)},JU,"AjaxURLStreamHandlerFactory",null,java.net.URLStreamHandlerFactory);Z(c$,function(){this.htFactories=new java.util.Hashtable});e(c$,"createURLStreamHandler",
function(a){var b=this.htFactories.get(a);null==b&&this.htFactories.put(a,b=new JU.AjaxURLStreamHandler(a));return null==b.protocol?null:b},"~S")}),p("JU"),q(null,"JU.AU",["java.util.Arrays","JU.List"],function(){c$=F(JU,"AU");c$.ensureLength=c(c$,"ensureLength",function(a,b){return null!=a&&JU.AU.getLength(a)>=b?a:JU.AU.arrayCopyObject(a,b)},"~O,~N");c$.ensureLengthS=c(c$,"ensureLengthS",function(a,b){return null!=a&&a.length>=b?a:JU.AU.arrayCopyS(a,b)},"~A,~N");c$.ensureLengthA=c(c$,"ensureLengthA",
function(a,b){return null!=a&&a.length>=b?a:JU.AU.arrayCopyF(a,b)},"~A,~N");c$.ensureLengthI=c(c$,"ensureLengthI",function(a,b){return null!=a&&a.length>=b?a:JU.AU.arrayCopyI(a,b)},"~A,~N");c$.ensureLengthShort=c(c$,"ensureLengthShort",function(a,b){return null!=a&&a.length>=b?a:JU.AU.arrayCopyShort(a,b)},"~A,~N");c$.ensureLengthByte=c(c$,"ensureLengthByte",function(a,b){return null!=a&&a.length>=b?a:JU.AU.arrayCopyByte(a,b)},"~A,~N");c$.doubleLength=c(c$,"doubleLength",function(a){return JU.AU.arrayCopyObject(a,
null==a?16:2*JU.AU.getLength(a))},"~O");c$.doubleLengthS=c(c$,"doubleLengthS",function(a){return JU.AU.arrayCopyS(a,null==a?16:2*a.length)},"~A");c$.doubleLengthF=c(c$,"doubleLengthF",function(a){return JU.AU.arrayCopyF(a,null==a?16:2*a.length)},"~A");c$.doubleLengthI=c(c$,"doubleLengthI",function(a){return JU.AU.arrayCopyI(a,null==a?16:2*a.length)},"~A");c$.doubleLengthShort=c(c$,"doubleLengthShort",function(a){return JU.AU.arrayCopyShort(a,null==a?16:2*a.length)},"~A");c$.doubleLengthByte=c(c$,
"doubleLengthByte",function(a){return JU.AU.arrayCopyByte(a,null==a?16:2*a.length)},"~A");c$.doubleLengthBool=c(c$,"doubleLengthBool",function(a){return JU.AU.arrayCopyBool(a,null==a?16:2*a.length)},"~A");c$.deleteElements=c(c$,"deleteElements",function(a,b,d){if(0==d||null==a)return a;var c=JU.AU.getLength(a);if(b>=c)return a;c-=b+d;0>c&&(c=0);var f=JU.AU.newInstanceO(a,b+c);0<b&&System.arraycopy(a,0,f,0,b);0<c&&System.arraycopy(a,b+d,f,b,c);return f},"~O,~N,~N");c$.arrayCopyObject=c(c$,"arrayCopyObject",
function(a,b){if(null==a)return null;var d=JU.AU.getLength(a);if(b==d)return a;var c=JU.AU.newInstanceO(a,b);System.arraycopy(a,0,c,0,d<b?d:b);return c},"~O,~N");c$.newInstanceO=c(c$,"newInstanceO",function(a,b){return Array(b)},"~O,~N");c$.getLength=c(c$,"getLength",function(a){return a.length},"~O");c$.arrayCopyS=c(c$,"arrayCopyS",function(a,b){0>b&&(b=a.length);var d=Array(b);if(null!=a){var c=a.length;System.arraycopy(a,0,d,0,c<b?c:b)}return d},"~A,~N");c$.arrayCopyII=c(c$,"arrayCopyII",function(a,
b){var d=JU.AU.newInt2(b);if(null!=a){var c=a.length;System.arraycopy(a,0,d,0,c<b?c:b)}return d},"~A,~N");c$.arrayCopyPt=c(c$,"arrayCopyPt",function(a,b){0>b&&(b=a.length);var d=Array(b);if(null!=a){var c=a.length;System.arraycopy(a,0,d,0,c<b?c:b)}return d},"~A,~N");c$.arrayCopyF=c(c$,"arrayCopyF",function(a,b){0>b&&(b=a.length);var d=aa(b,0);if(null!=a){var c=a.length;System.arraycopy(a,0,d,0,c<b?c:b)}return d},"~A,~N");c$.arrayCopyI=c(c$,"arrayCopyI",function(a,b){0>b&&(b=a.length);var d=N(b,0);
if(null!=a){var c=a.length;System.arraycopy(a,0,d,0,c<b?c:b)}return d},"~A,~N");c$.arrayCopyRangeI=c(c$,"arrayCopyRangeI",function(a,b,d){if(null==a)return null;var c=a.length;-1==d&&(d=c);-2==d&&(d=r(c/2));d-=b;c=N(d,0);System.arraycopy(a,b,c,0,d);return c},"~A,~N,~N");c$.arrayCopyRangeRevI=c(c$,"arrayCopyRangeRevI",function(a,b,d){if(null==a)return null;b=JU.AU.arrayCopyRangeI(a,b,d);0>d&&(d=a.length);for(a=r(d/2);0<=--a;)JU.AU.swapInt(b,a,d-1-a);return b},"~A,~N,~N");c$.arrayCopyShort=c(c$,"arrayCopyShort",
function(a,b){0>b&&(b=a.length);var d=Ea(b,0);if(null!=a){var c=a.length;System.arraycopy(a,0,d,0,c<b?c:b)}return d},"~A,~N");c$.arrayCopyByte=c(c$,"arrayCopyByte",function(a,b){0>b&&(b=a.length);var d=R(b,0);if(null!=a){var c=a.length;System.arraycopy(a,0,d,0,c<b?c:b)}return d},"~A,~N");c$.arrayCopyBool=c(c$,"arrayCopyBool",function(a,b){0>b&&(b=a.length);var d=va(b,!1);if(null!=a){var c=a.length;System.arraycopy(a,0,d,0,c<b?c:b)}return d},"~A,~N");c$.swapInt=c(c$,"swapInt",function(a,b,d){var c=
a[b];a[b]=a[d];a[d]=c},"~A,~N,~N");c$.dumpArray=c(c$,"dumpArray",function(a,b,d,c,f,g){a="dumpArray: "+a+"\n";for(var e=d;e<=c;e++)a+="\t*"+e+"*";for(;g>=f;g--){a+="\n*"+g+"*";for(e=d;e<=c;e++)a+="\t"+(e<b.length&&g<b[e].length?b[e][g]:NaN)}return a},"~S,~A,~N,~N,~N,~N");c$.dumpIntArray=c(c$,"dumpIntArray",function(a,b){for(var d="",c=0;c<b;c++)d+=" "+a[c];return d},"~A,~N");c$.sortedItem=c(c$,"sortedItem",function(a,b){if(0==a.size())return null;if(1==a.size())return a.get(0);var d=a.toArray(Array(a.size()));
java.util.Arrays.sort(d);return d[b%d.length]},"JU.List,~N");c$.createArrayOfArrayList=c(c$,"createArrayOfArrayList",function(a){return Array(a)},"~N");c$.createArrayOfHashtable=c(c$,"createArrayOfHashtable",function(a){return Array(a)},"~N");c$.swap=c(c$,"swap",function(a,b,d){var c=a[b];a[b]=a[d];a[d]=c},"~A,~N,~N");c$.newFloat2=c(c$,"newFloat2",function(a){return ba(a,null)},"~N");c$.newInt2=c(c$,"newInt2",function(a){return ba(a,null)},"~N");c$.newInt3=c(c$,"newInt3",function(a){return ba(a,null)},
"~N,~N");c$.newFloat3=c(c$,"newFloat3",function(a){return ba(a,null)},"~N,~N");c$.newInt4=c(c$,"newInt4",function(a){return ba(a,null)},"~N");c$.newShort2=c(c$,"newShort2",function(a){return ba(a,null)},"~N");c$.newByte2=c(c$,"newByte2",function(a){return ba(a,null)},"~N");c$.newDouble2=c(c$,"newDouble2",function(a){return ba(a,null)},"~N");c$.removeMapKeys=c(c$,"removeMapKeys",function(a,b){for(var d=new JU.List,c,f=a.keySet().iterator();f.hasNext()&&((c=f.next())||1);)c.startsWith(b)&&d.addLast(c);
for(c=d.size();0<=--c;)a.remove(d.get(c));return d.size()},"java.util.Map,~S")}),p("JU"),q(null,"JU.Base64",["JU.SB"],function(){c$=F(JU,"Base64");c$.getBytes64=c(c$,"getBytes64",function(a){return JU.Base64.getBase64(a).toBytes(0,-1)},"~A");c$.getBase64=c(c$,"getBase64",function(a){var b=a.length,d=new JU.SB;if(0==b)return d;for(var c=0,f=0;c<b&&0==f;){0==c%75&&0!=c&&d.append("\r\n");var f=c+2==b?1:c+1==b?2:0,g=a[c++]<<16&16711680|(2==f?0:a[c++]<<8)&65280|(1<=f?0:a[c++])&255;d.appendC(JU.Base64.base64.charAt(g>>
18&63));d.appendC(JU.Base64.base64.charAt(g>>12&63));d.appendC(2==f?"=":JU.Base64.base64.charAt(g>>6&63));d.appendC(1<=f?"=":JU.Base64.base64.charAt(g&63))}return d},"~A");c$.decodeBase64=c(c$,"decodeBase64",function(a){var b=0,d,c=a.indexOf(";base64,")+1;0<c&&(c+=7);a=a.toCharArray();var f=a.length;if(0==f)return R(0,0);for(var g=f;--g>=c;)b+=65==(d=a[g].charCodeAt(0)&127)||0<JU.Base64.decode64[d]?3:0;for(var b=b>>2,e=R(b,0),h=18,g=c,k=c=0;g<f;g++)if(0<JU.Base64.decode64[d=a[g].charCodeAt(0)&127]||
65==d||61==d)k|=JU.Base64.decode64[d]<<h,h-=6,0>h&&(e[c++]=(k&16711680)>>16,c<b&&(e[c++]=(k&65280)>>8),c<b&&(e[c++]=k&255),h=18,k=0);return e},"~S");H(c$,"base64","ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/","decode64",[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,62,0,62,0,63,52,53,54,55,56,57,58,59,60,61,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,0,0,0,0,63,0,26,27,28,29,30,31,32,33,34,35,36,37,
38,39,40,41,42,43,44,45,46,47,48,49,50,51,0,0,0,0,0])}),p("JU"),q(["javajs.api.JSONEncodable"],"JU.BS",["java.lang.IndexOutOfBoundsException","$.NegativeArraySizeException","JU.SB"],function(){c$=w(function(){this.words=null;this.wordsInUse=0;this.sizeIsSticky=!1;u(this,arguments)},JU,"BS",null,[Cloneable,javajs.api.JSONEncodable]);c$.wordIndex=c(c$,"wordIndex",function(a){return a>>5},"~N");c(c$,"recalculateWordsInUse",function(){var a;for(a=this.wordsInUse-1;0<=a&&0==this.words[a];a--);this.wordsInUse=
a+1});z(c$,function(){this.initWords(32);this.sizeIsSticky=!1});c$.newN=c(c$,"newN",function(a){var b=new JU.BS;b.init(a);return b},"~N");c(c$,"init",function(a){if(0>a)throw new NegativeArraySizeException("nbits < 0: "+a);this.initWords(a);this.sizeIsSticky=!0},"~N");c(c$,"initWords",function(a){this.words=N(JU.BS.wordIndex(a-1)+1,0)},"~N");c(c$,"ensureCapacity",function(a){this.words.length<a&&(a=Math.max(2*this.words.length,a),this.setLength(a),this.sizeIsSticky=!1)},"~N");c(c$,"expandTo",function(a){a+=
1;this.wordsInUse<a&&(this.ensureCapacity(a),this.wordsInUse=a)},"~N");c(c$,"set",function(a){if(0>a)throw new IndexOutOfBoundsException("bitIndex < 0: "+a);var b=JU.BS.wordIndex(a);this.expandTo(b);this.words[b]|=1<<a},"~N");c(c$,"setBitTo",function(a,b){b?this.set(a):this.clear(a)},"~N,~B");c(c$,"setBits",function(a,b){if(a!=b){var d=JU.BS.wordIndex(a),c=JU.BS.wordIndex(b-1);this.expandTo(c);var f=-1<<a,g=-1>>>-b;if(d==c)this.words[d]|=f&g;else{this.words[d]|=f;for(d+=1;d<c;d++)this.words[d]=-1;
this.words[c]|=g}}},"~N,~N");c(c$,"clear",function(a){if(0>a)throw new IndexOutOfBoundsException("bitIndex < 0: "+a);var b=JU.BS.wordIndex(a);b>=this.wordsInUse||(this.words[b]&=~(1<<a),this.recalculateWordsInUse())},"~N");c(c$,"clearBits",function(a,b){if(a!=b){var d=JU.BS.wordIndex(a);if(!(d>=this.wordsInUse)){var c=JU.BS.wordIndex(b-1);c>=this.wordsInUse&&(b=this.length(),c=this.wordsInUse-1);var f=-1<<a,g=-1>>>-b;if(d==c)this.words[d]&=~(f&g);else{this.words[d]&=~f;for(d+=1;d<c;d++)this.words[d]=
0;this.words[c]&=~g}this.recalculateWordsInUse()}}},"~N,~N");c(c$,"clearAll",function(){for(;0<this.wordsInUse;)this.words[--this.wordsInUse]=0});c(c$,"get",function(a){if(0>a)throw new IndexOutOfBoundsException("bitIndex < 0: "+a);var b=JU.BS.wordIndex(a);return b<this.wordsInUse&&0!=(this.words[b]&1<<a)},"~N");c(c$,"nextSetBit",function(a){if(0>a)throw new IndexOutOfBoundsException("fromIndex < 0: "+a);var b=JU.BS.wordIndex(a);if(b>=this.wordsInUse)return-1;for(a=this.words[b]&-1<<a;;){if(0!=a)return 32*
b+Integer.numberOfTrailingZeros(a);if(++b==this.wordsInUse)return-1;a=this.words[b]}},"~N");c(c$,"nextClearBit",function(a){if(0>a)throw new IndexOutOfBoundsException("fromIndex < 0: "+a);var b=JU.BS.wordIndex(a);if(b>=this.wordsInUse)return a;for(a=~this.words[b]&-1<<a;;){if(0!=a)return 32*b+Integer.numberOfTrailingZeros(a);if(++b==this.wordsInUse)return 32*this.wordsInUse;a=~this.words[b]}},"~N");c(c$,"length",function(){return 0==this.wordsInUse?0:32*(this.wordsInUse-1)+(32-Integer.numberOfLeadingZeros(this.words[this.wordsInUse-
1]))});c(c$,"isEmpty",function(){return 0==this.wordsInUse});c(c$,"intersects",function(a){for(var b=Math.min(this.wordsInUse,a.wordsInUse)-1;0<=b;b--)if(0!=(this.words[b]&a.words[b]))return!0;return!1},"JU.BS");c(c$,"cardinality",function(){for(var a=0,b=0;b<this.wordsInUse;b++)a+=Integer.bitCount(this.words[b]);return a});c(c$,"and",function(a){if(this!==a){for(;this.wordsInUse>a.wordsInUse;)this.words[--this.wordsInUse]=0;for(var b=0;b<this.wordsInUse;b++)this.words[b]&=a.words[b];this.recalculateWordsInUse()}},
"JU.BS");c(c$,"or",function(a){if(this!==a){var b=Math.min(this.wordsInUse,a.wordsInUse);this.wordsInUse<a.wordsInUse&&(this.ensureCapacity(a.wordsInUse),this.wordsInUse=a.wordsInUse);for(var d=0;d<b;d++)this.words[d]|=a.words[d];b<a.wordsInUse&&System.arraycopy(a.words,b,this.words,b,this.wordsInUse-b)}},"JU.BS");c(c$,"xor",function(a){var b=Math.min(this.wordsInUse,a.wordsInUse);this.wordsInUse<a.wordsInUse&&(this.ensureCapacity(a.wordsInUse),this.wordsInUse=a.wordsInUse);for(var d=0;d<b;d++)this.words[d]^=
a.words[d];b<a.wordsInUse&&System.arraycopy(a.words,b,this.words,b,a.wordsInUse-b);this.recalculateWordsInUse()},"JU.BS");c(c$,"andNot",function(a){for(var b=Math.min(this.wordsInUse,a.wordsInUse)-1;0<=b;b--)this.words[b]&=~a.words[b];this.recalculateWordsInUse()},"JU.BS");e(c$,"hashCode",function(){for(var a=1234,b=this.wordsInUse;0<=--b;)a^=this.words[b]*(b+1);return a>>32^a});c(c$,"size",function(){return 32*this.words.length});e(c$,"equals",function(a){if(!y(a,JU.BS))return!1;if(this===a)return!0;
if(this.wordsInUse!=a.wordsInUse)return!1;for(var b=0;b<this.wordsInUse;b++)if(this.words[b]!=a.words[b])return!1;return!0},"~O");e(c$,"clone",function(){!this.sizeIsSticky&&this.wordsInUse!=this.words.length&&this.setLength(this.wordsInUse);return JU.BS.copy(this)});c(c$,"setLength",function(a){var b=N(a,0);System.arraycopy(this.words,0,b,0,Math.min(this.wordsInUse,a));this.words=b},"~N");e(c$,"toString",function(){var a=128<this.wordsInUse?this.cardinality():32*this.wordsInUse,a=JU.SB.newN(6*a+
2);a.appendC("[");var b=this.nextSetBit(0);if(-1!=b){a.appendI(b);for(b=this.nextSetBit(b+1);0<=b;b=this.nextSetBit(b+1)){var d=this.nextClearBit(b);do a.append(", ").appendI(b);while(++b<d)}}a.appendC("]");return a.toString()});c$.copy=c(c$,"copy",function(a){var b=null,b=Ja(a),d=a.wordsInUse;0==d?b.words=JU.BS.emptyBitmap:(b.words=N(d,0),System.arraycopy(a.words,0,b.words,0,d));return b},"JU.BS");c(c$,"cardinalityN",function(a){for(var b=this.cardinality(),d=this.length();--d>=a;)this.get(d)&&b--;
return b},"~N");e(c$,"toJSON",function(){return this.toString()});H(c$,"ADDRESS_BITS_PER_WORD",5,"BITS_PER_WORD",32,"WORD_MASK",4294967295,"emptyBitmap",N(0,0))}),p("JU"),q(["java.util.Hashtable"],"JU.CU",["JU.P3","$.PT"],function(){c$=F(JU,"CU");c$.toRGBHexString=c(c$,"toRGBHexString",function(a){var d=a.getRGB();if(0==d)return"000000";a="00"+Integer.toHexString(d>>16&255);a=a.substring(a.length-2);var c="00"+Integer.toHexString(d>>8&255),c=c.substring(c.length-2),d="00"+Integer.toHexString(d&255),
d=d.substring(d.length-2);return a+c+d},"javajs.api.GenericColor");c$.toCSSString=c(c$,"toCSSString",function(a){var d=a.getOpacity255();if(255==d)return"#"+JU.CU.toRGBHexString(a);a=a.getRGB();return"rgba("+(a>>16&255)+","+(a>>8&255)+","+(a&255)+","+d/255+")"},"javajs.api.GenericColor");c$.getArgbFromString=c(c$,"getArgbFromString",function(a){var d=0;if(null==a||0==(d=a.length))return 0;if("["==a.charAt(0)&&"]"==a.charAt(d-1)){var c;if(0<=a.indexOf(",")){c=JU.PT.split(a.substring(1,a.length-1),
",");if(3!=c.length)return 0;a=JU.PT.parseFloat(c[0]);d=JU.PT.parseFloat(c[1]);c=JU.PT.parseFloat(c[2]);return JU.CU.colorTriadToFFRGB(a,d,c)}switch(d){case 9:c="x";break;case 10:c="0x";break;default:return 0}if(1!=a.indexOf(c))return 0;a="#"+a.substring(d-7,d-1);d=7}if(7==d&&"#"==a.charAt(0))try{return JU.PT.parseIntRadix(a.substring(1,7),16)|4278190080}catch(f){if(C(f,Exception))return 0;throw f;}a=JU.CU.mapJavaScriptColors.get(a.toLowerCase());return null==a?0:a.intValue()},"~S");c$.colorTriadToFFRGB=
c(c$,"colorTriadToFFRGB",function(a,d,c){1>=a&&(1>=d&&1>=c)&&(0<a&&(a=256*a-1),0<d&&(d=256*d-1),0<c&&(c=256*c-1));return JU.CU.rgb(Y(a),Y(d),Y(c))},"~N,~N,~N");c$.rgb=c(c$,"rgb",function(a,d,c){return 4278190080|a<<16|d<<8|c},"~N,~N,~N");c$.colorPtFromString=c(c$,"colorPtFromString",function(a,d){return JU.CU.toRGBpt(JU.CU.getArgbFromString(a),d)},"~S,JU.P3");c$.colorPtFromInt2=c(c$,"colorPtFromInt2",function(a){return JU.P3.new3(a>>16&255,a>>8&255,a&255)},"~N");c$.colorPtToFFRGB=c(c$,"colorPtToFFRGB",
function(a){return JU.CU.colorTriadToFFRGB(a.x,a.y,a.z)},"JU.T3");c$.toRGBpt=c(c$,"toRGBpt",function(a,d){d.x=a>>16&255;d.y=a>>8&255;d.z=a&255;return d},"~N,JU.P3");c$.toRGB3f=c(c$,"toRGB3f",function(a,d){d[0]=(a>>16&255)/255;d[1]=(a>>8&255)/255;d[2]=(a&255)/255},"~N,~A");c$.toFFGGGfromRGB=c(c$,"toFFGGGfromRGB",function(a){a=r((2989*(a>>16&255)+5870*(a>>8&255)+1140*(a&255)+5E3)/1E4)&16777215;return JU.CU.rgb(a,a,a)},"~N");H(c$,"colorNames","black pewhite pecyan pepurple pegreen peblue peviolet pebrown pepink peyellow pedarkgreen peorange pelightblue pedarkcyan pedarkgray aliceblue antiquewhite aqua aquamarine azure beige bisque blanchedalmond blue blueviolet brown burlywood cadetblue chartreuse chocolate coral cornflowerblue cornsilk crimson cyan darkblue darkcyan darkgoldenrod darkgray darkgreen darkkhaki darkmagenta darkolivegreen darkorange darkorchid darkred darksalmon darkseagreen darkslateblue darkslategray darkturquoise darkviolet deeppink deepskyblue dimgray dodgerblue firebrick floralwhite forestgreen fuchsia gainsboro ghostwhite gold goldenrod gray green greenyellow honeydew hotpink indianred indigo ivory khaki lavender lavenderblush lawngreen lemonchiffon lightblue lightcoral lightcyan lightgoldenrodyellow lightgreen lightgrey lightpink lightsalmon lightseagreen lightskyblue lightslategray lightsteelblue lightyellow lime limegreen linen magenta maroon mediumaquamarine mediumblue mediumorchid mediumpurple mediumseagreen mediumslateblue mediumspringgreen mediumturquoise mediumvioletred midnightblue mintcream mistyrose moccasin navajowhite navy oldlace olive olivedrab orange orangered orchid palegoldenrod palegreen paleturquoise palevioletred papayawhip peachpuff peru pink plum powderblue purple red rosybrown royalblue saddlebrown salmon sandybrown seagreen seashell sienna silver skyblue slateblue slategray snow springgreen steelblue tan teal thistle tomato turquoise violet wheat white whitesmoke yellow yellowgreen bluetint greenblue greentint grey pinktint redorange yellowtint".split(" "),
"colorArgbs",[4278190080,4294967295,4278255615,4291830015,4278255360,4284506367,4294934720,4288946216,4294957272,4294967040,4278239232,4294946816,4289769727,4278231200,4284506208,4293982463,4294634455,4278255615,4286578644,4293984255,4294309340,4294960324,4294962125,4278190335,4287245282,4289014314,4292786311,4284456608,4286578432,4291979550,4294934352,4284782061,4294965468,4292613180,4278255615,4278190219,4278225803,4290283019,4289309097,4278215680,4290623339,4287299723,4283788079,4294937600,4288230092,
4287299584,4293498490,4287609999,4282924427,4281290575,4278243025,4287889619,4294907027,4278239231,4285098345,4280193279,4289864226,4294966E3,4280453922,4294902015,4292664540,4294506751,4294956800,4292519200,4286611584,4278222848,4289593135,4293984240,4294928820,4291648604,4283105410,4294967280,4293977740,4293322490,4294963445,4286381056,4294965965,4289583334,4293951616,4292935679,4294638290,4287688336,4292072403,4294948545,4294942842,4280332970,4287090426,4286023833,4289774814,4294967264,4278255360,
4281519410,4294635750,4294902015,4286578688,4284927402,4278190285,4290401747,4287852763,4282168177,4286277870,4278254234,4282962380,4291237253,4279834992,4294311930,4294960353,4294960309,4294958765,4278190208,4294833638,4286611456,4285238819,4294944E3,4294919424,4292505814,4293847210,4288215960,4289720046,4292571283,4294963157,4294957753,4291659071,4294951115,4292714717,4289781990,4286578816,4294901760,4290547599,4282477025,4287317267,4294606962,4294222944,4281240407,4294964718,4288696877,4290822336,
4287090411,4285160141,4285563024,4294966010,4278255487,4282811060,4291998860,4278222976,4292394968,4294927175,4282441936,4293821166,4294303411,4294967295,4294309365,4294967040,4288335154,4289714175,4281240407,4288217011,4286611584,4294945723,4294919424,4294375029]);c$.mapJavaScriptColors=c$.prototype.mapJavaScriptColors=new java.util.Hashtable;for(var a=JU.CU.colorNames.length;0<=--a;)JU.CU.mapJavaScriptColors.put(JU.CU.colorNames[a],Integer.$valueOf(JU.CU.colorArgbs[a]))}),p("JU"),q(["java.lang.Boolean"],
"JU.DF",["java.lang.Double","$.Float","JU.PT","$.SB"],function(){c$=F(JU,"DF");c$.setUseNumberLocalization=c(c$,"setUseNumberLocalization",function(a){JU.DF.useNumberLocalization[0]=a?Boolean.TRUE:Boolean.FALSE},"~B");c$.formatDecimalDbl=c(c$,"formatDecimalDbl",function(a,b){return 2147483647==b||-Infinity==a||Infinity==a||Double.isNaN(a)?""+a:JU.DF.formatDecimal(a,b)},"~N,~N");c$.formatDecimal=c(c$,"formatDecimal",function(a,b){if(2147483647==b||-Infinity==a||Infinity==a||Float.isNaN(a))return""+
a;var d;if(0>b){b=-b;b>JU.DF.formattingStrings.length&&(b=JU.DF.formattingStrings.length);if(0==a)return JU.DF.formattingStrings[b]+"E+0";var c;1>Math.abs(a)?(d=10,c=1E-10*a):(d=-10,c=1E10*a);c=(""+c).toUpperCase();var f=c.indexOf("E");d=JU.PT.parseInt(c.substring(f+1))+d;return 0>f?""+a:JU.DF.formatDecimal(JU.PT.parseFloat(c.substring(0,f)),b-1)+"E"+(0<=d?"+":"")+d}b>=JU.DF.formattingStrings.length&&(b=JU.DF.formattingStrings.length-1);c=(""+a).toUpperCase();var g=c.startsWith("-");g&&(c=c.substring(1));
d=c.indexOf(".");if(0>d)return c+JU.DF.formattingStrings[b].substring(1);f=c.indexOf("E-");0<f&&(d=JU.PT.parseInt(c.substring(f+1)),c="0."+"0000000000000000000000000000000000000000".substring(0,-d-1)+c.substring(0,1)+c.substring(2,f),d=1);f=c.indexOf("E");0<f&&(d=JU.PT.parseInt(c.substring(f+1)),c=c.substring(0,1)+c.substring(2,f)+"0000000000000000000000000000000000000000",c=c.substring(0,d+1)+"."+c.substring(d+1),d=c.indexOf("."));var e=c.length,f=b+d+1;if(f<e&&"5"<=c.charAt(f))return JU.DF.formatDecimal(a+
(g?-1:1)*JU.DF.formatAdds[b],b);for(var h=JU.SB.newS(c.substring(0,0==b?d:++d)),f=0;f<b;f++,d++)d<e?h.appendC(c.charAt(d)):h.appendC("0");c=(g?"-":"")+h;return Boolean.TRUE.equals(JU.DF.useNumberLocalization[0])?c:c.$replace(",",".")},"~N,~N");c$.formatDecimalTrimmed=c(c$,"formatDecimalTrimmed",function(a,b){for(var d=JU.DF.formatDecimalDbl(a,b),c=d.length-1;0<=c&&"0"==d.charAt(c);)c--;return d.substring(0,c+1)},"~N,~N");H(c$,"formattingStrings","0 0.0 0.00 0.000 0.0000 0.00000 0.000000 0.0000000 0.00000000 0.000000000".split(" "),
"zeros","0000000000000000000000000000000000000000","formatAdds",[0.5,0.05,0.005,5E-4,5E-5,5E-6,5E-7,5E-8,5E-9,5E-10]);c$.useNumberLocalization=c$.prototype.useNumberLocalization=[Boolean.TRUE]}),p("JU"),q(["java.lang.Enum"],"JU.Encoding",null,function(){c$=F(JU,"Encoding",Enum);n(c$,"NONE",0,[]);n(c$,"UTF8",1,[]);n(c$,"UTF_16BE",2,[]);n(c$,"UTF_16LE",3,[]);n(c$,"UTF_32BE",4,[]);n(c$,"UTF_32LE",5,[])}),p("JU"),q(["java.util.ArrayList"],"JU.List",null,function(){c$=F(JU,"List",java.util.ArrayList);
c(c$,"addLast",function(a){return this.add1(a)},"~O");c(c$,"removeObj",function(a){return this.removeObject(a)},"~O")}),p("JU"),q(null,"JU.M3",["java.lang.ArrayIndexOutOfBoundsException","JU.T3"],function(){c$=w(function(){this.m22=this.m21=this.m20=this.m12=this.m11=this.m10=this.m02=this.m01=this.m00=0;u(this,arguments)},JU,"M3",null,java.io.Serializable);z(c$,function(){});c$.newA=c(c$,"newA",function(a){var b=new JU.M3;b.setA(a);return b},"~A");c$.newM=c(c$,"newM",function(a){var b=new JU.M3;
if(null==a)return b.setIdentity(),b;b.m00=a.m00;b.m01=a.m01;b.m02=a.m02;b.m10=a.m10;b.m11=a.m11;b.m12=a.m12;b.m20=a.m20;b.m21=a.m21;b.m22=a.m22;return b},"JU.M3");e(c$,"toString",function(){return"[\n  ["+this.m00+"\t"+this.m01+"\t"+this.m02+"]\n  ["+this.m10+"\t"+this.m11+"\t"+this.m12+"]\n  ["+this.m20+"\t"+this.m21+"\t"+this.m22+"] ]"});c(c$,"setIdentity",function(){this.m00=1;this.m10=this.m02=this.m01=0;this.m11=1;this.m21=this.m20=this.m12=0;this.m22=1});c(c$,"setElement",function(a,b,d){switch(a){case 0:switch(b){case 0:this.m00=
d;return;case 1:this.m01=d;return;case 2:this.m02=d;return}break;case 1:switch(b){case 0:this.m10=d;return;case 1:this.m11=d;return;case 2:this.m12=d;return}break;case 2:switch(b){case 0:this.m20=d;return;case 1:this.m21=d;return;case 2:this.m22=d;return}}throw new ArrayIndexOutOfBoundsException("matrix column/row out of bounds");},"~N,~N,~N");c(c$,"getElement",function(a,b){switch(a){case 0:switch(b){case 0:return this.m00;case 1:return this.m01;case 2:return this.m02}break;case 1:switch(b){case 0:return this.m10;
case 1:return this.m11;case 2:return this.m12}break;case 2:switch(b){case 0:return this.m20;case 1:return this.m21;case 2:return this.m22}}throw new ArrayIndexOutOfBoundsException("matrix column/row out of bounds");},"~N,~N");c(c$,"setRow",function(a,b,d,c){if(0==a)this.m00=b,this.m01=d,this.m02=c;else if(1==a)this.m10=b,this.m11=d,this.m12=c;else if(2==a)this.m20=b,this.m21=d,this.m22=c;else throw new ArrayIndexOutOfBoundsException("row must be 0 to 2 and is "+a);},"~N,~N,~N,~N");c(c$,"setRowV",
function(a,b){if(0==a)this.m00=b.x,this.m01=b.y,this.m02=b.z;else if(1==a)this.m10=b.x,this.m11=b.y,this.m12=b.z;else if(2==a)this.m20=b.x,this.m21=b.y,this.m22=b.z;else throw new ArrayIndexOutOfBoundsException("row must be 0 to 2 and is "+a);},"~N,JU.T3");c(c$,"getRow",function(a,b){switch(a){case 0:b[0]=this.m00;b[1]=this.m01;b[2]=this.m02;return;case 1:b[0]=this.m10;b[1]=this.m11;b[2]=this.m12;return;case 2:b[0]=this.m20;b[1]=this.m21;b[2]=this.m22;return}throw new ArrayIndexOutOfBoundsException("row must be 0 to 2 and is "+
a);},"~N,~A");c(c$,"setRowA",function(a,b){if(0==a)this.m00=b[0],this.m01=b[1],this.m02=b[2];else if(1==a)this.m10=b[0],this.m11=b[1],this.m12=b[2];else if(2==a)this.m20=b[0],this.m21=b[1],this.m22=b[2];else throw new ArrayIndexOutOfBoundsException("row must be 0 to 2 and is "+a);},"~N,~A");c(c$,"setColumn",function(a,b,d,c){if(0==a)this.m00=b,this.m10=d,this.m20=c;else if(1==a)this.m01=b,this.m11=d,this.m21=c;else if(2==a)this.m02=b,this.m12=d,this.m22=c;else throw new ArrayIndexOutOfBoundsException("column must be 0 to 2 and is "+
a);},"~N,~N,~N,~N");c(c$,"setColumnV",function(a,b){if(0==a)this.m00=b.x,this.m10=b.y,this.m20=b.z;else if(1==a)this.m01=b.x,this.m11=b.y,this.m21=b.z;else if(2==a)this.m02=b.x,this.m12=b.y,this.m22=b.z;else throw new ArrayIndexOutOfBoundsException("column must be 0 to 2 and is "+a);},"~N,JU.V3");c(c$,"setColumnA",function(a,b){if(0==a)this.m00=b[0],this.m10=b[1],this.m20=b[2];else if(1==a)this.m01=b[0],this.m11=b[1],this.m21=b[2];else if(2==a)this.m02=b[0],this.m12=b[1],this.m22=b[2];else throw new ArrayIndexOutOfBoundsException("column must be 0 to 2 and is "+
a);},"~N,~A");c(c$,"getColumnV",function(a,b){if(0==a)b.x=this.m00,b.y=this.m10,b.z=this.m20;else if(1==a)b.x=this.m01,b.y=this.m11,b.z=this.m21;else if(2==a)b.x=this.m02,b.y=this.m12,b.z=this.m22;else throw new ArrayIndexOutOfBoundsException("column must be 0 to 2 and is "+a);},"~N,JU.V3");c(c$,"getColumn",function(a,b){if(0==a)b[0]=this.m00,b[1]=this.m10,b[2]=this.m20;else if(1==a)b[0]=this.m01,b[1]=this.m11,b[2]=this.m21;else if(2==a)b[0]=this.m02,b[1]=this.m12,b[2]=this.m22;else throw new ArrayIndexOutOfBoundsException("column must be 0 to 2 and is "+
a);},"~N,~A");c(c$,"add",function(a){this.m00+=a.m00;this.m01+=a.m01;this.m02+=a.m02;this.m10+=a.m10;this.m11+=a.m11;this.m12+=a.m12;this.m20+=a.m20;this.m21+=a.m21;this.m22+=a.m22},"JU.M3");c(c$,"sub",function(a){this.m00-=a.m00;this.m01-=a.m01;this.m02-=a.m02;this.m10-=a.m10;this.m11-=a.m11;this.m12-=a.m12;this.m20-=a.m20;this.m21-=a.m21;this.m22-=a.m22},"JU.M3");c(c$,"transpose",function(){var a=this.m01;this.m01=this.m10;this.m10=a;a=this.m02;this.m02=this.m20;this.m20=a;a=this.m12;this.m12=this.m21;
this.m21=a});c(c$,"transposeM",function(a){this.setM(a);this.transpose()},"JU.M3");c(c$,"setAA",function(a){this.setFromAxisAngle(a.x,a.y,a.z,a.angle)},"JU.A4");c(c$,"setFromAxisAngle",function(a,b,d,c){var f=Math.sqrt(a*a+b*b+d*d),f=1/f;a*=f;b*=f;d*=f;var g=Math.cos(c);c=Math.sin(c);f=1-g;this.m00=g+a*a*f;this.m11=g+b*b*f;this.m22=g+d*d*f;var g=a*b*f,e=d*c;this.m01=g-e;this.m10=g+e;g=a*d*f;e=b*c;this.m02=g+e;this.m20=g-e;g=b*d*f;e=a*c;this.m12=g-e;this.m21=g+e},"~N,~N,~N,~N");c(c$,"setM",function(a){this.m00=
a.m00;this.m01=a.m01;this.m02=a.m02;this.m10=a.m10;this.m11=a.m11;this.m12=a.m12;this.m20=a.m20;this.m21=a.m21;this.m22=a.m22},"JU.M3");c(c$,"setA",function(a){this.m00=a[0];this.m01=a[1];this.m02=a[2];this.m10=a[3];this.m11=a[4];this.m12=a[5];this.m20=a[6];this.m21=a[7];this.m22=a[8]},"~A");c(c$,"invertM",function(a){this.setM(a);this.invert()},"JU.M3");c(c$,"invert",function(){var a=this.determinant();0!=a&&(a=1/a,this.set(this.m11*this.m22-this.m12*this.m21,this.m02*this.m21-this.m01*this.m22,
this.m01*this.m12-this.m02*this.m11,this.m12*this.m20-this.m10*this.m22,this.m00*this.m22-this.m02*this.m20,this.m02*this.m10-this.m00*this.m12,this.m10*this.m21-this.m11*this.m20,this.m01*this.m20-this.m00*this.m21,this.m00*this.m11-this.m01*this.m10),this.mulf(a))});c(c$,"determinant",function(){return this.m00*(this.m11*this.m22-this.m21*this.m12)-this.m01*(this.m10*this.m22-this.m20*this.m12)+this.m02*(this.m10*this.m21-this.m20*this.m11)});c(c$,"setScale",function(a){this.m00=a;this.m10=this.m02=
this.m01=0;this.m11=a;this.m21=this.m20=this.m12=0;this.m22=a},"~N");c(c$,"rotX",function(a){var b=Math.cos(a);a=Math.sin(a);this.m00=1;this.m10=this.m02=this.m01=0;this.m11=b;this.m12=-a;this.m20=0;this.m21=a;this.m22=b},"~N");c(c$,"rotY",function(a){var b=Math.cos(a);a=Math.sin(a);this.m00=b;this.m01=0;this.m02=a;this.m10=0;this.m11=1;this.m12=0;this.m20=-a;this.m21=0;this.m22=b},"~N");c(c$,"rotZ",function(a){var b=Math.cos(a);a=Math.sin(a);this.m00=b;this.m01=-a;this.m02=0;this.m10=a;this.m11=
b;this.m21=this.m20=this.m12=0;this.m22=1},"~N");c(c$,"mulf",function(a){this.m00*=a;this.m01*=a;this.m02*=a;this.m10*=a;this.m11*=a;this.m12*=a;this.m20*=a;this.m21*=a;this.m22*=a},"~N");c(c$,"mul",function(a){this.mul2(this,a)},"JU.M3");c(c$,"mul2",function(a,b){this.set(a.m00*b.m00+a.m01*b.m10+a.m02*b.m20,a.m00*b.m01+a.m01*b.m11+a.m02*b.m21,a.m00*b.m02+a.m01*b.m12+a.m02*b.m22,a.m10*b.m00+a.m11*b.m10+a.m12*b.m20,a.m10*b.m01+a.m11*b.m11+a.m12*b.m21,a.m10*b.m02+a.m11*b.m12+a.m12*b.m22,a.m20*b.m00+
a.m21*b.m10+a.m22*b.m20,a.m20*b.m01+a.m21*b.m11+a.m22*b.m21,a.m20*b.m02+a.m21*b.m12+a.m22*b.m22)},"JU.M3,JU.M3");e(c$,"equals",function(a){return!y(a,JU.M3)?!1:this.m00==a.m00&&this.m01==a.m01&&this.m02==a.m02&&this.m10==a.m10&&this.m11==a.m11&&this.m12==a.m12&&this.m20==a.m20&&this.m21==a.m21&&this.m22==a.m22},"~O");e(c$,"hashCode",function(){return JU.T3.floatToIntBits0(this.m00)^JU.T3.floatToIntBits0(this.m01)^JU.T3.floatToIntBits0(this.m02)^JU.T3.floatToIntBits0(this.m10)^JU.T3.floatToIntBits0(this.m11)^
JU.T3.floatToIntBits0(this.m12)^JU.T3.floatToIntBits0(this.m20)^JU.T3.floatToIntBits0(this.m21)^JU.T3.floatToIntBits0(this.m22)});c(c$,"setZero",function(){this.m22=this.m21=this.m20=this.m12=this.m11=this.m10=this.m02=this.m01=this.m00=0});c(c$,"transform",function(a){this.transform2(a,a)},"JU.T3");c(c$,"transform2",function(a,b){b.set(this.m00*a.x+this.m01*a.y+this.m02*a.z,this.m10*a.x+this.m11*a.y+this.m12*a.z,this.m20*a.x+this.m21*a.y+this.m22*a.z)},"JU.T3,JU.T3");c(c$,"transformAdd",function(a,
b,d){d.x+=b*(this.m00*a.x+this.m01*a.y+this.m02*a.z);d.y+=b*(this.m10*a.x+this.m11*a.y+this.m12*a.z);d.z+=b*(this.m20*a.x+this.m21*a.y+this.m22*a.z)},"JU.T3,~N,JU.T3");c(c$,"toArrayD",function(){return[[this.m00,this.m01,this.m02],[this.m10,this.m11,this.m12],[this.m20,this.m21,this.m22]]});c(c$,"set",function(a,b,d,c,f,g,e,h,k){this.m00=a;this.m01=b;this.m02=d;this.m10=c;this.m11=f;this.m12=g;this.m20=e;this.m21=h;this.m22=k},"~N,~N,~N,~N,~N,~N,~N,~N,~N")}),p("JU"),q(null,"JU.M4",["java.lang.ArrayIndexOutOfBoundsException",
"JU.T3"],function(){c$=w(function(){this.m33=this.m32=this.m31=this.m30=this.m23=this.m22=this.m21=this.m20=this.m13=this.m12=this.m11=this.m10=this.m03=this.m02=this.m01=this.m00=0;u(this,arguments)},JU,"M4",null,java.io.Serializable);c$.newA=c(c$,"newA",function(a){var b=new JU.M4;b.m00=a[0];b.m01=a[1];b.m02=a[2];b.m03=a[3];b.m10=a[4];b.m11=a[5];b.m12=a[6];b.m13=a[7];b.m20=a[8];b.m21=a[9];b.m22=a[10];b.m23=a[11];b.m30=a[12];b.m31=a[13];b.m32=a[14];b.m33=a[15];return b},"~A");c$.newM=c(c$,"newM",
function(a){var b=new JU.M4;if(null==a)return b.setIdentity(),b;b.m00=a.m00;b.m01=a.m01;b.m02=a.m02;b.m03=a.m03;b.m10=a.m10;b.m11=a.m11;b.m12=a.m12;b.m13=a.m13;b.m20=a.m20;b.m21=a.m21;b.m22=a.m22;b.m23=a.m23;b.m30=a.m30;b.m31=a.m31;b.m32=a.m32;b.m33=a.m33;return b},"JU.M4");c$.newMV=c(c$,"newMV",function(a,b){var d=new JU.M4;d.setMV(a,b);return d},"JU.M3,JU.V3");c(c$,"setMV",function(a,b){this.setM3(a);this.setTranslation(b)},"JU.M3,JU.V3");c(c$,"setAA",function(a){this.setFromAxisAngle(a.x,a.y,a.z,
a.angle)},"JU.A4");c(c$,"setFromAxisAngle",function(a,b,d,c){var f=Math.sqrt(a*a+b*b+d*d),f=1/f;a*=f;b*=f;d*=f;var g=Math.cos(c);c=Math.sin(c);f=1-g;this.m00=g+a*a*f;this.m11=g+b*b*f;this.m22=g+d*d*f;var g=a*b*f,e=d*c;this.m01=g-e;this.m10=g+e;g=a*d*f;e=b*c;this.m02=g+e;this.m20=g-e;g=b*d*f;e=a*c;this.m12=g-e;this.m21=g+e},"~N,~N,~N,~N");c(c$,"setM",function(a){this.m00=a.m00;this.m01=a.m01;this.m02=a.m02;this.m03=a.m03;this.m10=a.m10;this.m11=a.m11;this.m12=a.m12;this.m13=a.m13;this.m20=a.m20;this.m21=
a.m21;this.m22=a.m22;this.m23=a.m23;this.m30=a.m30;this.m31=a.m31;this.m32=a.m32;this.m33=a.m33},"JU.M4");e(c$,"toString",function(){return"[\n  ["+this.m00+"\t"+this.m01+"\t"+this.m02+"\t"+this.m03+"]\n  ["+this.m10+"\t"+this.m11+"\t"+this.m12+"\t"+this.m13+"]\n  ["+this.m20+"\t"+this.m21+"\t"+this.m22+"\t"+this.m23+"]\n  ["+this.m30+"\t"+this.m31+"\t"+this.m32+"\t"+this.m33+"] ]"});c(c$,"setIdentity",function(){this.m00=1;this.m10=this.m03=this.m02=this.m01=0;this.m11=1;this.m21=this.m20=this.m13=
this.m12=0;this.m22=1;this.m32=this.m31=this.m30=this.m23=0;this.m33=1});c(c$,"setElement",function(a,b,d){if(0==a)if(0==b)this.m00=d;else if(1==b)this.m01=d;else if(2==b)this.m02=d;else if(3==b)this.m03=d;else throw new ArrayIndexOutOfBoundsException("column must be 0 to 3 and is "+b);else if(1==a)if(0==b)this.m10=d;else if(1==b)this.m11=d;else if(2==b)this.m12=d;else if(3==b)this.m13=d;else throw new ArrayIndexOutOfBoundsException("column must be 0 to 3 and is "+b);else if(2==a)if(0==b)this.m20=
d;else if(1==b)this.m21=d;else if(2==b)this.m22=d;else if(3==b)this.m23=d;else throw new ArrayIndexOutOfBoundsException("column must be 0 to 3 and is "+b);else if(3==a)if(0==b)this.m30=d;else if(1==b)this.m31=d;else if(2==b)this.m32=d;else if(3==b)this.m33=d;else throw new ArrayIndexOutOfBoundsException("column must be 0 to 3 and is "+b);else throw new ArrayIndexOutOfBoundsException("row must be 0 to 2 and is "+a);},"~N,~N,~N");c(c$,"getElement",function(a,b){switch(a){case 0:switch(b){case 0:return this.m00;
case 1:return this.m01;case 2:return this.m02;case 3:return this.m03}break;case 1:switch(b){case 0:return this.m10;case 1:return this.m11;case 2:return this.m12;case 3:return this.m13}break;case 2:switch(b){case 0:return this.m20;case 1:return this.m21;case 2:return this.m22;case 3:return this.m23}break;case 3:switch(b){case 0:return this.m30;case 1:return this.m31;case 2:return this.m32;case 3:return this.m33}}throw new ArrayIndexOutOfBoundsException("matrix column/row out of bounds");},"~N,~N");
c(c$,"get",function(a){a.x=this.m03;a.y=this.m13;a.z=this.m23},"JU.V3");c(c$,"getRotationScale",function(a){a.m00=this.m00;a.m01=this.m01;a.m02=this.m02;a.m10=this.m10;a.m11=this.m11;a.m12=this.m12;a.m20=this.m20;a.m21=this.m21;a.m22=this.m22},"JU.M3");c(c$,"setRotationScale",function(a){this.m00=a.m00;this.m01=a.m01;this.m02=a.m02;this.m10=a.m10;this.m11=a.m11;this.m12=a.m12;this.m20=a.m20;this.m21=a.m21;this.m22=a.m22},"JU.M3");c(c$,"setRow",function(a,b){if(0==a)this.m00=b[0],this.m01=b[1],this.m02=
b[2],this.m03=b[3];else if(1==a)this.m10=b[0],this.m11=b[1],this.m12=b[2],this.m13=b[3];else if(2==a)this.m20=b[0],this.m21=b[1],this.m22=b[2],this.m23=b[3];else if(3==a)this.m30=b[0],this.m31=b[1],this.m32=b[2],this.m33=b[3];else throw new ArrayIndexOutOfBoundsException("row must be 0 to 3 and is "+a);},"~N,~A");c(c$,"getRow",function(a,b){if(0==a)b[0]=this.m00,b[1]=this.m01,b[2]=this.m02,b[3]=this.m03;else if(1==a)b[0]=this.m10,b[1]=this.m11,b[2]=this.m12,b[3]=this.m13;else if(2==a)b[0]=this.m20,
b[1]=this.m21,b[2]=this.m22,b[3]=this.m23;else if(3==a)b[0]=this.m30,b[1]=this.m31,b[2]=this.m32,b[3]=this.m33;else throw new ArrayIndexOutOfBoundsException("row must be 0 to 3 and is "+a);},"~N,~A");c(c$,"setColumn4",function(a,b,d,c,f){if(0==a)this.m00=b,this.m10=d,this.m20=c,this.m30=f;else if(1==a)this.m01=b,this.m11=d,this.m21=c,this.m31=f;else if(2==a)this.m02=b,this.m12=d,this.m22=c,this.m32=f;else if(3==a)this.m03=b,this.m13=d,this.m23=c,this.m33=f;else throw new ArrayIndexOutOfBoundsException("column must be 0 to 3 and is "+
a);},"~N,~N,~N,~N,~N");c(c$,"setColumn",function(a,b){if(0==a)this.m00=b[0],this.m10=b[1],this.m20=b[2],this.m30=b[3];else if(1==a)this.m01=b[0],this.m11=b[1],this.m21=b[2],this.m31=b[3];else if(2==a)this.m02=b[0],this.m12=b[1],this.m22=b[2],this.m32=b[3];else if(3==a)this.m03=b[0],this.m13=b[1],this.m23=b[2],this.m33=b[3];else throw new ArrayIndexOutOfBoundsException("column must be 0 to 3 and is "+a);},"~N,~A");c(c$,"getColumn",function(a,b){if(0==a)b[0]=this.m00,b[1]=this.m10,b[2]=this.m20,b[3]=
this.m30;else if(1==a)b[0]=this.m01,b[1]=this.m11,b[2]=this.m21,b[3]=this.m31;else if(2==a)b[0]=this.m02,b[1]=this.m12,b[2]=this.m22,b[3]=this.m32;else if(3==a)b[0]=this.m03,b[1]=this.m13,b[2]=this.m23,b[3]=this.m33;else throw new ArrayIndexOutOfBoundsException("column must be 0 to 3 and is "+a);},"~N,~A");c(c$,"sub",function(a){this.m00-=a.m00;this.m01-=a.m01;this.m02-=a.m02;this.m03-=a.m03;this.m10-=a.m10;this.m11-=a.m11;this.m12-=a.m12;this.m13-=a.m13;this.m20-=a.m20;this.m21-=a.m21;this.m22-=
a.m22;this.m23-=a.m23;this.m30-=a.m30;this.m31-=a.m31;this.m32-=a.m32;this.m33-=a.m33},"JU.M4");c(c$,"transpose",function(){var a=this.m01;this.m01=this.m10;this.m10=a;a=this.m02;this.m02=this.m20;this.m20=a;a=this.m03;this.m03=this.m30;this.m30=a;a=this.m12;this.m12=this.m21;this.m21=a;a=this.m13;this.m13=this.m31;this.m31=a;a=this.m23;this.m23=this.m32;this.m32=a});c(c$,"invertM",function(a){this.setM(a);this.invert()},"JU.M4");c(c$,"invert",function(){var a=this.determinant();0!=a&&(a=1/a,this.set(this.m11*
(this.m22*this.m33-this.m23*this.m32)+this.m12*(this.m23*this.m31-this.m21*this.m33)+this.m13*(this.m21*this.m32-this.m22*this.m31),this.m21*(this.m02*this.m33-this.m03*this.m32)+this.m22*(this.m03*this.m31-this.m01*this.m33)+this.m23*(this.m01*this.m32-this.m02*this.m31),this.m31*(this.m02*this.m13-this.m03*this.m12)+this.m32*(this.m03*this.m11-this.m01*this.m13)+this.m33*(this.m01*this.m12-this.m02*this.m11),this.m01*(this.m13*this.m22-this.m12*this.m23)+this.m02*(this.m11*this.m23-this.m13*this.m21)+
this.m03*(this.m12*this.m21-this.m11*this.m22),this.m12*(this.m20*this.m33-this.m23*this.m30)+this.m13*(this.m22*this.m30-this.m20*this.m32)+this.m10*(this.m23*this.m32-this.m22*this.m33),this.m22*(this.m00*this.m33-this.m03*this.m30)+this.m23*(this.m02*this.m30-this.m00*this.m32)+this.m20*(this.m03*this.m32-this.m02*this.m33),this.m32*(this.m00*this.m13-this.m03*this.m10)+this.m33*(this.m02*this.m10-this.m00*this.m12)+this.m30*(this.m03*this.m12-this.m02*this.m13),this.m02*(this.m13*this.m20-this.m10*
this.m23)+this.m03*(this.m10*this.m22-this.m12*this.m20)+this.m00*(this.m12*this.m23-this.m13*this.m22),this.m13*(this.m20*this.m31-this.m21*this.m30)+this.m10*(this.m21*this.m33-this.m23*this.m31)+this.m11*(this.m23*this.m30-this.m20*this.m33),this.m23*(this.m00*this.m31-this.m01*this.m30)+this.m20*(this.m01*this.m33-this.m03*this.m31)+this.m21*(this.m03*this.m30-this.m00*this.m33),this.m33*(this.m00*this.m11-this.m01*this.m10)+this.m30*(this.m01*this.m13-this.m03*this.m11)+this.m31*(this.m03*this.m10-
this.m00*this.m13),this.m03*(this.m11*this.m20-this.m10*this.m21)+this.m00*(this.m13*this.m21-this.m11*this.m23)+this.m01*(this.m10*this.m23-this.m13*this.m20),this.m10*(this.m22*this.m31-this.m21*this.m32)+this.m11*(this.m20*this.m32-this.m22*this.m30)+this.m12*(this.m21*this.m30-this.m20*this.m31),this.m20*(this.m02*this.m31-this.m01*this.m32)+this.m21*(this.m00*this.m32-this.m02*this.m30)+this.m22*(this.m01*this.m30-this.m00*this.m31),this.m30*(this.m02*this.m11-this.m01*this.m12)+this.m31*(this.m00*
this.m12-this.m02*this.m10)+this.m32*(this.m01*this.m10-this.m00*this.m11),this.m00*(this.m11*this.m22-this.m12*this.m21)+this.m01*(this.m12*this.m20-this.m10*this.m22)+this.m02*(this.m10*this.m21-this.m11*this.m20)),this.mul(a))});c(c$,"determinant",function(){return(this.m00*this.m11-this.m01*this.m10)*(this.m22*this.m33-this.m23*this.m32)-(this.m00*this.m12-this.m02*this.m10)*(this.m21*this.m33-this.m23*this.m31)+(this.m00*this.m13-this.m03*this.m10)*(this.m21*this.m32-this.m22*this.m31)+(this.m01*
this.m12-this.m02*this.m11)*(this.m20*this.m33-this.m23*this.m30)-(this.m01*this.m13-this.m03*this.m11)*(this.m20*this.m32-this.m22*this.m30)+(this.m02*this.m13-this.m03*this.m12)*(this.m20*this.m31-this.m21*this.m30)});c(c$,"setM3",function(a){this.m00=a.m00;this.m01=a.m01;this.m02=a.m02;this.m03=0;this.m10=a.m10;this.m11=a.m11;this.m12=a.m12;this.m13=0;this.m20=a.m20;this.m21=a.m21;this.m22=a.m22;this.m32=this.m31=this.m30=this.m23=0;this.m33=1},"JU.M3");c(c$,"setA",function(a,b){this.m00=a[b++];
this.m01=a[b++];this.m02=a[b++];this.m03=a[b++];this.m10=a[b++];this.m11=a[b++];this.m12=a[b++];this.m13=a[b++];this.m20=a[b++];this.m21=a[b++];this.m22=a[b++];this.m23=a[b++];this.m30=a[b++];this.m31=a[b++];this.m32=a[b++];this.m33=a[b++]},"~A,~N");c(c$,"toA",function(a){a[0]=this.m00;a[1]=this.m01;a[2]=this.m02;a[3]=this.m03;a[4]=this.m10;a[5]=this.m11;a[6]=this.m12;a[7]=this.m13;a[8]=this.m20;a[9]=this.m21;a[10]=this.m22;a[11]=this.m23;a[12]=this.m30;a[13]=this.m31;a[14]=this.m32;a[15]=this.m33},
"~A");c(c$,"setTranslation",function(a){this.m03=a.x;this.m13=a.y;this.m23=a.z},"JU.V3");c(c$,"rotX",function(a){var b=Math.cos(a);a=Math.sin(a);this.m00=1;this.m10=this.m03=this.m02=this.m01=0;this.m11=b;this.m12=-a;this.m20=this.m13=0;this.m21=a;this.m22=b;this.m32=this.m31=this.m30=this.m23=0;this.m33=1},"~N");c(c$,"rotY",function(a){var b=Math.cos(a);a=Math.sin(a);this.m00=b;this.m01=0;this.m02=a;this.m10=this.m03=0;this.m11=1;this.m13=this.m12=0;this.m20=-a;this.m21=0;this.m22=b;this.m32=this.m31=
this.m30=this.m23=0;this.m33=1},"~N");c(c$,"rotZ",function(a){var b=Math.cos(a);a=Math.sin(a);this.m00=b;this.m01=-a;this.m03=this.m02=0;this.m10=a;this.m11=b;this.m21=this.m20=this.m13=this.m12=0;this.m22=1;this.m32=this.m31=this.m30=this.m23=0;this.m33=1},"~N");c(c$,"mul",function(a){this.m00*=a;this.m01*=a;this.m02*=a;this.m03*=a;this.m10*=a;this.m11*=a;this.m12*=a;this.m13*=a;this.m20*=a;this.m21*=a;this.m22*=a;this.m23*=a;this.m30*=a;this.m31*=a;this.m32*=a;this.m33*=a},"~N");c(c$,"mulM4",function(a){this.mul2(this,
a)},"JU.M4");c(c$,"mul2",function(a,b){this.set(a.m00*b.m00+a.m01*b.m10+a.m02*b.m20+a.m03*b.m30,a.m00*b.m01+a.m01*b.m11+a.m02*b.m21+a.m03*b.m31,a.m00*b.m02+a.m01*b.m12+a.m02*b.m22+a.m03*b.m32,a.m00*b.m03+a.m01*b.m13+a.m02*b.m23+a.m03*b.m33,a.m10*b.m00+a.m11*b.m10+a.m12*b.m20+a.m13*b.m30,a.m10*b.m01+a.m11*b.m11+a.m12*b.m21+a.m13*b.m31,a.m10*b.m02+a.m11*b.m12+a.m12*b.m22+a.m13*b.m32,a.m10*b.m03+a.m11*b.m13+a.m12*b.m23+a.m13*b.m33,a.m20*b.m00+a.m21*b.m10+a.m22*b.m20+a.m23*b.m30,a.m20*b.m01+a.m21*b.m11+
a.m22*b.m21+a.m23*b.m31,a.m20*b.m02+a.m21*b.m12+a.m22*b.m22+a.m23*b.m32,a.m20*b.m03+a.m21*b.m13+a.m22*b.m23+a.m23*b.m33,a.m30*b.m00+a.m31*b.m10+a.m32*b.m20+a.m33*b.m30,a.m30*b.m01+a.m31*b.m11+a.m32*b.m21+a.m33*b.m31,a.m30*b.m02+a.m31*b.m12+a.m32*b.m22+a.m33*b.m32,a.m30*b.m03+a.m31*b.m13+a.m32*b.m23+a.m33*b.m33)},"JU.M4,JU.M4");e(c$,"equals",function(a){return!y(a,JU.M4)?!1:this.m00==a.m00&&this.m01==a.m01&&this.m02==a.m02&&this.m03==a.m03&&this.m10==a.m10&&this.m11==a.m11&&this.m12==a.m12&&this.m13==
a.m13&&this.m20==a.m20&&this.m21==a.m21&&this.m22==a.m22&&this.m23==a.m23&&this.m30==a.m30&&this.m31==a.m31&&this.m32==a.m32&&this.m33==a.m33},"~O");e(c$,"hashCode",function(){return JU.T3.floatToIntBits0(this.m00)^JU.T3.floatToIntBits0(this.m01)^JU.T3.floatToIntBits0(this.m02)^JU.T3.floatToIntBits0(this.m03)^JU.T3.floatToIntBits0(this.m10)^JU.T3.floatToIntBits0(this.m11)^JU.T3.floatToIntBits0(this.m12)^JU.T3.floatToIntBits0(this.m13)^JU.T3.floatToIntBits0(this.m20)^JU.T3.floatToIntBits0(this.m21)^
JU.T3.floatToIntBits0(this.m22)^JU.T3.floatToIntBits0(this.m23)^JU.T3.floatToIntBits0(this.m30)^JU.T3.floatToIntBits0(this.m31)^JU.T3.floatToIntBits0(this.m32)^JU.T3.floatToIntBits0(this.m33)});c(c$,"transformT2",function(a,b){b.set(this.m00*a.x+this.m01*a.y+this.m02*a.z+this.m03*a.w,this.m10*a.x+this.m11*a.y+this.m12*a.z+this.m13*a.w,this.m20*a.x+this.m21*a.y+this.m22*a.z+this.m23*a.w,this.m30*a.x+this.m31*a.y+this.m32*a.z+this.m33*a.w)},"JU.T4,JU.T4");c(c$,"transform4",function(a){this.transformT2(a,
a)},"JU.T4");c(c$,"transform",function(a){this.transform2(a,a)},"JU.T3");c(c$,"rotate",function(a,b){b.set(this.m00*a.x+this.m01*a.y+this.m02*a.z,this.m10*a.x+this.m11*a.y+this.m12*a.z,this.m20*a.x+this.m21*a.y+this.m22*a.z)},"JU.T3,JU.T3");c(c$,"transform2",function(a,b){try{b.set(this.m00*a.x+this.m01*a.y+this.m02*a.z+this.m03,this.m10*a.x+this.m11*a.y+this.m12*a.z+this.m13,this.m20*a.x+this.m21*a.y+this.m22*a.z+this.m23)}catch(d){if(!C(d,NullPointerException))throw d;}},"JU.T3,JU.T3");c(c$,"setZero",
function(){this.m33=this.m32=this.m31=this.m30=this.m23=this.m22=this.m21=this.m20=this.m13=this.m12=this.m11=this.m10=this.m03=this.m02=this.m01=this.m00=0});c(c$,"set",function(a,b,d,c,f,g,e,h,k,s,n,p,E,m,q,r){this.m00=a;this.m01=b;this.m02=d;this.m03=c;this.m10=f;this.m11=g;this.m12=e;this.m13=h;this.m20=k;this.m21=s;this.m22=n;this.m23=p;this.m30=E;this.m31=m;this.m32=q;this.m33=r},"~N,~N,~N,~N,~N,~N,~N,~N,~N,~N,~N,~N,~N,~N,~N,~N")}),p("JU"),q(["java.io.OutputStream"],"JU.OC",["java.io.BufferedWriter",
"$.ByteArrayOutputStream","$.OutputStreamWriter","JU.SB"],function(){c$=w(function(){this.bw=this.fileName=this.bytePoster=null;this.isLocalFile=!1;this.byteCount=0;this.closed=this.isCanceled=!1;this.type=this.sb=this.os=null;u(this,arguments)},JU,"OC",java.io.OutputStream);c(c$,"setParams",function(a,b,d,c){this.bytePoster=a;this.fileName=b;this.os=c;this.isLocalFile=null!=b&&!(b.startsWith("http://")||b.startsWith("https://"));d&&null!=c&&(this.bw=new java.io.BufferedWriter(new java.io.OutputStreamWriter(c)));
return this},"javajs.api.BytePoster,~S,~B,java.io.OutputStream");c(c$,"getFileName",function(){return this.fileName});c(c$,"getByteCount",function(){return this.byteCount});c(c$,"setType",function(a){this.type=a},"~S");c(c$,"getType",function(){return this.type});c(c$,"append",function(a){try{if(null!=this.bw)this.bw.write(a);else if(null==this.os)null==this.sb&&(this.sb=new JU.SB),this.sb.append(a);else{var b=a.getBytes();this.os.write(b,0,b.length);this.byteCount+=b.length;return this}}catch(d){if(!C(d,
java.io.IOException))throw d;}this.byteCount+=a.length;return this},"~S");e(c$,"write",function(a,b,d){null==this.os&&(this.os=new java.io.ByteArrayOutputStream);this.os.write(a,b,d);this.byteCount+=d},"~A,~N,~N");e(c$,"writeByteAsInt",function(a){null==this.os&&(this.os=new java.io.ByteArrayOutputStream);this.os.writeByteAsInt(a);this.byteCount++},"~N");c(c$,"cancel",function(){this.isCanceled=!0;this.closeChannel()});c(c$,"closeChannel",function(){if(this.closed)return null;try{null!=this.bw?(this.bw.flush(),
this.bw.close()):null!=this.os&&(this.os.flush(),this.os.close())}catch(a){if(!C(a,Exception))throw a;}if(this.isCanceled)return this.closed=!0,null;if(null==this.fileName||this.closed)return null==this.sb?null:this.sb.toString();this.closed=!0;var b=null==this.sb?this.toByteArray():this.sb.toString();"function"==typeof this.fileName?this.fileName(b):Jmol._doAjax(this.fileName,null,b);return null});c(c$,"toByteArray",function(){return y(this.os,java.io.ByteArrayOutputStream)?this.os.toByteArray():
null});c(c$,"close",function(){this.closeChannel()});e(c$,"toString",function(){if(null!=this.bw)try{this.bw.flush()}catch(a){if(!C(a,java.io.IOException))throw a;}return null!=this.sb?this.closeChannel():this.byteCount+" bytes"});c(c$,"postByteArray",function(){var a=null==this.sb?this.toByteArray():this.sb.toString().getBytes();return this.bytePoster.postByteArray(this.fileName,a)})}),p("JU"),q(["JU.T3"],"JU.P3",null,function(){c$=F(JU,"P3",JU.T3);c$.newP=c(c$,"newP",function(a){var b=new JU.P3;
b.x=a.x;b.y=a.y;b.z=a.z;return b},"JU.T3");c$.new3=c(c$,"new3",function(a,b,d){var c=new JU.P3;c.x=a;c.y=b;c.z=d;return c},"~N,~N,~N")}),p("JU"),q(["JU.T3i"],"JU.P3i",null,function(){c$=F(JU,"P3i",JU.T3i);c$.new3=c(c$,"new3",function(a,b,d){var c=new JU.P3i;c.x=a;c.y=b;c.z=d;return c},"~N,~N,~N")}),p("JU"),q(["JU.T4"],"JU.P4",null,function(){c$=F(JU,"P4",JU.T4);c$.new4=c(c$,"new4",function(a,b,d,c){var f=new JU.P4;f.set(a,b,d,c);return f},"~N,~N,~N,~N");c$.newPt=c(c$,"newPt",function(a){var b=new JU.P4;
b.set(a.x,a.y,a.z,a.w);return b},"JU.P4");c(c$,"distance",function(a){var b=this.x-a.x,d=this.y-a.y,c=this.z-a.z;a=this.w-a.w;return Math.sqrt(b*b+d*d+c*c+a*a)},"JU.P4")}),p("JU"),q(null,"JU.PT","java.lang.Character $.Double $.Float java.util.Map javajs.api.JSONEncodable JU.A4 $.DF $.List $.M3 $.M4 $.P4 $.SB $.T3".split(" "),function(){c$=F(JU,"PT");c$.parseInt=c(c$,"parseInt",function(a){return JU.PT.parseIntNext(a,[0])},"~S");c$.parseIntNext=c(c$,"parseIntNext",function(a,b){var d=a.length;return 0>
b[0]||b[0]>=d?-2147483648:JU.PT.parseIntChecked(a,d,b)},"~S,~A");c$.parseIntChecked=c(c$,"parseIntChecked",function(a,b,d){var c=!1,f=0,g=d[0];if(0>g)return-2147483648;for(var e;g<b&&JU.PT.isWhiteSpace(a,g);)++g;var h=!1;g<b&&45==a.charCodeAt(g)&&(h=!0,++g);for(;g<b&&48<=(e=a.charCodeAt(g))&&57>=e;)f=10*f+(e-48),c=!0,++g;c?h&&(f=-f):f=-2147483648;d[0]=g;return f},"~S,~N,~A");c$.isWhiteSpace=c(c$,"isWhiteSpace",function(a,b){var d;return 0<=b&&(" "==(d=a.charAt(b))||"\t"==d||"\n"==d)},"~S,~N");c$.parseFloatChecked=
c(c$,"parseFloatChecked",function(a,b,d,c){var f=!1,g=d[0];if(c&&a.indexOf("\n")!=a.lastIndexOf("\n"))return NaN;for(;g<b&&JU.PT.isWhiteSpace(a,g);)++g;var e=!1;g<b&&"-"==a.charAt(g)&&(++g,e=!0);for(var h=0,k=0,s=0;g<b&&48<=(h=a.charCodeAt(g))&&57>=h;)k=10*k+1*(h-48),++g,f=!0;var n=!1,p=0,E=0==k?-1:0;if(46==h)for(n=!0;++g<b&&48<=(h=a.charCodeAt(g))&&57>=h;){f=!0;if(0>E){if(48==h){E--;continue}E=-E}p<JU.PT.decimalScale.length&&(s=10*s+1*(h-48),p++)}f?0<s?(f=s*JU.PT.decimalScale[p-1],f=1<E?E-2<JU.PT.decimalScale.length?
f*JU.PT.decimalScale[E-2]:f*Math.pow(10,1-E):f+k):f=k:f=NaN;k=!1;if(g<b&&(69==h||101==h||68==h)){k=!0;if(++g>=b)return NaN;h=a.charCodeAt(g);if(43==h&&++g>=b)return NaN;d[0]=g;g=JU.PT.parseIntChecked(a,b,d);if(-2147483648==g)return NaN;0<g&&g<=JU.PT.tensScale.length?f*=JU.PT.tensScale[g-1]:0>g&&-g<=JU.PT.decimalScale.length?f*=JU.PT.decimalScale[-g-1]:0!=g&&(f*=Math.pow(10,g))}else d[0]=g;e&&(f=-f);Infinity==f&&(f=3.4028235E38);return!c||(!k||n)&&JU.PT.checkTrailingText(a,d[0],b)?f:NaN},"~S,~N,~A,~B");
c$.checkTrailingText=c(c$,"checkTrailingText",function(a,b,d){for(var c;b<d&&(Character.isWhitespace(c=a.charAt(b))||";"==c);)++b;return b==d},"~S,~N,~N");c$.parseFloatArray=c(c$,"parseFloatArray",function(a){return JU.PT.parseFloatArrayNext(a,N(1,0),null,null,null)},"~S");c$.parseFloatArrayInfested=c(c$,"parseFloatArrayInfested",function(a,b){for(var d=b.length,c=a.length,f=0,g=0,e=0;0<=e&&e<d&&f<c;e++){for(var h;Float.isNaN(h=JU.PT.parseFloat(a[f++]))&&f<c;);Float.isNaN(h)||(b[g=e]=h);if(f==c)break}return g+
1},"~A,~A");c$.parseFloatArrayNext=c(c$,"parseFloatArrayNext",function(a,b,d,c,f){var g=0,e=b[0];0<=e&&(null!=c&&(g=a.indexOf(c,e),0<=g&&(b[0]=g+c.length)),a=a.substring(b[0]),e=null==f?-1:a.indexOf(f),0>e?e=a.length:a=a.substring(0,e),b[0]+=e+1,a=JU.PT.getTokens(a),null==d&&(d=aa(a.length,0)),g=JU.PT.parseFloatArrayInfested(a,d));if(null==d)return aa(0,0);for(a=g;a<d.length;a++)d[a]=NaN;return d},"~S,~A,~A,~S,~S");c$.parseFloatRange=c(c$,"parseFloatRange",function(a,b,d){var c=a.length;b>c&&(b=c);
return 0>d[0]||d[0]>=b?NaN:JU.PT.parseFloatChecked(a,b,d,!1)},"~S,~N,~A");c$.parseFloatNext=c(c$,"parseFloatNext",function(a,b){var d=null==a?-1:a.length;return 0>b[0]||b[0]>=d?NaN:JU.PT.parseFloatChecked(a,d,b,!1)},"~S,~A");c$.parseFloatStrict=c(c$,"parseFloatStrict",function(a){var b=a.length;return 0==b?NaN:JU.PT.parseFloatChecked(a,b,[0],!0)},"~S");c$.parseFloat=c(c$,"parseFloat",function(a){return JU.PT.parseFloatNext(a,[0])},"~S");c$.parseIntRadix=c(c$,"parseIntRadix",function(a,b){return Integer.parseIntRadix(a,
b)},"~S,~N");c$.getTokens=c(c$,"getTokens",function(a){return JU.PT.getTokensAt(a,0)},"~S");c$.parseToken=c(c$,"parseToken",function(a){return JU.PT.parseTokenNext(a,[0])},"~S");c$.parseTrimmed=c(c$,"parseTrimmed",function(a){return JU.PT.parseTrimmedRange(a,0,a.length)},"~S");c$.parseTrimmedAt=c(c$,"parseTrimmedAt",function(a,b){return JU.PT.parseTrimmedRange(a,b,a.length)},"~S,~N");c$.parseTrimmedRange=c(c$,"parseTrimmedRange",function(a,b,d){var c=a.length;d<c&&(c=d);return c<b?"":JU.PT.parseTrimmedChecked(a,
b,c)},"~S,~N,~N");c$.getTokensAt=c(c$,"getTokensAt",function(a,b){if(null==a)return null;var d=a.length;if(0>b||b>d)return null;var c=JU.PT.countTokens(a,b),f=Array(c),g=N(1,0);g[0]=b;for(var e=0;e<c;++e)f[e]=JU.PT.parseTokenChecked(a,d,g);return f},"~S,~N");c$.countTokens=c(c$,"countTokens",function(a,b){var d=0;if(null!=a)for(var c=a.length;;){for(;b<c&&JU.PT.isWhiteSpace(a,b);)++b;if(b==c)break;++d;do++b;while(b<c&&!JU.PT.isWhiteSpace(a,b))}return d},"~S,~N");c$.parseTokenNext=c(c$,"parseTokenNext",
function(a,b){var d=a.length;return 0>b[0]||b[0]>=d?null:JU.PT.parseTokenChecked(a,d,b)},"~S,~A");c$.parseTokenRange=c(c$,"parseTokenRange",function(a,b,d){var c=a.length;b>c&&(b=c);return 0>d[0]||d[0]>=b?null:JU.PT.parseTokenChecked(a,b,d)},"~S,~N,~A");c$.parseTokenChecked=c(c$,"parseTokenChecked",function(a,b,d){for(var c=d[0];c<b&&JU.PT.isWhiteSpace(a,c);)++c;for(var f=c;c<b&&!JU.PT.isWhiteSpace(a,c);)++c;d[0]=c;return f==c?null:a.substring(f,c)},"~S,~N,~A");c$.parseTrimmedChecked=c(c$,"parseTrimmedChecked",
function(a,b,d){for(;b<d&&JU.PT.isWhiteSpace(a,b);)++b;for(d-=1;d>=b&&JU.PT.isWhiteSpace(a,d);)--d;return d<b?"":a.substring(b,d+1)},"~S,~N,~N");c$.dVal=c(c$,"dVal",function(a){if(null==a)throw new NumberFormatException("null");var b=parseFloat(a);if(isNaN(b))throw new NumberFormatException("Not a Number : "+a);return b},"~S");c$.fVal=c(c$,"fVal",function(a){return this.dVal(a)},"~S");c$.parseIntRange=c(c$,"parseIntRange",function(a,b,d){var c=a.length;b>c&&(b=c);return 0>d[0]||d[0]>=b?-2147483648:
JU.PT.parseIntChecked(a,b,d)},"~S,~N,~A");c$.parseFloatArrayData=c(c$,"parseFloatArrayData",function(a,b){JU.PT.parseFloatArrayDataN(a,b,b.length)},"~A,~A");c$.parseFloatArrayDataN=c(c$,"parseFloatArrayDataN",function(a,b,d){for(;0<=--d;)b[d]=d>=a.length?NaN:JU.PT.parseFloat(a[d])},"~A,~A,~N");c$.split=c(c$,"split",function(a,b){if(0==a.length)return[];var d=1,c=a.indexOf(b),f,g=b.length;if(0>c||0==g)return f=Array(1),f[0]=a,f;for(var e=a.length-g;0<=c&&c<e;d++)c=a.indexOf(b,c+g);f=Array(d);for(var h=
c=0,k=0;0<=(h=a.indexOf(b,c))&&k+1<d;)f[k++]=a.substring(c,h),c=h+g;a.indexOf(b,e)!=e&&(e+=g);f[k]=a.substring(c,e);return f},"~S,~S");c$.getQuotedStringAt=c(c$,"getQuotedStringAt",function(a,b){return JU.PT.getQuotedStringNext(a,[b])},"~S,~N");c$.getQuotedStringNext=c(c$,"getQuotedStringNext",function(a,b){var d=a,c=b[0];if(0>c||0>(c=d.indexOf('"',c)))return"";b[0]=++c;d=d.substring(c);for(c=-1;++c<d.length&&'"'!=d.charAt(c);)"\\"==d.charAt(c)&&c++;b[0]+=c+1;return d.substring(0,c)},"~S,~A");c$.isOneOf=
c(c$,"isOneOf",function(a,b){if(0==b.length)return!1;";"!=b.charAt(0)&&(b=";"+b+";");return 0>a.indexOf(";")&&0<=b.indexOf(";"+a+";")},"~S,~S");c$.getQuotedAttribute=c(c$,"getQuotedAttribute",function(a,b){var d=a.indexOf(b+"=");return 0>d?null:JU.PT.getQuotedStringAt(a,d)},"~S,~S");c$.approx=c(c$,"approx",function(a,b){return Math.round(a*b)/b},"~N,~N");c$.simpleReplace=c(c$,"simpleReplace",function(a,b,d){if(null==a||0==b.length||0>a.indexOf(b))return a;var c=0<=d.indexOf(b);do a=a.$replace(b,d);
while(!c&&0<=a.indexOf(b));return a},"~S,~S,~S");c$.formatF=c(c$,"formatF",function(a,b,d,c,f){return JU.PT.formatS(JU.DF.formatDecimal(a,d),b,0,c,f)},"~N,~N,~N,~B,~B");c$.formatD=c(c$,"formatD",function(a,b,d,c,f){return JU.PT.formatS(JU.DF.formatDecimal(a,-1-d),b,0,c,f)},"~N,~N,~N,~B,~B,~B");c$.formatS=c(c$,"formatS",function(a,b,d,c,f){if(null==a)return"";var g=a.length;2147483647!=d&&0<d&&d<g?a=a.substring(0,d):0>d&&0<=g+d&&(a=a.substring(g+d+1));d=b-a.length;if(0>=d)return a;b=f&&!c&&"-"==a.charAt(0);
f=f?"0":" ";var e=b?"-":f,g=new JU.SB;c&&g.append(a);for(g.appendC(e);0<--d;)g.appendC(f);c||g.append(b?f+a.substring(1):a);return g.toString()},"~S,~N,~N,~B,~B");c$.replaceAllCharacters=c(c$,"replaceAllCharacters",function(a,b,d){for(var c=b.length;0<=--c;){var f=b.substring(c,c+1);a=JU.PT.simpleReplace(a,f,d)}return a},"~S,~S,~S");c$.trim=c(c$,"trim",function(a,b){if(0==b.length)return a.trim();for(var d=a.length,c=0;c<d&&0<=b.indexOf(a.charAt(c));)c++;for(d=a.length-1;d>c&&0<=b.indexOf(a.charAt(d));)d--;
return a.substring(c,d+1)},"~S,~S");c$.trimQuotes=c(c$,"trimQuotes",function(a){return null!=a&&1<a.length&&a.startsWith('"')&&a.endsWith('"')?a.substring(1,a.length-1):a},"~S");c$.replaceAllCharacter=c(c$,"replaceAllCharacter",function(a,b,d){if(null==a)return null;for(var c=b.length;0<=--c;)a=a.$replace(b.charAt(c),d);return a},"~S,~S,~S");c$.toJSON=c(c$,"toJSON",function(a,b){var d=new JU.SB,c="";if(null==b)return JU.PT.packageJSON(a,null);if(y(b,Integer)||y(b,Float)||y(b,Double))return JU.PT.packageJSON(a,
b.toString());if(y(b,String))d.append(JU.PT.fixString(b));else if(y(b,javajs.api.JSONEncodable))d.append(b.toJSON());else if(JU.PT.isAS(b)){d.append("[");for(var f=b.length,g=0;g<f;g++)d.append(c).append(JU.PT.fixString(b[g])),c=",";d.append("]")}else if(JU.PT.isAI(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).appendI(b[g]),c=",";d.append("]")}else if(JU.PT.isAF(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).appendF(b[g]),c=",";d.append("]")}else if(JU.PT.isAD(b)){d.append("[");
f=b.length;for(g=0;g<f;g++)d.append(c).appendD(b[g]),c=",";d.append("]")}else if(JU.PT.isAP(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c),JU.PT.addJsonTuple(d,b[g]),c=",";d.append("]")}else if(JU.PT.isASS(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).append(JU.PT.toJSON(null,b[g])),c=",";d.append("]")}else if(JU.PT.isAII(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).append(JU.PT.toJSON(null,b[g])),c=",";d.append("]")}else if(JU.PT.isAFF(b)){d.append("[");f=b.length;
for(g=0;g<f;g++)d.append(c).append(JU.PT.toJSON(null,b[g])),c=",";d.append("]")}else if(JU.PT.isADD(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).append(JU.PT.toJSON(null,b[g])),c=",";d.append("]")}else if(JU.PT.isAFFF(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).append(JU.PT.toJSON(null,b[g])),c=",";d.append("]")}else if(y(b,JU.List)){d.append("[ ");f=b.size();for(g=0;g<f;g++)d.append(c).append(JU.PT.toJSON(null,b.get(g))),c=",";d.append(" ]")}else if(y(b,JU.M4)){c=aa(4,0);
d.appendC("[");for(g=0;4>g;g++)0<g&&d.appendC(","),b.getRow(g,c),d.append(JU.PT.toJSON(null,c));d.appendC("]")}else if(y(b,JU.M3)){c=aa(3,0);d.appendC("[");for(g=0;3>g;g++)0<g&&d.appendC(","),b.getRow(g,c),d.append(JU.PT.toJSON(null,c));d.appendC("]")}else if(y(b,JU.T3))JU.PT.addJsonTuple(d,b);else if(y(b,JU.A4))d.append("[").appendF(b.x).append(",").appendF(b.y).append(",").appendF(b.z).append(",").appendF(180*b.angle/3.141592653589793).append("]");else if(y(b,JU.P4))d.append("[").appendF(b.x).append(",").appendF(b.y).append(",").appendF(b.z).append(",").appendF(b.w).append("]");
else if(y(b,java.util.Map)){d.append("{ ");for(f=b.keySet().iterator();f.hasNext()&&((g=f.next())||1);)d.append(c).append(JU.PT.packageJSON(g,JU.PT.toJSON(null,b.get(g)))),c=",";d.append(" }")}else d.append(JU.PT.fixString(b.toString()));return JU.PT.packageJSON(a,d.toString())},"~S,~O");c$.packageJSON=c(c$,"packageJSON",function(a,b){return null==a?b:'"'+a+'": '+b},"~S,~S");c$.fixString=c(c$,"fixString",function(a){if("undefined"==typeof a)return"null";if(null==a||0==a.indexOf('{"'))return a;a=JU.PT.simpleReplace(a,
'"','\\"');a=JU.PT.simpleReplace(a,"\n","\\n");return'"'+a+'"'},"~S");c$.addJsonTuple=c(c$,"addJsonTuple",function(a,b){a.append("[").appendF(b.x).append(",").appendF(b.y).append(",").appendF(b.z).append("]")},"JU.SB,JU.T3");c$.isAS=c(c$,"isAS",function(a){return wa(a)},"~O");c$.isASS=c(c$,"isASS",function(a){return xa(a)},"~O");c$.isAP=c(c$,"isAP",function(a){return ya(a)},"~O");c$.isAF=c(c$,"isAF",function(a){return na(a)},"~O");c$.isAFloat=c(c$,"isAFloat",function(a){return za(a)},"~O");c$.isAD=
c(c$,"isAD",function(a){return na(a)},"~O");c$.isADD=c(c$,"isADD",function(a){return oa(a)},"~O");c$.isAB=c(c$,"isAB",function(a){return la(a)},"~O");c$.isAI=c(c$,"isAI",function(a){return la(a)},"~O");c$.isAII=c(c$,"isAII",function(a){return Aa(a)},"~O");c$.isAFF=c(c$,"isAFF",function(a){return oa(a)},"~O");c$.isAFFF=c(c$,"isAFFF",function(a){return Ba(a)},"~O");c$.escapeUrl=c(c$,"escapeUrl",function(a){a=JU.PT.simpleReplace(a,"\n","");a=JU.PT.simpleReplace(a,"%","%25");a=JU.PT.simpleReplace(a,"#",
"%23");a=JU.PT.simpleReplace(a,"[","%5B");a=JU.PT.simpleReplace(a,"]","%5D");return a=JU.PT.simpleReplace(a," ","%20")},"~S");H(c$,"tensScale",[10,100,1E3,1E4,1E5,1E6],"decimalScale",[0.1,0.01,0.001,1E-4,1E-5,1E-6,1E-7,1E-8,1E-9],"FLOAT_MIN_SAFE",2E-45)}),p("JU"),q(null,"JU.PT","java.lang.Character $.Double $.Float java.util.Map javajs.api.JSONEncodable JU.A4 $.DF $.List $.M3 $.M4 $.P4 $.SB $.T3".split(" "),function(){c$=F(JU,"PT");c$.parseInt=c(c$,"parseInt",function(a){return JU.PT.parseIntNext(a,
[0])},"~S");c$.parseIntNext=c(c$,"parseIntNext",function(a,b){var d=a.length;return 0>b[0]||b[0]>=d?-2147483648:JU.PT.parseIntChecked(a,d,b)},"~S,~A");c$.parseIntChecked=c(c$,"parseIntChecked",function(a,b,d){var c=!1,f=0,g=d[0];if(0>g)return-2147483648;for(var e;g<b&&JU.PT.isWhiteSpace(a,g);)++g;var h=!1;g<b&&45==a.charCodeAt(g)&&(h=!0,++g);for(;g<b&&48<=(e=a.charCodeAt(g))&&57>=e;)f=10*f+(e-48),c=!0,++g;c?h&&(f=-f):f=-2147483648;d[0]=g;return f},"~S,~N,~A");c$.isWhiteSpace=c(c$,"isWhiteSpace",function(a,
b){var d;return 0<=b&&(" "==(d=a.charAt(b))||"\t"==d||"\n"==d)},"~S,~N");c$.parseFloatChecked=c(c$,"parseFloatChecked",function(a,b,d,c){var f=!1,g=d[0];if(c&&a.indexOf("\n")!=a.lastIndexOf("\n"))return NaN;for(;g<b&&JU.PT.isWhiteSpace(a,g);)++g;var e=!1;g<b&&"-"==a.charAt(g)&&(++g,e=!0);for(var h=0,k=0,s=0;g<b&&48<=(h=a.charCodeAt(g))&&57>=h;)k=10*k+1*(h-48),++g,f=!0;var n=!1,p=0,E=0==k?-1:0;if(46==h)for(n=!0;++g<b&&48<=(h=a.charCodeAt(g))&&57>=h;){f=!0;if(0>E){if(48==h){E--;continue}E=-E}p<JU.PT.decimalScale.length&&
(s=10*s+1*(h-48),p++)}f?0<s?(f=s*JU.PT.decimalScale[p-1],f=1<E?E-2<JU.PT.decimalScale.length?f*JU.PT.decimalScale[E-2]:f*Math.pow(10,1-E):f+k):f=k:f=NaN;k=!1;if(g<b&&(69==h||101==h||68==h)){k=!0;if(++g>=b)return NaN;h=a.charCodeAt(g);if(43==h&&++g>=b)return NaN;d[0]=g;g=JU.PT.parseIntChecked(a,b,d);if(-2147483648==g)return NaN;0<g&&g<=JU.PT.tensScale.length?f*=JU.PT.tensScale[g-1]:0>g&&-g<=JU.PT.decimalScale.length?f*=JU.PT.decimalScale[-g-1]:0!=g&&(f*=Math.pow(10,g))}else d[0]=g;e&&(f=-f);Infinity==
f&&(f=3.4028235E38);return!c||(!k||n)&&JU.PT.checkTrailingText(a,d[0],b)?f:NaN},"~S,~N,~A,~B");c$.checkTrailingText=c(c$,"checkTrailingText",function(a,b,d){for(var c;b<d&&(Character.isWhitespace(c=a.charAt(b))||";"==c);)++b;return b==d},"~S,~N,~N");c$.parseFloatArray=c(c$,"parseFloatArray",function(a){return JU.PT.parseFloatArrayNext(a,N(1,0),null,null,null)},"~S");c$.parseFloatArrayInfested=c(c$,"parseFloatArrayInfested",function(a,b){for(var d=b.length,c=a.length,f=0,g=0,e=0;0<=e&&e<d&&f<c;e++){for(var h;Float.isNaN(h=
JU.PT.parseFloat(a[f++]))&&f<c;);Float.isNaN(h)||(b[g=e]=h);if(f==c)break}return g+1},"~A,~A");c$.parseFloatArrayNext=c(c$,"parseFloatArrayNext",function(a,b,d,c,f){var g=0,e=b[0];0<=e&&(null!=c&&(g=a.indexOf(c,e),0<=g&&(b[0]=g+c.length)),a=a.substring(b[0]),e=null==f?-1:a.indexOf(f),0>e?e=a.length:a=a.substring(0,e),b[0]+=e+1,a=JU.PT.getTokens(a),null==d&&(d=aa(a.length,0)),g=JU.PT.parseFloatArrayInfested(a,d));if(null==d)return aa(0,0);for(a=g;a<d.length;a++)d[a]=NaN;return d},"~S,~A,~A,~S,~S");
c$.parseFloatRange=c(c$,"parseFloatRange",function(a,b,d){var c=a.length;b>c&&(b=c);return 0>d[0]||d[0]>=b?NaN:JU.PT.parseFloatChecked(a,b,d,!1)},"~S,~N,~A");c$.parseFloatNext=c(c$,"parseFloatNext",function(a,b){var d=null==a?-1:a.length;return 0>b[0]||b[0]>=d?NaN:JU.PT.parseFloatChecked(a,d,b,!1)},"~S,~A");c$.parseFloatStrict=c(c$,"parseFloatStrict",function(a){var b=a.length;return 0==b?NaN:JU.PT.parseFloatChecked(a,b,[0],!0)},"~S");c$.parseFloat=c(c$,"parseFloat",function(a){return JU.PT.parseFloatNext(a,
[0])},"~S");c$.parseIntRadix=c(c$,"parseIntRadix",function(a,b){return Integer.parseIntRadix(a,b)},"~S,~N");c$.getTokens=c(c$,"getTokens",function(a){return JU.PT.getTokensAt(a,0)},"~S");c$.parseToken=c(c$,"parseToken",function(a){return JU.PT.parseTokenNext(a,[0])},"~S");c$.parseTrimmed=c(c$,"parseTrimmed",function(a){return JU.PT.parseTrimmedRange(a,0,a.length)},"~S");c$.parseTrimmedAt=c(c$,"parseTrimmedAt",function(a,b){return JU.PT.parseTrimmedRange(a,b,a.length)},"~S,~N");c$.parseTrimmedRange=
c(c$,"parseTrimmedRange",function(a,b,d){var c=a.length;d<c&&(c=d);return c<b?"":JU.PT.parseTrimmedChecked(a,b,c)},"~S,~N,~N");c$.getTokensAt=c(c$,"getTokensAt",function(a,b){if(null==a)return null;var d=a.length;if(0>b||b>d)return null;var c=JU.PT.countTokens(a,b),f=Array(c),g=N(1,0);g[0]=b;for(var e=0;e<c;++e)f[e]=JU.PT.parseTokenChecked(a,d,g);return f},"~S,~N");c$.countTokens=c(c$,"countTokens",function(a,b){var d=0;if(null!=a)for(var c=a.length;;){for(;b<c&&JU.PT.isWhiteSpace(a,b);)++b;if(b==
c)break;++d;do++b;while(b<c&&!JU.PT.isWhiteSpace(a,b))}return d},"~S,~N");c$.parseTokenNext=c(c$,"parseTokenNext",function(a,b){var d=a.length;return 0>b[0]||b[0]>=d?null:JU.PT.parseTokenChecked(a,d,b)},"~S,~A");c$.parseTokenRange=c(c$,"parseTokenRange",function(a,b,d){var c=a.length;b>c&&(b=c);return 0>d[0]||d[0]>=b?null:JU.PT.parseTokenChecked(a,b,d)},"~S,~N,~A");c$.parseTokenChecked=c(c$,"parseTokenChecked",function(a,b,d){for(var c=d[0];c<b&&JU.PT.isWhiteSpace(a,c);)++c;for(var f=c;c<b&&!JU.PT.isWhiteSpace(a,
c);)++c;d[0]=c;return f==c?null:a.substring(f,c)},"~S,~N,~A");c$.parseTrimmedChecked=c(c$,"parseTrimmedChecked",function(a,b,d){for(;b<d&&JU.PT.isWhiteSpace(a,b);)++b;for(d-=1;d>=b&&JU.PT.isWhiteSpace(a,d);)--d;return d<b?"":a.substring(b,d+1)},"~S,~N,~N");c$.dVal=c(c$,"dVal",function(a){if(null==a)throw new NumberFormatException("null");var b=parseFloat(a);if(isNaN(b))throw new NumberFormatException("Not a Number : "+a);return b},"~S");c$.fVal=c(c$,"fVal",function(a){return this.dVal(a)},"~S");c$.parseIntRange=
c(c$,"parseIntRange",function(a,b,d){var c=a.length;b>c&&(b=c);return 0>d[0]||d[0]>=b?-2147483648:JU.PT.parseIntChecked(a,b,d)},"~S,~N,~A");c$.parseFloatArrayData=c(c$,"parseFloatArrayData",function(a,b){JU.PT.parseFloatArrayDataN(a,b,b.length)},"~A,~A");c$.parseFloatArrayDataN=c(c$,"parseFloatArrayDataN",function(a,b,d){for(;0<=--d;)b[d]=d>=a.length?NaN:JU.PT.parseFloat(a[d])},"~A,~A,~N");c$.split=c(c$,"split",function(a,b){if(0==a.length)return[];var d=1,c=a.indexOf(b),f,g=b.length;if(0>c||0==g)return f=
Array(1),f[0]=a,f;for(var e=a.length-g;0<=c&&c<e;d++)c=a.indexOf(b,c+g);f=Array(d);for(var h=c=0,k=0;0<=(h=a.indexOf(b,c))&&k+1<d;)f[k++]=a.substring(c,h),c=h+g;a.indexOf(b,e)!=e&&(e+=g);f[k]=a.substring(c,e);return f},"~S,~S");c$.getQuotedStringAt=c(c$,"getQuotedStringAt",function(a,b){return JU.PT.getQuotedStringNext(a,[b])},"~S,~N");c$.getQuotedStringNext=c(c$,"getQuotedStringNext",function(a,b){var d=a,c=b[0];if(0>c||0>(c=d.indexOf('"',c)))return"";b[0]=++c;d=d.substring(c);for(c=-1;++c<d.length&&
'"'!=d.charAt(c);)"\\"==d.charAt(c)&&c++;b[0]+=c+1;return d.substring(0,c)},"~S,~A");c$.isOneOf=c(c$,"isOneOf",function(a,b){if(0==b.length)return!1;";"!=b.charAt(0)&&(b=";"+b+";");return 0>a.indexOf(";")&&0<=b.indexOf(";"+a+";")},"~S,~S");c$.getQuotedAttribute=c(c$,"getQuotedAttribute",function(a,b){var d=a.indexOf(b+"=");return 0>d?null:JU.PT.getQuotedStringAt(a,d)},"~S,~S");c$.approx=c(c$,"approx",function(a,b){return Math.round(a*b)/b},"~N,~N");c$.simpleReplace=c(c$,"simpleReplace",function(a,
b,d){if(null==a||0==b.length||0>a.indexOf(b))return a;var c=0<=d.indexOf(b);do a=a.$replace(b,d);while(!c&&0<=a.indexOf(b));return a},"~S,~S,~S");c$.formatF=c(c$,"formatF",function(a,b,d,c,f){return JU.PT.formatS(JU.DF.formatDecimal(a,d),b,0,c,f)},"~N,~N,~N,~B,~B");c$.formatD=c(c$,"formatD",function(a,b,d,c,f){return JU.PT.formatS(JU.DF.formatDecimal(a,-1-d),b,0,c,f)},"~N,~N,~N,~B,~B,~B");c$.formatS=c(c$,"formatS",function(a,b,d,c,f){if(null==a)return"";var g=a.length;2147483647!=d&&0<d&&d<g?a=a.substring(0,
d):0>d&&0<=g+d&&(a=a.substring(g+d+1));d=b-a.length;if(0>=d)return a;b=f&&!c&&"-"==a.charAt(0);f=f?"0":" ";var e=b?"-":f,g=new JU.SB;c&&g.append(a);for(g.appendC(e);0<--d;)g.appendC(f);c||g.append(b?f+a.substring(1):a);return g.toString()},"~S,~N,~N,~B,~B");c$.replaceAllCharacters=c(c$,"replaceAllCharacters",function(a,b,d){for(var c=b.length;0<=--c;){var f=b.substring(c,c+1);a=JU.PT.simpleReplace(a,f,d)}return a},"~S,~S,~S");c$.trim=c(c$,"trim",function(a,b){if(0==b.length)return a.trim();for(var d=
a.length,c=0;c<d&&0<=b.indexOf(a.charAt(c));)c++;for(d=a.length-1;d>c&&0<=b.indexOf(a.charAt(d));)d--;return a.substring(c,d+1)},"~S,~S");c$.trimQuotes=c(c$,"trimQuotes",function(a){return null!=a&&1<a.length&&a.startsWith('"')&&a.endsWith('"')?a.substring(1,a.length-1):a},"~S");c$.replaceAllCharacter=c(c$,"replaceAllCharacter",function(a,b,d){if(null==a)return null;for(var c=b.length;0<=--c;)a=a.$replace(b.charAt(c),d);return a},"~S,~S,~S");c$.toJSON=c(c$,"toJSON",function(a,b){var d=new JU.SB,c=
"";if(null==b)return JU.PT.packageJSON(a,null);if(y(b,Integer)||y(b,Float)||y(b,Double))return JU.PT.packageJSON(a,b.toString());if(y(b,String))d.append(JU.PT.fixString(b));else if(y(b,javajs.api.JSONEncodable))d.append(b.toJSON());else if(JU.PT.isAS(b)){d.append("[");for(var f=b.length,g=0;g<f;g++)d.append(c).append(JU.PT.fixString(b[g])),c=",";d.append("]")}else if(JU.PT.isAI(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).appendI(b[g]),c=",";d.append("]")}else if(JU.PT.isAF(b)){d.append("[");
f=b.length;for(g=0;g<f;g++)d.append(c).appendF(b[g]),c=",";d.append("]")}else if(JU.PT.isAD(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).appendD(b[g]),c=",";d.append("]")}else if(JU.PT.isAP(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c),JU.PT.addJsonTuple(d,b[g]),c=",";d.append("]")}else if(JU.PT.isASS(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).append(JU.PT.toJSON(null,b[g])),c=",";d.append("]")}else if(JU.PT.isAII(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).append(JU.PT.toJSON(null,
b[g])),c=",";d.append("]")}else if(JU.PT.isAFF(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).append(JU.PT.toJSON(null,b[g])),c=",";d.append("]")}else if(JU.PT.isADD(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).append(JU.PT.toJSON(null,b[g])),c=",";d.append("]")}else if(JU.PT.isAFFF(b)){d.append("[");f=b.length;for(g=0;g<f;g++)d.append(c).append(JU.PT.toJSON(null,b[g])),c=",";d.append("]")}else if(y(b,JU.List)){d.append("[ ");f=b.size();for(g=0;g<f;g++)d.append(c).append(JU.PT.toJSON(null,
b.get(g))),c=",";d.append(" ]")}else if(y(b,JU.M4)){c=aa(4,0);d.appendC("[");for(g=0;4>g;g++)0<g&&d.appendC(","),b.getRow(g,c),d.append(JU.PT.toJSON(null,c));d.appendC("]")}else if(y(b,JU.M3)){c=aa(3,0);d.appendC("[");for(g=0;3>g;g++)0<g&&d.appendC(","),b.getRow(g,c),d.append(JU.PT.toJSON(null,c));d.appendC("]")}else if(y(b,JU.T3))JU.PT.addJsonTuple(d,b);else if(y(b,JU.A4))d.append("[").appendF(b.x).append(",").appendF(b.y).append(",").appendF(b.z).append(",").appendF(180*b.angle/3.141592653589793).append("]");
else if(y(b,JU.P4))d.append("[").appendF(b.x).append(",").appendF(b.y).append(",").appendF(b.z).append(",").appendF(b.w).append("]");else if(y(b,java.util.Map)){d.append("{ ");for(f=b.keySet().iterator();f.hasNext()&&((g=f.next())||1);)d.append(c).append(JU.PT.packageJSON(g,JU.PT.toJSON(null,b.get(g)))),c=",";d.append(" }")}else d.append(JU.PT.fixString(b.toString()));return JU.PT.packageJSON(a,d.toString())},"~S,~O");c$.packageJSON=c(c$,"packageJSON",function(a,b){return null==a?b:'"'+a+'": '+b},
"~S,~S");c$.fixString=c(c$,"fixString",function(a){if("undefined"==typeof a)return"null";if(null==a||0==a.indexOf('{"'))return a;a=JU.PT.simpleReplace(a,'"','\\"');a=JU.PT.simpleReplace(a,"\n","\\n");return'"'+a+'"'},"~S");c$.addJsonTuple=c(c$,"addJsonTuple",function(a,b){a.append("[").appendF(b.x).append(",").appendF(b.y).append(",").appendF(b.z).append("]")},"JU.SB,JU.T3");c$.isAS=c(c$,"isAS",function(a){return wa(a)},"~O");c$.isASS=c(c$,"isASS",function(a){return xa(a)},"~O");c$.isAP=c(c$,"isAP",
function(a){return ya(a)},"~O");c$.isAF=c(c$,"isAF",function(a){return na(a)},"~O");c$.isAFloat=c(c$,"isAFloat",function(a){return za(a)},"~O");c$.isAD=c(c$,"isAD",function(a){return na(a)},"~O");c$.isADD=c(c$,"isADD",function(a){return oa(a)},"~O");c$.isAB=c(c$,"isAB",function(a){return la(a)},"~O");c$.isAI=c(c$,"isAI",function(a){return la(a)},"~O");c$.isAII=c(c$,"isAII",function(a){return Aa(a)},"~O");c$.isAFF=c(c$,"isAFF",function(a){return oa(a)},"~O");c$.isAFFF=c(c$,"isAFFF",function(a){return Ba(a)},
"~O");c$.escapeUrl=c(c$,"escapeUrl",function(a){a=JU.PT.simpleReplace(a,"\n","");a=JU.PT.simpleReplace(a,"%","%25");a=JU.PT.simpleReplace(a,"#","%23");a=JU.PT.simpleReplace(a,"[","%5B");a=JU.PT.simpleReplace(a,"]","%5D");return a=JU.PT.simpleReplace(a," ","%20")},"~S");H(c$,"tensScale",[10,100,1E3,1E4,1E5,1E6],"decimalScale",[0.1,0.01,0.001,1E-4,1E-5,1E-6,1E-7,1E-8,1E-9],"FLOAT_MIN_SAFE",2E-45)}),p("JU"),c$=w(function(){this.s=this.sb=null;u(this,arguments)},JU,"SB"),z(c$,function(){this.s=""}),c$.newN=
c(c$,"newN",function(){return new JU.SB},"~N"),c$.newS=c(c$,"newS",function(a){var b=new JU.SB;b.s=a;return b},"~S"),c(c$,"append",function(a){this.s+=a;return this},"~S"),c(c$,"appendC",function(a){this.s+=a;return this},"~S"),c(c$,"appendI",function(a){this.s+=a;return this},"~N"),c(c$,"appendB",function(a){this.s+=a;return this},"~B"),c(c$,"appendF",function(a){a=""+a;0>a.indexOf(".")&&0>a.indexOf("e")&&(a+=".0");this.s+=a;return this},"~N"),c(c$,"appendD",function(a){a=""+a;0>a.indexOf(".")&&
0>a.indexOf("e")&&(a+=".0");this.s+=a;return this},"~N"),c(c$,"appendSB",function(a){this.s+=a.s;return this},"JU.SB"),c(c$,"appendO",function(a){null!=a&&(this.s+=a.toString());return this},"~O"),c(c$,"appendCB",function(a,b,d){for(;0<=--d;)this.s+=a[b++]},"~A,~N,~N"),e(c$,"toString",function(){return this.s}),c(c$,"length",function(){return this.s.length}),c(c$,"indexOf",function(a){return this.s.indexOf(a)},"~S"),c(c$,"charAt",function(a){return this.s.charAt(a)},"~N"),c(c$,"setLength",function(a){this.s=
this.s.substring(0,a)},"~N"),c(c$,"lastIndexOf",function(a){return this.s.lastIndexOf(a)},"~S"),c(c$,"indexOf2",function(a,b){return this.s.indexOf(a,b)},"~S,~N"),c(c$,"substring",function(a){return this.s.substring(a)},"~N"),c(c$,"substring2",function(a,b){return this.s.substring(a,b)},"~N,~N"),c(c$,"toBytes",function(a,b){0>b&&(b=this.length()-a);for(var d=R(b,0),c=a+b,f=c-a;--c>=a;)d[--f]=this.charAt(c).charCodeAt(0);return d},"~N,~N"),p("JU"),q(null,"JU.T3",["java.lang.Float"],function(){c$=w(function(){this.z=
this.y=this.x=0;u(this,arguments)},JU,"T3",null,java.io.Serializable);z(c$,function(){});c(c$,"set",function(a,b,d){this.x=a;this.y=b;this.z=d},"~N,~N,~N");c(c$,"setA",function(a){this.x=a[0];this.y=a[1];this.z=a[2]},"~A");c(c$,"setT",function(a){this.x=a.x;this.y=a.y;this.z=a.z},"JU.T3");c(c$,"add2",function(a,b){this.x=a.x+b.x;this.y=a.y+b.y;this.z=a.z+b.z},"JU.T3,JU.T3");c(c$,"add",function(a){this.x+=a.x;this.y+=a.y;this.z+=a.z},"JU.T3");c(c$,"distanceSquared",function(a){var b=this.x-a.x,d=this.y-
a.y;a=this.z-a.z;return b*b+d*d+a*a},"JU.T3");c(c$,"distance",function(a){return Math.sqrt(this.distanceSquared(a))},"JU.T3");c(c$,"sub2",function(a,b){this.x=a.x-b.x;this.y=a.y-b.y;this.z=a.z-b.z},"JU.T3,JU.T3");c(c$,"sub",function(a){this.x-=a.x;this.y-=a.y;this.z-=a.z},"JU.T3");c(c$,"scale",function(a){this.x*=a;this.y*=a;this.z*=a},"~N");c(c$,"scaleAdd2",function(a,b,d){this.x=a*b.x+d.x;this.y=a*b.y+d.y;this.z=a*b.z+d.z},"~N,JU.T3,JU.T3");c(c$,"ave",function(a,b){this.x=(a.x+b.x)/2;this.y=(a.y+
b.y)/2;this.z=(a.z+b.z)/2},"JU.T3,JU.T3");c(c$,"dot",function(a){return this.x*a.x+this.y*a.y+this.z*a.z},"JU.T3");c(c$,"lengthSquared",function(){return this.x*this.x+this.y*this.y+this.z*this.z});c(c$,"length",function(){return Math.sqrt(this.lengthSquared())});c(c$,"normalize",function(){var a=this.length();this.x/=a;this.y/=a;this.z/=a});e(c$,"hashCode",function(){var a;a=31+JU.T3.floatToIntBits0(this.x);a=31*a+JU.T3.floatToIntBits0(this.y);a=31*a+JU.T3.floatToIntBits0(this.z);return a^a>>32});
c$.floatToIntBits0=c(c$,"floatToIntBits0",function(a){return 0==a?0:Float.floatToIntBits(a)},"~N");e(c$,"equals",function(a){return!y(a,JU.T3)?!1:this.x==a.x&&this.y==a.y&&this.z==a.z},"~O");e(c$,"toString",function(){return"("+this.x+", "+this.y+", "+this.z+")"})}),p("JU"),c$=w(function(){this.z=this.y=this.x=0;u(this,arguments)},JU,"T3i",null,java.io.Serializable),z(c$,function(){}),c(c$,"set",function(a,b,d){this.x=a;this.y=b;this.z=d},"~N,~N,~N"),c(c$,"setT",function(a){this.x=a.x;this.y=a.y;
this.z=a.z},"JU.T3i"),c(c$,"add",function(a){this.x+=a.x;this.y+=a.y;this.z+=a.z},"JU.T3i"),c(c$,"scaleAdd",function(a,b,d){this.x=a*b.x+d.x;this.y=a*b.y+d.y;this.z=a*b.z+d.z},"~N,JU.T3i,JU.T3i"),e(c$,"hashCode",function(){return this.x^this.y^this.z}),e(c$,"equals",function(a){return!y(a,JU.T3i)?!1:this.x==a.x&&this.y==a.y&&this.z==a.z},"~O"),e(c$,"toString",function(){return"("+this.x+", "+this.y+", "+this.z+")"}),p("JU"),q(null,"JU.T4",["JU.T3"],function(){c$=w(function(){this.w=this.z=this.y=
this.x=0;u(this,arguments)},JU,"T4",null,java.io.Serializable);z(c$,function(){});c(c$,"set",function(a,b,d,c){this.x=a;this.y=b;this.z=d;this.w=c},"~N,~N,~N,~N");c(c$,"scale",function(a){this.x*=a;this.y*=a;this.z*=a;this.w*=a},"~N");e(c$,"hashCode",function(){return JU.T3.floatToIntBits0(this.x)^JU.T3.floatToIntBits0(this.y)^JU.T3.floatToIntBits0(this.z)^JU.T3.floatToIntBits0(this.w)});e(c$,"equals",function(a){return!y(a,JU.T4)?!1:this.x==a.x&&this.y==a.y&&this.z==a.z&&this.w==a.w},"~O");e(c$,
"toString",function(){return"("+this.x+", "+this.y+", "+this.z+", "+this.w+")"})}),p("JU"),q(["JU.T3"],"JU.V3",null,function(){c$=F(JU,"V3",JU.T3);c$.newV=c(c$,"newV",function(a){return JU.V3.new3(a.x,a.y,a.z)},"JU.T3");c$.newVsub=c(c$,"newVsub",function(a,b){return JU.V3.new3(a.x-b.x,a.y-b.y,a.z-b.z)},"JU.T3,JU.T3");c$.new3=c(c$,"new3",function(a,b,d){var c=new JU.V3;c.x=a;c.y=b;c.z=d;return c},"~N,~N,~N");c(c$,"cross",function(a,b){this.set(a.y*b.z-a.z*b.y,a.z*b.x-a.x*b.z,a.x*b.y-a.y*b.x)},"JU.V3,JU.V3");
c(c$,"angle",function(a){var b=this.y*a.z-this.z*a.y,d=this.z*a.x-this.x*a.z,c=this.x*a.y-this.y*a.x,b=Math.sqrt(b*b+d*d+c*c);return Math.abs(Math.atan2(b,this.dot(a)))},"JU.V3")}),p("J.util"),q(["J.util.LoggerInterface"],"J.util.DefaultLogger",["J.util.Logger"],function(){c$=F(J.util,"DefaultLogger",null,J.util.LoggerInterface);c(c$,"log",function(a,b,d,c){a===System.err&&System.out.flush();if(null!=a&&(null!=d||null!=c))if(a.println((J.util.Logger.logLevel()?"["+J.util.Logger.getLevel(b)+"] ":"")+
(null!=d?d:"")+(null!=c?": "+c.toString():"")),null!=c&&(b=c.getStackTrace(),null!=b))for(d=0;d<b.length;d++)a.println(b[d].getClassName()+" - "+b[d].getLineNumber()+" - "+b[d].getMethodName());a===System.err&&System.err.flush()},"java.io.PrintStream,~N,~S,Throwable");e(c$,"debug",function(a){this.log(System.out,5,a,null)},"~S");e(c$,"info",function(a){this.log(System.out,4,a,null)},"~S");e(c$,"warn",function(a){this.log(System.out,3,a,null)},"~S");e(c$,"warnEx",function(a,b){this.log(System.out,
3,a,b)},"~S,Throwable");e(c$,"error",function(a){this.log(System.err,2,a,null)},"~S");e(c$,"errorEx",function(a,b){this.log(System.err,2,a,b)},"~S,Throwable");e(c$,"fatal",function(a){this.log(System.err,1,a,null)},"~S");e(c$,"fatalEx",function(a,b){this.log(System.err,1,a,b)},"~S,Throwable")}),p("J.util"),q(["java.util.Hashtable","J.util.DefaultLogger"],"J.util.Logger",["java.lang.Long"],function(){c$=F(J.util,"Logger");c$.getProperty=c(c$,"getProperty",function(a,b){try{var d=System.getProperty("jmol.logger."+
a,null);if(null!=d)return d.equalsIgnoreCase("true")}catch(c){if(!C(c,Exception))throw c;}return b},"~S,~B");c$.setLogger=c(c$,"setLogger",function(a){J.util.Logger._logger=a;J.util.Logger.debugging=J.util.Logger.isActiveLevel(5)||J.util.Logger.isActiveLevel(6);J.util.Logger.debuggingHigh=J.util.Logger.debugging&&J.util.Logger._activeLevels[6]},"J.util.LoggerInterface");c$.isActiveLevel=c(c$,"isActiveLevel",function(a){return null!=J.util.Logger._logger&&0<=a&&7>a&&J.util.Logger._activeLevels[a]},
"~N");c$.setActiveLevel=c(c$,"setActiveLevel",function(a,b){0>a&&(a=0);7<=a&&(a=6);J.util.Logger._activeLevels[a]=b;J.util.Logger.debugging=J.util.Logger.isActiveLevel(5)||J.util.Logger.isActiveLevel(6);J.util.Logger.debuggingHigh=J.util.Logger.debugging&&J.util.Logger._activeLevels[6]},"~N,~B");c$.setLogLevel=c(c$,"setLogLevel",function(a){for(var b=7;0<=--b;)J.util.Logger.setActiveLevel(b,b<=a)},"~N");c$.getLevel=c(c$,"getLevel",function(a){switch(a){case 6:return"DEBUGHIGH";case 5:return"DEBUG";
case 4:return"INFO";case 3:return"WARN";case 2:return"ERROR";case 1:return"FATAL"}return"????"},"~N");c$.logLevel=c(c$,"logLevel",function(){return J.util.Logger._logLevel});c$.doLogLevel=c(c$,"doLogLevel",function(a){J.util.Logger._logLevel=a},"~B");c$.debug=c(c$,"debug",function(a){if(J.util.Logger.debugging)try{J.util.Logger._logger.debug(a)}catch(b){}},"~S");c$.info=c(c$,"info",function(a){try{J.util.Logger.isActiveLevel(4)&&J.util.Logger._logger.info(a)}catch(b){}},"~S");c$.warn=c(c$,"warn",
function(a){try{J.util.Logger.isActiveLevel(3)&&J.util.Logger._logger.warn(a)}catch(b){}},"~S");c$.warnEx=c(c$,"warnEx",function(a,b){try{J.util.Logger.isActiveLevel(3)&&J.util.Logger._logger.warnEx(a,b)}catch(d){}},"~S,Throwable");c$.error=c(c$,"error",function(a){try{J.util.Logger.isActiveLevel(2)&&J.util.Logger._logger.error(a)}catch(b){}},"~S");c$.errorEx=c(c$,"errorEx",function(a,b){try{J.util.Logger.isActiveLevel(2)&&J.util.Logger._logger.errorEx(a,b)}catch(d){}},"~S,Throwable");c$.getLogLevel=
c(c$,"getLogLevel",function(){for(var a=7;0<=--a;)if(J.util.Logger.isActiveLevel(a))return a;return 0});c$.fatal=c(c$,"fatal",function(a){try{J.util.Logger.isActiveLevel(1)&&J.util.Logger._logger.fatal(a)}catch(b){}},"~S");c$.fatalEx=c(c$,"fatalEx",function(a,b){try{J.util.Logger.isActiveLevel(1)&&J.util.Logger._logger.fatalEx(a,b)}catch(d){}},"~S,Throwable");c$.startTimer=c(c$,"startTimer",function(a){null!=a&&J.util.Logger.htTiming.put(a,Long.$valueOf(System.currentTimeMillis()))},"~S");c$.getTimerMsg=
c(c$,"getTimerMsg",function(a,b){0==b&&(b=J.util.Logger.getTimeFrom(a));return"Time for "+a+": "+b+" ms"},"~S,~N");c$.getTimeFrom=c(c$,"getTimeFrom",function(a){var b;return null==a||null==(b=J.util.Logger.htTiming.get(a))?-1:System.currentTimeMillis()-b.longValue()},"~S");c$.checkTimer=c(c$,"checkTimer",function(a,b){var d=J.util.Logger.getTimeFrom(a);0<=d&&!a.startsWith("(")&&J.util.Logger.info(J.util.Logger.getTimerMsg(a,d));b&&J.util.Logger.startTimer(a);return d},"~S,~B");c$.checkMemory=c(c$,
"checkMemory",function(){J.util.Logger.info("Memory: Total-Free=0; Total=0; Free=0; Max=0")});c$._logger=c$.prototype._logger=new J.util.DefaultLogger;H(c$,"LEVEL_FATAL",1,"LEVEL_ERROR",2,"LEVEL_WARN",3,"LEVEL_INFO",4,"LEVEL_DEBUG",5,"LEVEL_DEBUGHIGH",6,"LEVEL_MAX",7,"_activeLevels",va(7,!1),"_logLevel",!1,"debugging",!1,"debuggingHigh",!1);J.util.Logger._activeLevels[6]=J.util.Logger.getProperty("debugHigh",!1);J.util.Logger._activeLevels[5]=J.util.Logger.getProperty("debug",!1);J.util.Logger._activeLevels[4]=
J.util.Logger.getProperty("info",!0);J.util.Logger._activeLevels[3]=J.util.Logger.getProperty("warn",!0);J.util.Logger._activeLevels[2]=J.util.Logger.getProperty("error",!0);J.util.Logger._activeLevels[1]=J.util.Logger.getProperty("fatal",!0);J.util.Logger._logLevel=J.util.Logger.getProperty("logLevel",!1);J.util.Logger.debugging=null!=J.util.Logger._logger&&(J.util.Logger._activeLevels[5]||J.util.Logger._activeLevels[6]);J.util.Logger.debuggingHigh=J.util.Logger.debugging&&J.util.Logger._activeLevels[6];
c$.htTiming=c$.prototype.htTiming=new java.util.Hashtable}),p("J.util"),L(J.util,"LoggerInterface"),p("JSV.api"),L(JSV.api,"AnnotationData"),p("JSV.api"),L(JSV.api,"AppletFrame"),p("JSV.api"),q(["JSV.api.JSVAppletInterface","$.ScriptInterface"],"JSV.api.JSVAppInterface",null,function(){L(JSV.api,"JSVAppInterface",[JSV.api.JSVAppletInterface,JSV.api.ScriptInterface])}),p("JSV.api"),L(JSV.api,"JSVAppletInterface"),p("JSV.api"),L(JSV.api,"JSVFileHelper"),p("JSV.api"),L(JSV.api,"JSVGraphics"),p("JSV.api"),
L(JSV.api,"JSVMainPanel"),p("JSV.api"),q(["JSV.api.JSVViewPanel"],"JSV.api.JSVPanel",null,function(){L(JSV.api,"JSVPanel",JSV.api.JSVViewPanel)}),p("JSV.api"),L(JSV.api,"JSVTree"),p("JSV.api"),L(JSV.api,"JSVTreeNode"),p("JSV.api"),L(JSV.api,"JSVTreePath"),p("JSV.api"),L(JSV.api,"JSVViewPanel"),p("JSV.api"),L(JSV.api,"JSVZipReader"),p("JSV.api"),L(JSV.api,"PanelListener"),p("JSV.api"),L(JSV.api,"ScriptInterface"),p("JSV.api"),L(JSV.api,"XYScaleConverter"),p("JSV.app"),q(["JSV.api.JSVAppInterface",
"$.PanelListener"],"JSV.app.JSVApp","java.lang.Boolean $.Double JU.List $.PT JSV.common.Coordinate $.JSVFileManager $.JSViewer $.PanelNode $.Parameters $.PeakPickEvent $.ScriptToken $.ScriptTokenizer $.SubSpecChangeEvent $.ZoomEvent JSV.source.FileReader JSV.util.JSVEscape J.util.Logger".split(" "),function(){c$=w(function(){this.appletFrame=null;this.scriptLevelCount=this.nViews=this.fileCount=0;this.isNewWindow=!1;this.allowMenu=this.allowCompoundMenu=!0;this.loadImaginary=this.interfaceOverlaid=
this.autoIntegrate=!1;this.obscureTitleFromUser=null;this.initialEndIndex=this.initialStartIndex=-1;this.returnFromJmolModel=this.prevPanel=this.viewer=this.syncCallbackFunctionName=this.peakCallbackFunctionName=this.loadFileCallbackFunctionName=this.coordCallbackFunctionName=this.appletReadyCallbackFunctionName=this.integrationRatios=null;u(this,arguments)},JSV.app,"JSVApp",null,[JSV.api.PanelListener,JSV.api.JSVAppInterface]);z(c$,function(a,b){this.appletFrame=a;this.initViewer(b);this.init()},
"JSV.api.AppletFrame,~B");c(c$,"initViewer",function(a){this.viewer=new JSV.common.JSViewer(this,!0,a);this.appletFrame.setDropTargetListener(this.isSigned(),this.viewer);a=this.appletFrame.getDocumentBase();JSV.common.JSVFileManager.setDocumentBase(this.viewer,a)},"~B");e(c$,"isPro",function(){return this.isSigned()});e(c$,"isSigned",function(){return!0});e(c$,"siSetCurrentSource",function(a){this.viewer.currentSource=a},"JSV.source.JDXSource");e(c$,"siGetFileCount",function(){return this.fileCount});
e(c$,"siSetFileCount",function(a){this.fileCount=a},"~N");e(c$,"siSetIntegrationRatios",function(a){this.integrationRatios=a},"~S");e(c$,"siGetIntegrationRatios",function(){return this.integrationRatios});c(c$,"getAppletFrame",function(){return this.appletFrame});e(c$,"siSetLoadImaginary",function(a){this.loadImaginary=a},"~B");e(c$,"siIncrementScriptLevelCount",function(a){return this.scriptLevelCount+=a},"~N");e(c$,"siIncrementViewCount",function(a){return this.nViews+=a},"~N");c(c$,"dispose",function(){try{this.viewer.dispose()}catch(a){if(C(a,
Exception))a.printStackTrace();else throw a;}});e(c$,"getPropertyAsJavaObject",function(a){return this.viewer.getPropertyAsJavaObject(a)},"~S");e(c$,"getPropertyAsJSON",function(a){return JU.PT.toJSON(null,this.getPropertyAsJavaObject(a))},"~S");e(c$,"getCoordinate",function(){return this.viewer.getCoordinate()});e(c$,"loadInline",function(a){this.siOpenDataOrFile(a,null,null,null,-1,-1,!0);this.appletFrame.validateContent(3)},"~S");e(c$,"exportSpectrum",function(a,b){return this.viewer.$export(a,
b)},"~S,~N");e(c$,"setFilePath",function(a){this.runScript("load "+JSV.util.JSVEscape.eS(a))},"~S");e(c$,"setSpectrumNumber",function(a){this.runScript(JSV.common.ScriptToken.SPECTRUMNUMBER+" "+a)},"~N");e(c$,"reversePlot",function(){this.toggle(JSV.common.ScriptToken.REVERSEPLOT)});e(c$,"toggleGrid",function(){this.toggle(JSV.common.ScriptToken.GRIDON)});e(c$,"toggleCoordinate",function(){this.toggle(JSV.common.ScriptToken.COORDINATESON)});e(c$,"toggleIntegration",function(){this.toggle(JSV.common.ScriptToken.INTEGRATE)});
c(c$,"toggle",function(a){null!=this.viewer.selectedPanel&&this.runScript(a+" TOGGLE")},"JSV.common.ScriptToken");e(c$,"addHighlight",function(a,b,d,c,f,g){this.viewer.addHighLight(a,b,d,c,f,g)},"~N,~N,~N,~N,~N,~N");e(c$,"removeAllHighlights",function(){this.viewer.removeAllHighlights()});e(c$,"removeHighlight",function(a,b){this.viewer.removeHighlight(a,b)},"~N,~N");e(c$,"syncScript",function(a){this.viewer.syncScript(a)},"~S");e(c$,"writeStatus",function(a){J.util.Logger.info(a)},"~S");c(c$,"init",
function(){this.initParams(this.appletFrame.getParameter("script"))});c(c$,"initParams",function(a){this.parseInitScript(a);this.newAppletPanel();this.viewer.setPopupMenu(this.allowMenu,this.viewer.parameters.getBoolean(JSV.common.ScriptToken.ENABLEZOOM));this.runScriptNow(a)},"~S");c(c$,"newAppletPanel",function(){J.util.Logger.info("newAppletPanel");this.appletFrame.addNewPanel(this.viewer)});e(c$,"siSendPanelChange",function(a){a!==this.prevPanel&&(this.prevPanel=a,this.viewer.sendPanelChange(a))},
"JSV.api.JSVPanel");e(c$,"siNewWindow",function(a,b){this.isNewWindow=a;b?null!=this.viewer.jsvpPopupMenu&&this.viewer.jsvpPopupMenu.setSelected("Window",!1):this.appletFrame.newWindow(a)},"~B,~B");e(c$,"repaint",function(){"undefined"!=typeof Jmol&&(Jmol._repaint&&this.viewer.applet)&&Jmol._repaint(this.viewer.applet,!0)});c(c$,"updateJS",function(){},"~N,~N");e(c$,"siValidateAndRepaint",function(){null!=this.viewer.selectedPanel&&(this.viewer.selectedPanel.getPanelData().taintedAll=!0);this.appletFrame.validate();
this.repaint()});e(c$,"siSyncLoad",function(a){this.newAppletPanel();J.util.Logger.info("JSVP syncLoad reading "+a);this.siOpenDataOrFile(null,null,null,a,-1,-1,!1);this.appletFrame.validateContent(3)},"~S");c(c$,"parseInitScript",function(a){null==a&&(a="");a=new JSV.common.ScriptTokenizer(a,!0);for(J.util.Logger.debugging&&J.util.Logger.info("Running in DEBUG mode");a.hasMoreTokens();){var b=a.nextToken(),d=new JSV.common.ScriptTokenizer(b,!1),c=d.nextToken();c.equalsIgnoreCase("SET")&&(c=d.nextToken());
var c=c.toUpperCase(),f=JSV.common.ScriptToken.getScriptToken(c),b=JSV.common.ScriptToken.getValue(f,d,b);J.util.Logger.info("KEY-> "+c+" VALUE-> "+b+" : "+f);try{switch(f){default:this.viewer.parameters.set(null,f,b);break;case JSV.common.ScriptToken.UNKNOWN:break;case JSV.common.ScriptToken.APPLETID:this.viewer.fullName=this.viewer.appletID+"__"+(this.viewer.appletID=b)+"__";"undefined"!=typeof Jmol&&(this.viewer.applet=Jmol._applets[b]);break;case JSV.common.ScriptToken.APPLETREADYCALLBACKFUNCTIONNAME:this.appletReadyCallbackFunctionName=
b;break;case JSV.common.ScriptToken.AUTOINTEGRATE:this.autoIntegrate=JSV.common.Parameters.isTrue(b);break;case JSV.common.ScriptToken.COMPOUNDMENUON:this.allowCompoundMenu=Boolean.parseBoolean(b);break;case JSV.common.ScriptToken.COORDCALLBACKFUNCTIONNAME:case JSV.common.ScriptToken.LOADFILECALLBACKFUNCTIONNAME:case JSV.common.ScriptToken.PEAKCALLBACKFUNCTIONNAME:case JSV.common.ScriptToken.SYNCCALLBACKFUNCTIONNAME:this.siExecSetCallback(f,b);break;case JSV.common.ScriptToken.ENDINDEX:this.initialEndIndex=
Integer.parseInt(b);break;case JSV.common.ScriptToken.INTERFACE:this.siExecSetInterface(b);break;case JSV.common.ScriptToken.IRMODE:this.viewer.setIRmode(b);break;case JSV.common.ScriptToken.MENUON:this.allowMenu=Boolean.parseBoolean(b);break;case JSV.common.ScriptToken.OBSCURE:null==this.obscureTitleFromUser&&(this.obscureTitleFromUser=Boolean.$valueOf(b));break;case JSV.common.ScriptToken.STARTINDEX:this.initialStartIndex=Integer.parseInt(b);break;case JSV.common.ScriptToken.SYNCID:this.viewer.fullName=
this.viewer.appletID+"__"+(this.viewer.syncID=b)+"__"}}catch(g){if(!C(g,Exception))throw g;}}},"~S");e(c$,"siOpenDataOrFile",function(a,b,d,c,f,g,e){a=this.viewer.openDataOrFile(a,b,d,c,f,g,e);-1!=a&&(0!=a?this.siSetSelectedPanel(null):(null!=this.viewer.jsvpPopupMenu&&this.viewer.jsvpPopupMenu.setCompoundMenu(this.viewer.panelNodes,this.allowCompoundMenu),J.util.Logger.info(this.appletFrame.getAppletInfo()+" File "+this.viewer.currentSource.getFilePath()+" Loaded Successfully")))},"~S,~S,JU.List,~S,~N,~N,~B");
e(c$,"siProcessCommand",function(a){this.viewer.runScriptNow(a)},"~S");e(c$,"runScriptNow",function(a){return this.viewer.runScriptNow(a)},"~S");c(c$,"checkCallbacks",function(){if(!(null==this.coordCallbackFunctionName&&null==this.peakCallbackFunctionName)){var a=new JSV.common.Coordinate,b=null==this.peakCallbackFunctionName?null:new JSV.common.Coordinate;if(this.viewer.selectedPanel.getPanelData().getPickedCoordinates(a,b)){var d=this.viewer.viewPanel.getCurrentPanelIndex();null==b?this.appletFrame.callToJavaScript(this.coordCallbackFunctionName,
[Double.$valueOf(a.getXVal()),Double.$valueOf(a.getYVal()),Integer.$valueOf(d+1)]):this.appletFrame.callToJavaScript(this.peakCallbackFunctionName,[Double.$valueOf(a.getXVal()),Double.$valueOf(a.getYVal()),Double.$valueOf(b.getXVal()),Double.$valueOf(b.getYVal()),Integer.$valueOf(d+1)])}}});e(c$,"siSetSelectedPanel",function(a){this.viewer.viewPanel.setSelectedPanel(a,this.viewer.panelNodes);this.viewer.selectedPanel=a;this.viewer.spectraTree.setSelectedPanel(this,a);this.appletFrame.validate();null!=
a&&(a.setEnabled(!0),a.setFocusable(!0))},"JSV.api.JSVPanel");c(c$,"doAdvanced",function(){},"~S");e(c$,"panelEvent",function(a){y(a,JSV.common.PeakPickEvent)?this.viewer.processPeakPickEvent(a,!1):y(a,JSV.common.ZoomEvent)||y(a,JSV.common.SubSpecChangeEvent)},"~O");e(c$,"siExecSetCallback",function(a,b){switch(a){case JSV.common.ScriptToken.LOADFILECALLBACKFUNCTIONNAME:this.loadFileCallbackFunctionName=b;break;case JSV.common.ScriptToken.PEAKCALLBACKFUNCTIONNAME:this.peakCallbackFunctionName=b;break;
case JSV.common.ScriptToken.SYNCCALLBACKFUNCTIONNAME:this.syncCallbackFunctionName=b;break;case JSV.common.ScriptToken.COORDCALLBACKFUNCTIONNAME:this.coordCallbackFunctionName=b}},"JSV.common.ScriptToken,~S");e(c$,"getSolnColour",function(){return this.viewer.getSolutionColor()});e(c$,"siExecClose",function(a){var b=!a.startsWith("!");b&&(a=a.substring(1));this.viewer.close(a);b||this.siValidateAndRepaint()},"~S");e(c$,"siExecLoad",function(a){this.viewer.load(a);if(null==this.viewer.selectedPanel)return null;
null!=this.loadFileCallbackFunctionName&&this.appletFrame.callToJavaScript(this.loadFileCallbackFunctionName,[this.viewer.appletID,a]);return null},"~S");e(c$,"siExecHidden",function(){},"~B");e(c$,"siExecSetInterface",function(a){this.interfaceOverlaid=a.equalsIgnoreCase("single")||a.equalsIgnoreCase("overlay")},"~S");e(c$,"siExecScriptComplete",function(){this.siValidateAndRepaint()},"~S,~B");e(c$,"siExecSetAutoIntegrate",function(a){this.autoIntegrate=a},"~B");e(c$,"syncToJmol",function(a){null!=
this.syncCallbackFunctionName&&(J.util.Logger.info("JSVApp.syncToJmol JSV>Jmol "+a),this.appletFrame.callToJavaScript(this.syncCallbackFunctionName,[this.viewer.fullName,a]))},"~S");e(c$,"setVisible",function(a){this.appletFrame.setPanelVisible(a)},"~B");e(c$,"siUpdateBoolean",function(){},"JSV.common.ScriptToken,~B");e(c$,"siCheckCallbacks",function(){this.checkCallbacks()},"~S");e(c$,"siSetNode",function(a){a.jsvp!==this.viewer.selectedPanel&&this.siSetSelectedPanel(a.jsvp);this.siSendPanelChange(a.jsvp);
this.appletFrame.validateContent(2);this.siValidateAndRepaint()},"JSV.common.PanelNode,~B");e(c$,"siCloseSource",function(a){this.viewer.closeSource(a)},"JSV.source.JDXSource");e(c$,"setCursor",function(a){this.viewer.apiPlatform.setCursor(a,this.appletFrame)},"~N");e(c$,"siGetAutoCombine",function(){return this.interfaceOverlaid});e(c$,"siCreateSource",function(a,b){return JSV.source.FileReader.createJDXSource(JSV.common.JSVFileManager.getBufferedReaderForString(a),b,this.obscureTitleFromUser===
Boolean.TRUE,this.loadImaginary,-1,-1)},"~S,~S,~N,~N");e(c$,"siGetNewJSVPanel2",function(a){a=this.appletFrame.getJSVPanel(this.viewer,a,this.initialStartIndex,this.initialEndIndex);this.initialEndIndex=this.initialStartIndex=-1;a.getPanelData().addListener(this);this.viewer.parameters.setFor(a,null,!0);return a},"JU.List");e(c$,"siGetNewJSVPanel",function(a){if(null==a)return this.initialEndIndex=this.initialStartIndex=-1,null;var b=new JU.List;b.addLast(a);a=this.appletFrame.getJSVPanel(this.viewer,
b,this.initialStartIndex,this.initialEndIndex);a.getPanelData().addListener(this);this.viewer.parameters.setFor(a,null,!0);return a},"JSV.common.JDXSpectrum");e(c$,"siGetNewPanelNode",function(a,b,d,c){return new JSV.common.PanelNode(a,b,d,c)},"~S,~S,JSV.source.JDXSource,JSV.api.JSVPanel");e(c$,"siGetAutoShowLegend",function(){return!1});e(c$,"siSetReturnFromJmolModel",function(a){this.returnFromJmolModel=a},"~S");e(c$,"siGetReturnFromJmolModel",function(){return this.returnFromJmolModel});e(c$,"siSetPropertiesFromPreferences",
function(a){this.autoIntegrate&&a.getPanelData().integrateAll(this.viewer.parameters)},"JSV.api.JSVPanel,~B");e(c$,"siSetLoaded",function(){},"~S,~S");e(c$,"siSetMenuEnables",function(){},"JSV.common.PanelNode,~B");e(c$,"siSetRecentURL",function(){},"~S");e(c$,"siUpdateRecentMenus",function(){},"~S");e(c$,"siExecTest",function(){this.loadInline('##TITLE= Acetophenone\n##JCAMP-DX= 5.01\n##DATA TYPE= MASS SPECTRUM\n##DATA CLASS= XYPOINTS\n##ORIGIN= UWI, Mona, JAMAICA\n##OWNER= public domain\n##LONGDATE= 2012/02/19 22:20:06.0416 -0600 $$ export date from JSpecView\n##BLOCK_ID= 4\n##$URL= http://wwwchem.uwimona.edu.jm/spectra\n##SPECTROMETER/DATA SYSTEM= Finnigan\n##.INSTRUMENT PARAMETERS= LOW RESOLUTION\n##.SPECTROMETER TYPE= TRAP\n##.INLET= GC\n##.IONIZATION MODE= EI+\n##MOLFORM= C 8 H 8 O\n##$MODELS= \n<Models>\n<ModelData id="acetophenone" type="MOL">\nacetophenone\nDSViewer          3D                             0\n\n17 17  0  0  0  0  0  0  0  0999 V2000\n-1.6931    0.0078    0.0000 C   0  0  0  0  0  0  0  0  0  1\n-0.2141    0.0078    0.0000 C   0  0  0  0  0  0  0  0  0  2\n2.5839    0.0872    0.0000 C   0  0  0  0  0  0  0  0  0  3\n0.4615    1.2373   -0.0005 C   0  0  0  0  0  0  0  0  0  4\n0.5257   -1.1809    0.0001 C   0  0  0  0  0  0  0  0  0  5\n1.9188   -1.1393    0.0005 C   0  0  0  0  0  0  0  0  0  6\n1.8539    1.2756   -0.0001 C   0  0  0  0  0  0  0  0  0  7\n-0.1262    2.1703   -0.0009 H   0  0  0  0  0  0  0  0  0  8\n0.0144   -2.1556    0.0002 H   0  0  0  0  0  0  0  0  0  9\n2.4947   -2.0764    0.0009 H   0  0  0  0  0  0  0  0  0 10\n2.3756    2.2439   -0.0001 H   0  0  0  0  0  0  0  0  0 11\n3.6838    0.1161    0.0003 H   0  0  0  0  0  0  0  0  0 12\n-2.3403    1.0639    0.0008 O   0  0  0  0  0  0  0  0  0 13\n-2.3832   -1.3197   -0.0010 C   0  0  0  0  0  0  0  0  0 14\n-2.0973   -1.8988    0.9105 H   0  0  0  0  0  0  0  0  0 15\n-2.0899   -1.9018   -0.9082 H   0  0  0  0  0  0  0  0  0 16\n-3.4920   -1.1799   -0.0059 H   0  0  0  0  0  0  0  0  0 17\n1  2  1  0  0  0\n2  5  4  0  0  0\n2  4  4  0  0  0\n3 12  1  0  0  0\n4  7  4  0  0  0\n5  6  4  0  0  0\n6 10  1  0  0  0\n6  3  4  0  0  0\n7  3  4  0  0  0\n7 11  1  0  0  0\n8  4  1  0  0  0\n9  5  1  0  0  0\n13  1  2  0  0  0\n14 16  1  0  0  0\n14  1  1  0  0  0\n14 15  1  0  0  0\n17 14  1  0  0  0\nM  END\n</ModelData>\n<ModelData id="2" type="MOL">\nacetophenone m/z 120\nDSViewer          3D                             0\n\n17 17  0  0  0  0  0  0  0  0999 V2000\n-1.6931    0.0078    0.0000 C   0  0  0  0  0  0  0  0  0  1\n-0.2141    0.0078    0.0000 C   0  0  0  0  0  0  0  0  0  2\n2.5839    0.0872    0.0000 C   0  0  0  0  0  0  0  0  0  3\n0.4615    1.2373   -0.0005 C   0  0  0  0  0  0  0  0  0  4\n0.5257   -1.1809    0.0001 C   0  0  0  0  0  0  0  0  0  5\n1.9188   -1.1393    0.0005 C   0  0  0  0  0  0  0  0  0  6\n1.8539    1.2756   -0.0001 C   0  0  0  0  0  0  0  0  0  7\n-0.1262    2.1703   -0.0009 H   0  0  0  0  0  0  0  0  0  8\n0.0144   -2.1556    0.0002 H   0  0  0  0  0  0  0  0  0  9\n2.4947   -2.0764    0.0009 H   0  0  0  0  0  0  0  0  0 10\n2.3756    2.2439   -0.0001 H   0  0  0  0  0  0  0  0  0 11\n3.6838    0.1161    0.0003 H   0  0  0  0  0  0  0  0  0 12\n-2.3403    1.0639    0.0008 O   0  0  0  0  0  0  0  0  0 13\n-2.3832   -1.3197   -0.0010 C   0  0  0  0  0  0  0  0  0 14\n-2.0973   -1.8988    0.9105 H   0  0  0  0  0  0  0  0  0 15\n-2.0899   -1.9018   -0.9082 H   0  0  0  0  0  0  0  0  0 16\n-3.4920   -1.1799   -0.0059 H   0  0  0  0  0  0  0  0  0 17\n1  2  1  0  0  0\n2  5  4  0  0  0\n2  4  4  0  0  0\n3 12  1  0  0  0\n4  7  4  0  0  0\n5  6  4  0  0  0\n6 10  1  0  0  0\n6  3  4  0  0  0\n7  3  4  0  0  0\n7 11  1  0  0  0\n8  4  1  0  0  0\n9  5  1  0  0  0\n13  1  2  0  0  0\n14 16  1  0  0  0\n14  1  1  0  0  0\n14 15  1  0  0  0\n17 14  1  0  0  0\nM  END\nacetophenone m/z 105\n\ncreated with ArgusLab version 4.0.1\n13 13  0  0  0  0  0  0  0  0  0 V2000\n-1.6931    0.0078    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n-0.2141    0.0078    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n2.5839    0.0872    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n0.4615    1.2373   -0.0005 C   0  0  0  0  0  0  0  0  0  0  0  0\n0.5257   -1.1809    0.0001 C   0  0  0  0  0  0  0  0  0  0  0  0\n1.9188   -1.1393    0.0005 C   0  0  0  0  0  0  0  0  0  0  0  0\n1.8539    1.2756   -0.0001 C   0  0  0  0  0  0  0  0  0  0  0  0\n-2.3403    1.0639    0.0008 O   0  0  0  0  0  0  0  0  0  0  0  0\n-0.1262    2.1703   -0.0009 H   0  0  0  0  0  0  0  0  0  0  0  0\n0.0144   -2.1556    0.0002 H   0  0  0  0  0  0  0  0  0  0  0  0\n2.4947   -2.0764    0.0009 H   0  0  0  0  0  0  0  0  0  0  0  0\n2.3756    2.2439   -0.0001 H   0  0  0  0  0  0  0  0  0  0  0  0\n3.6838    0.1161    0.0003 H   0  0  0  0  0  0  0  0  0  0  0  0\n1  2  1  0  0  0  0\n1  8  2  0  0  0  0\n2  4  4  0  0  0  0\n2  5  4  0  0  0  0\n3  6  4  0  0  0  0\n3  7  4  0  0  0  0\n3 13  1  0  0  0  0\n4  7  4  0  0  0  0\n4  9  1  0  0  0  0\n5  6  4  0  0  0  0\n5 10  1  0  0  0  0\n6 11  1  0  0  0  0\n7 12  1  0  0  0  0\nM  END\nacetophenone m/z 77\n\ncreated with ArgusLab version 4.0.1\n11 11  0  0  0  0  0  0  0  0  0 V2000\n-0.2141    0.0078    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n2.5839    0.0872    0.0000 C   0  0  0  0  0  0  0  0  0  0  0  0\n0.4615    1.2373   -0.0005 C   0  0  0  0  0  0  0  0  0  0  0  0\n0.5257   -1.1809    0.0001 C   0  0  0  0  0  0  0  0  0  0  0  0\n1.9188   -1.1393    0.0005 C   0  0  0  0  0  0  0  0  0  0  0  0\n1.8539    1.2756   -0.0001 C   0  0  0  0  0  0  0  0  0  0  0  0\n-0.1262    2.1703   -0.0009 H   0  0  0  0  0  0  0  0  0  0  0  0\n0.0144   -2.1556    0.0002 H   0  0  0  0  0  0  0  0  0  0  0  0\n2.4947   -2.0764    0.0009 H   0  0  0  0  0  0  0  0  0  0  0  0\n2.3756    2.2439   -0.0001 H   0  0  0  0  0  0  0  0  0  0  0  0\n3.6838    0.1161    0.0003 H   0  0  0  0  0  0  0  0  0  0  0  0\n1  3  4  0  0  0  0\n1  4  4  0  0  0  0\n2  5  4  0  0  0  0\n2  6  4  0  0  0  0\n2 11  1  0  0  0  0\n3  6  4  0  0  0  0\n3  7  1  0  0  0  0\n4  5  4  0  0  0  0\n4  8  1  0  0  0  0\n5  9  1  0  0  0  0\n6 10  1  0  0  0  0\nM  END\n</ModelData>\n</Models>\n##$PEAKS= \n<Peaks type="MS" xUnits="M/Z" yUnits="RELATIVE ABUNDANCE" >\n<PeakData id="1" title="molecular ion (~120)" peakShape="sharp" model="2.1"  xMax="121" xMin="119"  yMax="100" yMin="0" />\n<PeakData id="2" title="fragment 1 (~105)" peakShape="sharp" model="2.2"  xMax="106" xMin="104"  yMax="100" yMin="0" />\n<PeakData id="3" title="fragment 2 (~77)" peakShape="sharp" model="2.3"  xMax="78" xMin="76"  yMax="100" yMin="0" />\n</Peaks>\n##XUNITS= M/Z\n##YUNITS= RELATIVE ABUNDANCE\n##XFACTOR= 1E0\n##YFACTOR= 1E0\n##FIRSTX= 0\n##FIRSTY= 0\n##LASTX= 121\n##NPOINTS= 19\n##XYPOINTS= (XY..XY)\n0.000000, 0.000000 \n38.000000, 5.200000 \n39.000000, 8.000000 \n43.000000, 21.900000 \n50.000000, 20.200000 \n51.000000, 41.900000 \n52.000000, 4.000000 \n63.000000, 3.800000 \n74.000000, 6.600000 \n75.000000, 3.700000 \n76.000000, 4.600000 \n77.000000, 100.000000 \n78.000000, 10.400000 \n89.000000, 1.000000 \n91.000000, 1.000000 \n105.000000, 80.800000 \n106.000000, 6.000000 \n120.000000, 23.100000 \n121.000000, 2.000000 \n##END=')},
"~S");e(c$,"siSetFileAsString",function(a){return JSV.common.JSVFileManager.getFileAsString(a)},"~S");e(c$,"siCreateTree",function(a,b){return this.viewer.spectraTree.createTree(this,a,b)},"JSV.source.JDXSource,~A");e(c$,"siGetViewer",function(){return this.viewer});e(c$,"runScript",function(a){this.viewer.runScript(a)},"~S");e(c$,"getScriptQueue",function(){return this.viewer.scriptQueue})}),p("JSV.appletjs"),q(["JSV.api.AppletFrame","$.JSVAppletInterface"],"JSV.appletjs.JSVApplet","java.lang.Boolean java.net.URL java.util.Hashtable JU.PT JSV.app.JSVApp JSV.common.JSVersion JSV.js2d.JsPanel $.JsViewPanel J.util.Logger".split(" "),
function(){c$=w(function(){this.viewer=this.app=null;this.isStandalone=!1;this.htParams=this.viewerOptions=null;u(this,arguments)},JSV.appletjs,"JSVApplet",null,[JSV.api.JSVAppletInterface,JSV.api.AppletFrame]);z(c$,function(a){null==a&&(a=new java.util.Hashtable);this.viewerOptions=a;this.htParams=new java.util.Hashtable;var b;for(a=a.entrySet().iterator();a.hasNext()&&((b=a.next())||1);)this.htParams.put(b.getKey().toLowerCase(),b.getValue());this.init()},"java.util.Map");c(c$,"init",function(){this.app=
new JSV.app.JSVApp(this,!0);this.initViewer();null!=this.app.appletReadyCallbackFunctionName&&null!=this.viewer.fullName&&this.callToJavaScript(this.app.appletReadyCallbackFunctionName,[this.viewer.appletID,this.viewer.fullName,Boolean.TRUE,this])});c(c$,"initViewer",function(){this.viewer=this.app.viewer;this.setLogging();this.viewerOptions.remove("debug");var a=this.viewerOptions.get("display"),a=document.getElementById(a);this.viewer.setDisplay(a);J.util.Logger.info(this.getAppletInfo())});c(c$,
"setLogging",function(){var a=this.getValue("logLevel",this.getBooleanValue("debug",!1)?"5":"4").charCodeAt(0)-48;4!=a&&System.out.println("setting logLevel="+a+' -- To change, use script "set logLevel [0-5]"');J.util.Logger.setLogLevel(a)});c(c$,"getParameter",function(a){a=this.htParams.get(a.toLowerCase());return null==a?null:String.instantialize(a.toString())},"~S");c(c$,"getBooleanValue",function(a,b){var d=this.getValue(a,b?"true":"");return d.equalsIgnoreCase("true")||d.equalsIgnoreCase("on")||
d.equalsIgnoreCase("yes")},"~S,~B");c(c$,"getValue",function(a,b){var d=this.getParameter(a);System.out.println("getValue "+a+" = "+d);return null!=d?d:b},"~S,~S");e(c$,"isPro",function(){return this.app.isPro()});e(c$,"isSigned",function(){return this.app.isSigned()});e(c$,"finalize",function(){System.out.println("JSpecView "+this+" finalized")});c(c$,"destroy",function(){this.app.dispose();this.app=null});c(c$,"getParameter",function(a,b){return this.isStandalone?System.getProperty(a,b):null!=this.getParameter(a)?
this.getParameter(a):b},"~S,~S");e(c$,"getAppletInfo",function(){return"JSpecView Applet "+JSV.common.JSVersion.VERSION});e(c$,"getSolnColour",function(){return this.app.getSolnColour()});e(c$,"getCoordinate",function(){return this.app.getCoordinate()});e(c$,"loadInline",function(a){this.app.loadInline(a)},"~S");c(c$,"$export",function(a,b){return this.app.exportSpectrum(a,b)},"~S,~N");e(c$,"exportSpectrum",function(a,b){return this.app.exportSpectrum(a,b)},"~S,~N");e(c$,"setFilePath",function(a){this.app.setFilePath(a)},
"~S");e(c$,"setSpectrumNumber",function(a){this.app.setSpectrumNumber(a)},"~N");e(c$,"toggleGrid",function(){this.app.toggleGrid()});e(c$,"toggleCoordinate",function(){this.app.toggleCoordinate()});e(c$,"toggleIntegration",function(){this.app.toggleIntegration()});e(c$,"addHighlight",function(a,b,d,c,f,g){this.app.addHighlight(a,b,d,c,f,g)},"~N,~N,~N,~N,~N,~N");e(c$,"removeAllHighlights",function(){this.app.removeAllHighlights()});e(c$,"removeHighlight",function(a,b){this.app.removeHighlight(a,b)},
"~N,~N");e(c$,"reversePlot",function(){this.app.reversePlot()});c(c$,"script",function(a){this.app.initParams(a)},"~S");e(c$,"runScript",function(a){this.app.runScript(a)},"~S");e(c$,"syncScript",function(a){this.app.syncScript(a)},"~S");e(c$,"writeStatus",function(a){this.app.writeStatus(a)},"~S");e(c$,"getPropertyAsJavaObject",function(a){return this.app.getPropertyAsJavaObject(a)},"~S");e(c$,"getPropertyAsJSON",function(a){return this.app.getPropertyAsJSON(a)},"~S");e(c$,"runScriptNow",function(a){return this.app.runScriptNow(a)},
"~S");e(c$,"setDropTargetListener",function(){},"~B,JSV.common.JSViewer");e(c$,"validateContent",function(){},"~N");e(c$,"addNewPanel",function(a){a.viewPanel=new JSV.js2d.JsViewPanel},"JSV.common.JSViewer");e(c$,"newWindow",function(){},"~B");e(c$,"callToJavaScript",function(a,b){var d=JU.PT.split(a,".");try{for(var c=window[d[0]],f=1;f<d.length;f++)c=c[d[f]];return c(b[0],b[1],b[2],b[3],b[4],b[5],b[6],b[7],b[8],b[9])}catch(g){System.out.println(a+" failed "+g)}},"~S,~A");e(c$,"setPanelVisible",
function(){},"~B");e(c$,"getJSVPanel",function(a,b,d,c){return JSV.js2d.JsPanel.getPanelMany(a,b,d,c)},"JSV.common.JSViewer,JU.List,~N,~N");e(c$,"setVisible",function(){},"~B");e(c$,"getDocumentBase",function(){try{return new java.net.URL(ga("java.net.URL"),this.viewerOptions.get("documentBase"),null)}catch(a){if(C(a,java.net.MalformedURLException))return null;throw a;}});e(c$,"repaint",function(){});e(c$,"validate",function(){});e(c$,"doExitJmol",function(){});e(c$,"getApp",function(){return this.app})}),
p("JSV.common"),q(["java.lang.Enum","JSV.common.Coordinate"],"JSV.common.Annotation",["java.lang.Double","JU.CU"],function(){c$=w(function(){this.text="";this.is2D=this.$isPixels=!1;this.offsetY=this.offsetX=0;this.spec=null;u(this,arguments)},JSV.common,"Annotation",JSV.common.Coordinate);c(c$,"setA",function(a,b,d,c,f,g,e,h){this.set(a,b);this.spec=d;this.text=c;this.$isPixels=f;this.is2D=g;this.offsetX=e;this.offsetY=h;return this},"~N,~N,JSV.common.JDXSpectrum,~S,~B,~B,~N,~N");c(c$,"setSpec",
function(a){this.spec=a;return this},"JSV.common.JDXSpectrum");c(c$,"addSpecShift",function(a){this.setXVal(this.getXVal()+a)},"~N");c(c$,"isPixels",function(){return this.$isPixels});e(c$,"toString",function(){return"["+this.getXVal()+", "+this.getYVal()+","+this.text+"]"});c$.getColoredAnnotation=c(c$,"getColoredAnnotation",function(a,b,d,c){var f,g=0,e=1,h=2,k=3,s=d.size();try{switch(s){default:return null;case 1:f=d.get(0);g=e=-1;'"'==f.charAt(0)?(k=0,h=-1):(h=0,k=-1);break;case 2:g=e=-1;f=d.get(0);
'"'==f.charAt(0)?(k=0,h=1):(h=0,k=1);break;case 3:case 4:f=d.get(2),'"'==f.charAt(0)?(k=2,h=4==s?3:-1):(h=2,k=4==s?3:-1),f=d.get(2),'"'==f.charAt(0)?(k=2,h=-1):(h=2,k=-1)}if(null==c&&(0>g||0>e||0>k||0>h))return null;var n=0>g?c.getXVal():Double.$valueOf(d.get(g)).doubleValue(),p=0>e?c.getYVal():Double.$valueOf(d.get(e)).doubleValue(),E=0>h?c.getColor():a.getColor1(JU.CU.getArgbFromString(d.get(h))),m;0>k?m=c.text:(m=d.get(k),'"'==m.charAt(0)&&(m=m.substring(1,m.length-1)));return(new JSV.common.ColoredAnnotation).setCA(n,
p,b,m,E,!1,!1,0,0)}catch(q){if(C(q,Exception))return null;throw q;}},"JSV.api.JSVGraphics,JSV.common.JDXSpectrum,JU.List,JSV.common.Annotation");fa();c$=F(JSV.common.Annotation,"AType",Enum);n(c$,"Integration",0,[]);n(c$,"PeakList",1,[]);n(c$,"Measurements",2,[]);n(c$,"OverlayLegend",3,[]);n(c$,"Views",4,[]);n(c$,"NONE",5,[]);c$=ea()}),p("JSV.common"),q(["JSV.common.Annotation"],"JSV.common.ColoredAnnotation",null,function(){c$=w(function(){this.color=null;u(this,arguments)},JSV.common,"ColoredAnnotation",
JSV.common.Annotation);c(c$,"getColor",function(){return this.color});z(c$,function(){P(this,JSV.common.ColoredAnnotation,[])});c(c$,"setCA",function(a,b,d,c,f,g,e,h,k){this.setA(a,b,d,c,g,e,h,k);this.color=f;return this},"~N,~N,JSV.common.JDXSpectrum,~S,javajs.api.GenericColor,~B,~B,~N,~N")}),p("JSV.common"),q(["JSV.common.Parameters"],"JSV.common.ColorParameters",["java.util.Hashtable","$.StringTokenizer","JU.CU","$.List","JSV.common.ScriptToken"],function(){c$=w(function(){this.plotColors=this.elementColors=
this.displayFontName=this.titleFontName=null;this.isDefault=!1;u(this,arguments)},JSV.common,"ColorParameters",JSV.common.Parameters);z(c$,function(){P(this,JSV.common.ColorParameters,[]);JSV.common.ColorParameters.BLACK=this.getColor3(0,0,0);JSV.common.ColorParameters.RED=this.getColor3(255,0,0);JSV.common.ColorParameters.LIGHT_GRAY=this.getColor3(200,200,200);JSV.common.ColorParameters.DARK_GRAY=this.getColor3(80,80,80);JSV.common.ColorParameters.BLUE=this.getColor3(0,0,255);JSV.common.ColorParameters.WHITE=
this.getColor3(255,255,255);this.elementColors=new java.util.Hashtable;this.setColor(JSV.common.ScriptToken.TITLECOLOR,JSV.common.ColorParameters.BLACK);this.setColor(JSV.common.ScriptToken.UNITSCOLOR,JSV.common.ColorParameters.RED);this.setColor(JSV.common.ScriptToken.SCALECOLOR,JSV.common.ColorParameters.BLACK);this.setColor(JSV.common.ScriptToken.COORDINATESCOLOR,JSV.common.ColorParameters.RED);this.setColor(JSV.common.ScriptToken.GRIDCOLOR,JSV.common.ColorParameters.LIGHT_GRAY);this.setColor(JSV.common.ScriptToken.PLOTCOLOR,
JSV.common.ColorParameters.BLUE);this.setColor(JSV.common.ScriptToken.PLOTAREACOLOR,JSV.common.ColorParameters.WHITE);this.setColor(JSV.common.ScriptToken.BACKGROUNDCOLOR,this.getColor3(192,192,192));this.setColor(JSV.common.ScriptToken.INTEGRALPLOTCOLOR,JSV.common.ColorParameters.RED);this.setColor(JSV.common.ScriptToken.PEAKTABCOLOR,JSV.common.ColorParameters.RED);this.setColor(JSV.common.ScriptToken.HIGHLIGHTCOLOR,JSV.common.ColorParameters.DARK_GRAY);for(var a=0;8>a;a++)JSV.common.ColorParameters.defaultPlotColors[a]=
this.getColorFromString(JSV.common.ColorParameters.defaultPlotColorNames[a]);this.plotColors=Array(8);System.arraycopy(JSV.common.ColorParameters.defaultPlotColors,0,this.plotColors,0,8)});c(c$,"setFor",function(a,b,d){null==b&&(b=this);d&&a.getPanelData().setBooleans(b,null);a=a.getPanelData();null!=a.getCurrentPlotColor(1)&&a.setPlotColors(this.plotColors);a.setColorOrFont(b,null)},"JSV.api.JSVPanel,JSV.common.ColorParameters,~B");c(c$,"set",function(a,b,d){var c=null;switch(b){default:this.setP(a,
b,d);return;case JSV.common.ScriptToken.PLOTCOLORS:null==a?this.getPlotColors(d):a.setPlotColors(this.getPlotColors(d));return;case JSV.common.ScriptToken.BACKGROUNDCOLOR:case JSV.common.ScriptToken.COORDINATESCOLOR:case JSV.common.ScriptToken.GRIDCOLOR:case JSV.common.ScriptToken.HIGHLIGHTCOLOR:case JSV.common.ScriptToken.INTEGRALPLOTCOLOR:case JSV.common.ScriptToken.PEAKTABCOLOR:case JSV.common.ScriptToken.PLOTAREACOLOR:case JSV.common.ScriptToken.PLOTCOLOR:case JSV.common.ScriptToken.SCALECOLOR:case JSV.common.ScriptToken.TITLECOLOR:case JSV.common.ScriptToken.UNITSCOLOR:c=
this.setColorFromString(b,d);break;case JSV.common.ScriptToken.TITLEFONTNAME:case JSV.common.ScriptToken.DISPLAYFONTNAME:c=this.getFontName(b,d)}null!=a&&null!=c&&a.setColorOrFont(this,b)},"JSV.common.PanelData,JSV.common.ScriptToken,~S");c(c$,"getElementColor",function(a){return this.elementColors.get(a)},"JSV.common.ScriptToken");c(c$,"setColor",function(a,b){null!=b&&this.elementColors.put(a,b);return b},"JSV.common.ScriptToken,javajs.api.GenericColor");c(c$,"copy",function(){return this.copy(this.name)});
c(c$,"setElementColors",function(a){this.displayFontName=a.displayFontName;var b;for(a=a.elementColors.entrySet().iterator();a.hasNext()&&((b=a.next())||1);)this.setColor(b.getKey(),b.getValue());return this},"JSV.common.ColorParameters");c(c$,"getColorFromString",function(a){return this.getColor1(JU.CU.getArgbFromString(a))},"~S");c(c$,"getPlotColors",function(a){if(null==a)return this.plotColors[0]=this.getElementColor(JSV.common.ScriptToken.PLOTCOLOR),this.plotColors;a=new java.util.StringTokenizer(a,
",;.- ");var b=new JU.List;try{for(;a.hasMoreTokens();)b.addLast(this.getColorFromString(a.nextToken()))}catch(d){if(C(d,Exception))return null;throw d;}return b.toArray(Array(b.size()))},"~S");c(c$,"setColorFromString",function(a,b){return this.setColor(a,this.getColorFromString(b))},"JSV.common.ScriptToken,~S");c(c$,"getFontName",function(a,b){var d=this.isValidFontName(b);switch(a){case JSV.common.ScriptToken.TITLEFONTNAME:return d?this.titleFontName=b:this.titleFontName;case JSV.common.ScriptToken.DISPLAYFONTNAME:return d?
this.displayFontName=b:this.displayFontName}return null},"JSV.common.ScriptToken,~S");H(c$,"BLACK",null,"RED",null,"LIGHT_GRAY",null,"DARK_GRAY",null,"BLUE",null,"WHITE",null);c$.defaultPlotColors=c$.prototype.defaultPlotColors=Array(8);c$.defaultPlotColorNames=c$.prototype.defaultPlotColorNames="black darkGreen darkred orange magenta cyan maroon darkGray".split(" ")}),p("JSV.common"),c$=F(JSV.common,"CoordComparator",null,java.util.Comparator),e(c$,"compare",function(a,b){return a.getXVal()>b.getXVal()?
1:a.getXVal()<b.getXVal()?-1:0},"JSV.common.Coordinate,JSV.common.Coordinate"),p("JSV.common"),q(["JSV.common.CoordComparator"],"JSV.common.Coordinate",["java.lang.Double","java.util.Arrays","$.StringTokenizer","JU.DF","$.List"],function(){c$=w(function(){this.yVal=this.xVal=0;u(this,arguments)},JSV.common,"Coordinate");z(c$,function(){});c(c$,"set",function(a,b){this.xVal=a;this.yVal=b;return this},"~N,~N");c(c$,"getXVal",function(){return this.xVal});c(c$,"getYVal",function(){return this.yVal});
c(c$,"getXString",function(){return JU.DF.formatDecimalTrimmed(this.xVal,8)});c(c$,"getYString",function(){return JU.DF.formatDecimalTrimmed(this.yVal,8)});c(c$,"setXVal",function(a){this.xVal=a},"~N");c(c$,"setYVal",function(a){this.yVal=a},"~N");c(c$,"copy",function(){return(new JSV.common.Coordinate).set(this.xVal,this.yVal)});c(c$,"equals",function(a){return a.xVal==this.xVal&&a.yVal==this.yVal},"JSV.common.Coordinate");e(c$,"toString",function(){return"["+this.xVal+", "+this.yVal+"]"});c$.isYInRange=
c(c$,"isYInRange",function(a,b,d){return JSV.common.Coordinate.getMinY(a,0,a.length)>=b&&JSV.common.Coordinate.getMaxY(a,0,a.length)>=d},"~A,~N,~N");c$.normalise=c(c$,"normalise",function(a,b,d){var c=Array(a.length),f=JSV.common.Coordinate.getMinY(a,0,a.length);d=(JSV.common.Coordinate.getMaxY(a,0,a.length)-f)/(d-b);for(var g=0;g<a.length;g++)c[g]=(new JSV.common.Coordinate).set(a[g].getXVal(),(a[g].getYVal()-f)/d-b);return c},"~A,~N,~N");c$.reverse=c(c$,"reverse",function(a){for(var b=a.length,
d=0;d<b;d++){var c=a[d];a[d]=a[--b];a[b]=c}return a},"~A");c$.parseDSV=c(c$,"parseDSV",function(a,b,d){var c,f=c=0,g=new JU.List;for(a=new java.util.StringTokenizer(a," \t\n\r\f,;");a.hasMoreTokens();)c=a.nextToken().trim(),f=a.nextToken().trim(),c=Double.parseDouble(c),f=Double.parseDouble(f),c=(new JSV.common.Coordinate).set(c*b,f*d),g.addLast(c);b=Array(g.size());return g.toArray(b)},"~S,~N,~N");c$.deltaX=c(c$,"deltaX",function(a,b,d){return(a-b)/(d-1)},"~N,~N,~N");c$.removeScale=c(c$,"removeScale",
function(a,b,d){JSV.common.Coordinate.applyScale(a,1/b,1/d)},"~A,~N,~N");c$.applyScale=c(c$,"applyScale",function(a,b,d){if(1!=b||1!=d)for(var c=0;c<a.length;c++)a[c].setXVal(a[c].getXVal()*b),a[c].setYVal(a[c].getYVal()*d)},"~A,~N,~N");c$.applyShiftReference=c(c$,"applyShiftReference",function(a,b,d,c,f,g,e){if(!(b>a.length||0>b)){switch(e){case 0:f=a[a.length-b].getXVal()-f*g;break;case 1:f=d-f*g;break;case 2:f=c+f}for(d=0;d<a.length;d++)b=a[d],b.setXVal(b.getXVal()-f),a[d]=b}},"~A,~N,~N,~N,~N,~N,~N");
c$.getMinX=c(c$,"getMinX",function(a,b,d){for(var c=1.7976931348623157E308;b<d;b++){var f=a[b].getXVal();f<c&&(c=f)}return c},"~A,~N,~N");c$.getMinX=c(c$,"getMinX",function(a,b){for(var d=1.7976931348623157E308,c=0;c<a.size();c++){var f=a.get(c).getXYCoords(),f=JSV.common.Coordinate.getMinX(f,b.getStartingPointIndex(c),b.getEndingPointIndex(c));f<d&&(d=f)}return d},"JU.List,JSV.common.ViewData");c$.getMaxX=c(c$,"getMaxX",function(a,b,d){for(var c=-1.7976931348623157E308;b<d;b++){var f=a[b].getXVal();
f>c&&(c=f)}return c},"~A,~N,~N");c$.getMaxX=c(c$,"getMaxX",function(a,b){for(var d=-1.7976931348623157E308,c=0;c<a.size();c++){var f=a.get(c).getXYCoords(),f=JSV.common.Coordinate.getMaxX(f,b.getStartingPointIndex(c),b.getEndingPointIndex(c));f>d&&(d=f)}return d},"JU.List,JSV.common.ViewData");c$.getMinY=c(c$,"getMinY",function(a,b,d){for(var c=1.7976931348623157E308;b<d;b++){var f=a[b].getYVal();f<c&&(c=f)}return c},"~A,~N,~N");c$.getMinYUser=c(c$,"getMinYUser",function(a,b){for(var d=1.7976931348623157E308,
c=0;c<a.size();c++){var f=a.get(c).getUserYFactor(),g=a.get(c).getYRef(),e=a.get(c).getXYCoords(),f=(JSV.common.Coordinate.getMinY(e,b.getStartingPointIndex(c),b.getEndingPointIndex(c))-g)*f+g;f<d&&(d=f)}return d},"JU.List,JSV.common.ViewData");c$.getMaxY=c(c$,"getMaxY",function(a,b,d){for(var c=-1.7976931348623157E308;b<d;b++){var f=a[b].getYVal();f>c&&(c=f)}return c},"~A,~N,~N");c$.getMaxYUser=c(c$,"getMaxYUser",function(a,b){for(var d=-1.7976931348623157E308,c=0;c<a.size();c++){var f=a.get(c).getUserYFactor(),
g=a.get(c).getYRef(),e=a.get(c).getXYCoords(),f=(JSV.common.Coordinate.getMaxY(e,b.getStartingPointIndex(c),b.getEndingPointIndex(c))-g)*f+g;f>d&&(d=f)}return d},"JU.List,JSV.common.ViewData");c$.getYValueAt=c(c$,"getYValueAt",function(a,b){var d=JSV.common.Coordinate.getNearestIndexForX(a,b);if(0==d||d==a.length)return NaN;var c=a[d].getXVal(),f=a[d-1].getXVal(),g=a[d].getYVal(),d=a[d-1].getYVal();return c==f?g:d+(g-d)/(c-f)*(b-f)},"~A,~N");c$.intoRange=c(c$,"intoRange",function(a,b,d){return Math.max(Math.min(a,
d),b)},"~N,~N,~N");c$.intoRange=c(c$,"intoRange",function(a,b,d){return Math.max(Math.min(a,d),b)},"~N,~N,~N");c$.getNearestIndexForX=c(c$,"getNearestIndexForX",function(a,b){var d=(new JSV.common.Coordinate).set(b,0),d=java.util.Arrays.binarySearch(a,d,JSV.common.Coordinate.c);0>d&&(d=-1-d);return 0>d?0:d>a.length-1?a.length-1:d},"~A,~N");c$.findXForPeakNearest=c(c$,"findXForPeakNearest",function(a,b,d){b=JSV.common.Coordinate.getNearestIndexForX(a,b);for(d=d?-1:1;b<a.length-1&&0<d*(a[b+1].yVal-
a[b].yVal);)b++;for(;1<=b&&0<d*(a[b-1].yVal-a[b].yVal);)b--;return 0==b||b==a.length-1?a[b].xVal:JSV.common.Coordinate.parabolicInterpolation(a,b)},"~A,~N,~B");c$.parabolicInterpolation=c(c$,"parabolicInterpolation",function(a,b){var d=a[b-1].yVal,c=a[b+1].yVal;return a[b].xVal+(d-c)/2/(d-2*a[b].yVal+c)*(a[b+1].xVal-a[b].xVal)},"~A,~N");c$.getPickedCoordinates=c(c$,"getPickedCoordinates",function(a,b,d,c){if(null==b)return!1;var f=b.getXVal();d.setXVal(f);d.setYVal(b.getYVal());if(null==c)return!0;
b=JSV.common.Coordinate.getNearestIndexForX(a,f);c.setXVal(a[b].getXVal());c.setYVal(a[b].getYVal());return!0},"~A,JSV.common.Coordinate,JSV.common.Coordinate,JSV.common.Coordinate");c$.shiftX=c(c$,"shiftX",function(a,b){for(var d=a.length;0<=--d;)a[d].xVal+=b},"~A,~N");c$.getNearestXWithYAbove=c(c$,"getNearestXWithYAbove",function(a,b,d,c,f){b=JSV.common.Coordinate.getNearestIndexForX(a,b);var g=c?-1:1;if(f)for(;b<a.length&&0>g*(a[b].yVal-d);)b++;else for(;0<=b&&0>g*(a[b].yVal-d);)b--;return-1==
b||b==a.length?NaN:JSV.common.Coordinate.findXForPeakNearest(a,a[b].getXVal(),c)},"~A,~N,~N,~B,~B");c$.c=c$.prototype.c=new JSV.common.CoordComparator}),p("JSV.common"),q(["java.lang.Enum"],"JSV.common.ExportType",null,function(){c$=F(JSV.common,"ExportType",Enum);c$.getType=c(c$,"getType",function(a){a=a.toUpperCase();if(a.equalsIgnoreCase("Original..."))return JSV.common.ExportType.SOURCE;if(a.startsWith("XML"))return JSV.common.ExportType.AML;for(var b,d=0,c=JSV.common.ExportType.values();d<c.length&&
((b=c[d])||1);d++)if(b.name().equals(a))return b;return JSV.common.ExportType.UNK},"~S");c$.isExportMode=c(c$,"isExportMode",function(a){return JSV.common.ExportType.getType(a)!==JSV.common.ExportType.UNK},"~S");n(c$,"UNK",0,[]);n(c$,"SOURCE",1,[]);n(c$,"DIF",2,[]);n(c$,"FIX",3,[]);n(c$,"SQZ",4,[]);n(c$,"PAC",5,[]);n(c$,"XY",6,[]);n(c$,"DIFDUP",7,[]);n(c$,"PNG",8,[]);n(c$,"JPG",9,[]);n(c$,"SVG",10,[]);n(c$,"SVGI",11,[]);n(c$,"CML",12,[]);n(c$,"AML",13,[]);n(c$,"PDF",14,[])}),p("JSV.common"),q("java.lang.Enum JSV.api.XYScaleConverter java.util.Hashtable JU.BS $.List JSV.common.Coordinate JSV.dialog.JSVDialog".split(" "),
"JSV.common.GraphSet","java.lang.Boolean $.Double $.Float JU.DF $.PT JSV.common.Annotation $.ColorParameters $.ColoredAnnotation $.ImageView $.Integral $.IntegralData $.JDXSpectrum $.Measurement $.MeasurementData $.PanelData $.Parameters $.PeakData $.PeakPickEvent $.PlotWidget $.ScaleData $.ScriptToken $.ViewData J.util.Logger".split(" "),function(){c$=w(function(){this.gs2dLinkedY=this.gs2dLinkedX=null;this.cur1D2Locked=!1;this.spectra=this.highlights=null;this.allowStacking=this.isSplittable=!0;
this.widgets=this.graphsTemp=this.pendingIntegral=this.pendingMeasurement=this.lastAnnotation=this.selectedSpectrumIntegrals=this.selectedSpectrumMeasurements=this.annotations=this.splitPointers=null;this.haveSingleYScale=this.isLinked=!1;this.iSpectrumClicked=this.iSpectrumMovedTo=0;this.iSpectrumSelected=-1;this.stackSelected=!1;this.viewData=this.bsSelected=null;this.reversePlot=!1;this.nSplit=1;this.yStackOffsetPercent=0;this.showAllStacked=!0;this.pd=this.imageView=this.viewList=null;this.sticky2Dcursor=
!1;this.nSpectra=0;this.fracY=this.fracX=1;this.fY0=this.fX0=0;this.cur2Dy=this.cur1D2x2=this.cur1D2x1=this.cur2Dx1=this.cur2Dx0=this.pin2Dy01=this.pin2Dx01=this.pin2Dy1=this.pin2Dy0=this.pin2Dx1=this.pin2Dx0=this.pin1Dy01=this.pin1Dx01=this.pin1Dy1=this.pin1Dy0=this.pin1Dx1=this.pin1Dx0=this.zoomBox2D=this.zoomBox1D=null;this.xPixels0=this.xPixel10=this.yPixels=this.xPixels=this.yPixel000=this.yPixel11=this.xPixel11=this.yPixel00=this.xPixel00=this.yHArrows=this.xHArrows=this.xVArrows=this.yPixel1=
this.xPixel1=this.yPixel0=this.xPixel0=0;this.allowStackedYScale=!0;this.drawXAxisLeftToRight=!1;this.xAxisLeftToRight=!0;this.iPreviousSpectrumClicked=-1;this.zoomEnabled=this.$haveSelectedSpectrum=!1;this.currentZoomIndex=0;this.lastClickX=NaN;this.lastPixelX=2147483647;this.bottom=this.left=this.top=this.right=this.width=this.height=0;this.coordTemp=this.piMouseOver=null;this.FONT_PLAIN=0;this.FONT_BOLD=1;this.FONT_ITALIC=2;this.is2DSpectrum=!1;this.selectedIntegral=this.selectedMeasurement=null;
this.lastXMax=NaN;this.lastSpecClicked=-1;this.inPlotMove=!1;this.xPixelMovedTo2=this.xPixelMovedTo=-1;this.xValueMovedTo=this.yValueMovedTo=0;this.haveLeftRightArrows=!1;this.yPixelPlot1=this.yPixelPlot0=this.xPixelPlot0=this.xPixelPlot1=0;this.nextClickForSetPeak=!1;this.mapX=null;Ga("JSV.common.GraphSet.Highlight")||JSV.common.GraphSet.$GraphSet$Highlight$();this.triggered=!0;this.gMain=this.g2d=this.plotColors=this.image2D=this.jsvp=this.aIntegrationRatios=this.dialogs=null;u(this,arguments)},
JSV.common,"GraphSet",null,JSV.api.XYScaleConverter);Z(c$,function(){this.highlights=new JU.List;this.spectra=new JU.List;this.splitPointers=[0];this.graphsTemp=new JU.List;this.bsSelected=new JU.BS;this.coordTemp=new JSV.common.Coordinate;this.mapX=new java.util.Hashtable});z(c$,function(a){this.pd=a;this.jsvp=a.jsvp;this.g2d=a.g2d},"JSV.common.PanelData");c(c$,"setSpectrumMovedTo",function(a){return this.iSpectrumMovedTo=a},"~N");c(c$,"setSpectrumClicked",function(a){this.stackSelected=this.showAllStacked;
if(0>a||this.iSpectrumClicked!=a)this.lastClickX=NaN,this.lastPixelX=2147483647;this.iSpectrumClicked=this.setSpectrumSelected(this.setSpectrumMovedTo(a))},"~N");c(c$,"setSpectrumSelected",function(a){var b=a!=this.iSpectrumSelected;this.iSpectrumSelected=a;b&&this.getCurrentView();return this.iSpectrumSelected},"~N");c(c$,"closeDialogsExcept",function(a){if(null!=this.dialogs)for(var b,d=this.dialogs.entrySet().iterator();d.hasNext()&&((b=d.next())||1);){var c=b.getValue();y(c,JSV.dialog.JSVDialog)&&
(a===JSV.common.Annotation.AType.NONE||c.getAType()!==a)&&c.setVisible(!1)}},"JSV.common.Annotation.AType");c(c$,"dispose",function(){this.widgets=this.graphsTemp=this.imageView=this.pendingMeasurement=this.lastAnnotation=this.annotations=this.viewList=this.viewData=this.spectra=null;this.disposeImage();if(null!=this.dialogs)for(var a,b=this.dialogs.entrySet().iterator();b.hasNext()&&((a=b.next())||1);){var d=a.getValue();y(d,JSV.dialog.JSVDialog)&&d.dispose()}this.dialogs=null});c(c$,"isDrawNoSpectra",
function(){return-2147483648==this.iSpectrumSelected});c(c$,"getFixedSelectedSpectrumIndex",function(){return Math.max(this.iSpectrumSelected,0)});c(c$,"getSpectrum",function(){return this.getSpectrumAt(this.getFixedSelectedSpectrumIndex()).getCurrentSubSpectrum()});c(c$,"getSpectrumAt",function(a){return this.spectra.get(a)},"~N");c(c$,"getSpectrumIndex",function(a){for(var b=this.spectra.size();0<=--b;)if(this.spectra.get(b)===a)return b;return-1},"JSV.common.JDXSpectrum");c(c$,"addSpec",function(a){this.spectra.addLast(a);
this.nSpectra++},"JSV.common.JDXSpectrum");c(c$,"splitStack",function(a,b){b&&this.isSplittable?(this.nSplit=this.nSpectra,this.showAllStacked=!1,this.setSpectrumClicked(0)):(this.nSplit=1,this.splitPointers[0]=0,this.showAllStacked=this.allowStacking&&!b,this.setSpectrumClicked(-1));this.stackSelected=!1;JSV.common.GraphSet.setFractionalPositions(this.pd,a,JSV.common.PanelData.LinkMode.NONE)},"JU.List,~B");c(c$,"setPositionForFrame",function(a){var b=this.height-50;this.xPixel00=r(this.width*this.fX0);
this.xPixel11=r(this.xPixel00+this.width*this.fracX-1);this.xHArrows=this.xPixel00+25;this.xVArrows=this.xPixel11-r(this.right/2);this.xPixel0=this.xPixel00+r(this.left*(1-this.fX0));this.xPixel10=this.xPixel1=this.xPixel11-this.right;this.xPixels0=this.xPixels=this.xPixel1-this.xPixel0+1;this.yPixel000=(0==this.fY0?25:0)+r(this.height*this.fY0);this.yPixel00=this.yPixel000+r(b*this.fracY*a);this.yPixel11=this.yPixel00+r(b*this.fracY)-1;this.yHArrows=this.yPixel11-12;this.yPixel0=this.yPixel00+r(this.top/
2);this.yPixel1=this.yPixel11-r(this.bottom/2);this.yPixels=this.yPixel1-this.yPixel0+1;null!=this.imageView&&this.is2DSpectrum&&(this.setImageWindow(),this.pd.display1D?(this.xPixels=r(Math.floor(0.8*(this.pd.display1D?1*(this.xPixels0-this.imageView.xPixels)/this.xPixels0:1)*this.xPixels0)),this.xPixel1=this.xPixel0+this.xPixels-1):(this.xPixels=0,this.xPixel1=this.imageView.xPixel0-30))},"~N");c(c$,"hasPoint",function(a,b){return a>=this.xPixel00&&a<=this.xPixel11&&b>=this.yPixel000&&b<=this.yPixel11*
this.nSplit},"~N,~N");c(c$,"isInPlotRegion",function(a,b){return a>=this.xPixel0&&a<=this.xPixel1&&b>=this.yPixel0&&b<=this.yPixel1},"~N,~N");c(c$,"getSplitPoint",function(a){return Math.min(r((a-this.yPixel000)/(this.yPixel11-this.yPixel00)),this.nSplit-1)},"~N");c(c$,"isSplitWidget",function(a,b){return this.isSplittable&&a>=this.xPixel11-20&&b>=this.yPixel00+1&&a<=this.xPixel11-10&&b<=this.yPixel00+11},"~N,~N");c(c$,"initGraphSet",function(a,b){null==JSV.common.GraphSet.veryLightGrey&&(JSV.common.GraphSet.veryLightGrey=
this.g2d.getColor3(200,200,200));this.setPlotColors(JSV.common.ColorParameters.defaultPlotColors);this.xAxisLeftToRight=this.getSpectrumAt(0).shouldDisplayXAxisIncreasing();this.setDrawXAxis();var d=N(this.nSpectra,0),c=N(this.nSpectra,0);this.bsSelected.setBits(0,this.nSpectra);this.allowStackedYScale=!0;0>=b&&(b=2147483647);this.isSplittable=1<this.nSpectra;this.showAllStacked=(this.allowStacking=this.spectra.get(0).isStackable())&&1<this.nSpectra;for(var f=0;f<this.nSpectra;f++){var g=this.spectra.get(f).getXYCoords().length-
1;d[f]=JSV.common.Coordinate.intoRange(a,0,g);c[f]=JSV.common.Coordinate.intoRange(b,0,g);this.allowStackedYScale=(new Boolean(this.allowStackedYScale&(this.spectra.get(f).getYUnits().equals(this.spectra.get(0).getYUnits())&&this.spectra.get(f).getUserYFactor()==this.spectra.get(0).getUserYFactor()))).valueOf()}this.getView(0,0,0,0,d,c,null,null);this.viewList=new JU.List;this.viewList.addLast(this.viewData)},"~N,~N");c(c$,"getView",function(a,b,d,c,f,g,e,h){var k=0==this.graphsTemp.size()?this.spectra:
this.graphsTemp,s=this.getSpectrumAt(0).getSubSpectra(),n=null==s||2==s.size()&&s.get(1).isImaginary(),p=!this.getSpectrumAt(0).is1D();n&&d==c?k=this.spectra:d==c&&(this.viewData=new JSV.common.ViewData(s,d,c,this.getSpectrum().isContinuous()),k=null);null!=k&&(this.viewData=new JSV.common.ViewData(k,d,c,f,g,this.getSpectrumAt(0).isContinuous(),p),a!=b&&this.getScale().setXRange(a,b));null!=e&&(JSV.common.ScaleData.copyScaleFactors(e,this.viewData.getScaleData()),null!=h&&JSV.common.ScaleData.copyYScales(h,
this.viewData.getScaleData()),this.getCurrentView())},"~N,~N,~N,~N,~A,~A,~A,~A");c(c$,"isNearby",function(a,b,d,c){var f=a.getXVal(),g=d.toPixelX(f);a=this.toPixelY(a.getYVal());f=b.getXVal();d=d.toPixelX(f);b=this.toPixelY(b.getYVal());return Math.abs(g-d)+Math.abs(a-b)<c},"JSV.common.Coordinate,JSV.common.Coordinate,JSV.api.XYScaleConverter,~N");c(c$,"setReversePlot",function(a){(this.reversePlot=a)&&this.closeDialogsExcept(JSV.common.Annotation.AType.NONE);this.setDrawXAxis()},"~B");c(c$,"setDrawXAxis",
function(){this.drawXAxisLeftToRight=(new Boolean(this.xAxisLeftToRight^this.reversePlot)).valueOf();for(var a=0;a<this.spectra.size();a++)this.spectra.get(a).setExportXAxisDirection(this.drawXAxisLeftToRight)});c(c$,"fixX",function(a){return JSV.common.Coordinate.intoRange(a,this.xPixel0,this.xPixel1)},"~N");c(c$,"isInTopBar",function(a,b){return a==this.fixX(a)&&b>this.pin1Dx0.yPixel0-2&&b<this.pin1Dx0.yPixel1},"~N,~N");c(c$,"isInTopBar2D",function(a,b){return null!=this.imageView&&a==this.imageView.fixX(a)&&
b>this.pin2Dx0.yPixel0-2&&b<this.pin2Dx0.yPixel1},"~N,~N");c(c$,"isInRightBar",function(a,b){return b==this.fixY(b)&&a>this.pin1Dy0.xPixel1&&a<this.pin1Dy0.xPixel0+2},"~N,~N");c(c$,"isInRightBar2D",function(a,b){return null!=this.imageView&&b==this.fixY(b)&&a>this.pin2Dy0.xPixel1&&a<this.pin2Dy0.xPixel0+2},"~N,~N");c(c$,"getScale",function(){return this.viewData.getScale()});c(c$,"getXPixels",function(){return this.xPixels});c(c$,"getXPixel0",function(){return this.xPixel0});e(c$,"getYPixels",function(){return this.yPixels});
e(c$,"toX",function(a){return null!=this.imageView&&this.imageView.isXWithinRange(a)?this.imageView.toX(a):this.getScale().toX(this.fixX(a),this.xPixel1,this.drawXAxisLeftToRight)},"~N");c(c$,"toX0",function(a){return this.viewList.get(0).getScale().toX0(this.fixX(a),this.xPixel0,this.xPixel1,this.drawXAxisLeftToRight)},"~N");c(c$,"toPixelX",function(a){return this.getScale().toPixelX(a,this.xPixel0,this.xPixel1,this.drawXAxisLeftToRight)},"~N");c(c$,"toPixelX0",function(a){return this.viewList.get(0).getScale().toPixelX0(a,
this.xPixel0,this.xPixel1,this.drawXAxisLeftToRight)},"~N");e(c$,"toY",function(a){return this.getScale().toY(a,this.yPixel0)},"~N");c(c$,"toPixelY",function(a){return this.getScale().toPixelY(a,this.yPixel1)},"~N");c(c$,"toY0",function(a){return this.viewList.get(0).getScale().toY0(this.fixY(a),this.yPixel0,this.yPixel1)},"~N");c(c$,"toPixelY0",function(a){return this.fixY(this.viewList.get(0).getScale().toPixelY0(a,this.yPixel0,this.yPixel1))},"~N");c(c$,"fixY",function(a){return JSV.common.Coordinate.intoRange(a,
this.yPixel0,this.yPixel1)},"~N");c(c$,"toPixelYint",function(a){return this.yPixel1-r(Double.isNaN(a)?-2147483648:this.yPixels*a)},"~N");c(c$,"findAnnotation2D",function(a){for(var b=this.annotations.size();0<=--b;){var d=this.annotations.get(b);if(this.isNearby(d,a,this.imageView,10))return d}return null},"JSV.common.Coordinate");c(c$,"addAnnotation",function(a,b){null==this.annotations&&(this.annotations=new JU.List);for(var d=!1,c=this.annotations.size();0<=--c;)if(a.is2D?this.isNearby(this.annotations.get(c),
a,this.imageView,10):a.equals(this.annotations.get(c)))d=!0,this.annotations.remove(c);0<a.text.length&&(!d||!b)&&this.annotations.addLast(a)},"JSV.common.Annotation,~B");c(c$,"setImageWindow",function(){this.imageView.setPixelWidthHeight(r((this.pd.display1D?0.6:1)*this.xPixels0),this.yPixels);this.imageView.setXY0(this.getSpectrumAt(0),r(Math.floor(this.xPixel10-this.imageView.xPixels)),this.yPixel0)});c(c$,"findNearestMaxMin",function(){if(1<this.nSpectra&&0>this.iSpectrumClicked)return!1;this.xValueMovedTo=
this.getSpectrum().findXForPeakNearest(this.xValueMovedTo);this.setXPixelMovedTo(this.xValueMovedTo,1.7976931348623157E308,0,0);return!0});c(c$,"setXPixelMovedTo",function(a,b,d,c){1.7976931348623157E308==a&&1.7976931348623157E308==b?(this.xPixelMovedTo=d,this.xPixelMovedTo2=c,this.isLinked&&this.sticky2Dcursor&&this.pd.setlinkedXMove(this,this.toX(this.xPixelMovedTo),!1)):(1.7976931348623157E308!=a&&(this.xPixelMovedTo=this.toPixelX(a),this.fixX(this.xPixelMovedTo)!=this.xPixelMovedTo&&(this.xPixelMovedTo=
-1),this.xPixelMovedTo2=-1,1E10!=a&&this.setSpectrumClicked(this.getFixedSelectedSpectrumIndex())),1.7976931348623157E308!=b&&(this.xPixelMovedTo2=this.toPixelX(b)))},"~N,~N,~N,~N");c(c$,"processPendingMeasurement",function(a,b,d){if(this.isInPlotRegion(a,b)){var c=this.toX(a),f=this.toY(b),g=c;switch(d){case 0:this.pendingMeasurement.setPt2(this.toX(a),this.toY(b));break;case 3:case 2:if(0>this.iSpectrumClicked)break;var e=this.spectra.get(this.iSpectrumClicked);this.setScale(this.iSpectrumClicked);
3!=d&&(d=this.findMeasurement(this.selectedSpectrumMeasurements,a,b,1),null!=d?(c=d.getXVal(),f=d.getYVal()):null!=(d=this.findMeasurement(this.selectedSpectrumMeasurements,a,b,2))?(c=d.getXVal2(),f=d.getYVal2()):c=this.getNearestPeak(e,c,f));this.pendingMeasurement=(new JSV.common.Measurement).setM1(c,f,e);this.pendingMeasurement.setPt2(g,f);this.pd.repaint();break;case 1:case -2:case -3:if(null==this.pendingMeasurement)break;this.setScale(this.getSpectrumIndex(this.pendingMeasurement.spec));3!=
d&&this.findNearestMaxMin()&&(a=this.xPixelMovedTo);c=this.toX(a);f=this.toY(b);this.pendingMeasurement.setPt2(c,f);0==this.pendingMeasurement.text.length?this.pendingMeasurement=null:(this.setMeasurement(this.pendingMeasurement),1==d?(this.setSpectrumClicked(this.getSpectrumIndex(this.pendingMeasurement.spec)),this.pendingMeasurement=(new JSV.common.Measurement).setM1(c,f,this.pendingMeasurement.spec)):this.pendingMeasurement=null);this.pd.repaint();break;case 5:this.findNearestMaxMin()?(a=this.getFixedSelectedSpectrumIndex(),
Double.isNaN(this.lastXMax)||this.lastSpecClicked!=a||null==this.pendingMeasurement?(this.lastXMax=this.xValueMovedTo,this.lastSpecClicked=a,this.pendingMeasurement=(new JSV.common.Measurement).setM1(this.xValueMovedTo,this.yValueMovedTo,this.spectra.get(a))):(this.pendingMeasurement.setPt2(this.xValueMovedTo,this.yValueMovedTo),0<this.pendingMeasurement.text.length&&this.setMeasurement(this.pendingMeasurement),this.pendingMeasurement=null,this.lastXMax=NaN)):this.lastXMax=NaN}}else this.pendingMeasurement=
null},"~N,~N,~N");c(c$,"checkIntegralNormalizationClick",function(a,b){if(null==this.selectedSpectrumIntegrals)return!1;var d=this.findMeasurement(this.selectedSpectrumIntegrals,a,b,-5);if(null==d)return!1;this.selectedIntegral=d;this.pd.normalizeIntegral();this.updateDialog(JSV.common.Annotation.AType.Integration,-1);this.setSpectrumClicked(this.getSpectrumIndex(d.spec));return!0},"~N,~N");c(c$,"getNearestPeak",function(a,b,d){var c=JSV.common.Coordinate.getNearestXWithYAbove(a.getXYCoords(),b,d,
a.isInverted(),!1);a=JSV.common.Coordinate.getNearestXWithYAbove(a.getXYCoords(),b,d,a.isInverted(),!0);return Double.isNaN(c)?a:Double.isNaN(a)?c:Math.abs(c-b)<Math.abs(a-b)?c:a},"JSV.common.JDXSpectrum,~N,~N");c(c$,"findMeasurement",function(a,b,d,c){if(null==a||0==a.size())return null;if(0==c){var f=this.findMeasurement(a,b,d,-1);return null!=f||y(a.get(0),JSV.common.Integral)?f:this.findMeasurement(a,b,d,-2)}for(var g=a.size();0<=--g;){var f=a.get(g),e,h,k,s;y(f,JSV.common.Integral)?(e=h=this.toPixelX(f.getXVal2()),
k=this.toPixelYint(f.getYVal()),s=this.toPixelYint(f.getYVal2())):(e=this.toPixelX(f.getXVal()),h=this.toPixelX(f.getXVal2()),k=s=-2==c?this.yPixel1-2:this.toPixelY(f.getYVal()));switch(c){case 1:if(4>Math.abs(b-e)+Math.abs(d-k))return f;break;case 2:if(4>Math.abs(b-h)+Math.abs(d-s))return f;break;case -5:k=s=r((k+s)/2),h=e+20;default:if(JSV.common.GraphSet.isOnLine(b,d,e,k,h,s))return f}}return null},"JSV.common.MeasurementData,~N,~N,~N");c(c$,"setMeasurement",function(a){var b=this.getSpectrumIndex(a.spec),
d=this.getDialog(JSV.common.Annotation.AType.Measurements,b);null==d&&this.addDialog(b,JSV.common.Annotation.AType.Measurements,d=new JSV.common.MeasurementData(JSV.common.Annotation.AType.Measurements,a.spec));d.getData().addLast(a.copyM());this.updateDialog(JSV.common.Annotation.AType.Measurements,-1)},"JSV.common.Measurement");c(c$,"checkArrowUpDownClick",function(a,b){var d=!1,c=this.isArrowClick(a,b,JSV.common.GraphSet.ArrowType.UP)?JSV.common.GraphSet.RT2:this.isArrowClick(a,b,JSV.common.GraphSet.ArrowType.DOWN)?
1/JSV.common.GraphSet.RT2:0;if(0!=c){1<this.nSplit&&this.setSpectrumSelected(this.iSpectrumMovedTo);if((1==this.nSpectra||0<=this.iSpectrumSelected)&&this.spectra.get(this.getFixedSelectedSpectrumIndex()).isTransmittance())c=1/c;this.viewData.scaleSpectrum(null==this.imageView?this.iSpectrumSelected:-2,c);d=!0}else this.isArrowClick(a,b,JSV.common.GraphSet.ArrowType.RESET)&&(this.clearViews(),this.showAllStacked&&!this.stackSelected&&this.closeDialogsExcept(JSV.common.Annotation.AType.NONE),this.viewData.resetScaleFactors(),
this.updateDialogs(),d=!0);d&&(null!=this.imageView&&(this.update2dImage(!1),this.resetPinsFromView()),this.pd.taintedAll=!0);return d},"~N,~N");c(c$,"checkArrowLeftRightClick",function(a,b){if(this.haveLeftRightArrows){var d=this.isArrowClick(a,b,JSV.common.GraphSet.ArrowType.LEFT)?-1:this.isArrowClick(a,b,JSV.common.GraphSet.ArrowType.RIGHT)?1:0;if(0!=d)return this.setSpectrumClicked((this.iSpectrumSelected+d)%this.nSpectra),!0;if(this.isArrowClick(a,b,JSV.common.GraphSet.ArrowType.HOME))return this.showAllStacked?
(this.showAllStacked=!1,this.setSpectrumClicked(this.getFixedSelectedSpectrumIndex())):(this.showAllStacked=this.allowStacking,this.setSpectrumSelected(-1),this.stackSelected=!1),!0}return!1},"~N,~N");c(c$,"isArrowClick",function(a,b,d){switch(d){case JSV.common.GraphSet.ArrowType.UP:case JSV.common.GraphSet.ArrowType.DOWN:case JSV.common.GraphSet.ArrowType.RESET:return d=r((this.yPixel00+this.yPixel11)/2)+15*(d===JSV.common.GraphSet.ArrowType.UP?-1:d===JSV.common.GraphSet.ArrowType.DOWN?1:0),10>
Math.abs(this.xVArrows-a)&&10>Math.abs(d-b);case JSV.common.GraphSet.ArrowType.LEFT:case JSV.common.GraphSet.ArrowType.RIGHT:case JSV.common.GraphSet.ArrowType.HOME:return d=this.xHArrows+15*(d===JSV.common.GraphSet.ArrowType.LEFT?-1:d===JSV.common.GraphSet.ArrowType.RIGHT?1:0),10>Math.abs(d-a)&&10>Math.abs(this.yHArrows-b)}return!1},"~N,~N,JSV.common.GraphSet.ArrowType");c(c$,"setWidgetValueByUser",function(a){var b;b=a===this.cur2Dy?""+this.imageView.toSubspectrumIndex(a.yPixel0):a===this.pin1Dx01?
""+Math.min(this.pin1Dx0.getXVal(),this.pin1Dx1.getXVal())+" - "+Math.max(this.pin1Dx0.getXVal(),this.pin1Dx1.getXVal()):a===this.pin1Dy01?""+Math.min(this.pin1Dy0.getYVal(),this.pin1Dy1.getYVal())+" - "+Math.max(this.pin1Dy0.getYVal(),this.pin1Dy1.getYVal()):a===this.pin2Dx01?""+Math.min(this.pin2Dx0.getXVal(),this.pin2Dx1.getXVal())+" - "+Math.max(this.pin2Dx0.getXVal(),this.pin2Dx1.getXVal()):a===this.pin2Dy01?""+r(Math.min(this.pin2Dy0.getYVal(),this.pin2Dy1.getYVal()))+" - "+r(Math.max(this.pin2Dy0.getYVal(),
this.pin2Dy1.getYVal())):""+a.getValue();b=this.pd.getInput("New value?","Set Slider",b);if(null!=b){b=b.trim();try{if(a===this.pin1Dx01||a===this.pin1Dy01||a===this.pin2Dx01||a===this.pin2Dy01){var d=b.indexOf("-",1);if(!(0>d)){var c=Double.$valueOf(b.substring(0,d)).doubleValue(),f=Double.$valueOf(b.substring(d+1)).doubleValue();a===this.pin1Dx01?this.doZoom(c,this.pin1Dy0.getYVal(),f,this.pin1Dy1.getYVal(),!0,!1,!1,!0,!0):a===this.pin1Dy01?this.doZoom(this.pin1Dx0.getXVal(),c,this.pin1Dx1.getXVal(),
f,null==this.imageView,null==this.imageView,!1,!1,!0):a===this.pin2Dx01?(this.imageView.setView0(this.imageView.toPixelX0(c),this.pin2Dy0.yPixel0,this.imageView.toPixelX0(f),this.pin2Dy1.yPixel0),this.doZoom(c,this.pin1Dy0.getYVal(),f,this.pin1Dy1.getYVal(),!1,!1,!1,!0,!0)):a===this.pin2Dy01&&(this.imageView.setView0(this.pin2Dx0.xPixel0,this.imageView.toPixelY0(c),this.pin2Dx1.xPixel0,this.imageView.toPixelY0(f)),this.doZoom(this.imageView.toX(this.imageView.xPixel0),this.getScale().minY,this.imageView.toX(this.imageView.xPixel0+
this.imageView.xPixels-1),this.getScale().maxY,!1,!1,!1,!1,!0))}}else{var g=Double.$valueOf(b).doubleValue();a.isXtype?(f=a===this.pin1Dx0||a===this.cur2Dx0||a===this.pin2Dx0?this.pin1Dx1.getXVal():this.pin1Dx0.getXVal(),this.doZoom(g,0,f,0,!a.is2D,!1,!1,!0,!0)):a===this.cur2Dy?this.setCurrentSubSpectrum(r(g)):a===this.pin2Dy0||a===this.pin2Dy1?(f=a===this.pin2Dy0?this.pin2Dy1.yPixel0:this.pin2Dy0.yPixel0,this.imageView.setView0(this.pin2Dx0.xPixel0,this.imageView.subIndexToPixelY(r(g)),this.pin2Dx1.xPixel0,
f)):(f=a===this.pin1Dy0?this.pin1Dy1.getYVal():this.pin1Dy0.getYVal(),this.doZoom(this.pin1Dx0.getXVal(),g,this.pin1Dx1.getXVal(),f,null==this.imageView,null==this.imageView,!1,!1,!0))}}catch(e){if(!C(e,Exception))throw e;}}},"JSV.common.PlotWidget");c(c$,"removeAllHighlights",function(a){if(null==a)this.highlights.clear();else for(var b=this.highlights.size();0<=--b;)this.highlights.get(b).spectrum===a&&this.highlights.remove(b)},"JSV.common.JDXSpectrum");c(c$,"setCoordClicked",function(a,b,d){0==
d&&(this.nextClickForSetPeak=!1);if(Double.isNaN(b))return this.pd.coordClicked=null,this.pd.coordsClicked=null;this.pd.coordClicked=(new JSV.common.Coordinate).set(this.lastClickX=b,d);this.pd.coordsClicked=this.getSpectrum().getXYCoords();this.pd.xPixelClicked=this.lastPixelX=a;return this.pd.coordClicked},"~N,~N,~N");c(c$,"setWidgets",function(a,b,d){if(a||null==this.pin1Dx0)null==this.zoomBox1D?this.newPins():this.resetPinPositions();this.setDerivedPins(b);this.setPinSliderPositions(d)},"~B,~N,~B");
c(c$,"newPins",function(){this.zoomBox1D=new JSV.common.PlotWidget("zoomBox1D");this.pin1Dx0=new JSV.common.PlotWidget("pin1Dx0");this.pin1Dx1=new JSV.common.PlotWidget("pin1Dx1");this.pin1Dy0=new JSV.common.PlotWidget("pin1Dy0");this.pin1Dy1=new JSV.common.PlotWidget("pin1Dy1");this.pin1Dx01=new JSV.common.PlotWidget("pin1Dx01");this.pin1Dy01=new JSV.common.PlotWidget("pin1Dy01");this.cur1D2x1=new JSV.common.PlotWidget("cur1D2x1");this.cur1D2x1.color=JSV.common.ScriptToken.PEAKTABCOLOR;this.cur1D2x2=
new JSV.common.PlotWidget("cur1D2x2");this.cur1D2x2.color=JSV.common.ScriptToken.PEAKTABCOLOR;if(null!=this.imageView){this.zoomBox2D=new JSV.common.PlotWidget("zoomBox2D");this.pin2Dx0=new JSV.common.PlotWidget("pin2Dx0");this.pin2Dx1=new JSV.common.PlotWidget("pin2Dx1");this.pin2Dy0=new JSV.common.PlotWidget("pin2Dy0");this.pin2Dy1=new JSV.common.PlotWidget("pin2Dy1");this.pin2Dx01=new JSV.common.PlotWidget("pin2Dx01");this.pin2Dy01=new JSV.common.PlotWidget("pin2Dy01");this.cur2Dx0=new JSV.common.PlotWidget("cur2Dx0");
this.cur2Dx1=new JSV.common.PlotWidget("cur2Dx1");this.cur2Dy=new JSV.common.PlotWidget("cur2Dy");this.pin2Dy0.setY(0,this.imageView.toPixelY0(0));var a=this.getSpectrumAt(0).getSubSpectra().size();this.pin2Dy1.setY(a,this.imageView.toPixelY0(a))}this.setWidgetX(this.pin1Dx0,this.getScale().minX);this.setWidgetX(this.pin1Dx1,this.getScale().maxX);this.setWidgetY(this.pin1Dy0,this.getScale().minY);this.setWidgetY(this.pin1Dy1,this.getScale().maxY);this.widgets=[this.zoomBox1D,this.zoomBox2D,this.pin1Dx0,
this.pin1Dx01,this.pin1Dx1,this.pin1Dy0,this.pin1Dy01,this.pin1Dy1,this.pin2Dx0,this.pin2Dx01,this.pin2Dx1,this.pin2Dy0,this.pin2Dy01,this.pin2Dy1,this.cur2Dx0,this.cur2Dx1,this.cur2Dy,this.cur1D2x1,this.cur1D2x2]});c(c$,"setWidgetX",function(a,b){a.setX(b,this.toPixelX0(b))},"JSV.common.PlotWidget,~N");c(c$,"setWidgetY",function(a,b){a.setY(b,this.toPixelY0(b))},"JSV.common.PlotWidget,~N");c(c$,"resetPinsFromView",function(){null!=this.pin1Dx0&&(this.setWidgetX(this.pin1Dx0,this.getScale().minXOnScale),
this.setWidgetX(this.pin1Dx1,this.getScale().maxXOnScale),this.setWidgetY(this.pin1Dy0,this.getScale().minYOnScale),this.setWidgetY(this.pin1Dy1,this.getScale().maxYOnScale))});c(c$,"resetPinPositions",function(){this.resetX(this.pin1Dx0);this.resetY(this.pin1Dy0);this.resetY(this.pin1Dy1);null==this.imageView?(null!=this.gs2dLinkedX&&this.resetX(this.cur1D2x1),null!=this.gs2dLinkedY&&this.resetX(this.cur1D2x2)):(this.pin2Dy0.setY(this.pin2Dy0.getYVal(),this.imageView.toPixelY0(this.pin2Dy0.getYVal())),
this.pin2Dy1.setY(this.pin2Dy1.getYVal(),this.imageView.toPixelY0(this.pin2Dy1.getYVal())))});c(c$,"resetX",function(a){this.setWidgetX(a,a.getXVal())},"JSV.common.PlotWidget");c(c$,"resetY",function(a){this.setWidgetY(a,a.getYVal())},"JSV.common.PlotWidget");c(c$,"setPinSliderPositions",function(a){this.pin1Dx0.yPixel0=this.pin1Dx1.yPixel0=this.pin1Dx01.yPixel0=this.yPixel0-5;this.pin1Dx0.yPixel1=this.pin1Dx1.yPixel1=this.pin1Dx01.yPixel1=this.yPixel0;this.cur1D2x1.yPixel1=this.cur1D2x2.yPixel1=
this.yPixel0-5;this.cur1D2x1.yPixel0=this.cur1D2x2.yPixel0=this.yPixel1+6;null==this.imageView?(this.pin1Dy0.xPixel0=this.pin1Dy1.xPixel0=this.pin1Dy01.xPixel0=this.xPixel1+5,this.pin1Dy0.xPixel1=this.pin1Dy1.xPixel1=this.pin1Dy01.xPixel1=this.xPixel1):(this.pin1Dy0.xPixel0=this.pin1Dy1.xPixel0=this.pin1Dy01.xPixel0=this.imageView.xPixel1+15,this.pin1Dy0.xPixel1=this.pin1Dy1.xPixel1=this.pin1Dy01.xPixel1=this.imageView.xPixel1+10,this.pin2Dx0.yPixel0=this.pin2Dx1.yPixel0=this.pin2Dx01.yPixel0=this.yPixel0-
5,this.pin2Dx0.yPixel1=this.pin2Dx1.yPixel1=this.pin2Dx01.yPixel1=this.yPixel0,this.pin2Dy0.xPixel0=this.pin2Dy1.xPixel0=this.pin2Dy01.xPixel0=this.imageView.xPixel1+5,this.pin2Dy0.xPixel1=this.pin2Dy1.xPixel1=this.pin2Dy01.xPixel1=this.imageView.xPixel1,this.cur2Dx0.yPixel0=this.cur2Dx1.yPixel0=this.yPixel1+6,this.cur2Dx0.yPixel1=this.cur2Dx1.yPixel1=this.yPixel0-5,this.cur2Dx0.yPixel0=this.cur2Dx1.yPixel0=this.yPixel1+6,this.cur2Dx1.yPixel1=this.cur2Dx1.yPixel1=this.yPixel0-5,this.cur2Dy.xPixel0=
a?r((this.xPixel1+this.imageView.xPixel0)/2):this.imageView.xPixel0-6,this.cur2Dy.xPixel1=this.imageView.xPixel1+5)},"~B");c(c$,"setDerivedPins",function(a){this.triggered=!0;null!=this.gs2dLinkedX&&this.cur1D2x1.setX(this.cur1D2x1.getXVal(),this.toPixelX(this.cur1D2x1.getXVal()));null!=this.gs2dLinkedY&&this.cur1D2x2.setX(this.cur1D2x2.getXVal(),this.toPixelX(this.cur1D2x2.getXVal()));this.pin1Dx01.setX(0,r((this.pin1Dx0.xPixel0+this.pin1Dx1.xPixel0)/2));this.pin1Dy01.setY(0,r((this.pin1Dy0.yPixel0+
this.pin1Dy1.yPixel0)/2));this.pin1Dx01.setEnabled(Math.min(this.pin1Dx0.xPixel0,this.pin1Dx1.xPixel0)>this.xPixel0||Math.max(this.pin1Dx0.xPixel0,this.pin1Dx1.xPixel0)<this.xPixel1);this.pin1Dy01.setEnabled(Math.min(this.pin1Dy0.yPixel0,this.pin1Dy1.yPixel0)>Math.min(this.toPixelY(this.getScale().minY),this.toPixelY(this.getScale().maxY))||Math.max(this.pin1Dy0.yPixel0,this.pin1Dy1.yPixel0)<Math.max(this.toPixelY(this.getScale().minY),this.toPixelY(this.getScale().maxY)));if(null!=this.imageView){var b=
this.pin1Dx0.getXVal();this.cur2Dx0.setX(b,this.imageView.toPixelX(b));b=this.pin1Dx1.getXVal();this.cur2Dx1.setX(b,this.imageView.toPixelX(b));b=this.imageView.toX(this.imageView.xPixel0);this.pin2Dx0.setX(b,this.imageView.toPixelX0(b));b=this.imageView.toX(this.imageView.xPixel1);this.pin2Dx1.setX(b,this.imageView.toPixelX0(b));this.pin2Dx01.setX(0,r((this.pin2Dx0.xPixel0+this.pin2Dx1.xPixel0)/2));b=this.imageView.imageHeight-1-this.imageView.yView1;this.pin2Dy0.setY(b,this.imageView.toPixelY0(b));
b=this.imageView.imageHeight-1-this.imageView.yView2;this.pin2Dy1.setY(b,this.imageView.toPixelY0(b));this.pin2Dy01.setY(0,r((this.pin2Dy0.yPixel0+this.pin2Dy1.yPixel0)/2));this.cur2Dy.yPixel0=this.cur2Dy.yPixel1=this.imageView.subIndexToPixelY(a);this.pin2Dx01.setEnabled(Math.min(this.pin2Dx0.xPixel0,this.pin2Dx1.xPixel0)!=this.imageView.xPixel0||Math.max(this.pin2Dx0.xPixel0,this.pin2Dx1.xPixel1)!=this.imageView.xPixel1);this.pin2Dy01.setEnabled(Math.min(this.pin2Dy0.yPixel0,this.pin2Dy1.yPixel0)!=
this.yPixel0||Math.max(this.pin2Dy0.yPixel0,this.pin2Dy1.yPixel1)!=this.yPixel1)}},"~N");c(c$,"doZoom",function(a,b,d,c,f,g,e,h,k){a==d?(a=this.getScale().minXOnScale,d=this.getScale().maxXOnScale):this.isLinked&&h&&this.pd.doZoomLinked(this,a,d,k,e,f);a>d&&(h=a,a=d,d=h);b>c&&(h=b,b=c,c=h);h=!f&&null!=this.imageView&&(this.imageView.minZ!=b||this.imageView.maxZ!=c);if(this.zoomEnabled||h){if(e){if(!this.getScale().isInRangeX(a)&&!this.getScale().isInRangeX(d))return;this.getScale().isInRangeX(a)?
this.getScale().isInRangeX(d)||(d=this.getScale().maxX):a=this.getScale().minX}this.pd.taintedAll=!0;e=this.viewData.getScaleData();var s=N(this.nSpectra,0),n=N(this.nSpectra,0);this.graphsTemp.clear();var p=this.getSpectrumAt(0).getSubSpectra(),p=null==p||2==p.size();if(this.getSpectrumAt(0).is1D()&&!p){if(this.graphsTemp.addLast(this.getSpectrum()),!JSV.common.ScaleData.setDataPointIndices(this.graphsTemp,a,d,3,s,n))return}else if(!JSV.common.ScaleData.setDataPointIndices(this.spectra,a,d,3,s,n))return;
if(p=b==c)f=!h&&f?f=this.getScale().spectrumScaleFactor:1,1E-4>Math.abs(f-1)&&(b=this.getScale().minYOnScale,c=this.getScale().maxYOnScale);f=null;if(p||g)this.getCurrentView(),f=this.viewData.getNewScales(this.iSpectrumSelected,p,b,c);this.getView(a,d,b,c,s,n,e,f);this.setXPixelMovedTo(1E10,1.7976931348623157E308,0,0);this.setWidgetX(this.pin1Dx0,a);this.setWidgetX(this.pin1Dx1,d);this.setWidgetY(this.pin1Dy0,b);this.setWidgetY(this.pin1Dy1,c);null==this.imageView?this.updateDialogs():(a=this.getSpectrumAt(0).getSubIndex(),
d=this.imageView.fixSubIndex(a),d!=a&&this.setCurrentSubSpectrum(d),h&&this.update2dImage(!1));k&&this.addCurrentZoom()}},"~N,~N,~N,~N,~B,~B,~B,~B,~B");c(c$,"updateDialogs",function(){this.updateDialog(JSV.common.Annotation.AType.PeakList,-1);this.updateDialog(JSV.common.Annotation.AType.Measurements,-1)});c(c$,"setCurrentSubSpectrum",function(a){var b=this.getSpectrumAt(0);a=b.setCurrentSubSpectrum(a);b.isForcedSubset()&&this.viewData.setXRangeForSubSpectrum(this.getSpectrum().getXYCoords());this.pd.notifySubSpectrumChange(a,
this.getSpectrum())},"~N");c(c$,"addCurrentZoom",function(){if(this.viewList.size()>this.currentZoomIndex+1)for(var a=this.viewList.size()-1;a>this.currentZoomIndex;a--)this.viewList.remove(a);this.viewList.addLast(this.viewData);this.currentZoomIndex++});c(c$,"setZoomTo",function(a){this.currentZoomIndex=a;this.viewData=this.viewList.get(a);this.resetPinsFromView()},"~N");c(c$,"clearViews",function(){this.isLinked&&this.pd.clearLinkViews(this);this.setZoom(0,0,0,0);for(var a=this.viewList.size();1<=
--a;)this.viewList.remove(a)});c(c$,"drawAll",function(a,b,d,c,f){this.g2d=this.pd.g2d;this.gMain=a;var g=this.getSpectrumAt(0).getSubIndex();this.is2DSpectrum=!this.getSpectrumAt(0).is1D()&&(this.isLinked||this.pd.getBoolean(JSV.common.ScriptToken.DISPLAY2D))&&(null!=this.imageView||this.get2DImage());null!=this.imageView&&f&&(this.pd.isPrinting&&this.g2d!==this.pd.g2d0&&this.g2d.newGrayScaleImage(a,this.image2D,this.imageView.imageWidth,this.imageView.imageHeight,this.imageView.getBuffer()),this.is2DSpectrum&&
this.setPositionForFrame(d),this.draw2DImage());var e=this.stackSelected||!this.showAllStacked?this.iSpectrumSelected:-1,h=!this.showAllStacked||1==this.nSpectra||0<=e,k=null==this.imageView||this.pd.display1D,s=0<=e?1:0,n=this.getFixedSelectedSpectrumIndex();if(k&&f&&(this.fillBox(a,this.xPixel0,this.yPixel0,this.xPixel1,this.yPixel1,JSV.common.ScriptToken.PLOTAREACOLOR),0>e)){h=!0;for(e=0;e<this.nSpectra;e++)this.doPlot(e,d)&&0!=s++&&(h=(new Boolean(h&this.viewData.areYScalesSame(e-1,e))).valueOf())}var p=
1==this.nSpectra?0:!this.showAllStacked?this.iSpectrumMovedTo:this.iSpectrumSelected;if(f){var e=!this.isLinked&&this.isSplittable&&(!this.isSplittable||1==this.nSplit||this.pd.currentSplitPoint==d),E=this.pd.isCurrentGraphSet(this)&&this.zoomEnabled&&this.spectra.get(0).isScalable()&&(e||1==this.nSpectra)&&(1==this.nSplit||this.pd.currentSplitPoint==this.iSpectrumMovedTo)&&!this.isDrawNoSpectra();this.drawFrame(a,p,e,this.isSplittable,E)}if(this.pd.isCurrentGraphSet(this)&&d==this.pd.currentSplitPoint&&
(2>s||0<=this.iSpectrumSelected))this.$haveSelectedSpectrum=!0;this.haveSingleYScale=this.showAllStacked&&1<this.nSpectra?this.allowStackedYScale&&h:!0;if(k){h=Y(this.yPixels*(this.yStackOffsetPercent/100));this.haveLeftRightArrows=!1;for(E=e=0;e<this.nSpectra;e++)if(this.doPlot(e,d)){var p=this.stackSelected&&0<=this.iSpectrumSelected&&this.iSpectrumSelected!=e,m=!this.reversePlot&&this.getShowAnnotation(JSV.common.Annotation.AType.Integration,e)&&(!this.showAllStacked||this.iSpectrumSelected==e)?
this.getDialog(JSV.common.Annotation.AType.Integration,e).getData():null;this.setScale(e);var q=this.spectra.get(e);1<this.nSplit&&(n=e);var r=!p&&(1==this.nSplit||this.showAllStacked||this.iSpectrumSelected==d),t=r&&this.$haveSelectedSpectrum&&e==n;r&&(this.resetPinsFromView(),this.drawWidgets(b,g,c,k,t,!1));this.haveSingleYScale&&(e==n&&f)&&(this.drawGrid(a),this.pd.isPrinting&&1<this.nSplit&&this.drawSpectrumSource(a,e));r&&this.drawWidgets(b,g,!1,k,t,!0);this.haveSingleYScale&&(!this.isDrawNoSpectra()&&
e==n&&(1==this.nSpectra||0<=this.iSpectrumSelected))&&this.drawHighlightsAndPeakTabs(b,e);if(f){if((1==s&&0>this.iSpectrumSelected||this.iSpectrumSelected==e&&this.pd.isCurrentGraphSet(this))&&this.pd.titleOn&&!this.pd.titleDrawn)this.pd.drawTitle(a,this.height,this.width,this.pd.getDrawTitle(this.pd.isPrinting)),this.pd.titleDrawn=!0;this.haveSingleYScale&&e==n&&(this.pd.getBoolean(JSV.common.ScriptToken.YSCALEON)&&this.drawYScale(a,this),this.pd.getBoolean(JSV.common.ScriptToken.YUNITSON)&&this.drawYUnits(a));
this.drawSpectrum(a,e,E,p,m)}this.drawMeasurements(b,e);null!=this.pendingMeasurement&&this.pendingMeasurement.spec===q&&this.drawMeasurement(b,this.pendingMeasurement);(1<this.nSplit?e==this.iSpectrumMovedTo:this.isLinked||e==n)&&(!this.pd.isPrinting&&0<=this.xPixelMovedTo&&q.isContinuous())&&this.drawSpectrumPointer(b,q,m);1<this.nSpectra&&(1==this.nSplit&&this.pd.isCurrentGraphSet(this)&&f)&&(this.haveLeftRightArrows=!0,this.pd.isPrinting||(this.setScale(0),p=this.iSpectrumSelected,2!=this.nSpectra&&
(this.setPlotColor(a,(p+this.nSpectra-1)%this.nSpectra),this.fillArrow(a,JSV.common.GraphSet.ArrowType.LEFT,this.yHArrows,this.xHArrows-9,!0),this.setCurrentBoxColor(a),this.fillArrow(a,JSV.common.GraphSet.ArrowType.LEFT,this.yHArrows,this.xHArrows-9,!1)),0<=p&&(this.setPlotColor(a,p),this.fillCircle(a,this.xHArrows,this.yHArrows,!0)),this.setCurrentBoxColor(a),this.fillCircle(a,this.xHArrows,this.yHArrows,!1),this.setPlotColor(a,(p+1)%this.nSpectra),this.fillArrow(a,JSV.common.GraphSet.ArrowType.RIGHT,
this.yHArrows,this.xHArrows+9,!0),this.setCurrentBoxColor(a),this.fillArrow(a,JSV.common.GraphSet.ArrowType.RIGHT,this.yHArrows,this.xHArrows+9,!1)));E-=h}f&&(this.pd.getBoolean(JSV.common.ScriptToken.XSCALEON)&&this.drawXScale(a,this),this.pd.getBoolean(JSV.common.ScriptToken.XUNITSON)&&this.drawXUnits(a))}else f&&(this.pd.getBoolean(JSV.common.ScriptToken.XSCALEON)&&this.drawXScale(a,this.imageView),this.pd.getBoolean(JSV.common.ScriptToken.YSCALEON)&&this.drawYScale(a,this.imageView),0<=g&&this.draw2DUnits(a)),
this.drawWidgets(b,g,c,k,!0,!1),this.drawWidgets(b,g,c,k,!0,!0);null!=this.annotations&&this.drawAnnotations(b,this.annotations,null)},"~O,~O,~N,~B,~B");c(c$,"drawSpectrumSource",function(a,b){this.pd.printFilePath(a,this.pd.thisWidth-this.pd.right,this.yPixel0,this.spectra.get(b).getFilePath())},"~O,~N");c(c$,"doPlot",function(a,b){var d=this.stackSelected&&0<=this.iSpectrumSelected&&this.iSpectrumSelected!=a,c=this.showAllStacked||-1==this.iSpectrumSelected||this.iSpectrumSelected==a;return 1<this.nSplit?
a==b:c&&(!this.pd.isPrinting||!d)},"~N,~N");c(c$,"drawSpectrumPointer",function(a,b,d){this.setColorFromToken(a,JSV.common.ScriptToken.PEAKTABCOLOR);var c=this.pd.integralShiftMode;null!=d&&((!this.pd.ctrlPressed||this.pd.isIntegralDrag)&&!this.isOnSpectrum(this.pd.mouseX,this.pd.mouseY,-1)?d=null:0==c&&(c=this.getShiftMode(this.pd.mouseX,this.pd.mouseY)));var f=this.yValueMovedTo;this.yValueMovedTo=null==d?b.getYValueAt(this.xValueMovedTo):d.getPercentYValueAt(this.xValueMovedTo);this.setCoordStr(this.xValueMovedTo,
this.yValueMovedTo);0!=c?(this.setPlotColor(a,0),b=0>c?this.yPixelPlot0:this.yPixelPlot1,this.drawHandle(a,0>c?this.xPixelPlot1:this.xPixelPlot0,b,!1)):(null!=d&&this.g2d.setStrokeBold(a,!0),Double.isNaN(f)||null!=this.pendingMeasurement?(this.g2d.drawLine(a,this.xPixelMovedTo,this.yPixel0,this.xPixelMovedTo,this.yPixel1),0<=this.xPixelMovedTo2&&this.g2d.drawLine(a,this.xPixelMovedTo2,this.yPixel0,this.xPixelMovedTo2,this.yPixel1),this.yValueMovedTo=NaN):(b=null==d?this.toPixelY(this.yValueMovedTo):
this.toPixelYint(this.yValueMovedTo/100),b==this.fixY(b)&&this.g2d.drawLine(a,this.xPixelMovedTo,b-10,this.xPixelMovedTo,b+10)),null!=d&&this.g2d.setStrokeBold(a,!1))},"~O,JSV.common.JDXSpectrum,JSV.common.IntegralData");c(c$,"setScale",function(a){this.viewData.setScale(a,this.xPixels,this.yPixels,this.spectra.get(a).isInverted())},"~N");c(c$,"draw2DUnits",function(a){var b=this.getSpectrumAt(0).nucleusX,d=this.getSpectrumAt(0).nucleusY;this.setColorFromToken(a,JSV.common.ScriptToken.PLOTCOLOR);
this.drawUnits(a,b,this.imageView.xPixel1+5*this.pd.scalingFactor,this.yPixel1,1,1);this.drawUnits(a,d,this.imageView.xPixel0-5*this.pd.scalingFactor,this.yPixel0,1,0)},"~O");c(c$,"drawPeakTabs",function(a,b){var d=1==this.nSpectra||0<=this.iSpectrumSelected?b.getPeakList():null;if(null!=d&&0<d.size()){null!=this.piMouseOver&&this.piMouseOver.spectrum===b&&this.pd.isMouseUp()?(this.g2d.setGraphicsColor(a,this.g2d.getColor4(240,240,240,140)),this.drawPeak(a,this.piMouseOver,!0),b.setHighlightedPeak(this.piMouseOver)):
b.setHighlightedPeak(null);this.setColorFromToken(a,JSV.common.ScriptToken.PEAKTABCOLOR);for(var c=d.size();0<=--c;)this.drawPeak(a,d.get(c),!1)}},"~O,JSV.common.JDXSpectrum");c(c$,"drawPeak",function(a,b,d){if(!this.pd.isPrinting){var c=b.getXMin(),f=b.getXMax();c!=f&&this.drawBar(a,b,c,f,null,d)}},"~O,JSV.common.PeakInfo,~B");c(c$,"drawWidgets",function(a,b,d,c,f,g){this.setWidgets(d,b,c);if(!this.pd.isPrinting||!(null==this.imageView?!this.cur1D2Locked:this.sticky2Dcursor)){!this.pd.isPrinting&&
!g&&(c?(this.fillBox(a,this.xPixel0,this.pin1Dx0.yPixel1,this.xPixel1,this.pin1Dx1.yPixel1+2,JSV.common.ScriptToken.GRIDCOLOR),this.fillBox(a,this.pin1Dx0.xPixel0,this.pin1Dx0.yPixel1,this.pin1Dx1.xPixel0,this.pin1Dx1.yPixel1+2,JSV.common.ScriptToken.PLOTCOLOR)):(this.fillBox(a,this.imageView.xPixel0,this.pin2Dx0.yPixel1,this.imageView.xPixel1,this.pin2Dx0.yPixel1+2,JSV.common.ScriptToken.GRIDCOLOR),this.fillBox(a,this.pin2Dx0.xPixel0,this.pin2Dx0.yPixel1,this.pin2Dx1.xPixel0,this.pin2Dx1.yPixel1+
2,JSV.common.ScriptToken.PLOTCOLOR),this.fillBox(a,this.pin2Dy0.xPixel1,this.yPixel1,this.pin2Dy1.xPixel1+2,this.yPixel0,JSV.common.ScriptToken.GRIDCOLOR),this.fillBox(a,this.pin2Dy0.xPixel1,this.pin2Dy0.yPixel1,this.pin2Dy1.xPixel1+2,this.pin2Dy1.yPixel0,JSV.common.ScriptToken.PLOTCOLOR)),this.fillBox(a,this.pin1Dy0.xPixel1,this.yPixel1,this.pin1Dy1.xPixel1+2,this.yPixel0,JSV.common.ScriptToken.GRIDCOLOR),f&&this.fillBox(a,this.pin1Dy0.xPixel1,this.pin1Dy0.yPixel1,this.pin1Dy1.xPixel1+2,this.pin1Dy1.yPixel0,
JSV.common.ScriptToken.PLOTCOLOR));for(b=0;b<this.widgets.length;b++)if(d=this.widgets[b],!(null==d||!d.isPinOrCursor&&!this.zoomEnabled)){var e=d===this.cur1D2x1||d===this.cur1D2x2||d===this.cur2Dx0||d===this.cur2Dx1||d===this.cur2Dy;if((d.isPin||!d.isPinOrCursor)!=g){if(d.is2D){if(d===this.cur2Dx0&&!c)continue}else{var h=d===this.pin1Dy0||d===this.pin1Dy1||d===this.pin1Dy01;if(null!=this.imageView&&c==h||h&&!f||d===this.cur1D2x1&&null==this.gs2dLinkedX||d===this.cur1D2x2&&null==this.gs2dLinkedY||
d===this.zoomBox1D&&(this.pd.isIntegralDrag||0!=this.pd.integralShiftMode))if(!this.isLinked||null!=this.imageView)continue}if(!this.pd.isPrinting||e)d.isPinOrCursor?(this.setColorFromToken(a,d.color),this.g2d.drawLine(a,d.xPixel0,d.yPixel0,d.xPixel1,d.yPixel1),d.isVisible=!0,d.isPin&&this.drawHandle(a,d.xPixel0,d.yPixel0,!d.isEnabled)):d.xPixel1!=d.xPixel0&&this.fillBox(a,d.xPixel0,d.yPixel0,d.xPixel1,d.yPixel1,d===this.zoomBox1D&&this.pd.shiftPressed?JSV.common.ScriptToken.ZOOMBOXCOLOR2:JSV.common.ScriptToken.ZOOMBOXCOLOR)}}}},
"~O,~N,~B,~B,~B,~B");c(c$,"drawBar",function(a,b,d,c,f,g){d=this.toPixelX(d);c=this.toPixelX(c);if(d>c){var e=d;d=c;c=e}d=this.fixX(d);c=this.fixX(c);3>c-d&&(d-=2,c+=2);null!=b&&b.setPixelRange(d,c);this.fillBox(a,d,this.yPixel0,c,this.yPixel0+(g?this.yPixels:5),f);null!=b&&!g&&(d=r((d+c)/2),this.fillBox(a,d-1,this.yPixel0,d+1,this.yPixel0+7,f))},"~O,JSV.common.PeakInfo,~N,~N,JSV.common.ScriptToken,~B");c(c$,"drawSpectrum",function(a,b,d,c,f){var g=this.spectra.get(b);this.drawPlot(a,b,g.getXYCoords(),
g.isContinuous(),d,c,null);null!=f&&(this.haveIntegralDisplayed(b)&&this.drawPlot(a,b,this.getIntegrationGraph(b).getXYCoords(),!0,d,!1,f),this.drawIntegralValues(a,b,d));null!=this.getIntegrationRatios(b)&&this.drawAnnotations(a,this.getIntegrationRatios(b),JSV.common.ScriptToken.INTEGRALPLOTCOLOR)},"~O,~N,~N,~B,JSV.common.IntegralData");c(c$,"getMeasurements",function(a,b){var d=this.getDialog(a,b);return null==d||0==d.getData().size()||!d.getState()?null:d.getData()},"JSV.common.Annotation.AType,~N");
c(c$,"drawPlot",function(a,b,d,c,f,g,e){var h=null!=e;e=null==e?null:e.getBitSet();var k=!h&&!g&&null!=this.pendingIntegral&&this.pendingIntegral.spec===this.spectra.get(b);g=g?-2:h?-1:!this.allowStacking?0:b;this.setPlotColor(a,g);var s=!0,n=this.toPixelY(0),k=(new Boolean(k&n==this.fixY(n))).valueOf(),p=this.viewData.getStartingPointIndex(b);b=this.viewData.getEndingPointIndex(b);if(c){b--;var E=!k&&this.g2d.canDoLineTo();E&&this.g2d.doStroke(a,!0);var m=!1;for(c=p;c<=b;c++){var q=d[c],r=d[c+1],
t=h?this.toPixelYint(q.getYVal()):this.toPixelY(q.getYVal());if(-2147483648!=t){var u=h?this.toPixelYint(r.getYVal()):this.toPixelY(r.getYVal());if(-2147483648!=u){var v=this.toPixelX(q.getXVal()),w=this.toPixelX(r.getXVal()),t=this.fixY(f+t),u=this.fixY(f+u);h&&(c==p&&(this.xPixelPlot1=v,this.yPixelPlot0=t),this.xPixelPlot0=w,this.yPixelPlot1=u);if(!(w==v&&t==u))if(k&&this.pendingIntegral.overlaps(q.getXVal(),r.getXVal()))this.setColorFromToken(a,JSV.common.ScriptToken.INTEGRALPLOTCOLOR),this.g2d.drawLine(a,
v,n,v,t),this.setPlotColor(a,g);else if(!(t==u&&(t==this.yPixel0||t==this.yPixel1)))if(null!=e&&e.get(c)!=s&&(s=e.get(c),!this.pd.isPrinting&&0!=this.pd.integralShiftMode?this.setPlotColor(a,0):s?this.setColorFromToken(a,JSV.common.ScriptToken.INTEGRALPLOTCOLOR):this.setPlotColor(a,-3)),!this.pd.isPrinting||s)m?this.g2d.lineTo(a,w,u):(this.g2d.drawLine(a,v,t,w,u),m=E)}}}E&&this.g2d.doStroke(a,!1)}else{for(c=p;c<=b;c++)h=d[c],u=this.toPixelY(h.getYVal()),-2147483648!=u&&(v=this.toPixelX(h.getXVal()),
t=this.toPixelY(Math.max(this.getScale().minYOnScale,0)),t=this.fixY(f+t),u=this.fixY(f+u),t==u&&(t==this.yPixel0||t==this.yPixel1)||this.g2d.drawLine(a,v,t,v,u));this.getScale().isYZeroOnScale()&&(d=f+this.toPixelY(this.getScale().spectrumYRef),d==this.fixY(d)&&this.g2d.drawLine(a,this.xPixel1,d,this.xPixel0,d))}},"~O,~N,~A,~B,~N,~B,JSV.common.IntegralData");c(c$,"drawFrame",function(a,b,d,c,f){if(!this.pd.gridOn||this.pd.isPrinting)if(this.setColorFromToken(a,JSV.common.ScriptToken.GRIDCOLOR),this.g2d.drawRect(a,
this.xPixel0,this.yPixel0,this.xPixels,this.yPixels),this.pd.isPrinting)return;this.setCurrentBoxColor(a);f&&(0<=b&&(this.setPlotColor(a,b),this.fillArrow(a,JSV.common.GraphSet.ArrowType.UP,this.xVArrows,r((this.yPixel00+this.yPixel11)/2)-9,!0),this.fillArrow(a,JSV.common.GraphSet.ArrowType.DOWN,this.xVArrows,r((this.yPixel00+this.yPixel11)/2)+9,!0),this.setCurrentBoxColor(a)),this.fillArrow(a,JSV.common.GraphSet.ArrowType.UP,this.xVArrows,r((this.yPixel00+this.yPixel11)/2)-9,!1),this.fillCircle(a,
this.xVArrows,r((this.yPixel00+this.yPixel11)/2),!1),this.fillArrow(a,JSV.common.GraphSet.ArrowType.DOWN,this.xVArrows,r((this.yPixel00+this.yPixel11)/2)+9,!1));if(null==this.imageView&&d){b=this.xPixel00+10;d=this.xPixel11-10;f=this.yPixel00+1;var g=this.yPixel11-2;this.g2d.drawLine(a,b,f,d,f);this.g2d.drawLine(a,d,f,d,g);this.g2d.drawLine(a,b,g,d,g);c&&this.fillBox(a,this.xPixel11-20,this.yPixel00+1,this.xPixel11-10,this.yPixel00+11,null)}},"~O,~N,~B,~B,~B");c(c$,"drawGrid",function(a){if(this.pd.gridOn&&
null==this.imageView){this.setColorFromToken(a,JSV.common.ScriptToken.GRIDCOLOR);var b;if(Double.isNaN(this.getScale().firstX)){b=this.getScale().maxXOnScale+this.getScale().steps[0]/2;for(var d=this.getScale().minXOnScale;d<b;d+=this.getScale().steps[0]){var c=this.toPixelX(d);this.g2d.drawLine(a,c,this.yPixel0,c,this.yPixel1)}}else{b=1.0001*this.getScale().maxXOnScale;for(d=this.getScale().firstX;d<=b;d+=this.getScale().steps[0])c=this.toPixelX(d),this.g2d.drawLine(a,c,this.yPixel0,c,this.yPixel1)}for(d=
this.getScale().firstY;d<this.getScale().maxYOnScale+this.getScale().steps[1]/2;d+=this.getScale().steps[1])b=this.toPixelY(d),b==this.fixY(b)&&this.g2d.drawLine(a,this.xPixel0,b,this.xPixel1,b)}},"~O");c(c$,"drawXScale",function(a,b){this.setColorFromToken(a,JSV.common.ScriptToken.SCALECOLOR);this.pd.isPrinting&&this.g2d.drawLine(a,b.getXPixel0(),this.yPixel1,b.getXPixel0()+b.getXPixels()-1,this.yPixel1);for(var d=this.getScale().precision[0],c=this.pd.setFont(a,b.getXPixels(),0,this.pd.isPrinting?
10:12,!1),f=this.yPixel1,g=this.yPixel1+4*this.pd.scalingFactor,e=this.yPixel1+2*this.pd.scalingFactor,c=c.getHeight(),h=b.toPixelX(this.getScale().steps[0])-b.toPixelX(0),k=Math.abs(0.95*h),s=this.getScale().firstX-this.getScale().steps[0],n=1.0001*(this.getScale().maxXOnScale+this.getScale().steps[0]),p=0;2>p;p++){1==p&&JSV.common.ScaleData.fixScale(this.mapX);for(var E=1E10,m=s;m<=n;m+=this.getScale().steps[0]){var h=b.toPixelX(m),q=Double.$valueOf(m),t;switch(p){case 0:t=JU.DF.formatDecimalDbl(m,
d);this.mapX.put(q,t);this.drawTick(a,h,f,g,b);h=Math.abs(E-m);E=this.getScale().minorTickCounts[0];if(0!=E){h/=E;for(t=1;t<E;t++)this.drawTick(a,b.toPixelX(m-t*h),f,e,b)}E=m;continue;case 1:t=this.mapX.get(q);if(null==t||h!=b.fixX(h))continue;var q=this.pd.getStringWidth(t),u=h+r(q/2)==b.fixX(h+r(q/2))?2:0;0<u&&this.g2d.drawString(a,t,h-r(q/u),g+c);m+=Math.floor(q/k)*this.getScale().steps[0]}}}this.mapX.clear()},"~O,JSV.api.XYScaleConverter");c(c$,"drawTick",function(a,b,d,c,f){b==f.fixX(b)&&this.g2d.drawLine(a,
b,d,b,c)},"~O,~N,~N,~N,JSV.api.XYScaleConverter");c(c$,"drawYScale",function(a,b){var d=b.getScale(),c=d.precision[1],f=this.pd.setFont(a,b.getXPixels(),0,this.pd.isPrinting?10:12,!1).getHeight(),g=d.maxYOnScale+d.steps[1]/2,e=-2147483648;this.setColorFromToken(a,JSV.common.ScriptToken.SCALECOLOR);for(var h=0;2>h;h++){1==h&&JSV.common.ScaleData.fixScale(this.mapX);for(var k=d.firstY;k<g;k+=d.steps[1]){var s=Double.$valueOf(k),n=b.getXPixel0(),p=b.toPixelY(k);if(p==b.fixY(p)){var m;0==h&&this.g2d.drawLine(a,
n,p,n-3*this.pd.scalingFactor,p);if(!(Math.abs(p-e)<=f))switch(e=p,h){case 0:m=JU.DF.formatDecimalDbl(k,c);this.mapX.put(s,m);break;case 1:m=this.mapX.get(s);if(null==m)continue;m.startsWith("0")&&m.contains("E")&&(m="0");this.g2d.drawString(a,m,n-4*this.pd.scalingFactor-this.pd.getStringWidth(m),p+r(f/3))}}}}this.mapX.clear()},"~O,JSV.api.XYScaleConverter");c(c$,"drawXUnits",function(a){var b=this.spectra.get(0).getAxisLabel(!0);null!=b&&this.drawUnits(a,b,this.xPixel1+25*this.pd.scalingFactor,this.yPixel1+
5*this.pd.scalingFactor,1,1)},"~O");c(c$,"drawUnits",function(a,b,d,c,f,g){this.setColorFromToken(a,JSV.common.ScriptToken.UNITSCOLOR);this.pd.setFont(a,(null==this.imageView?this:this.imageView).getXPixels(),2,10,!1);this.g2d.drawString(a,b,r(d-this.pd.getStringWidth(b)*f),r(c+this.pd.getFontHeight()*g))},"~O,~S,~N,~N,~N,~N");c(c$,"drawYUnits",function(a){var b=this.spectra.get(0).getAxisLabel(!1);null!=b&&this.drawUnits(a,b,(this.pd.isPrinting?30:5)*this.pd.scalingFactor,this.yPixel0+(this.pd.isPrinting?
0:5)*this.pd.scalingFactor,0,-1)},"~O");c(c$,"drawHighlightsAndPeakTabs",function(a,b){var d=this.getMeasurements(JSV.common.Annotation.AType.PeakList,b),c=this.spectra.get(b);if(this.pd.isPrinting)null!=d&&(this.setColorFromToken(a,JSV.common.ScriptToken.PEAKTABCOLOR),this.printPeakList(a,c,d));else{if(null==d){for(var f=0;f<this.highlights.size();f++){var g=this.highlights.get(f);g.spectrum===c&&(this.pd.setHighlightColor(g.color),this.drawBar(a,null,g.x1,g.x2,JSV.common.ScriptToken.HIGHLIGHTCOLOR,
!0))}this.drawPeakTabs(a,c)}if(null!=d){c=c.isInverted()?this.yPixel1-10*this.pd.scalingFactor:this.yPixel0;this.setColorFromToken(a,JSV.common.ScriptToken.PEAKTABCOLOR);for(f=d.size();0<=--f;)g=d.get(f),g=this.toPixelX(g.getXVal()),this.g2d.drawLine(a,g,c,g,c+10*this.pd.scalingFactor);this.isVisible(this.getDialog(JSV.common.Annotation.AType.PeakList,b))&&(c=this.toPixelY(d.getThresh()),c==this.fixY(c)&&!this.pd.isPrinting&&this.g2d.drawLine(a,this.xPixel0,c,this.xPixel1,c))}}},"~O,~N");c(c$,"printPeakList",
function(a,b,d){var c=d.getMeasurementListArray(null);if(0!=c.length){this.pd.setFont(a,this.xPixels,0,8,!1);for(var f=this.pd.getFontHeight(),g=N(d.size(),0),e=N(d.size(),0),h=0,k=5*this.pd.scalingFactor,s=10*this.pd.scalingFactor,n=15*this.pd.scalingFactor,p=25*this.pd.scalingFactor,m=0;m<c.length;m++)e[m]=this.toPixelX(Double.parseDouble(c[m][1])),0==m?g[m]=e[m]:(g[m]=Math.max(g[m-1]+f,e[m]+f),h+=g[m]-e[m]);h/=2*c.length;g[0]-h<this.xPixel0+p&&(h=g[0]-(this.xPixel0+p));for(m=0;m<c.length;m++)g[m]-=
h;m=b.isInverted();b=this.pd.getStringWidth("99.9999");for(var h=6<=c[0].length?this.pd.getStringWidth("99.99"):0,p=m?-1:1,q=(m?this.yPixel1:this.yPixel0)+p*(h+b+n),m=0;m<c.length;m++)this.g2d.drawLine(a,g[m],q,g[m],q+k*p),this.g2d.drawLine(a,g[m],q+k*p,e[m],q+s*p),this.g2d.drawLine(a,e[m],q+s*p,e[m],q+n*p),0<h&&0<c[m][4].length&&this.g2d.drawLine(a,r((g[m]+g[m-1])/2),q-b+k,r((g[m]+g[m-1])/2),q-b-k);q-=2*p*this.pd.scalingFactor;0<h&&(this.drawStringRotated(a,-90,g[0]-n,q,"  ppm"),this.drawStringRotated(a,
-90,g[0]-n,q-b-k," Hz"));for(m=d.size();0<=--m;)this.drawStringRotated(a,-90*p,g[m]+r(p*f/3),q,c[m][1]),0<h&&0<c[m][4].length&&(d=r((g[m]+g[m-1])/2)+r(f/3),this.drawStringRotated(a,-90,d,q-b-k,c[m][4]))}},"~O,JSV.common.JDXSpectrum,JSV.common.PeakData");c(c$,"drawStringRotated",function(a,b,d,c,f){this.g2d.drawStringRotated(a,f,d,c,b)},"~O,~N,~N,~N,~S");c(c$,"drawAnnotations",function(a,b,d){this.pd.setFont(a,this.xPixels,1,12,!1);for(var c=b.size();0<=--c;){var f=b.get(c);this.setAnnotationColor(a,
f,d);var e=(f.is2D?this.imageView:this).toPixelX(f.getXVal()),l=f.isPixels()?r(this.yPixel0+10*this.pd.scalingFactor-f.getYVal()):f.is2D?this.imageView.subIndexToPixelY(r(f.getYVal())):this.toPixelY(f.getYVal());this.g2d.drawString(a,f.text,e+f.offsetX*this.pd.scalingFactor,l-f.offsetY*this.pd.scalingFactor)}},"~O,JU.List,JSV.common.ScriptToken");c(c$,"drawIntegralValues",function(a,b,d){var c=this.getMeasurements(JSV.common.Annotation.AType.Integration,b);if(null!=c){this.pd.isPrinting?this.pd.setFont(a,
this.xPixels,0,8,!1):this.pd.setFont(a,this.xPixels,1,12,!1);this.setColorFromToken(a,JSV.common.ScriptToken.INTEGRALPLOTCOLOR);var f=this.pd.getFontHeight();this.g2d.setStrokeBold(a,!0);for(var e=c.size();0<=--e;){var l=c.get(e);if(0!=l.getValue()){var h=this.toPixelX(l.getXVal2()),k=d*this.pd.scalingFactor+this.toPixelYint(l.getYVal()),s=d*this.pd.scalingFactor+this.toPixelYint(l.getYVal2());h!=this.fixX(h)||(k!=this.fixY(k)||s!=this.fixY(s))||(this.pd.isPrinting||this.g2d.drawLine(a,h,k,h,s),this.g2d.drawString(a,
"  "+l.text,h,r((k+s)/2)+r(f/3)))}}this.g2d.setStrokeBold(a,!1)}b==this.getFixedSelectedSpectrumIndex()&&(this.selectedSpectrumIntegrals=c)},"~O,~N,~N");c(c$,"drawMeasurements",function(a,b){var d=this.getMeasurements(JSV.common.Annotation.AType.Measurements,b);if(null!=d)for(var c=d.size();0<=--c;)this.drawMeasurement(a,d.get(c));b==this.getFixedSelectedSpectrumIndex()&&(this.selectedSpectrumMeasurements=d)},"~O,~N");c(c$,"drawMeasurement",function(a,b){if(!(0==b.text.length&&b!==this.pendingMeasurement)){this.pd.setFont(a,
this.xPixels,1,12,!1);this.g2d.setGraphicsColor(a,b===this.pendingMeasurement?this.pd.getColor(JSV.common.ScriptToken.HIGHLIGHTCOLOR):this.pd.BLACK);var d=this.toPixelX(b.getXVal()),c=this.toPixelY(b.getYVal()),f=this.toPixelX(b.getXVal2());if(!Double.isNaN(b.getXVal())&&!(d!=this.fixX(d)||f!=this.fixX(f))){var e=2<=Math.abs(d-f),l=this.getScale().isYZeroOnScale()&&b.spec.isHNMR(),h=r((d+f)/2);this.g2d.setStrokeBold(a,!0);e&&this.g2d.drawLine(a,d,c,f,c);l&&this.g2d.drawLine(a,d+1,this.yPixel1-1,f,
this.yPixel1-1);this.g2d.setStrokeBold(a,!1);e&&this.g2d.drawString(a,b.text,h+b.offsetX,c-b.offsetY);l&&(this.g2d.drawLine(a,d,this.yPixel1,d,this.yPixel1-6*this.pd.scalingFactor),this.g2d.drawLine(a,f,this.yPixel1,f,this.yPixel1-6*this.pd.scalingFactor))}}},"~O,JSV.common.Measurement");c(c$,"getPinSelected",function(a,b){if(null!=this.widgets)for(var d=0;d<this.widgets.length;d++)if(null!=this.widgets[d]&&this.widgets[d].isPinOrCursor&&this.widgets[d].selected(a,b))return this.widgets[d];return null},
"~N,~N");c(c$,"set2DCrossHairs",function(a,b){var d;if(a==this.imageView.fixX(a)&&b==this.fixY(b)&&(this.pin1Dx1.setX(d=this.imageView.toX(a),this.toPixelX(d)),this.cur2Dx1.setX(d,a),this.setCurrentSubSpectrum(this.imageView.toSubspectrumIndex(b)),this.isLinked)){var c=this.imageView.toY(b);this.pd.set2DCrossHairsLinked(this,d,c,!this.sticky2Dcursor)}},"~N,~N");c(c$,"reset2D",function(a){a?(this.imageView.setView0(this.imageView.xPixel0,this.pin2Dy0.yPixel0,this.imageView.xPixel1,this.pin2Dy1.yPixel0),
this.doZoom(0,this.getScale().minY,0,this.getScale().maxY,!0,!1,!1,!1,!0)):this.imageView.setView0(this.pin2Dx0.xPixel0,this.imageView.yPixel0,this.pin2Dx1.xPixel0,this.imageView.yPixel1)},"~B");c(c$,"setAnnotationText",function(a){var b=this.pd.getInput("New text?","Set Label",a.text);if(null==b)return!1;0==b.length?this.annotations.removeObj(a):a.text=b;return!0},"JSV.common.Annotation");c(c$,"checkIntegral",function(a,b,d){var c=this.getDialog(JSV.common.Annotation.AType.Integration,-1);null!=
c&&(a=c.getData().addIntegralRegion(a,b),d&&y(c,JSV.dialog.JSVDialog)&&c.update(null,0,0),this.selectedSpectrumIntegrals=null,this.pendingIntegral=d?null:a)},"~N,~N,~B");c(c$,"setToolTipForPixels",function(a,b){var d=this.getPinSelected(a,b),c=this.getScale().precision[0],f=this.getScale().precision[1];if(null!=d)this.setStartupPinTip()||(d===this.pin1Dx01||d===this.pin2Dx01?c=JU.DF.formatDecimalDbl(Math.min(this.pin1Dx0.getXVal(),this.pin1Dx1.getXVal()),c)+" - "+JU.DF.formatDecimalDbl(Math.max(this.pin1Dx0.getXVal(),
this.pin1Dx1.getXVal()),c):d===this.pin1Dy01?c=JU.DF.formatDecimalDbl(Math.min(this.pin1Dy0.getYVal(),this.pin1Dy1.getYVal()),f)+" - "+JU.DF.formatDecimalDbl(Math.max(this.pin1Dy0.getYVal(),this.pin1Dy1.getYVal()),f):d===this.cur2Dy?(d=this.imageView.toSubspectrumIndex(d.yPixel0),c=this.get2DYLabel(d,c)):c=d===this.pin2Dy01?""+r(Math.min(this.pin2Dy0.getYVal(),this.pin2Dy1.getYVal()))+" - "+r(Math.max(this.pin2Dy0.getYVal(),this.pin2Dy1.getYVal())):d.isXtype?JU.DF.formatDecimalDbl(d.getXVal(),c):
d.is2D?""+r(d.getYVal()):JU.DF.formatDecimalDbl(d.getYVal(),f),this.pd.setToolTipText(c));else{if(null!=this.imageView){if(this.imageView.fixX(a)==a&&this.fixY(b)==b){d=this.imageView.toSubspectrumIndex(b);c=JU.DF.formatDecimalDbl(this.imageView.toX(a),c)+" "+this.getSpectrum().getAxisLabel(!0)+",  "+this.get2DYLabel(d,c);this.pd.setToolTipText(this.pd.display1D?c:"");this.pd.coordStr=c;return}if(!this.pd.display1D){this.pd.setToolTipText("");this.pd.coordStr="";return}}var d=this.toX(this.fixX(a)),
c=null!=this.imageView&&this.imageView.isXWithinRange(a)?this.imageView.toSubspectrumIndex(this.fixY(b)):this.toY(this.fixY(b)),f=this.setCoordStr(d,c),e=this.getFixedSelectedSpectrumIndex();this.isInPlotRegion(a,b)?1!=this.nSpectra&&this.haveIntegralDisplayed(e)&&(c=this.getIntegrationGraph(e).getPercentYValueAt(d),f+=", "+JU.DF.formatDecimalDbl(c,1)):c=NaN;this.pd.setToolTipText(null!=this.pendingMeasurement||null!=this.selectedMeasurement||null!=this.selectedIntegral?this.pd.hasFocus()?"Press ESC to delete "+
(null!=this.selectedIntegral?"integral, DEL to delete all visible, or N to normalize":null==this.pendingMeasurement?'"'+this.selectedMeasurement.text+'" or DEL to delete all visible':"measurement"):"":Double.isNaN(c)?null:f)}},"~N,~N");c(c$,"setCoordStr",function(a,b){var d=JU.DF.formatDecimalDbl(a,this.getScale().precision[0]);this.pd.coordStr="("+d+(this.haveSingleYScale||0<=this.iSpectrumSelected?", "+JU.DF.formatDecimalDbl(b,this.getScale().precision[1]):"")+")";return d},"~N,~N");c(c$,"setStartupPinTip",
function(){if(null==this.pd.startupPinTip)return!1;this.pd.setToolTipText(this.pd.startupPinTip);this.pd.startupPinTip=null;return!0});c(c$,"get2DYLabel",function(a,b){var d=this.getSpectrumAt(0).getSubSpectra().get(a);return JU.DF.formatDecimalDbl(d.getY2D(),b)+(d.y2DUnits.equals("HZ")?" HZ ("+JU.DF.formatDecimalDbl(d.getY2DPPM(),b)+" PPM)":"")},"~N,~N");c(c$,"isOnSpectrum",function(a,b,d){var c=null,f=!0,e=0>d;if(e){c=this.getDialog(JSV.common.Annotation.AType.Integration,-1);if(null==c)return!1;
c=c.getData().getXYCoords();d=this.getFixedSelectedSpectrumIndex()}else{this.setScale(d);var l=this.spectra.get(d),c=l.xyCoords,f=l.isContinuous()}var l=d*Y(this.yPixels*(this.yStackOffsetPercent/100)),h=this.viewData.getStartingPointIndex(d);d=this.viewData.getEndingPointIndex(d);if(f)for(f=h;f<d;f++){var k=c[f],s=c[f+1],h=this.toPixelX(k.getXVal()),m=this.toPixelX(s.getXVal()),k=e?this.toPixelYint(k.getYVal()):this.toPixelY(k.getYVal()),s=e?this.toPixelYint(s.getYVal()):this.toPixelY(s.getYVal());
if(!(-2147483648==k||-2147483648==s))if(k=l+this.fixY(k),s=l+this.fixY(s),JSV.common.GraphSet.isOnLine(a,b,h,k,m,s))return!0}else for(f=h;f<=d;f++)if(e=c[f],s=this.toPixelY(e.getYVal()),-2147483648!=s&&(h=this.toPixelX(e.getXVal()),k=this.toPixelY(Math.max(this.getScale().minYOnScale,0)),k=this.fixY(k),s=this.fixY(s),!(k==s&&(k==this.yPixel0||k==this.yPixel1))&&JSV.common.GraphSet.isOnLine(a,b,h,k,h,s)))return!0;return!1},"~N,~N,~N");c$.distance=c(c$,"distance",function(a,b){return Math.sqrt(a*a+
b*b)},"~N,~N");c$.findCompatibleGraphSet=c(c$,"findCompatibleGraphSet",function(a,b){for(var d=0;d<a.size();d++)if(JSV.common.JDXSpectrum.areXScalesCompatible(b,a.get(d).getSpectrum(),!1,!1))return a.get(d);return null},"JU.List,JSV.common.JDXSpectrum");c$.isGoodEvent=c(c$,"isGoodEvent",function(a,b,d){return null==b?5<Math.abs(a.xPixel1-a.xPixel0)&&5<Math.abs(a.yPixel1-a.yPixel0):d?5<Math.abs(a.xPixel0-b.xPixel0):5<Math.abs(a.yPixel0-b.yPixel0)},"JSV.common.PlotWidget,JSV.common.PlotWidget,~B");
c$.isOnLine=c(c$,"isOnLine",function(a,b,d,c,f,e){var l=Math.abs(d-a);if(2>l&&2>Math.abs(c-b))return!0;var h=f-a;if(2>Math.abs(h)&&2>Math.abs(e-b))return!0;var k=c-e;if(2<Math.abs(k)&&c<b==e<b)return!1;var s=d-f;return 2<Math.abs(s)&&d<a==f<a?!1:JSV.common.GraphSet.distance(l,c-b)+JSV.common.GraphSet.distance(h,b-e)<JSV.common.GraphSet.distance(s,k)+2},"~N,~N,~N,~N,~N,~N");c$.setFractionalPositions=c(c$,"setFractionalPositions",function(a,b,d){var c=b.size(),f=0,e=0;a.isLinked=d!==JSV.common.PanelData.LinkMode.NONE;
if(d===JSV.common.PanelData.LinkMode.NONE){for(var l=0;l<c;l++)d=b.get(l),f+=(d.getSpectrumAt(0).is1D(),1)*d.nSplit;f=1/f;for(l=0;l<c;l++)d=b.get(l),d.isLinked=!1,a=d.getSpectrumAt(0).is1D()?f:1*f,d.fX0=0,d.fY0=e,d.fracX=1,d.fracY=a,e+=a*d.nSplit}else{var f=null,h=-1;if(2==c||3==c)for(l=0;l<c;l++)if(d=b.get(l),!d.getSpectrum().is1D()){f=d;0<=h&&(l=-2);h=l;break}if(-2==h||-1==h&&2!=c)JSV.common.GraphSet.setFractionalPositions(a,b,JSV.common.PanelData.LinkMode.NONE);else for(l=0;l<c;l++)d=b.get(l),
d.isLinked=!0,a=d.getSpectrumAt(0),a.is1D()?(null!=f&&(h=f.getSpectrumAt(0),JSV.common.JDXSpectrum.areLinkableX(a,h)&&(d.gs2dLinkedX=f),JSV.common.JDXSpectrum.areLinkableY(a,h)&&(d.gs2dLinkedY=f)),d.fX0=0,d.fY0=e,d.fracX=null==f?1:0.5,d.fracY=3==c||null==f?0.5:1,e+=0.5):(d.fX0=0.5,d.fY0=0,d.fracX=0.5,d.fracY=1)}},"JSV.common.PanelData,JU.List,JSV.common.PanelData.LinkMode");c(c$,"addAnnotation",function(a,b){if(0==a.size()||1==a.size()&&a.get(0).equalsIgnoreCase("none"))return this.lastAnnotation=
this.annotations=null;4>a.size()&&null==this.lastAnnotation&&(this.lastAnnotation=this.getAnnotation((this.getScale().maxXOnScale+this.getScale().minXOnScale)/2,(this.getScale().maxYOnScale+this.getScale().minYOnScale)/2,b,!1,!1,0,0));var d=this.getAnnotation(a,this.lastAnnotation);if(null==d)return null;if(null==this.annotations&&1==a.size()&&'"'==a.get(0).charAt(0))return d=d.text,this.getSpectrum().setTitle(d),d;this.lastAnnotation=d;this.addAnnotation(d,!1);return null},"JU.List,~S");c(c$,"addHighlight",
function(a,b,d,c){null==d&&(d=this.getSpectrumAt(0));a=Fa(JSV.common.GraphSet.Highlight,this,null,a,b,d,null==c?this.pd.getColor(JSV.common.ScriptToken.HIGHLIGHTCOLOR):c);this.highlights.contains(a)||this.highlights.addLast(a)},"~N,~N,JSV.common.JDXSpectrum,javajs.api.GenericColor");c(c$,"addPeakHighlight",function(a){for(var b=this.spectra.size();0<=--b;){var d=this.spectra.get(b);this.removeAllHighlights(d);if(!(null==a||a.isClearAll()||d!==a.spectrum)){var c=a.toString();if(null!=c){var f=JU.PT.getQuotedAttribute(c,
"xMin"),c=JU.PT.getQuotedAttribute(c,"xMax");if(null==f||null==c)break;f=JU.PT.parseFloat(f);c=JU.PT.parseFloat(c);if(Float.isNaN(f)||Float.isNaN(c))break;this.pd.addHighlight(this,f,c,d,200,200,200,200);d.setSelectedPeak(a);!this.getScale().isInRangeX(f)&&!(this.getScale().isInRangeX(c)||f<this.getScale().minX&&this.getScale().maxX<c)&&this.setZoomTo(0)}}}},"JSV.common.PeakInfo");c(c$,"advanceSubSpectrum",function(a){var b=this.getSpectrumAt(0);a=b.advanceSubSpectrum(a);b.isForcedSubset()&&this.viewData.setXRangeForSubSpectrum(this.getSpectrum().getXYCoords());
this.pd.notifySubSpectrumChange(a,this.getSpectrum())},"~N");c(c$,"checkSpectrumClickedEvent",function(a,b,d){if(this.nextClickForSetPeak)return!1;if(0<d&&this.checkArrowLeftRightClick(a,b))return!0;if(1<d||(null!=this.pendingMeasurement||!this.isInPlotRegion(a,b))||0==d&&(d=this.isOnSpectrum(a,b,-1),this.pd.integralShiftMode=d?this.getShiftMode(a,b):0,this.pd.isIntegralDrag=0==this.pd.integralShiftMode&&(d||this.haveIntegralDisplayed(-1)&&null!=this.findMeasurement(this.getIntegrationGraph(-1),a,
b,0)),System.out.println("pd.isIntegralDrag set in checkSPelick "+this.pd.isIntegralDrag),0!=this.pd.integralShiftMode)||!this.showAllStacked)return!1;this.stackSelected=!1;for(d=0;d<this.nSpectra;d++)if(this.isOnSpectrum(a,b,d))return a=d!=this.iSpectrumSelected,this.setSpectrumClicked(this.iPreviousSpectrumClicked=d),a;if(this.isDialogOpen())return!1;this.setSpectrumClicked(-1);return this.stackSelected=!1},"~N,~N,~N");c(c$,"getShiftMode",function(a,b){return this.isStartEndIntegral(a,!1)?b:this.isStartEndIntegral(a,
!0)?-b:0},"~N,~N");c(c$,"isDialogOpen",function(){return this.isVisible(this.getDialog(JSV.common.Annotation.AType.Integration,-1))||this.isVisible(this.getDialog(JSV.common.Annotation.AType.Measurements,-1))||this.isVisible(this.getDialog(JSV.common.Annotation.AType.PeakList,-1))});c(c$,"isStartEndIntegral",function(a,b){return b?20>this.xPixelPlot1-a:20>a-this.xPixelPlot0},"~N,~B");c(c$,"checkWidgetEvent",function(a,b,d){if(this.zoomEnabled&&this.triggered)if(this.triggered=!1,d)2==this.pd.clickCount&&
null==this.pendingMeasurement?(-1==this.iSpectrumClicked&&0<=this.iPreviousSpectrumClicked&&this.setSpectrumClicked(this.iPreviousSpectrumClicked),this.processPendingMeasurement(a,b,2)):null==this.pendingMeasurement&&(d=this.getPinSelected(a,b),null==d&&(b=this.fixY(b),a<this.xPixel1?(this.pd.shiftPressed&&this.setSpectrumClicked(this.iPreviousSpectrumClicked),a=this.fixX(a),this.zoomBox1D.setX(this.toX(a),a),this.zoomBox1D.yPixel0=b,d=this.zoomBox1D):null!=this.imageView&&a<this.imageView.xPixel1&&
(this.zoomBox2D.setX(this.imageView.toX(a),this.imageView.fixX(a)),this.zoomBox2D.yPixel0=b,d=this.zoomBox2D)),this.pd.thisWidget=d);else if(this.nextClickForSetPeak=!1,d=this.pd.thisWidget,null!=d)if(d===this.zoomBox1D)this.zoomBox1D.xPixel1=this.fixX(a),this.zoomBox1D.yPixel1=this.fixY(b),this.pd.isIntegralDrag&&this.zoomBox1D.xPixel0!=this.zoomBox1D.xPixel1&&this.checkIntegral(this.zoomBox1D.getXVal(),this.toX(this.zoomBox1D.xPixel1),!1);else if(d===this.zoomBox2D)this.zoomBox2D.xPixel1=this.imageView.fixX(a),
this.zoomBox2D.yPixel1=this.fixY(b);else if(d===this.cur2Dy)b=this.fixY(b),this.cur2Dy.yPixel0=this.cur2Dy.yPixel1=b,this.setCurrentSubSpectrum(this.imageView.toSubspectrumIndex(b));else if(!(d===this.cur2Dx0||d===this.cur2Dx1))if(d===this.pin1Dx0||d===this.pin1Dx1||d===this.pin1Dx01){a=this.fixX(a);d.setX(this.toX0(a),a);if(d===this.pin1Dx01){d=a-r((this.pin1Dx0.xPixel0+this.pin1Dx1.xPixel0)/2);a=this.pin1Dx0.xPixel0+d;b=this.pin1Dx1.xPixel0+d;if(0==d||this.fixX(a)!=a||this.fixX(b)!=b)return;this.pin1Dx0.setX(this.toX0(a),
a);this.pin1Dx1.setX(this.toX0(b),b)}this.doZoom(this.pin1Dx0.getXVal(),0,this.pin1Dx1.getXVal(),0,!0,!1,!1,!0,!1)}else if(d===this.pin1Dy0||d===this.pin1Dy1||d===this.pin1Dy01){b=this.fixY(b);d.setY(this.toY0(b),b);if(d===this.pin1Dy01){d=b-r((this.pin1Dy0.yPixel0+this.pin1Dy1.yPixel0)/2)+1;b=this.pin1Dy0.yPixel0+d;a=this.pin1Dy1.yPixel0+d;d=this.toY0(b);var c=this.toY0(a);if(Math.min(d,c)==this.getScale().minY||Math.max(d,c)==this.getScale().maxY)return;this.pin1Dy0.setY(d,b);this.pin1Dy1.setY(c,
a)}this.doZoom(0,this.pin1Dy0.getYVal(),0,this.pin1Dy1.getYVal(),null==this.imageView,null==this.imageView,!1,!1,!1)}else if(d===this.pin2Dx0||d===this.pin2Dx1||d===this.pin2Dx01){a=this.imageView.fixX(a);d.setX(this.imageView.toX0(a),a);if(d===this.pin2Dx01){d=a-r((this.pin2Dx0.xPixel0+this.pin2Dx1.xPixel0)/2)+1;a=this.pin2Dx0.xPixel0+d;b=this.pin2Dx1.xPixel0+d;if(this.imageView.fixX(a)!=a||this.imageView.fixX(b)!=b)return;this.pin2Dx0.setX(this.imageView.toX0(a),a);this.pin2Dx1.setX(this.imageView.toX0(b),
b)}JSV.common.GraphSet.isGoodEvent(this.pin2Dx0,this.pin2Dx1,!0)?(this.imageView.setView0(this.pin2Dx0.xPixel0,this.pin2Dy0.yPixel0,this.pin2Dx1.xPixel0,this.pin2Dy1.yPixel0),this.doZoom(this.pin2Dx0.getXVal(),this.getScale().minY,this.pin2Dx1.getXVal(),this.getScale().maxY,!1,!1,!1,!0,!1)):this.reset2D(!0)}else if(d===this.pin2Dy0||d===this.pin2Dy1||d===this.pin2Dy01){b=this.fixY(b);d.setY(this.imageView.toSubspectrumIndex(b),b);if(d===this.pin2Dy01){d=b-r((this.pin2Dy0.yPixel0+this.pin2Dy1.yPixel0)/
2)+1;b=this.pin2Dy0.yPixel0+d;a=this.pin2Dy1.yPixel0+d;if(b!=this.fixY(b)||a!=this.fixY(a))return;this.pin2Dy0.setY(this.imageView.toSubspectrumIndex(b),b);this.pin2Dy1.setY(this.imageView.toSubspectrumIndex(a),a)}JSV.common.GraphSet.isGoodEvent(this.pin2Dy0,this.pin2Dy1,!1)?this.imageView.setView0(this.pin2Dx0.xPixel0,this.pin2Dy0.yPixel0,this.pin2Dx1.xPixel1,this.pin2Dy1.yPixel1):this.reset2D(!1)}},"~N,~N,~B");c(c$,"clearIntegrals",function(){this.checkIntegral(NaN,0,!1)});c(c$,"clearMeasurements",
function(){this.removeDialog(this.getFixedSelectedSpectrumIndex(),JSV.common.Annotation.AType.Measurements)});c$.createGraphSetsAndSetLinkMode=c(c$,"createGraphSetsAndSetLinkMode",function(a,b,d,c,f,e){for(var l=new JU.List,h=0;h<d.size();h++){var k=d.get(h),s=e===JSV.common.PanelData.LinkMode.NONE?JSV.common.GraphSet.findCompatibleGraphSet(l,k):null;null==s&&l.addLast(s=new JSV.common.GraphSet(b.getPanelData()));s.addSpec(k)}JSV.common.GraphSet.setFractionalPositions(a,l,e);for(h=l.size();0<=--h;)l.get(h).initGraphSet(c,
f),J.util.Logger.info("JSVGraphSet "+(h+1)+" nSpectra = "+l.get(h).nSpectra);return l},"JSV.common.PanelData,JSV.api.JSVPanel,JU.List,~N,~N,JSV.common.PanelData.LinkMode");c(c$,"drawGraphSet",function(a,b,d,c,f,e,l,h,k,s){this.zoomEnabled=this.pd.getBoolean(JSV.common.ScriptToken.ENABLEZOOM);this.height=c*this.pd.scalingFactor;this.width=d*this.pd.scalingFactor;this.left=f*this.pd.scalingFactor;this.right=e*this.pd.scalingFactor;this.top=l*this.pd.scalingFactor;this.bottom=h*this.pd.scalingFactor;
this.$haveSelectedSpectrum=!1;this.selectedSpectrumMeasurements=this.selectedSpectrumIntegrals=null;if(!this.pd.isPrinting&&null!=this.widgets)for(d=0;d<this.widgets.length;d++)null!=this.widgets[d]&&(this.widgets[d].isVisible=!1);for(d=0;d<this.nSplit;d++)this.setPositionForFrame(d),this.drawAll(a,b,d,k||1<this.nSplit,s);this.setPositionForFrame(1<this.nSplit?this.pd.currentSplitPoint:0)},"~O,~O,~N,~N,~N,~N,~N,~N,~B,~B");c(c$,"escapeKeyPressed",function(a){null!=this.zoomBox1D&&(this.zoomBox1D.xPixel0=
this.zoomBox1D.xPixel1=0);null!=this.zoomBox2D&&(this.zoomBox2D.xPixel0=this.zoomBox2D.xPixel1=0);this.inPlotMove&&(null!=this.pendingMeasurement?this.pendingMeasurement=null:(this.pendingMeasurement=this.pd.thisWidget=null,null!=this.selectedSpectrumMeasurements&&null!=this.selectedMeasurement&&(a?this.selectedSpectrumMeasurements.clear(this.getScale().minXOnScale,this.getScale().maxXOnScale):this.selectedSpectrumMeasurements.removeObj(this.selectedMeasurement),this.selectedMeasurement=null,this.updateDialog(JSV.common.Annotation.AType.Measurements,
-1)),null!=this.selectedSpectrumIntegrals&&null!=this.selectedIntegral&&(a?this.selectedSpectrumIntegrals.clear(this.getScale().minXOnScale,this.getScale().maxXOnScale):this.selectedSpectrumIntegrals.removeObj(this.selectedIntegral),this.selectedIntegral=null,this.updateDialog(JSV.common.Annotation.AType.Integration,-1))))},"~B");c$.findGraphSet=c(c$,"findGraphSet",function(a,b,d){for(var c=a.size();0<=--c;)if(a.get(c).hasPoint(b,d))return a.get(c);return null},"JU.List,~N,~N");c(c$,"findMatchingPeakInfo",
function(a){for(var b=null,d=0;d<this.spectra.size()&&null==(b=this.spectra.get(d).findMatchingPeakInfo(a));d++);return b},"JSV.common.PeakInfo");c(c$,"getCurrentSpectrumIndex",function(){return 1==this.nSpectra?0:this.iSpectrumSelected});c(c$,"getSelectedIntegral",function(){return this.selectedIntegral});c(c$,"getShowAnnotation",function(a,b){var d=this.getDialog(a,b);return null!=d&&d.getState()},"JSV.common.Annotation.AType,~N");c(c$,"hasFileLoaded",function(a){for(var b=this.spectra.size();0<=
--b;)if(this.spectra.get(b).getFilePathForwardSlash().equals(a))return!0;return!1},"~S");c(c$,"haveSelectedSpectrum",function(){return this.$haveSelectedSpectrum});c(c$,"mouseClickedEvent",function(a,b,d,c){this.selectedIntegral=this.selectedMeasurement=null;var f=this.nextClickForSetPeak;this.nextClickForSetPeak=!1;if(!this.checkArrowUpDownClick(a,b))if(this.lastClickX=NaN,this.lastPixelX=2147483647,this.isSplitWidget(a,b))this.splitStack(this.pd.graphSets,1==this.nSplit);else{var e=this.getPinSelected(a,
b);if(null!=e)this.setWidgetValueByUser(e);else if(e=null!=this.imageView&&a==this.imageView.fixX(a)&&b==this.fixY(b),2==d&&(-1==this.iSpectrumClicked&&0<=this.iPreviousSpectrumClicked)&&this.setSpectrumClicked(this.iPreviousSpectrumClicked),!e&&c)this.setSpectrumClicked(this.iPreviousSpectrumClicked),null!=this.pendingMeasurement?this.processPendingMeasurement(a,b,-3):0<=this.iSpectrumClicked&&this.processPendingMeasurement(a,b,3);else if(this.lastXMax=NaN,2==d)e?(this.sticky2Dcursor&&this.addAnnotation(this.getAnnotation(this.imageView.toX(a),
this.imageView.toSubspectrumIndex(b),this.pd.coordStr,!1,!0,5,5),!0),this.sticky2Dcursor=!this.sticky2Dcursor,this.set2DCrossHairs(a,b)):this.isInTopBar(a,b)?this.doZoom(this.toX0(this.xPixel0),0,this.toX0(this.xPixel1),0,!0,!1,!1,!0,!0):this.isInRightBar(a,b)?this.doZoom(this.getScale().minXOnScale,this.viewList.get(0).getScale().minYOnScale,this.getScale().maxXOnScale,this.viewList.get(0).getScale().maxYOnScale,!0,!0,!1,!1,!1):this.isInTopBar2D(a,b)?this.reset2D(!0):this.isInRightBar2D(a,b)?this.reset2D(!1):
null!=this.pendingMeasurement?this.processPendingMeasurement(a,b,-2):0<=this.iSpectrumClicked&&this.processPendingMeasurement(a,b,2);else if(e){if(null!=this.annotations&&(d=(new JSV.common.Coordinate).set(this.imageView.toX(a),this.imageView.toSubspectrumIndex(b)),d=this.findAnnotation2D(d),null!=d&&this.setAnnotationText(d)))return;this.sticky2Dcursor=!1;this.set2DCrossHairs(a,b)}else{if(this.isInPlotRegion(a,b)){if(null!=this.selectedSpectrumIntegrals&&this.checkIntegralNormalizationClick(a,b))return;
if(null!=this.pendingMeasurement){this.processPendingMeasurement(a,b,1);return}this.setCoordClicked(a,this.toX(a),this.toY(b));this.updateDialog(JSV.common.Annotation.AType.PeakList,-1);if(f){this.shiftSpectrum(NaN,NaN);return}}else this.setCoordClicked(0,NaN,0);this.pd.notifyPeakPickedListeners(null)}}},"~N,~N,~N,~B");c(c$,"updateDialog",function(a,b){var d=this.getDialog(a,b);if(null!=d&&this.isVisible(d)){var c=this.toX(this.xPixel1)-this.toX(this.xPixel0),f=this.getSpectrum().isInverted()?this.yPixel1-
this.pd.mouseY:this.pd.mouseY-this.yPixel0;d.update(this.pd.coordClicked,c,f)}},"JSV.common.Annotation.AType,~N");c(c$,"isVisible",function(a){return y(a,JSV.dialog.JSVDialog)&&a.isVisible()},"JSV.api.AnnotationData");c(c$,"mouseReleasedEvent",function(a,b){if(null!=this.pendingMeasurement)2>Math.abs(this.toPixelX(this.pendingMeasurement.getXVal())-a)&&(this.pendingMeasurement=null),this.processPendingMeasurement(a,b,-2),this.setToolTipForPixels(a,b);else if(0!=this.pd.integralShiftMode)this.pd.integralShiftMode=
0,this.zoomBox1D.xPixel1=this.zoomBox1D.xPixel0;else{0<=this.iSpectrumMovedTo&&this.setScale(this.iSpectrumMovedTo);var d=this.pd.thisWidget;if(this.pd.isIntegralDrag)JSV.common.GraphSet.isGoodEvent(this.zoomBox1D,null,!0)&&this.checkIntegral(this.toX(this.zoomBox1D.xPixel0),this.toX(this.zoomBox1D.xPixel1),!0),this.zoomBox1D.xPixel1=this.zoomBox1D.xPixel0=0,this.pendingIntegral=null,this.pd.isIntegralDrag=!1;else if(d===this.zoomBox2D)JSV.common.GraphSet.isGoodEvent(this.zoomBox2D,null,!0)&&(this.imageView.setZoom(this.zoomBox2D.xPixel0,
this.zoomBox2D.yPixel0,this.zoomBox2D.xPixel1,this.zoomBox2D.yPixel1),this.zoomBox2D.xPixel1=this.zoomBox2D.xPixel0,this.doZoom(this.imageView.toX(this.imageView.xPixel0),this.getScale().minY,this.imageView.toX(this.imageView.xPixel0+this.imageView.xPixels-1),this.getScale().maxY,!1,!1,!1,!0,!0));else if(d===this.zoomBox1D){if(JSV.common.GraphSet.isGoodEvent(this.zoomBox1D,null,!0)){var d=this.zoomBox1D.xPixel1,c=this.pd.shiftPressed;this.doZoom(this.toX(this.zoomBox1D.xPixel0),c?this.toY(this.zoomBox1D.yPixel0):
0,this.toX(d),c?this.toY(this.zoomBox1D.yPixel1):0,!0,c,!0,!0,!0);this.zoomBox1D.xPixel1=this.zoomBox1D.xPixel0}}else(d===this.pin1Dx0||d===this.pin1Dx1||d===this.cur2Dx0||d===this.cur2Dx1)&&this.addCurrentZoom()}},"~N,~N");c(c$,"mouseMovedEvent",function(a,b){if(1<this.nSpectra){var d=this.getSplitPoint(b);this.setPositionForFrame(d);this.setSpectrumMovedTo(1<this.nSplit?d:this.iSpectrumSelected);0<=this.iSpectrumMovedTo&&this.setScale(this.iSpectrumMovedTo)}this.inPlotMove=this.isInPlotRegion(a,
b);this.setXPixelMovedTo(1.7976931348623157E308,1.7976931348623157E308,this.inPlotMove?a:-1,-1);this.inPlotMove&&(this.xValueMovedTo=this.toX(this.xPixelMovedTo),this.yValueMovedTo=this.getSpectrum().getYValueAt(this.xValueMovedTo));if(0!=this.pd.integralShiftMode){var d=this.getDialog(JSV.common.Annotation.AType.Integration,-1),c=d.getData().getXYCoords(),c=c[0<this.pd.integralShiftMode?c.length-1:0].getYVal();d.getData().shiftY(this.pd.integralShiftMode,this.toPixelYint(c)+b-(0<this.pd.integralShiftMode?
this.yPixelPlot1:this.yPixelPlot0),this.yPixel0,this.yPixels)}else this.pd.isIntegralDrag||(null!=this.pendingMeasurement?(this.processPendingMeasurement(a,b,0),this.setToolTipForPixels(a,b)):(this.selectedMeasurement=this.inPlotMove&&null!=this.selectedSpectrumMeasurements?this.findMeasurement(this.selectedSpectrumMeasurements,a,b,0):null,this.selectedIntegral=null,this.inPlotMove&&(null!=this.selectedSpectrumIntegrals&&null==this.selectedMeasurement)&&(this.selectedIntegral=this.findMeasurement(this.selectedSpectrumIntegrals,
a,b,0),null==this.selectedIntegral&&(this.selectedIntegral=this.findMeasurement(this.selectedSpectrumIntegrals,a,b,-5))),this.setToolTipForPixels(a,b),null==this.imageView?(this.piMouseOver=null,d=1<this.nSplit?this.iSpectrumMovedTo:this.iSpectrumClicked,!this.isDrawNoSpectra()&&0<=d&&(d=this.spectra.get(d),null!=d.getPeakList()&&(this.coordTemp.setXVal(this.toX(a)),this.coordTemp.setYVal(this.toY(b)),this.piMouseOver=d.findPeakByCoord(a,this.coordTemp)))):!this.pd.display1D&&this.sticky2Dcursor&&
this.set2DCrossHairs(a,b)))},"~N,~N");c(c$,"nextView",function(){this.currentZoomIndex+1<this.viewList.size()&&this.setZoomTo(this.currentZoomIndex+1)});c(c$,"previousView",function(){0<this.currentZoomIndex&&this.setZoomTo(this.currentZoomIndex-1)});c(c$,"resetView",function(){this.setZoomTo(0)});c(c$,"removeAllHighlights",function(){this.removeAllHighlights(null)});c(c$,"removeHighlight",function(a){this.highlights.remove(a)},"~N");c(c$,"removeHighlight",function(a,b){for(var d=this.highlights.size();0<=
--d;){var c=this.highlights.get(d);c.x1==a&&c.x2==b&&this.highlights.remove(d)}},"~N,~N");c(c$,"scaleYBy",function(a){if(null!=this.imageView||this.zoomEnabled)this.viewData.scaleSpectrum(null==this.imageView?this.iSpectrumSelected:-2,a),null!=this.imageView&&(this.update2dImage(!1),this.resetPinsFromView()),this.pd.refresh()},"~N");c(c$,"selectSpectrum",function(a,b,d){for(var c=!1,f=this.spectra.size();0<=--f;)if((null==a||this.getSpectrumAt(f).getFilePathForwardSlash().equals(a))&&this.getSpectrumAt(f).matchesPeakTypeModel(b,
d))this.setSpectrumSelected(f),1<this.nSplit&&this.splitStack(this.pd.graphSets,!0),c=!0;1<this.nSpectra&&(!c&&0<=this.iSpectrumSelected&&!this.pd.isCurrentGraphSet(this))&&this.setSpectrumSelected(-2147483648);return c},"~S,~S,~S");c(c$,"selectPeakByFileIndex",function(a,b){for(var d,c=this.spectra.size();0<=--c;)if(null!=(d=this.getSpectrumAt(c).selectPeakByFileIndex(a,b)))return d;return null},"~S,~S");c(c$,"setSelected",function(a){0>a?(this.bsSelected.clearAll(),this.setSpectrumClicked(-1)):
(this.bsSelected.set(a),this.setSpectrumClicked(1==this.bsSelected.cardinality()?a:-1),1<this.nSplit&&0<=a&&(this.pd.currentSplitPoint=a))},"~N");c(c$,"setSelectedIntegral",function(a){var b=this.selectedIntegral.getSpectrum();this.getIntegrationGraph(this.getSpectrumIndex(b)).setSelectedIntegral(this.selectedIntegral,a)},"~N");c(c$,"setShowAnnotation",function(a,b){var d=this.getDialog(a,-1);if(null==d)null!=b&&b!==Boolean.TRUE||(a===JSV.common.Annotation.AType.PeakList||a===JSV.common.Annotation.AType.Integration||
a===JSV.common.Annotation.AType.Measurements)&&this.pd.showDialog(a);else if(null==b)y(d,JSV.dialog.JSVDialog)?d.setVisible(!1):d.setState(!d.getState());else{var c=b.booleanValue();d.setState(c);(c||y(d,JSV.dialog.JSVDialog))&&this.pd.showDialog(a)}},"JSV.common.Annotation.AType,Boolean");c(c$,"checkIntegral",function(a,b){if(!this.getSpectrum().canIntegrate()||this.reversePlot)return!1;var d=this.getFixedSelectedSpectrumIndex(),c=this.getDialog(JSV.common.Annotation.AType.Integration,-1);if(null==
b)return!0;switch(JSV.common.IntegralData.IntMode.getMode(b.toUpperCase())){case JSV.common.IntegralData.IntMode.ON:this.integrate(d,a);break;case JSV.common.IntegralData.IntMode.OFF:this.integrate(d,null);break;case JSV.common.IntegralData.IntMode.TOGGLE:this.integrate(d,null==c?a:null);break;case JSV.common.IntegralData.IntMode.AUTO:null==c&&(this.checkIntegral(a,"ON"),c=this.getDialog(JSV.common.Annotation.AType.Integration,-1));null!=c&&c.getData().autoIntegrate();break;case JSV.common.IntegralData.IntMode.LIST:this.pd.showDialog(JSV.common.Annotation.AType.Integration);
break;case JSV.common.IntegralData.IntMode.MARK:null==c&&(this.checkIntegral(a,"ON"),c=this.getDialog(JSV.common.Annotation.AType.Integration,-1));null!=c&&c.getData().addMarks(b.substring(4).trim());break;case JSV.common.IntegralData.IntMode.MIN:if(null!=c)try{var f=Double.parseDouble(JSV.common.ScriptToken.getTokens(b).get(1));c.getData().setMinimumIntegral(f)}catch(e){if(!C(e,Exception))throw e;}break;case JSV.common.IntegralData.IntMode.UPDATE:null!=c&&c.getData().update(a)}this.updateDialog(JSV.common.Annotation.AType.Integration,
-1);return!0},"JSV.common.Parameters,~S");c(c$,"setSpectrum",function(a,b){b?1<this.nSplit&&this.setSpectrumClicked(a):(this.setSpectrumClicked(a),this.showAllStacked=this.stackSelected=!1)},"~N,~B");c(c$,"setSpectrumJDX",function(a){var b=this.getFixedSelectedSpectrumIndex();this.spectra.remove(b);this.spectra.add(b,a);this.pendingMeasurement=null;this.clearViews();this.viewData.newSpectrum(this.spectra)},"JSV.common.JDXSpectrum");c(c$,"setZoom",function(a,b,d,c){this.setZoomTo(0);0==a&&0==d&&0==
b&&0==c?(this.newPins(),this.imageView=null,this.getScale(),this.getScale()):this.doZoom(a,b,d,c,!0,b!=c,!1,!0,!0)},"~N,~N,~N,~N");c(c$,"shiftSpectrum",function(a,b){var d=this.getSpectrum();if(!d.isNMR()||!d.is1D())return!1;if(1.7976931348623157E308==b||1.7976931348623157E308==a)a=-d.addSpecShift(0);else{if(4.9E-324==b)return this.nextClickForSetPeak=!0,this.jsvp.showMessage("Click on or beside a peak to set its chemical shift.","Set Reference"),!1;if(Double.isNaN(a)||4.9E-324==a){var c=4.9E-324==
a?this.lastClickX:this.getNearestPeak(d,this.lastClickX,this.toY(this.pd.mouseY));if(Double.isNaN(c))return!1;if(Double.isNaN(b))try{var f=this.pd.getInput("New chemical shift (set blank to reset)","Set Reference",""+c).trim();b=0==f.length?c-d.addSpecShift(0):Double.parseDouble(f)}catch(e){if(C(e,Exception))return!1;throw e;}a=b-c}}if(0==a)return!1;d.addSpecShift(a);if(null!=this.annotations)for(c=this.annotations.size();0<=--c;)this.annotations.get(c).spec===d&&this.annotations.get(c).addSpecShift(a);
if(null!=this.dialogs)for(var l,c=this.dialogs.entrySet().iterator();c.hasNext()&&((l=c.next())||1);)l.getValue().getSpectrum()===d&&l.getValue().setSpecShift(a);this.getScale().addSpecShift(a);Double.isNaN(this.lastClickX)||(this.lastClickX+=a);this.updateDialogs();this.doZoom(0,this.getScale().minYOnScale,0,this.getScale().maxYOnScale,!0,!0,!1,!0,!1);this.pd.repaint();return!0},"~N,~N");c(c$,"toPeak",function(a){a*=this.drawXAxisLeftToRight?1:-1;Double.isNaN(this.lastClickX)&&(this.lastClickX=this.lastPixelX=
0);var b=this.getSpectrum(),d=this.setCoordClicked(this.lastPixelX,this.lastClickX,0);a=b.setNextPeak(d,a);0>a||(a=b.getPeakList().get(a),b.setSelectedPeak(a),this.setCoordClicked(a.getXPixel(),a.getX(),0),this.pd.notifyPeakPickedListeners(new JSV.common.PeakPickEvent(this.jsvp,this.pd.coordClicked,a)))},"~N");c(c$,"scaleSelectedBy",function(a){for(var b=this.bsSelected.nextSetBit(0);0<=b;b=this.bsSelected.nextSetBit(b+1))this.viewData.scaleSpectrum(b,a)},"~N");e(c$,"toString",function(){return"gs: "+
this.nSpectra+" "+this.spectra+" "+this.spectra.get(0).getFilePath()});c(c$,"setXPointer",function(a,b){null!=a&&this.setSpectrumClicked(this.getSpectrumIndex(a));this.xValueMovedTo=this.lastClickX=b;this.lastPixelX=this.toPixelX(b);this.setXPixelMovedTo(b,1.7976931348623157E308,0,0);this.yValueMovedTo=NaN},"JSV.common.JDXSpectrum,~N");c(c$,"setXPointer2",function(a,b){null!=a&&this.setSpectrumClicked(this.getSpectrumIndex(a));this.setXPixelMovedTo(1.7976931348623157E308,b,0,0)},"JSV.common.JDXSpectrum,~N");
c(c$,"hasCurrentMeasurement",function(a){return null!=(a===JSV.common.Annotation.AType.Integration?this.selectedSpectrumIntegrals:this.selectedSpectrumMeasurements)},"JSV.common.Annotation.AType");c(c$,"getDialog",function(a,b){-1==b&&(b=this.getCurrentSpectrumIndex());return null==this.dialogs||0>b?null:this.dialogs.get(a+"_"+b)},"JSV.common.Annotation.AType,~N");c(c$,"removeDialog",function(a,b){null!=this.dialogs&&0<=a&&this.dialogs.remove(b+"_"+a)},"~N,JSV.common.Annotation.AType");c(c$,"addDialog",
function(a,b,d){null==this.dialogs&&(this.dialogs=new java.util.Hashtable);a=b+"_"+a;d.setGraphSetKey(a);this.dialogs.put(a,d);return d},"~N,JSV.common.Annotation.AType,JSV.api.AnnotationData");c(c$,"removeDialog",function(a){var b=a.getGraphSetKey();this.dialogs.remove(b);a=a.getData();null!=a&&this.dialogs.put(b,a)},"JSV.dialog.JSVDialog");c(c$,"getPeakListing",function(a,b,d){0>a&&(a=this.getCurrentSpectrumIndex());if(0>a)return null;var c=this.getDialog(JSV.common.Annotation.AType.PeakList,-1);
if(null==c){if(!d)return null;this.addDialog(a,JSV.common.Annotation.AType.PeakList,c=new JSV.common.PeakData(JSV.common.Annotation.AType.PeakList,this.getSpectrum()))}c.getData().setPeakList(b,-2147483648,this.viewData.getScale());y(c,JSV.dialog.JSVDialog)&&c.setFields();return c.getData()},"~N,JSV.common.Parameters,~B");c(c$,"setPeakListing",function(a){var b=this.getDialog(JSV.common.Annotation.AType.PeakList,-1),d=y(b,JSV.dialog.JSVDialog)?b:null;(null==a?null==d||!d.isVisible():a.booleanValue())?
this.pd.showDialog(JSV.common.Annotation.AType.PeakList):y(b,JSV.dialog.JSVDialog)&&b.setVisible(!1)},"Boolean");c(c$,"haveIntegralDisplayed",function(a){a=this.getDialog(JSV.common.Annotation.AType.Integration,a);return null!=a&&a.getState()},"~N");c(c$,"getIntegrationGraph",function(a){a=this.getDialog(JSV.common.Annotation.AType.Integration,a);return null==a?null:a.getData()},"~N");c(c$,"setIntegrationRatios",function(a){var b=this.getFixedSelectedSpectrumIndex();null==this.aIntegrationRatios&&
(this.aIntegrationRatios=Array(this.nSpectra));this.aIntegrationRatios[b]=JSV.common.IntegralData.getIntegrationRatiosFromString(this.getSpectrum(),a)},"~S");c(c$,"getIntegrationRatios",function(a){return null==this.aIntegrationRatios?null:this.aIntegrationRatios[a]},"~N");c(c$,"integrate",function(a,b){var d=this.getSpectrumAt(a);if(null==b||!d.canIntegrate())return this.removeDialog(a,JSV.common.Annotation.AType.Integration),!1;this.addDialog(a,JSV.common.Annotation.AType.Integration,new JSV.common.IntegralData(d,
b));return!0},"~N,JSV.common.Parameters");c(c$,"getIntegration",function(a,b,d){0>a&&(a=this.getCurrentSpectrumIndex());if(0>a)return null;var c=this.getDialog(JSV.common.Annotation.AType.Integration,-1);if(null==c){if(!d)return null;c=this.addDialog(a,JSV.common.Annotation.AType.Integration,new JSV.common.IntegralData(this.getSpectrum(),b))}return c.getData()},"~N,JSV.common.Parameters,~B");c(c$,"getMeasurementInfo",function(a,b){var d;switch(a){case JSV.common.Annotation.AType.PeakList:d=this.getPeakListing(b,
null,!1);break;case JSV.common.Annotation.AType.Integration:d=this.getIntegration(b,null,!1);break;default:return null}if(null==d)return null;var c=new java.util.Hashtable;d.getInfo(c);return c},"JSV.common.Annotation.AType,~N");c(c$,"getInfo",function(a,b){var d=new java.util.Hashtable;if("viewInfo".equalsIgnoreCase(a))return this.getScale().getInfo(d);var c=new JU.List;d.put("spectra",c);for(var f=0;f<this.nSpectra;f++)if(!(0<=b&&f!=b)){var e=this.spectra.get(f),l=e.getInfo(a);if(0<=b&&null!=a&&
(2==l.size()||a.equalsIgnoreCase("id")))return 2==l.size()&&l.remove("id"),l;JSV.common.Parameters.putInfo(a,l,"type",e.getDataType());JSV.common.Parameters.putInfo(a,l,"titleLabel",e.getTitleLabel());JSV.common.Parameters.putInfo(a,l,"filePath",e.getFilePath().$replace("\\","/"));JSV.common.Parameters.putInfo(a,l,"PeakList",JSV.common.Parameters.isMatch(a,"PeakList")?this.getMeasurementInfo(JSV.common.Annotation.AType.PeakList,f):null);JSV.common.Parameters.putInfo(a,l,"Integration",JSV.common.Parameters.isMatch(a,
"Integration")?this.getMeasurementInfo(JSV.common.Annotation.AType.Integration,f):null);if(0<=b)return l;c.addLast(l)}return d},"~S,~N");c(c$,"getTitle",function(a){return 1==this.nSpectra||0<=this.iSpectrumSelected&&(!a||1==this.nSplit)?this.getSpectrum().getTitle():null},"~B");c(c$,"getCurrentView",function(){this.setScale(this.getFixedSelectedSpectrumIndex());return this.viewData.getScale()});c(c$,"set2DXY",function(a,b,d){null!=this.gs2dLinkedX&&this.cur1D2x1.setX(a,this.toPixelX(a));null!=this.gs2dLinkedY&&
this.cur1D2x2.setX(b,this.toPixelX(b));this.cur1D2Locked=d},"~N,~N,~B");c(c$,"dialogsToFront",function(){if(null!=this.dialogs)for(var a,b=this.dialogs.entrySet().iterator();b.hasNext()&&((a=b.next())||1);){var d=a.getValue();this.isVisible(d)&&d.setVisible(!0)}});c(c$,"setPlotColors",function(a){var b=a;if(b.length>this.nSpectra)a=Array(this.nSpectra),System.arraycopy(b,0,a,0,this.nSpectra),b=a;else if(this.nSpectra>b.length){a=Array(this.nSpectra);var d=this.nSpectra-b.length;System.arraycopy(b,
0,a,0,b.length);for(var c=0,b=b.length;c<d;c++,b++)a[b]=this.generateRandomColor();b=a}this.plotColors=b},"~O");c(c$,"disposeImage",function(){null!=this.image2D&&this.image2D.parentNode.removeChild(this.image2D);this.plotColors=this.highlights=this.pd=this.jsvp=this.image2D=null});c(c$,"generateRandomColor",function(){for(;;){var a=r(255*Math.random()),b=r(255*Math.random()),d=r(255*Math.random()),a=this.g2d.getColor3(a,b,d);if(0!=a.getRGB())return a}});c(c$,"setPlotColor0",function(a){this.plotColors[0]=
a},"~O");c(c$,"getPlotColor",function(a){return a>=this.plotColors.length?null:this.plotColors[a]},"~N");c(c$,"setColorFromToken",function(a,b){null!=b&&this.g2d.setGraphicsColor(a,b===JSV.common.ScriptToken.PLOTCOLOR?this.plotColors[0]:this.pd.getColor(b))},"~O,JSV.common.ScriptToken");c(c$,"setPlotColor",function(a,b){var d;switch(b){case -3:d=JSV.common.GraphSet.veryLightGrey;break;case -2:d=this.pd.BLACK;break;case -1:d=this.pd.getColor(JSV.common.ScriptToken.INTEGRALPLOTCOLOR);break;default:d=
this.plotColors[b]}this.g2d.setGraphicsColor(a,d)},"~O,~N");c(c$,"draw2DImage",function(){null!=this.imageView&&this.g2d.drawGrayScaleImage(this.gMain,this.image2D,this.imageView.xPixel0,this.imageView.yPixel0,this.imageView.xPixel0+this.imageView.xPixels-1,this.imageView.yPixel0+this.imageView.yPixels-1,this.imageView.xView1,this.imageView.yView1,this.imageView.xView2,this.imageView.yView2)});c(c$,"get2DImage",function(){this.imageView=new JSV.common.ImageView;this.imageView.set(this.viewList.get(0).getScale());
if(!this.update2dImage(!0))return!1;this.imageView.resetZoom();return this.sticky2Dcursor=!0});c(c$,"update2dImage",function(a){this.imageView.set(this.viewData.getScale());var b=this.getSpectrumAt(0),d=this.imageView.get2dBuffer(b,!a);if(null==d)return this.imageView=this.image2D=null,!1;a&&(d=this.imageView.adjustView(b,this.viewData),this.imageView.resetView());this.image2D=this.g2d.newGrayScaleImage(this.gMain,this.image2D,this.imageView.imageWidth,this.imageView.imageHeight,d);this.setImageWindow();
return!0},"~B");c(c$,"getAnnotation",function(a,b,d,c,f,e,l){return(new JSV.common.ColoredAnnotation).setCA(a,b,this.getSpectrum(),d,this.pd.BLACK,c,f,e,l)},"~N,~N,~S,~B,~B,~N,~N");c(c$,"getAnnotation",function(a,b){return JSV.common.Annotation.getColoredAnnotation(this.g2d,this.getSpectrum(),a,b)},"JU.List,JSV.common.Annotation");c(c$,"fillBox",function(a,b,d,c,f,e){this.setColorFromToken(a,e);this.g2d.fillRect(a,Math.min(b,c),Math.min(d,f),Math.abs(b-c),Math.abs(d-f))},"~O,~N,~N,~N,~N,JSV.common.ScriptToken");
c(c$,"drawHandle",function(a,b,d,c){c?this.g2d.drawRect(a,b-2,d-2,4,4):this.g2d.fillRect(a,b-2,d-2,5,5)},"~O,~N,~N,~B");c(c$,"setCurrentBoxColor",function(a){this.g2d.setGraphicsColor(a,this.pd.BLACK)},"~O");c(c$,"fillArrow",function(a,b,d,c,f){var e=1;switch(b){case JSV.common.GraphSet.ArrowType.LEFT:case JSV.common.GraphSet.ArrowType.UP:e=-1}d=[d-5,d-5,d+5,d+5,d+8,d,d-8];c=[c+5*e,c-e,c-e,c+5*e,c+5*e,c+10*e,c+5*e];switch(b){case JSV.common.GraphSet.ArrowType.LEFT:case JSV.common.GraphSet.ArrowType.RIGHT:f?
this.g2d.fillPolygon(a,c,d,7):this.g2d.drawPolygon(a,c,d,7);break;case JSV.common.GraphSet.ArrowType.UP:case JSV.common.GraphSet.ArrowType.DOWN:f?this.g2d.fillPolygon(a,d,c,7):this.g2d.drawPolygon(a,d,c,7)}},"~O,JSV.common.GraphSet.ArrowType,~N,~N,~B");c(c$,"fillCircle",function(a,b,d,c){c?this.g2d.fillCircle(a,b-4,d-4,8):this.g2d.drawCircle(a,b-4,d-4,8)},"~O,~N,~N,~B");c(c$,"setAnnotationColor",function(a,b,d){null!=d?this.setColorFromToken(a,d):(d=null,y(b,JSV.common.ColoredAnnotation)&&(d=b.getColor()),
null==d&&(d=this.pd.BLACK),this.g2d.setGraphicsColor(a,d))},"~O,JSV.common.Annotation,JSV.common.ScriptToken");c$.$GraphSet$Highlight$=function(){fa();c$=w(function(){Ha(this,arguments);this.x2=this.x1=0;this.spectrum=this.color=null;u(this,arguments)},JSV.common.GraphSet,"Highlight");e(c$,"toString",function(){return"highlight "+this.x1+" "+this.x2+" "+this.spectrum});z(c$,function(a,b,d,c){this.x1=a;this.x2=b;this.color=c;this.spectrum=d},"~N,~N,JSV.common.JDXSpectrum,javajs.api.GenericColor");
e(c$,"equals",function(a){return!y(a,JSV.common.GraphSet.Highlight)?!1:a.x1==this.x1&&a.x2==this.x2},"~O");c$=ea()};fa();c$=F(JSV.common.GraphSet,"ArrowType",Enum);n(c$,"LEFT",0,[]);n(c$,"RIGHT",1,[]);n(c$,"UP",2,[]);n(c$,"DOWN",3,[]);n(c$,"RESET",4,[]);n(c$,"HOME",5,[]);c$=ea();c$.RT2=c$.prototype.RT2=Math.sqrt(2);H(c$,"veryLightGrey",null,"minNumOfPointsForZoom",3,"MIN_DRAG_PIXELS",5,"ONLINE_CUTOFF",2)}),p("JSV.common"),q(["JSV.api.XYScaleConverter"],"JSV.common.ImageView",["java.lang.Double","JSV.common.Coordinate",
"$.ScaleData"],function(){c$=w(function(){this.buf2d=null;this.yView2=this.xView2=this.yView1=this.xView1=this.yPixelZoom2=this.xPixelZoom2=this.yPixelZoom1=this.xPixelZoom1=this.yPixels=this.xPixels=this.imageHeight=this.imageWidth=this.yPixel1=this.xPixel1=this.yPixel0=this.xPixel0=this.averageGray=this.grayFactorLast=0;this.minX=NaN;this.maxZ=this.minZ=this.maxY=this.minY=this.maxX=0;this.scaleData=null;u(this,arguments)},JSV.common,"ImageView",null,JSV.api.XYScaleConverter);c(c$,"set",function(a){Double.isNaN(this.minX)&&
(this.minX=a.minX,this.maxX=a.maxX);this.minZ=a.minY;this.maxZ=a.maxY;this.scaleData=new JSV.common.ScaleData},"JSV.common.ScaleData");c(c$,"setZoom",function(a,b,d,c){this.xPixelZoom1=Math.min(a,d);this.yPixelZoom1=Math.min(b,c);this.xPixelZoom2=Math.max(a,d);this.yPixelZoom2=Math.max(b,c);this.setView()},"~N,~N,~N,~N");c(c$,"setXY0",function(a,b,d){this.xPixel0=b;this.yPixel0=d;this.xPixel1=this.xPixel0+this.xPixels-1;this.yPixel1=this.yPixel0+this.yPixels-1;this.setMinMaxY(a)},"JSV.common.JDXSpectrum,~N,~N");
c(c$,"setPixelWidthHeight",function(a,b){this.xPixels=a;this.yPixels=b},"~N,~N");c(c$,"resetView",function(){this.yView1=this.xView1=0;this.xView2=this.imageWidth-1;this.yView2=this.imageHeight-1});c(c$,"setView",function(){0==this.xPixelZoom1&&this.resetZoom();var a=this.toImageX(this.xPixelZoom1),b=this.toImageY(this.yPixelZoom1),d=this.toImageX(this.xPixelZoom2),c=this.toImageY(this.yPixelZoom2);this.xView1=Math.min(a,d);this.yView1=Math.min(b,c);this.xView2=Math.max(a,d);this.yView2=Math.max(b,
c);this.setScaleData();this.resetZoom()});c(c$,"resetZoom",function(){this.xPixelZoom1=this.xPixel0;this.yPixelZoom1=this.yPixel0;this.xPixelZoom2=this.xPixel1;this.yPixelZoom2=this.yPixel1});c(c$,"toImageX",function(a){return this.xView1+r(Math.floor((a-this.xPixel0)/(this.xPixels-1)*(this.xView2-this.xView1)))},"~N");c(c$,"toImageY",function(a){return this.yView1+r(Math.floor((a-this.yPixel0)/(this.yPixels-1)*(this.yView2-this.yView1)))},"~N");c(c$,"toImageX0",function(a){return JSV.common.Coordinate.intoRange(r((1*
a-this.xPixel0)/(this.xPixels-1)*(this.imageWidth-1)),0,this.imageWidth-1)},"~N");c(c$,"toImageY0",function(a){return JSV.common.Coordinate.intoRange(r((1*a-this.yPixel0)/(this.yPixels-1)*(this.imageHeight-1)),0,this.imageHeight-1)},"~N");c(c$,"isXWithinRange",function(a){return a>=this.xPixel0-5&&a<this.xPixel0+this.xPixels+5},"~N");c(c$,"toSubspectrumIndex",function(a){return JSV.common.Coordinate.intoRange(this.imageHeight-1-this.toImageY(a),0,this.imageHeight-1)},"~N");c(c$,"toX0",function(a){return this.maxX+
(this.minX-this.maxX)*(this.fixX(a)-this.xPixel0)/(this.xPixels-1)},"~N");c(c$,"toPixelX0",function(a){return this.xPixel1-r((a-this.minX)/(this.maxX-this.minX)*(this.xPixels-1))},"~N");c(c$,"toPixelY0",function(a){return this.yPixel1-r(a/(this.imageHeight-1)*(this.yPixels-1))},"~N");c(c$,"subIndexToPixelY",function(a){return this.yPixel0+r(1*(this.imageHeight-1-a-this.yView1)/(this.yView2-this.yView1)*(this.yPixels-1))},"~N");c(c$,"fixSubIndex",function(a){return JSV.common.Coordinate.intoRange(a,
this.imageHeight-1-this.yView2,this.imageHeight-1-this.yView1)},"~N");e(c$,"fixX",function(a){return a<this.xPixel0?this.xPixel0:a>this.xPixel1?this.xPixel1:a},"~N");e(c$,"toX",function(a){return this.maxX+(this.minX-this.maxX)*this.toImageX(this.fixX(a))/(this.imageWidth-1)},"~N");e(c$,"toPixelX",function(a){var b=this.toX(this.xPixel0),d=this.toX(this.xPixel1);return this.xPixel0+r((a-b)/(d-b)*(this.xPixels-1))},"~N");c(c$,"setView0",function(a,b,d,c){a=this.toImageX0(a);b=this.toImageY0(b);d=this.toImageX0(d);
c=this.toImageY0(c);this.xView1=Math.min(a,d);this.yView1=Math.min(b,c);this.xView2=Math.max(a,d);this.yView2=Math.max(b,c);this.resetZoom()},"~N,~N,~N,~N");c(c$,"get2dBuffer",function(a,b){var d=a.getSubSpectra();if(null==d||!d.get(0).isContinuous())return null;var c=a.getXYCoords(),f=d.size();this.imageWidth=c.length;this.imageHeight=f;var e=255/(this.maxZ-this.minZ);if(!b&&null!=this.buf2d&&e==this.grayFactorLast)return this.buf2d;this.grayFactorLast=e;for(var l=this.imageWidth*this.imageHeight,
h=N(l,0),k=0,s=0;s<f;s++){var m=d.get(s).xyCoords;if(m.length!=c.length)return null;for(var p=d.get(s).getUserYFactor(),n=0;n<c.length;n++){var q=m[n].getYVal(),q=255-JSV.common.Coordinate.intoRange(r((q*p-this.minZ)*e),0,255);h[--l]=q;k+=q}}this.averageGray=1-k/(this.imageWidth*this.imageHeight)/255;System.out.println("Average gray = "+this.averageGray);return this.buf2d=h},"JSV.common.JDXSpectrum,~B");c(c$,"adjustView",function(a,b){for(var d=0,c=!1;((c=0.05>this.averageGray)||0.3<this.averageGray)&&
10>d++;)b.scaleSpectrum(-2,c?2:0.5),this.set(b.getScale()),this.get2dBuffer(a,!1);return this.buf2d},"JSV.common.JDXSpectrum,JSV.common.ViewData");c(c$,"getBuffer",function(){return this.buf2d});c(c$,"setMinMaxY",function(a){a=a.getSubSpectra();var b=a.get(0);this.maxY=b.getY2D();this.minY=a.get(a.size()-1).getY2D();b.y2DUnits.equalsIgnoreCase("Hz")&&(this.maxY/=b.freq2dY,this.minY/=b.freq2dY);this.setScaleData()},"JSV.common.JDXSpectrum");c(c$,"setScaleData",function(){this.scaleData.minY=this.minY;
this.scaleData.maxY=this.maxY;this.scaleData.setYScale(this.toY(this.yPixel0),this.toY(this.yPixel1),!1,!1)});e(c$,"getScale",function(){return this.scaleData});e(c$,"getYPixels",function(){return this.yPixels});e(c$,"getXPixels",function(){return this.xPixels});e(c$,"getXPixel0",function(){return this.xPixel0});e(c$,"toY",function(a){a=this.toSubspectrumIndex(a);return this.maxY+(this.minY-this.maxY)*a/(this.imageWidth-1)},"~N");e(c$,"fixY",function(a){return JSV.common.Coordinate.intoRange(a,this.yPixel0,
this.yPixel1)},"~N");e(c$,"toPixelY",function(a){return r(this.yPixel0+(a-this.scaleData.minYOnScale)/(this.scaleData.maxYOnScale-this.scaleData.minYOnScale)*this.yPixels)},"~N");H(c$,"DEFAULT_MIN_GRAY",0.05,"DEFAULT_MAX_GRAY",0.3)}),p("JSV.common"),q(["JSV.common.Measurement"],"JSV.common.Integral",null,function(){c$=F(JSV.common,"Integral",JSV.common.Measurement);c(c$,"setInt",function(a,b,d,c,f,e){this.setA(a,b,d,"",!1,!1,0,6);this.setPt2(f,e);this.setValue(c);return this},"~N,~N,JSV.common.JDXSpectrum,~N,~N,~N")}),
p("JSV.common"),c$=F(JSV.common,"IntegralComparator",null,java.util.Comparator),e(c$,"compare",function(a,b){return a.getXVal()<b.getXVal()?-1:a.getXVal()>b.getXVal()?1:0},"JSV.common.Measurement,JSV.common.Measurement"),p("JSV.common"),q(["java.lang.Enum","JSV.common.MeasurementData","$.IntegralComparator"],"JSV.common.IntegralData","java.lang.Double java.util.Collections $.StringTokenizer JU.AU $.BS $.DF $.List $.PT JSV.common.Annotation $.Coordinate $.Integral $.ScriptToken".split(" "),function(){c$=
w(function(){this.intRange=this.percentOffset=this.percentMinY=0;this.normalizationFactor=1;this.integralTotal=this.offset=this.percentRange=0;this.haveRegions=!1;this.xyCoords=null;u(this,arguments)},JSV.common,"IntegralData",JSV.common.MeasurementData);c(c$,"getPercentMinimumY",function(){return this.percentMinY});c(c$,"getPercentOffset",function(){return this.percentOffset});c(c$,"getIntegralFactor",function(){return this.intRange});z(c$,function(a,b,d,c){P(this,JSV.common.IntegralData,[JSV.common.Annotation.AType.Integration,
c]);this.percentMinY=a;this.percentOffset=b;this.percentRange=d;this.calculateIntegral()},"~N,~N,~N,JSV.common.JDXSpectrum");z(c$,function(a,b){P(this,JSV.common.IntegralData,[JSV.common.Annotation.AType.Integration,a]);null==b?this.autoIntegrate():(this.percentOffset=b.integralOffset,this.percentRange=b.integralRange,this.calculateIntegral())},"JSV.common.JDXSpectrum,JSV.common.Parameters");c(c$,"update",function(a){this.update(a.integralMinY,a.integralOffset,a.integralRange)},"JSV.common.Parameters");
c(c$,"update",function(a,b,d){var c=this.percentRange;if(!(0>=d||d==this.percentRange&&b==this.percentOffset)){this.percentOffset=b;this.percentRange=d;this.checkRange();a=d/100/this.integralTotal;b/=100;for(var f=0;f<this.xyCoords.length;f++){var e=this.xyCoords[f].getYVal(),e=(e-this.offset)/this.intRange;this.xyCoords[f].setYVal(e*a+b)}1!=this.normalizationFactor&&(this.normalizationFactor*=c/d);if(this.haveRegions)for(f=this.size();0<=--f;)d=this.get(f),c=this.getYValueAt(d.getXVal()),e=this.getYValueAt(d.getXVal2()),
d.setYVal(c),d.setYVal2(e),d.setValue(100*Math.abs(e-c)*this.normalizationFactor);this.intRange=a;this.offset=b}},"~N,~N,~N");c(c$,"getYValueAt",function(a){return JSV.common.Coordinate.getYValueAt(this.xyCoords,a)},"~N");c(c$,"addIntegralRegion",function(a,b){if(Double.isNaN(a))return this.haveRegions=!1,this.clear(),null;if(a==b)return null;var d=this.getYValueAt(a),c=this.getYValueAt(b);this.haveRegions=!0;d=(new JSV.common.Integral).setInt(a,d,this.spec,100*Math.abs(c-d)*this.normalizationFactor,
b,c);this.clear(a,b);this.addLast(d);java.util.Collections.sort(this,JSV.common.IntegralData.c);return d},"~N,~N");e(c$,"setSpecShift",function(a){JSV.common.Coordinate.shiftX(this.xyCoords,a);for(var b=this.size();1<=--b;)this.get(b).addSpecShift(a)},"~N");c(c$,"addMarks",function(a){a=JU.PT.simpleReplace(" "+a,","," ");a=JU.PT.simpleReplace(a," -"," #");a=JU.PT.simpleReplace(a,"--","-#");a=a.$replace("-","^");a=a.$replace("#","-");a=JSV.common.ScriptToken.getTokens(a);for(var b=0;b<a.size();b++)try{var d=
a.get(b),c=0,f=d.indexOf("^");if(!(0>f)){var e=d.indexOf(":");e>f&&(c=Double.$valueOf(d.substring(e+1).trim()).doubleValue(),d=d.substring(0,e).trim());var l=Double.$valueOf(d.substring(0,f).trim()).doubleValue(),h=Double.$valueOf(d.substring(f+1).trim()).doubleValue();0==h&&0==l&&this.clear();if(h!=l){var k=this.addIntegralRegion(Math.max(h,l),Math.min(h,l));null!=k&&0<c&&this.setSelectedIntegral(k,c)}}}catch(s){if(!C(s,Exception))throw s;}},"~S");c(c$,"calculateIntegral",function(){var a=this.spec.getXYCoords();
this.xyCoords=Array(a.length);this.integralTotal=0;this.checkRange();for(var b=1E100,d=0;d<a.length;d++){var c=a[d].getYVal();c<b&&0<=c&&(b=c)}for(d=0;d<a.length;d++)c=a[d].getYVal(),-1.7976931348623157E308<c&&(this.integralTotal+=c-b);this.intRange=this.percentRange/100/this.integralTotal;this.offset=this.percentOffset/100;for(var f=0,d=a.length;0<=--d;)c=a[d].getYVal(),-1.7976931348623157E308<c&&(f+=c-b),this.xyCoords[d]=(new JSV.common.Coordinate).set(a[d].getXVal(),f*this.intRange+this.offset);
return this.xyCoords});c(c$,"checkRange",function(){this.percentOffset=Math.max(5,this.percentOffset);this.percentRange=Math.max(10,this.percentRange)});c$.getIntegrationRatiosFromString=c(c$,"getIntegrationRatiosFromString",function(a,b){for(var d=new JU.List,c=new java.util.StringTokenizer(b,",");c.hasMoreTokens();){var f=c.nextToken(),f=new java.util.StringTokenizer(f,":"),f=(new JSV.common.Annotation).setA(Double.parseDouble(f.nextToken()),0,a,f.nextToken(),!0,!1,0,0);d.addLast(f)}return d},"JSV.common.JDXSpectrum,~S");
c(c$,"getXYCoords",function(){return this.xyCoords});c(c$,"getPercentYValueAt",function(a){return 100*this.getYValueAt(a)},"~N");c(c$,"dispose",function(){this.xyCoords=this.spec=null});c(c$,"setSelectedIntegral",function(a,b){var d=a.getValue();this.factorAllIntegrals(0>=b?1/this.normalizationFactor:b/d,0>=b)},"JSV.common.Measurement,~N");c(c$,"factorAllIntegrals",function(a,b){for(var d=0;d<this.size();d++){var c=this.get(d);c.setValue(a*c.getValue())}this.normalizationFactor=b?1:this.normalizationFactor*
a},"~N,~B");c(c$,"getBitSet",function(){var a=JU.BS.newN(this.xyCoords.length);if(0==this.size())return a.setBits(0,this.xyCoords.length),a;for(var b=this.size();0<=--b;){var d=this.get(b),c=JSV.common.Coordinate.getNearestIndexForX(this.xyCoords,d.getXVal()),d=JSV.common.Coordinate.getNearestIndexForX(this.xyCoords,d.getXVal2());a.setBits(Math.min(c,d),Math.max(c,d))}return a});e(c$,"getMeasurementListArray",function(){for(var a=Array(this.size()),b=0,d=this.size();0<=--d;)a[b++]=[""+b,JU.DF.formatDecimalDbl(this.get(d).getXVal(),
2),JU.DF.formatDecimalDbl(this.get(d).getXVal2(),2),this.get(d).text];return a},"~S");e(c$,"getMeasurementListArrayReal",function(){for(var a=JU.AU.newDouble2(this.size()),b=0,d=this.size();0<=--d;b++)a[b]=[this.get(d).getXVal(),this.get(d).getXVal2(),this.get(d).getValue()];return a},"~S");e(c$,"getDataHeader",function(){return JSV.common.IntegralData.$HEADER});c(c$,"shiftY",function(a,b,d,c){b=r(100*(d+c-b)/c);0>a&&(b-=this.percentOffset);0>a?this.update(0,this.percentOffset,b):this.update(0,b,
this.percentRange)},"~N,~N,~N,~N");c(c$,"autoIntegrate",function(){null==this.xyCoords&&this.calculateIntegral();if(0!=this.xyCoords.length){this.clear();for(var a=-1,b=0,d=this.xyCoords[this.xyCoords.length-1].getYVal(),c=this.xyCoords.length-1;0<=--c;){var f=this.xyCoords[c].getYVal();b++;1E-4>f-d&&0>a?f<d&&(d=f,b=0):0>a?(a=c+Math.min(b,20),d=f,b=0):1E-4>f-d?(1==b&&(d=f),20<=b&&(this.addIntegralRegion(this.xyCoords[a].getXVal(),this.xyCoords[c].getXVal()),a=-1,d=f,b=0)):(b=0,d=f)}0<this.spec.nH&&
this.factorAllIntegrals(this.spec.nH/this.percentRange,!1)}});c(c$,"getInfo",function(a){a.put("offset",Double.$valueOf(this.myParams.integralOffset));a.put("range",Double.$valueOf(this.myParams.integralRange));a.put("normalizationFactor",Double.$valueOf(this.normalizationFactor));a.put("integralTotal",Double.$valueOf(this.integralTotal));ua(this,JSV.common.IntegralData,"getInfo",[a])},"java.util.Map");c(c$,"setMinimumIntegral",function(a){for(var b=this.size();0<=--b;)this.get(b).getValue()<a&&this.remove(b)},
"~N");fa();c$=F(JSV.common.IntegralData,"IntMode",Enum);c$.getMode=c(c$,"getMode",function(a){for(var b,d=0,c=JSV.common.IntegralData.IntMode.values();d<c.length&&((b=c[d])||1);d++)if(a.startsWith(b.name()))return b;return JSV.common.IntegralData.IntMode.ON},"~S");n(c$,"OFF",0,[]);n(c$,"ON",1,[]);n(c$,"TOGGLE",2,[]);n(c$,"AUTO",3,[]);n(c$,"LIST",4,[]);n(c$,"MARK",5,[]);n(c$,"MIN",6,[]);n(c$,"UPDATE",7,[]);c$=ea();H(c$,"DEFAULT_OFFSET",30,"DEFAULT_RANGE",50,"DEFAULT_MINY",0.1);c$.c=c$.prototype.c=
new JSV.common.IntegralComparator;c$.$HEADER=c$.prototype.$HEADER=["peak","start/ppm","end/ppm","value"]}),p("JSV.common"),q(["java.lang.Enum","JSV.source.JDXDataObject","JU.List"],"JSV.common.JDXSpectrum","java.lang.Boolean $.Double java.util.Hashtable JSV.common.Coordinate $.Parameters $.PeakInfo JSV.source.JDXSourceStreamTokenizer J.util.Logger".split(" "),function(){c$=w(function(){this.highlightedPeak=this.selectedPeak=this.piUnitsY=this.piUnitsX=this.peakList=this.subSpectra=null;this.currentSubSpectrumIndex=
this.specShift=0;this.$isForcedSubset=!1;this.id="";this.convertedSpectrum=null;this.userYFactor=1;this.exportXAxisLeftToRight=!1;u(this,arguments)},JSV.common,"JDXSpectrum",JSV.source.JDXDataObject);Z(c$,function(){this.peakList=new JU.List});e(c$,"finalize",function(){System.out.println("JDXSpectrum "+this+" finalized "+this.title)});c(c$,"dispose",function(){});c(c$,"isForcedSubset",function(){return this.$isForcedSubset});c(c$,"setId",function(a){this.id=a},"~S");z(c$,function(){P(this,JSV.common.JDXSpectrum,
[]);this.headerTable=new JU.List;this.xyCoords=[];this.parent=this});c(c$,"copy",function(){var a=new JSV.common.JDXSpectrum;this.copyTo(a);a.setPeakList(this.peakList,this.piUnitsX,null);return a});c(c$,"getXYCoords",function(){return this.getCurrentSubSpectrum().xyCoords});c(c$,"getPeakList",function(){return this.peakList});c(c$,"setPeakList",function(a,b,d){this.peakList=a;System.out.println("setting peaklist for "+this+" to "+a);null==this.peakList&&System.out.println("ohoh");this.piUnitsX=b;
this.piUnitsY=d;for(b=a.size();0<=--b;)this.peakList.get(b).spectrum=this;J.util.Logger.debugging&&J.util.Logger.info("Spectrum "+this.getTitle()+" peaks: "+a.size());return a.size()},"JU.List,~S,~S");c(c$,"selectPeakByFileIndex",function(a,b){if(null!=this.peakList&&0<this.peakList.size())for(var d=0;d<this.peakList.size();d++)if(this.peakList.get(d).checkFileIndex(a,b))return System.out.println("selecting peak in "+this+" "+this.peakList.get(d)),this.selectedPeak=this.peakList.get(d);return null},
"~S,~S");c(c$,"selectPeakByFilePathTypeModel",function(a,b,d){if(null!=this.peakList&&0<this.peakList.size())for(var c=0;c<this.peakList.size();c++)if(this.peakList.get(c).checkFileTypeModel(a,b,d))return System.out.println("selecting peak in "+this+" "+this.peakList.get(c)),this.selectedPeak=this.peakList.get(c);return null},"~S,~S,~S");c(c$,"matchesPeakTypeModel",function(a,b){if(null!=this.peakList&&0<this.peakList.size())for(var d=0;d<this.peakList.size();d++)if(this.peakList.get(d).checkTypeModel(a,
b))return!0;return!1},"~S,~S");c(c$,"setSelectedPeak",function(a){this.selectedPeak=a},"JSV.common.PeakInfo");c(c$,"setHighlightedPeak",function(a){this.highlightedPeak=a},"JSV.common.PeakInfo");c(c$,"getSelectedPeak",function(){return this.selectedPeak});c(c$,"getModelPeakInfoForAutoSelectOnLoad",function(){if(null!=this.peakList)for(var a=0;a<this.peakList.size();a++)if(this.peakList.get(a).autoSelectOnLoad())return this.peakList.get(a);return null});c(c$,"getAssociatedPeakInfo",function(a,b){this.selectedPeak=
this.findPeakByCoord(a,b);return null==this.selectedPeak?this.getBasePeakInfo():this.selectedPeak},"~N,JSV.common.Coordinate");c(c$,"findPeakByCoord",function(a,b){if(null!=b&&null!=this.peakList&&0<this.peakList.size()){for(var d=b.getXVal(),c=-1,f=1E100,e=0;e<this.peakList.size();e++){var l=this.peakList.get(e).checkRange(a,d);l<f&&(f=l,c=e)}if(0<=c)return this.peakList.get(c)}return null},"~N,JSV.common.Coordinate");c(c$,"getPeakTitle",function(){return null!=this.selectedPeak?this.selectedPeak.getTitle():
null!=this.highlightedPeak?this.highlightedPeak.getTitle():this.getTitleLabel()});c(c$,"getTitleLabel",function(){var a=null==this.peakList||0==this.peakList.size()?this.getQualifiedDataType():this.peakList.get(0).getType();return(null!=a&&0<a.length?a+" ":"")+this.getTitle()});c(c$,"setNextPeak",function(a,b){if(null==this.peakList||0==this.peakList.size())return-1;for(var d=a.getXVal()+1E-6*b,c=-1,f=-1,e=1.7976931348623157E308*b,l=0,h=this.peakList.size();0<=--h;){var k=this.peakList.get(h).getX();
0<b?k>d&&k<e?(c=h,e=k):k<d&&k-d<l&&(f=h,l=k-d):k<d&&k>e?(c=h,e=k):k>d&&k-d>l&&(f=h,l=k-d)}if(0>c){if(0>f)return-1;c=f}return c},"JSV.common.Coordinate,~N");c(c$,"getPercentYValueAt",function(a){return!this.isContinuous()?NaN:this.getYValueAt(a)},"~N");c(c$,"getYValueAt",function(a){return JSV.common.Coordinate.getYValueAt(this.xyCoords,a)},"~N");c(c$,"setUserYFactor",function(a){this.userYFactor=a},"~N");c(c$,"getUserYFactor",function(){return this.userYFactor});c(c$,"getConvertedSpectrum",function(){return this.convertedSpectrum});
c(c$,"setConvertedSpectrum",function(a){this.convertedSpectrum=a},"JSV.common.JDXSpectrum");c$.taConvert=c(c$,"taConvert",function(a,b){if(!a.isContinuous())return a;switch(b){case JSV.common.JDXSpectrum.IRMode.NO_CONVERT:return a;case JSV.common.JDXSpectrum.IRMode.TO_ABS:if(!a.isTransmittance())return a;break;case JSV.common.JDXSpectrum.IRMode.TO_TRANS:if(!a.isAbsorbance())return a}var d=a.getConvertedSpectrum();return null!=d?d:a.isAbsorbance()?JSV.common.JDXSpectrum.toT(a):JSV.common.JDXSpectrum.toA(a)},
"JSV.common.JDXSpectrum,JSV.common.JDXSpectrum.IRMode");c$.toT=c(c$,"toT",function(a){if(!a.isAbsorbance())return null;var b=a.getXYCoords(),d=Array(b.length);JSV.common.Coordinate.isYInRange(b,0,4)||(b=JSV.common.Coordinate.normalise(b,0,4));for(var c=0;c<b.length;c++)d[c]=(new JSV.common.Coordinate).set(b[c].getXVal(),JSV.common.JDXSpectrum.toTransmittance(b[c].getYVal()));return JSV.common.JDXSpectrum.newSpectrum(a,d,"TRANSMITTANCE")},"JSV.common.JDXSpectrum");c$.toA=c(c$,"toA",function(a){if(!a.isTransmittance())return null;
for(var b=a.getXYCoords(),d=Array(b.length),c=JSV.common.Coordinate.isYInRange(b,-2,2),f=0;f<b.length;f++)d[f]=(new JSV.common.Coordinate).set(b[f].getXVal(),JSV.common.JDXSpectrum.toAbsorbance(b[f].getYVal(),c));return JSV.common.JDXSpectrum.newSpectrum(a,d,"ABSORBANCE")},"JSV.common.JDXSpectrum");c$.newSpectrum=c(c$,"newSpectrum",function(a,b,d){var c=a.copy();c.setOrigin("JSpecView Converted");c.setOwner("JSpecView Generated");c.setXYCoords(b);c.setYUnits(d);a.setConvertedSpectrum(c);c.setConvertedSpectrum(a);
return c},"JSV.common.JDXSpectrum,~A,~S");c$.toAbsorbance=c(c$,"toAbsorbance",function(a,b){return Math.min(4,b?2-JSV.common.JDXSpectrum.log10(a):-JSV.common.JDXSpectrum.log10(a))},"~N,~B");c$.toTransmittance=c(c$,"toTransmittance",function(a){return 0>=a?1:Math.pow(10,-a)},"~N");c$.log10=c(c$,"log10",function(a){return Math.log(a)/Math.log(10)},"~N");c$.process=c(c$,"process",function(a,b){if(b===JSV.common.JDXSpectrum.IRMode.TO_ABS||b===JSV.common.JDXSpectrum.IRMode.TO_TRANS)for(var d=0;d<a.size();d++)a.set(d,
JSV.common.JDXSpectrum.taConvert(a.get(d),b));return!0},"JU.List,JSV.common.JDXSpectrum.IRMode");c(c$,"getSubSpectra",function(){return this.subSpectra});c(c$,"getCurrentSubSpectrum",function(){return null==this.subSpectra?this:this.subSpectra.get(this.currentSubSpectrumIndex)});c(c$,"advanceSubSpectrum",function(a){return this.setCurrentSubSpectrum(this.currentSubSpectrumIndex+a)},"~N");c(c$,"setCurrentSubSpectrum",function(a){return this.currentSubSpectrumIndex=JSV.common.Coordinate.intoRange(a,
0,this.subSpectra.size()-1)},"~N");c(c$,"addSubSpectrum",function(a,b){if(!b&&(2>this.numDim||this.blockID!=a.blockID)||!JSV.common.JDXSpectrum.allowSubSpec(this,a))return!1;this.$isForcedSubset=b;null==this.subSpectra&&(this.subSpectra=new JU.List,this.addSubSpectrum(this,!0));this.subSpectra.addLast(a);a.parent=this;return!0},"JSV.common.JDXSpectrum,~B");c(c$,"getSubIndex",function(){return null==this.subSpectra?-1:this.currentSubSpectrumIndex});c(c$,"setExportXAxisDirection",function(a){this.exportXAxisLeftToRight=
a},"~B");c(c$,"isExportXAxisLeftToRight",function(){return this.exportXAxisLeftToRight});c(c$,"getInfo",function(a){var b=new java.util.Hashtable;if("id".equalsIgnoreCase(a))return b.put(a,this.id),b;b.put("id",this.id);JSV.common.Parameters.putInfo(a,b,"specShift",Double.$valueOf(this.specShift));var d="header".equals(a);if(!d&&null!=a)for(var c=this.headerTable.size();0<=--c;){var f=this.headerTable.get(c);if(f[0].equalsIgnoreCase(a)||f[2].equalsIgnoreCase(a))return b.put(a,f[1]),b}for(var f=new java.util.Hashtable,
e=this.getHeaderRowDataAsArray(),c=0;c<e.length;c++){var l=JSV.source.JDXSourceStreamTokenizer.cleanLabel(e[c][0]);if(!(null!=a&&!d&&!l.equals(a))){var h=JSV.common.JDXSpectrum.fixInfoValue(e[c][1]);if(null==a){var k=new java.util.Hashtable;k.put("value",h);k.put("index",Integer.$valueOf(c+1));b.put(l,k)}else b.put(l,h)}}0<f.size()&&b.put("header",f);d||(JSV.common.Parameters.putInfo(a,b,"titleLabel",this.getTitleLabel()),JSV.common.Parameters.putInfo(a,b,"type",this.getDataType()),JSV.common.Parameters.putInfo(a,
b,"isHZToPPM",Boolean.$valueOf(this.$isHZtoPPM)),JSV.common.Parameters.putInfo(a,b,"subSpectrumCount",Integer.$valueOf(null==this.subSpectra?0:this.subSpectra.size())));return b},"~S");c$.fixInfoValue=c(c$,"fixInfoValue",function(a){try{return Integer.$valueOf(a)}catch(b){if(!C(b,Exception))throw b;}try{return Double.$valueOf(a)}catch(d){if(!C(d,Exception))throw d;}return a},"~S");e(c$,"toString",function(){return this.getTitleLabel()});c(c$,"findMatchingPeakInfo",function(a){for(var b=0;b<this.peakList.size();b++)if(this.peakList.get(b).checkTypeMatch(a))return this.peakList.get(b);
return null},"JSV.common.PeakInfo");c(c$,"getBasePeakInfo",function(){return 0==this.peakList.size()?new JSV.common.PeakInfo:new JSV.common.PeakInfo(' baseModel="" '+this.peakList.get(0))});c(c$,"getAxisLabel",function(a){var b=a?this.piUnitsX:this.piUnitsY;null==b&&(b=a?this.xLabel:this.yLabel);null==b&&(b=a?this.xUnits:this.yUnits);return null==b?"":b.equalsIgnoreCase("WAVENUMBERS")?"1/cm":b.equalsIgnoreCase("nanometers")?"nm":b},"~B");c(c$,"findXForPeakNearest",function(a){return JSV.common.Coordinate.findXForPeakNearest(this.xyCoords,
a,this.isInverted())},"~N");c(c$,"addSpecShift",function(a){if(0!=a&&(this.specShift+=a,JSV.common.Coordinate.shiftX(this.xyCoords,a),null!=this.subSpectra))for(var b=this.subSpectra.size();0<=--b;){var d=this.subSpectra.get(b);d!==this&&d!==this.parent&&d.addSpecShift(a)}return this.specShift},"~N");c$.allowSubSpec=c(c$,"allowSubSpec",function(a,b){return a.is1D()==b.is1D()&&a.xUnits.equalsIgnoreCase(b.xUnits)&&a.isHNMR()==b.isHNMR()},"JSV.common.JDXSpectrum,JSV.common.JDXSpectrum");c$.areXScalesCompatible=
c(c$,"areXScalesCompatible",function(a,b,d,c){var f=a.isNMR();if(f!=b.isNMR()||!c&&!a.xUnits.equalsIgnoreCase(b.xUnits))return!1;if(d){if(a.is1D()!=b.is1D())return!1}else if(c){if(!f)return!0}else if(!a.is1D()||!b.is1D())return!1;return!f||b.is1D()&&a.parent.nucleusX.equals(b.parent.nucleusX)},"JSV.common.JDXSpectrum,JSV.common.JDXSpectrum,~B,~B");c$.areLinkableX=c(c$,"areLinkableX",function(a,b){return a.isNMR()&&b.isNMR()&&a.nucleusX.equals(b.nucleusX)},"JSV.common.JDXSpectrum,JSV.common.JDXSpectrum");
c$.areLinkableY=c(c$,"areLinkableY",function(a,b){return a.isNMR()&&b.isNMR()&&a.nucleusX.equals(b.nucleusY)},"JSV.common.JDXSpectrum,JSV.common.JDXSpectrum");c(c$,"setNHydrogens",function(a){this.nH=a},"~N");fa();c$=F(JSV.common.JDXSpectrum,"IRMode",Enum);c$.getMode=c(c$,"getMode",function(a){switch(null==a?"I":a.toUpperCase().charAt(0)){case "A":return JSV.common.JDXSpectrum.IRMode.TO_ABS;case "T":return a.equalsIgnoreCase("TOGGLE")?JSV.common.JDXSpectrum.IRMode.TOGGLE:JSV.common.JDXSpectrum.IRMode.TO_TRANS;
case "N":return JSV.common.JDXSpectrum.IRMode.NO_CONVERT;default:return JSV.common.JDXSpectrum.IRMode.TOGGLE}},"~S");n(c$,"NO_CONVERT",0,[]);n(c$,"TO_TRANS",1,[]);n(c$,"TO_ABS",2,[]);n(c$,"TOGGLE",3,[]);c$=ea();H(c$,"MAXABS",4)}),___date="$Date: 2013-12-05 10:37:03 -0600 (Thu, 05 Dec 2013) $",___svnRev="$LastChangedRevision: 1461 $",___version="2.1.0",p("JSV.common"),c$=F(JSV.common,"JSVersion"),H(c$,"VERSION",null,"VERSION_SHORT",null),W=I=ha=null,ha=self.___version,I=self.___date,W=self.___svnRev,
null!=I&&(I=I.substring(7,23)),null!=W&&(W=W.substring(22,27)),JSV.common.JSVersion.VERSION_SHORT=null!=ha?ha:"(Unknown version)",JSV.common.JSVersion.VERSION=JSV.common.JSVersion.VERSION_SHORT+"/SVN"+W+"/"+(null!=I?I:"(Unknown date)"),p("JSV.common"),q(null,"JSV.common.JSVFileManager","java.io.BufferedInputStream $.BufferedReader $.IOException $.InputStreamReader $.StringReader java.net.URL java.util.Hashtable JU.AU $.Encoding $.PT $.SB JSV.common.JSVersion $.JSViewer JSV.util.JSVEscape J.util.Logger".split(" "),
function(){c$=F(JSV.common,"JSVFileManager");c(c$,"isApplet",function(){return null!=JSV.common.JSVFileManager.appletDocumentBase});c$.getFileAsString=c(c$,"getFileAsString",function(a){if(null==a)return null;var b,c=new JU.SB;try{b=JSV.common.JSVFileManager.getBufferedReaderFromName(a,null);for(var e;null!=(e=b.readLine());)c.append(e),c.appendC("\n");b.close()}catch(f){if(C(f,Exception))return null;throw f;}return c.toString()},"~S");c$.getBufferedReaderForInputStream=c(c$,"getBufferedReaderForInputStream",
function(a){try{return new java.io.BufferedReader(new java.io.InputStreamReader(a,"UTF-8"))}catch(b){if(C(b,java.io.UnsupportedEncodingException))return null;throw b;}},"java.io.InputStream");c$.getBufferedReaderForString=c(c$,"getBufferedReaderForString",function(a){return null==a?null:new java.io.BufferedReader(new java.io.StringReader(a))},"~S");c$.getBufferedReaderFromName=c(c$,"getBufferedReaderFromName",function(a,b){if(null==a)throw new java.io.IOException("Cannot find "+a);J.util.Logger.info("JSVFileManager getBufferedReaderFromName "+
a);var c=JSV.common.JSVFileManager.getFullPathName(a);J.util.Logger.info("JSVFileManager getBufferedReaderFromName "+c);return JSV.common.JSVFileManager.getUnzippedBufferedReaderFromName(c,b)},"~S,~S");c$.getFullPathName=c(c$,"getFullPathName",function(a){if(null==JSV.common.JSVFileManager.appletDocumentBase)return JSV.common.JSVFileManager.isURL(a)?(a=new java.net.URL(ga("java.net.URL"),a,null),a.toString()):JSV.common.JSVFileManager.viewer.apiPlatform.newFile(a).getFullPath();if(1==a.indexOf(":\\")||
1==a.indexOf(":/"))a="file:///"+a;a=new java.net.URL(JSV.common.JSVFileManager.appletDocumentBase,a,null);return a.toString()},"~S");c$.isURL=c(c$,"isURL",function(a){for(var b=JSV.common.JSVFileManager.urlPrefixes.length;0<=--b;)if(a.startsWith(JSV.common.JSVFileManager.urlPrefixes[b]))return!0;return!1},"~S");c$.urlTypeIndex=c(c$,"urlTypeIndex",function(a){for(var b=0;b<JSV.common.JSVFileManager.urlPrefixes.length;++b)if(a.startsWith(JSV.common.JSVFileManager.urlPrefixes[b]))return b;return-1},
"~S");c$.isLocal=c(c$,"isLocal",function(a){if(null==a)return!1;a=JSV.common.JSVFileManager.urlTypeIndex(a);return 0>a||4==a},"~S");c$.getUnzippedBufferedReaderFromName=c(c$,"getUnzippedBufferedReaderFromName",function(a,b){var c=null;0<=a.indexOf("|")&&(c=JU.PT.split(a,"|"),null!=c&&0<c.length&&(a=c[0]));if(a.startsWith("http://SIMULATION/"))return JSV.common.JSVFileManager.getBufferedReaderForString(JSV.common.JSVFileManager.getNMRSimulationJCampDX(a.substring(18)));if(JSV.common.JSVFileManager.viewer.isApplet)return c=
JSV.common.JSVFileManager.viewer.apiPlatform.getBufferedURLInputStream(new java.net.URL(ga("java.net.URL"),a,null),null,null),y(c,JU.SB)||y(c,String)?new java.io.BufferedReader(new java.io.StringReader(c.toString())):JSV.common.JSVFileManager.isAB(c)?new java.io.BufferedReader(new java.io.StringReader(String.instantialize(c))):new java.io.BufferedReader(new java.io.InputStreamReader(c,"UTF-8"));var e=JSV.common.JSVFileManager.getInputStream(a,!0,null),f=new java.io.BufferedInputStream(e),e=f;if(JSV.common.JSVFileManager.isZipFile(f))return JSV.common.JSViewer.getInterface("JSV.util.JSVZipUtil").newJSVZipFileSequentialReader(e,
c,b);JSV.common.JSVFileManager.isGzip(f)&&(e=JSV.common.JSViewer.getInterface("JSV.util.JSVZipUtil").newGZIPInputStream(e));return new java.io.BufferedReader(new java.io.InputStreamReader(e,"UTF-8"))},"~S,~S");c$.isAB=c(c$,"isAB",function(a){return la(a)},"~O");c$.isZipFile=c(c$,"isZipFile",function(a){var b=R(4,0);a.mark(5);var c=a.read(b,0,4);a.reset();return 4==c&&80==b[0]&&75==b[1]&&3==b[2]&&4==b[3]},"java.io.InputStream");c$.isGzip=c(c$,"isGzip",function(a){var b=R(4,0);a.mark(5);var c=a.read(b,
0,4);a.reset();return 4==c&&31==b[0]&&139==b[1]},"java.io.InputStream");c$.getStreamAsBytes=c(c$,"getStreamAsBytes",function(a,b){for(var c=R(1024,0),e=null==b?R(4096,0):null,f=0,g=0;0<(f=a.read(c,0,1024));)g+=f,null==b?(g>=e.length&&(e=JU.AU.ensureLengthByte(e,2*g)),System.arraycopy(c,0,e,g-f,f)):b.write(c,0,f);a.close();return null==b?JU.AU.arrayCopyByte(e,g):g+" bytes"},"java.io.BufferedInputStream,JU.OC");c$.postByteArray=c(c$,"postByteArray",function(a,b){var c=null;try{c=JSV.common.JSVFileManager.getInputStream(a,
!1,b)}catch(e){if(C(e,Exception))return e.toString();throw e;}if(y(c,String))return c;try{c=JSV.common.JSVFileManager.getStreamAsBytes(c,null)}catch(f){if(C(f,java.io.IOException))try{c.close()}catch(g){if(!C(g,java.io.IOException))throw g;}else throw f;}return null==c?"":JSV.common.JSVFileManager.fixUTF(c)},"~S,~A");c$.getUTFEncoding=c(c$,"getUTFEncoding",function(a){return 3<=a.length&&239==a[0]&&187==a[1]&&191==a[2]?JU.Encoding.UTF8:4<=a.length&&0==a[0]&&0==a[1]&&254==a[2]&&255==a[3]?JU.Encoding.UTF_32BE:
4<=a.length&&255==a[0]&&254==a[1]&&0==a[2]&&0==a[3]?JU.Encoding.UTF_32LE:2<=a.length&&255==a[0]&&254==a[1]?JU.Encoding.UTF_16LE:2<=a.length&&254==a[0]&&255==a[1]?JU.Encoding.UTF_16BE:JU.Encoding.NONE},"~A");c$.fixUTF=c(c$,"fixUTF",function(a){var b=JSV.common.JSVFileManager.getUTFEncoding(a);if(b!==JU.Encoding.NONE)try{var c=String.instantialize(a,b.name().$replace("_","-"));switch(b){case JU.Encoding.UTF8:case JU.Encoding.UTF_16BE:case JU.Encoding.UTF_16LE:c=c.substring(1)}return c}catch(e){if(C(e,
java.io.UnsupportedEncodingException))System.out.println(e);else throw e;}return String.instantialize(a)},"~A");c$.getInputStream=c(c$,"getInputStream",function(a,b,c){var e=JSV.common.JSVFileManager.isURL(a),f=null!=JSV.common.JSVFileManager.appletDocumentBase,g=null,g=null,l;if(e&&0<=(l=a.indexOf("?POST?")))g=a.substring(l+6),a=a.substring(0,l);if(f||e){if(a=new java.net.URL(JSV.common.JSVFileManager.appletDocumentBase,a,null),J.util.Logger.info("JSVFileManager opening URL "+a+(null==g?"":" with POST of "+
g.length+" bytes")),g=JSV.common.JSVFileManager.viewer.apiPlatform.getBufferedURLInputStream(a,c,g),y(g,String))return J.util.Logger.info("JSVFileManager could not get this URL:"+g),null}else b&&J.util.Logger.info("JSVFileManager opening file "+a),g=JSV.common.JSVFileManager.viewer.apiPlatform.getBufferedFileInputStream(a);return g},"~S,~B,~A");c$.getNMRSimulationJCampDX=c(c$,"getNMRSimulationJCampDX",function(a){null==JSV.common.JSVFileManager.htSimulate&&(JSV.common.JSVFileManager.htSimulate=new java.util.Hashtable);
var b=""+a.substring(a.indexOf("V2000")+1).hashCode(),c=JSV.common.JSVFileManager.htSimulate.get(b);if(null!=c)return c;var e=a.startsWith("MOL="),f;null==(f=e?JU.PT.simpleReplace(a.substring(4),"\\n","\n"):JSV.common.JSVFileManager.getFileAsString(JU.PT.simpleReplace(JSV.common.JSVFileManager.nciResolver,"%FILE",JU.PT.escapeUrl(a.substring(1)))))&&J.util.Logger.info("no data returned");var g=f.indexOf("\n");f="/JSpecView "+JSV.common.JSVersion.VERSION+f.substring(g);f=JU.PT.simpleReplace(f,"?","_");
c=JSV.common.JSVFileManager.getFileAsString(JSV.common.JSVFileManager.nmrdbServer+f);System.out.println(c);c=JU.PT.simpleReplace(c,"\\r\\n","\n");c=JU.PT.simpleReplace(c,"\\t","\t");c=JU.PT.simpleReplace(c,"\\n","\n");f=JSV.common.JSVFileManager.getQuotedJSONAttribute(c,"molfile",null);var l=JSV.common.JSVFileManager.getQuotedJSONAttribute(c,"xml",null),l=JU.PT.simpleReplace(l,"</","\n</"),l=JU.PT.simpleReplace(l,"><",">\n<"),l=JU.PT.simpleReplace(l,'\\"','"'),c=JSV.common.JSVFileManager.getQuotedJSONAttribute(c,
"jcamp",null),c="##TITLE="+(e?"JMOL SIMULATION":a)+"\n"+c.substring(c.indexOf("\n##")+1);J.util.Logger.info(c.substring(0,c.indexOf("##XYDATA")+40)+"...");var g=c.indexOf("##."),h=a.indexOf("id='");e&&0<h&&(a=a.substring(h+4,(a+"'").indexOf("'",h+4)));c=c.substring(0,g)+"##$MODELS=\n<Models>\n<ModelData id="+JSV.util.JSVEscape.eS(a)+'\n type="MOL">\n'+f+"</ModelData>\n</Models>\n##$SIGNALS=\n"+l+"\n"+c.substring(g);JSV.common.JSVFileManager.htSimulate.put(b,c);return c},"~S");c$.getResource=c(c$,
"getResource",function(a,b,c){var e=null;try{if(null==(e=a.getClass().getResource(b)))c[0]="Couldn't find file: "+b}catch(f){if(C(f,Exception))c[0]="Exception "+f+" in getResource "+b;else throw f;}return e},"~O,~S,~A");c$.getResourceString=c(c$,"getResourceString",function(a,b,c){a=JSV.common.JSVFileManager.getResource(a,b,c);if(null==a)return c[0]="Error loading resource "+b,null;if(y(a,String))return JSV.common.JSVFileManager.getFileAsString(a);b=new JU.SB;try{for(var e=new java.io.BufferedReader(new java.io.InputStreamReader(a.getContent(),
"UTF-8")),f;null!=(f=e.readLine());)b.append(f).append("\n");e.close()}catch(g){if(C(g,Exception))c[0]=g.toString();else throw g;}return b.toString()},"~O,~S,~A");c$.getJmolFilePath=c(c$,"getJmolFilePath",function(a){try{a=JSV.common.JSVFileManager.getFullPathName(a)}catch(b){if(C(b,java.net.MalformedURLException))return null;throw b;}return null==JSV.common.JSVFileManager.appletDocumentBase?a.$replace("\\","/"):a},"~S");c$.getName=c(c$,"getName",function(a){if(null==a)return"String"+ ++JSV.common.JSVFileManager.stringCount;
if(JSV.common.JSVFileManager.isURL(a))try{if(a.startsWith("http://SIMULATION/")&&100<a.length)return a.substring(0,Math.min(a.length,30))+"...";var b=(new java.net.URL(ga("java.net.URL"),a,null)).getFile();return b.substring(b.lastIndexOf("/")+1)}catch(c){if(C(c,java.net.MalformedURLException))return null;throw c;}return JSV.common.JSVFileManager.viewer.apiPlatform.newFile(a).getName()},"~S");c$.getQuotedJSONAttribute=c(c$,"getQuotedJSONAttribute",function(a,b,c){null==c&&(c=b);c='"'+c+'":';b=a.indexOf('"'+
b+'":');var e=a.indexOf(c,b);return 0>b||0>e?null:JU.PT.getQuotedStringAt(a,e+c.length)},"~S,~S,~S");c$.setDocumentBase=c(c$,"setDocumentBase",function(a,b){JSV.common.JSVFileManager.viewer=a;JSV.common.JSVFileManager.appletDocumentBase=b},"JSV.common.JSViewer,java.net.URL");H(c$,"SIMULATION_PROTOCOL","http://SIMULATION/","appletDocumentBase",null,"viewer",null,"jsDocumentBase","");c$.urlPrefixes=c$.prototype.urlPrefixes=["http:","https:","ftp:","http://SIMULATION/","file:"];H(c$,"URL_LOCAL",4,"nciResolver",
"http://cactus.nci.nih.gov/chemical/structure/%FILE/file?format=sdf","nmrdbServer","http://www.nmrdb.org/tools/jmol/predict.php?POST?molfile=","htSimulate",null,"stringCount",0)}),p("JSV.common"),q(["javajs.api.BytePoster","$.JSInterface","$.PlatformViewer","javajs.awt.Dimension","JSV.common.JDXSpectrum"],"JSV.common.JSViewer","java.lang.Boolean $.Double $.Float $.Thread java.net.URL java.util.Hashtable JU.List $.OC $.PT $.SB JSV.common.Annotation $.ExportType $.JSVFileManager $.PanelData $.PanelNode $.Parameters $.PeakInfo $.PrintLayout $.RepaintManager $.ScriptToken $.ScriptTokenizer JSV.source.JDXSource JSV.tree.SimpleTree JSV.util.JSVEscape J.util.Logger".split(" "),
function(){c$=w(function(){this.irMode=this.overlayLegendDialog=this.viewDialog=this.dialogManager=this.jsvpPopupMenu=this.fileHelper=this.scriptQueue=this.properties=this.viewPanel=this.selectedPanel=this.repaintManager=this.parameters=this.panelNodes=this.currentSource=this.spectraTree=this.g2d=this.si=null;this.isSigned=this.isJS=this.isApplet=this.isSingleThreaded=!1;this.recentScript="";this.display=this.applet=this.syncID=this.fullName=this.appletID=null;this.maximumSize=2147483647;this.apiPlatform=
this.dimScreen=null;this.popupZoomEnabled=this.popupAllowMenu=!0;this.overlayLegendVisible=!1;this.recentStackPercent=5;this.offWindowFrame=this.lastPrintLayout=null;u(this,arguments)},JSV.common,"JSViewer",null,[javajs.api.PlatformViewer,javajs.api.JSInterface,javajs.api.BytePoster]);Z(c$,function(){this.irMode=JSV.common.JDXSpectrum.IRMode.NO_CONVERT;this.dimScreen=new javajs.awt.Dimension(0,0)});c(c$,"setProperty",function(a,b){null!=this.properties&&this.properties.setProperty(a,b)},"~S,~S");
c(c$,"setNode",function(a,b){this.si.siSetNode(a,b)},"JSV.common.PanelNode,~B");z(c$,function(a,b,c){this.si=a;this.isJS=(this.isApplet=b)&&c;this.isSigned=a.isSigned();this.apiPlatform=this.getPlatformInterface("Platform");this.apiPlatform.setViewer(this,this.display);this.g2d=this.getPlatformInterface("G2D");this.spectraTree=new JSV.tree.SimpleTree(this);this.parameters=this.getPlatformInterface("Parameters");this.parameters.setName("applet");this.fileHelper=this.getPlatformInterface("FileHelper").set(this);
this.isSingleThreaded=this.apiPlatform.isSingleThreaded();this.panelNodes=new JU.List;this.repaintManager=new JSV.common.RepaintManager(this);b||this.setPopupMenu(!0,!0)},"JSV.api.ScriptInterface,~B,~B");c(c$,"setPopupMenu",function(a,b){this.popupAllowMenu=a;this.popupZoomEnabled=b},"~B,~B");c(c$,"showMenu",function(a,b){if(null==this.jsvpPopupMenu)try{this.jsvpPopupMenu=this.getPlatformInterface("Popup"),this.jsvpPopupMenu.jpiInitialize(this,this.isApplet?"appletMenu":"appMenu"),this.jsvpPopupMenu.setEnabled(this.popupAllowMenu,
this.popupZoomEnabled)}catch(c){if(C(c,Exception)){System.out.println(c+" initializing popup menu");return}throw c;}this.jsvpPopupMenu.jpiShow(a,b)},"~N,~N");c(c$,"runScriptNow",function(a){this.si.siIncrementViewCount(1);null==a&&(a="");a=a.trim();a.startsWith("!")&&(a=a.substring(1).trim());System.out.println("RUNSCRIPT "+a);var b=!0,c=10;a=new JSV.common.ScriptTokenizer(a,!0);for(var e=null;a.hasMoreTokens()&&0<c&&b;){var f=a.nextToken(),g=new JSV.common.ScriptTokenizer(f,!1),l=JSV.common.ScriptToken.getKey(g);
if(null!=l){var h=JSV.common.ScriptToken.getScriptToken(l),f=JSV.common.ScriptToken.getValue(h,g,f);System.out.println("KEY-> "+l+" VALUE-> "+f+" : "+h);try{switch(h){case JSV.common.ScriptToken.UNKNOWN:J.util.Logger.info("Unrecognized parameter: "+l);--c;break;default:if(null==this.selectedPanel)break;this.parameters.set(this.pd(),h,f);this.si.siUpdateBoolean(h,JSV.common.Parameters.isTrue(f));break;case JSV.common.ScriptToken.PEAKCALLBACKFUNCTIONNAME:case JSV.common.ScriptToken.SYNCCALLBACKFUNCTIONNAME:case JSV.common.ScriptToken.COORDCALLBACKFUNCTIONNAME:case JSV.common.ScriptToken.LOADFILECALLBACKFUNCTIONNAME:this.si.siExecSetCallback(h,
f);break;case JSV.common.ScriptToken.AUTOINTEGRATE:this.si.siExecSetAutoIntegrate(JSV.common.Parameters.isTrue(f));break;case JSV.common.ScriptToken.CLOSE:this.si.siExecClose(f);break;case JSV.common.ScriptToken.DEBUG:J.util.Logger.setLogLevel(f.toLowerCase().equals("high")?6:JSV.common.Parameters.isTrue(f)?5:4);break;case JSV.common.ScriptToken.GETPROPERTY:var k=null==this.selectedPanel?null:this.getPropertyAsJavaObject(f);null!=k&&this.selectedPanel.showMessage(JU.PT.toJSON(null,k),f);break;case JSV.common.ScriptToken.HIDDEN:this.si.siExecHidden(JSV.common.Parameters.isTrue(f));
break;case JSV.common.ScriptToken.INTEGRATIONRATIOS:this.si.siSetIntegrationRatios(f);null!=this.selectedPanel&&this.execIntegrate(null);break;case JSV.common.ScriptToken.INTERFACE:this.si.siExecSetInterface(f);break;case JSV.common.ScriptToken.INTEGRALOFFSET:case JSV.common.ScriptToken.INTEGRALRANGE:this.execSetIntegralParameter(h,Double.parseDouble(f));break;case JSV.common.ScriptToken.JMOL:this.si.syncToJmol(f);break;case JSV.common.ScriptToken.JSV:this.syncScript(JU.PT.trimQuotes(f));break;case JSV.common.ScriptToken.LOAD:e=
this.si.siExecLoad(f);break;case JSV.common.ScriptToken.LOADIMAGINARY:this.si.siSetLoadImaginary(JSV.common.Parameters.isTrue(f));break;case JSV.common.ScriptToken.PEAK:this.execPeak(f);break;case JSV.common.ScriptToken.PEAKLIST:this.execPeakList(f);break;case JSV.common.ScriptToken.SCALEBY:this.scaleSelectedBy(this.panelNodes,f);break;case JSV.common.ScriptToken.SCRIPT:if(f.equals("")||f.toLowerCase().startsWith("inline"))this.execScriptInline(f);else{var s=this.si.siSetFileAsString(f);null!=s&&
100>this.si.siIncrementScriptLevelCount(0)&&this.runScriptNow(s)}break;case JSV.common.ScriptToken.SELECT:this.execSelect(f);break;case JSV.common.ScriptToken.SPECTRUM:case JSV.common.ScriptToken.SPECTRUMNUMBER:this.setSpectrum(f)||(b=!1);break;case JSV.common.ScriptToken.STACKOFFSETY:this.execOverlayOffsetY(JU.PT.parseInt(""+JU.PT.parseFloat(f)));break;case JSV.common.ScriptToken.TEST:this.si.siExecTest(f);break;case JSV.common.ScriptToken.OVERLAY:case JSV.common.ScriptToken.VIEW:this.execView(f,
!0);break;case JSV.common.ScriptToken.FINDX:case JSV.common.ScriptToken.GETSOLUTIONCOLOR:case JSV.common.ScriptToken.INTEGRATION:case JSV.common.ScriptToken.INTEGRATE:case JSV.common.ScriptToken.IRMODE:case JSV.common.ScriptToken.LABEL:case JSV.common.ScriptToken.LINK:case JSV.common.ScriptToken.OVERLAYSTACKED:case JSV.common.ScriptToken.PRINT:case JSV.common.ScriptToken.SETPEAK:case JSV.common.ScriptToken.SETX:case JSV.common.ScriptToken.SHIFTX:case JSV.common.ScriptToken.SHOWERRORS:case JSV.common.ScriptToken.SHOWMEASUREMENTS:case JSV.common.ScriptToken.SHOWMENU:case JSV.common.ScriptToken.SHOWKEY:case JSV.common.ScriptToken.SHOWPEAKLIST:case JSV.common.ScriptToken.SHOWINTEGRATION:case JSV.common.ScriptToken.SHOWPROPERTIES:case JSV.common.ScriptToken.SHOWSOURCE:case JSV.common.ScriptToken.YSCALE:case JSV.common.ScriptToken.WRITE:case JSV.common.ScriptToken.ZOOM:if(null==
this.selectedPanel){b=!1;break}switch(h){case JSV.common.ScriptToken.FINDX:this.pd().findX(null,Double.parseDouble(f));break;case JSV.common.ScriptToken.GETSOLUTIONCOLOR:this.selectedPanel.showMessage(this.getSolutionColorHtml(),"Predicted Colour");break;case JSV.common.ScriptToken.INTEGRATION:case JSV.common.ScriptToken.INTEGRATE:this.execIntegrate(f);break;case JSV.common.ScriptToken.IRMODE:this.execIRMode(f);break;case JSV.common.ScriptToken.LABEL:this.pd().addAnnotation(JSV.common.ScriptToken.getTokens(f));
break;case JSV.common.ScriptToken.LINK:this.pd().linkSpectra(JSV.common.PanelData.LinkMode.getMode(f));break;case JSV.common.ScriptToken.OVERLAYSTACKED:this.pd().splitStack(!JSV.common.Parameters.isTrue(f));break;case JSV.common.ScriptToken.PRINT:e=this.execWrite(null);break;case JSV.common.ScriptToken.SETPEAK:this.pd().shiftSpectrum(NaN,f.equalsIgnoreCase("NONE")?1.7976931348623157E308:f.equalsIgnoreCase("?")?4.9E-324:Double.parseDouble(f));break;case JSV.common.ScriptToken.SETX:this.pd().shiftSpectrum(4.9E-324,
Double.parseDouble(f));break;case JSV.common.ScriptToken.SHIFTX:this.pd().shiftSpectrum(f.equalsIgnoreCase("NONE")?1.7976931348623157E308:Double.parseDouble(f),NaN);break;case JSV.common.ScriptToken.SHOWERRORS:this.show("errors");break;case JSV.common.ScriptToken.SHOWINTEGRATION:this.pd().showAnnotation(JSV.common.Annotation.AType.Integration,JSV.common.Parameters.getTFToggle(f));break;case JSV.common.ScriptToken.SHOWKEY:this.setOverlayLegendVisibility(JSV.common.Parameters.getTFToggle(f),!0);break;
case JSV.common.ScriptToken.SHOWMEASUREMENTS:this.pd().showAnnotation(JSV.common.Annotation.AType.Measurements,JSV.common.Parameters.getTFToggle(f));break;case JSV.common.ScriptToken.SHOWMENU:this.showMenu(-2147483648,0);break;case JSV.common.ScriptToken.SHOWPEAKLIST:this.pd().showAnnotation(JSV.common.Annotation.AType.PeakList,JSV.common.Parameters.getTFToggle(f));break;case JSV.common.ScriptToken.SHOWPROPERTIES:this.show("properties");break;case JSV.common.ScriptToken.SHOWSOURCE:this.show("source");
break;case JSV.common.ScriptToken.YSCALE:this.setYScale(f);break;case JSV.common.ScriptToken.WINDOW:this.si.siNewWindow(JSV.common.Parameters.isTrue(f),!1);break;case JSV.common.ScriptToken.WRITE:e=this.execWrite(f);break;case JSV.common.ScriptToken.ZOOM:b=this.execZoom(f)}}}catch(m){if(C(m,Exception))alert(m+"\n"+Ca()),b=!1,--c;else throw m;}}}this.si.siIncrementViewCount(-1);this.si.siExecScriptComplete(e,!0);return b},"~S");c(c$,"pd",function(){return this.selectedPanel.getPanelData()});c(c$,"execPeak",
function(a){try{var b=JSV.common.ScriptToken.getTokens(a);a=' type="'+b.get(0).toUpperCase()+'" _match="'+JU.PT.trimQuotes(b.get(1).toUpperCase())+'"';2<b.size()&&b.get(2).equalsIgnoreCase("all")&&(a+=' title="ALL"');this.processPeakPickEvent(new JSV.common.PeakInfo(a),!1)}catch(c){if(!C(c,Exception))throw c;}},"~S");c(c$,"execPeakList",function(a){var b=this.selectedPanel,c=this.parameters,e=JSV.common.Parameters.getTFToggle(a);if(0>a.indexOf("="))null!=b&&b.getPanelData().getPeakListing(null,e);
else for(var e=JSV.common.ScriptToken.getTokens(a),f=e.size();0<=--f;){a=e.get(f);var g=a.indexOf("=");if(!(0>=g)){var l=a.substring(0,g);a=a.substring(g+1);try{l.startsWith("thr")?c.peakListThreshold=Double.$valueOf(a).doubleValue():l.startsWith("int")&&(c.peakListInterpolation=a.equalsIgnoreCase("none")?"NONE":"parabolic"),null!=b&&b.getPanelData().getPeakListing(c,Boolean.TRUE)}catch(h){if(!C(h,Exception))throw h;}}}},"~S");c(c$,"execZoom",function(a){var b=0,c=0,e=0,f=0;a=JSV.common.ScriptToken.getTokens(a);
switch(a.size()){default:return!1;case 1:return this.zoomTo(a.get(0)),!0;case 2:b=Double.parseDouble(a.get(0));c=Double.parseDouble(a.get(1));break;case 4:b=Double.parseDouble(a.get(0)),e=Double.parseDouble(a.get(1)),c=Double.parseDouble(a.get(2)),f=Double.parseDouble(a.get(3))}this.pd().setZoom(b,e,c,f);return!0},"~S");c(c$,"zoomTo",function(a){var b=this.pd();a.equalsIgnoreCase("next")?b.nextView():a.toLowerCase().startsWith("prev")?b.previousView():a.equalsIgnoreCase("out")?b.resetView():a.equalsIgnoreCase("clear")&&
b.clearAllView()},"~S");c(c$,"scaleSelectedBy",function(a,b){try{for(var c=Double.parseDouble(b),e=a.size();0<=--e;)a.get(e).jsvp.getPanelData().scaleSelectedBy(c)}catch(f){if(!C(f,Exception))throw f;}},"JU.List,~S");c(c$,"execSelect",function(a){for(var b=this.panelNodes,c=b.size();0<=--c;)b.get(c).jsvp.getPanelData().selectFromEntireSet(-2147483648);b=new JU.List;this.fillSpecList(a,b,!1)},"~S");c(c$,"execView",function(a,b){if(a.equals(""))this.checkOverlay();else{var c=new JU.List,e=this.fillSpecList(a,
c,!0);0<c.size()&&this.si.siOpenDataOrFile(null,e,c,e,-1,-1,!1);b||this.si.siValidateAndRepaint()}},"~S,~B");c(c$,"execIRMode",function(a){var b=JSV.common.JDXSpectrum.IRMode.getMode(a),c=this.pd(),e=c.getSpectrum(),b=JSV.common.JDXSpectrum.taConvert(e,b);b!==e&&(c.setSpectrum(b),this.setIRmode(a))},"~S");c(c$,"execIntegrate",function(a){var b=this.selectedPanel;null!=b&&(b.getPanelData().checkIntegral(this.parameters,a),a=this.si.siGetIntegrationRatios(),null!=a&&b.getPanelData().setIntegrationRatios(a),
this.si.siSetIntegrationRatios(null),b.doRepaint(!0))},"~S");c(c$,"execSetIntegralParameter",function(a,b){var c=this.parameters;switch(a){case JSV.common.ScriptToken.INTEGRALRANGE:c.integralRange=b;break;case JSV.common.ScriptToken.INTEGRALOFFSET:c.integralOffset=b}c=this.selectedPanel;null!=c&&c.getPanelData().checkIntegral(this.parameters,"update")},"JSV.common.ScriptToken,~N");c(c$,"setYScale",function(a){var b=JSV.common.ScriptToken.getTokens(a),c=0,e=!1;1<b.size()&&b.get(0).equalsIgnoreCase("ALL")&&
(e=!0,c++);a=Double.parseDouble(b.get(c++));b=Double.parseDouble(b.get(c));if(e){e=this.pd().getSpectrum();for(c=this.panelNodes.size();0<=--c;){var f=this.panelNodes.get(c);f.source===this.currentSource&&JSV.common.JDXSpectrum.areXScalesCompatible(e,f.getSpectrum(),!1,!1)&&f.jsvp.getPanelData().setZoom(0,a,0,b)}}else this.pd().setZoom(0,a,0,b)},"~S");c(c$,"setOverlayLegendVisibility",function(a,b){b&&(this.overlayLegendVisible=null==a?!this.overlayLegendVisible:a===Boolean.TRUE);for(var c=JSV.common.PanelNode.findNode(this.selectedPanel,
this.panelNodes),e=this.panelNodes.size();0<=--e;)this.showOverlayLegend(this.panelNodes.get(e),this.panelNodes.get(e)===c&&this.overlayLegendVisible)},"Boolean,~B");c(c$,"showOverlayLegend",function(a,b){var c=a.legend;null==c&&b&&(c=a.setLegend(1<a.jsvp.getPanelData().getNumberOfSpectraInCurrentSet()&&1==a.jsvp.getPanelData().getNumberOfGraphSets()?this.getDialog(JSV.common.Annotation.AType.OverlayLegend,null):null));null!=c&&c.setVisible(b)},"JSV.common.PanelNode,~B");c(c$,"addHighLight",function(a,
b,c,e,f,g){var l=this.selectedPanel;null!=l&&(l.getPanelData().addHighlight(null,a,b,null,c,e,f,g),l.doRepaint(!1))},"~N,~N,~N,~N,~N,~N");c(c$,"syncScript",function(a){a.equals("TEST")&&(a=JSV.common.JSViewer.testScript);J.util.Logger.info("JSViewer.syncScript Jmol>JSV "+a);if(0>a.indexOf("<PeakData")){if(this.runScriptNow(a),0<=a.indexOf("#SYNC_PEAKS")&&(a=this.currentSource,null!=a))try{var b="file="+JSV.util.JSVEscape.eS(a.getFilePath()),c=a.getSpectra().get(0).getPeakList(),e=new JU.SB;e.append("[");
var f=c.size();for(a=0;a<f;a++){var g=c.get(a).toString(),g=g+" "+b;e.append(JSV.util.JSVEscape.eS(g));0<a&&e.append(",")}e.append("]");this.si.syncToJmol("Peaks: "+e)}catch(l){if(!C(l,Exception))throw l;}}else if(a=JU.PT.simpleReplace(a,'\\"',""),b=JU.PT.getQuotedAttribute(a,"file"),System.out.println("file2="+b),c=JU.PT.getQuotedAttribute(a,"index"),!(null==b||null==c))if(c=JU.PT.getQuotedAttribute(a,"model"),e=JU.PT.getQuotedAttribute(a,"src"),f=null!=e&&e.startsWith("Jmol")?null:this.si.siGetReturnFromJmolModel(),
null!=c&&null!=f&&!c.equals(f))J.util.Logger.info("JSV ignoring model "+c+"; should be "+f);else{this.si.siSetReturnFromJmolModel(null);if(0==this.panelNodes.size()||!this.checkFileAlreadyLoaded(b))J.util.Logger.info("file "+b+" not found -- JSViewer closing all and reopening"),this.si.siSyncLoad(b);f=this.selectPanelByPeak(a);g=this.selectedPanel;a=JU.PT.getQuotedAttribute(a,"type");g.getPanelData().selectSpectrum(b,a,c,!0);this.si.siSendPanelChange(g);g.getPanelData().addPeakHighlight(f);g.doRepaint(!0);
(null==e||null!=f&&null!=f.getAtoms())&&this.si.syncToJmol(this.jmolSelect(f))}},"~S");c(c$,"checkFileAlreadyLoaded",function(a){var b=this.selectedPanel;if(null!=b&&b.getPanelData().hasFileLoaded(a))return!0;for(b=this.panelNodes.size();0<=--b;)if(this.panelNodes.get(b).jsvp.getPanelData().hasFileLoaded(a))return this.si.siSetSelectedPanel(this.panelNodes.get(b).jsvp),!0;return!1},"~S");c(c$,"selectPanelByPeak",function(a){if(null==this.panelNodes)return null;var b=JU.PT.getQuotedAttribute(a,"file");
a=JU.PT.getQuotedAttribute(a,"index");for(var c=null,e=this.panelNodes.size();0<=--e;)this.panelNodes.get(e).jsvp.getPanelData().addPeakHighlight(null);e=this.selectedPanel;c=e.getPanelData().selectPeakByFileIndex(b,a);System.out.println(Thread.currentThread()+"JSViewer selectPanelByPeak pi = "+c);if(null!=c)this.setNode(JSV.common.PanelNode.findNode(e,this.panelNodes),!1);else for(e=this.panelNodes.size();0<=--e;){var f=this.panelNodes.get(e);if(null!=(c=f.jsvp.getPanelData().selectPeakByFileIndex(b,
a))){this.setNode(f,!1);break}}return c},"~S");c(c$,"processPeakPickEvent",function(a){if(y(a,JSV.common.PeakInfo)){var b=this.selectedPanel.getPanelData().findMatchingPeakInfo(a);if(null==b){if(!"ALL".equals(a.getTitle()))return;for(var c=null,e=0;e<this.panelNodes.size();e++)if(null!=(b=this.panelNodes.get(e).jsvp.getPanelData().findMatchingPeakInfo(a))){c=this.panelNodes.get(e);break}if(null==c)return;this.setNode(c,!1)}a=b}else this.si.siSetSelectedPanel(a.getSource()),a=a.getPeakInfo();this.pd().addPeakHighlight(a);
this.syncToJmol(a);a.isClearAll()?this.selectedPanel.doRepaint(!1):this.pd().selectSpectrum(a.getFilePath(),a.getType(),a.getModel(),!0);this.si.siCheckCallbacks(a.getTitle())},"~O,~B");c(c$,"syncToJmol",function(a){this.si.siSetReturnFromJmolModel(a.getModel());this.si.syncToJmol(this.jmolSelect(a))},"JSV.common.PeakInfo");c(c$,"sendPanelChange",function(a){var b=a.getPanelData(),c=b.getSpectrum(),e=c.getSelectedPeak();null==e&&(e=c.getModelPeakInfoForAutoSelectOnLoad());null==e&&(e=c.getBasePeakInfo());
b.addPeakHighlight(e);J.util.Logger.info(Thread.currentThread()+"JSViewer sendFrameChange "+a);this.syncToJmol(e)},"JSV.api.JSVPanel");c(c$,"jmolSelect",function(a){var b=null,b="IR".equals(a.getType())||"RAMAN".equals(a.getType())?"vibration ON; selectionHalos OFF;":null!=a.getAtoms()?"vibration OFF; selectionhalos ON;":"vibration OFF; selectionhalos OFF;",b="Select: "+a+' script="'+b;System.out.println("JSViewer.jmolSelect "+b);return b},"JSV.common.PeakInfo");c(c$,"getPropertyAsJavaObject",function(a){var b=
!1;if(null!=a&&a.toUpperCase().startsWith("ALL ")||"all".equalsIgnoreCase(a))a=a.substring(3).trim(),b=!0;"".equals(a)&&(a=null);var c=new java.util.Hashtable,e=this.pd().getInfo(!0,a);if(!b&&null!=e)return e;null!=e&&c.put("current",e);b=new JU.List;for(e=0;e<this.panelNodes.size();e++)null!=this.panelNodes.get(e).jsvp&&b.addLast(this.panelNodes.get(e).getInfo(a));c.put("items",b);return c},"~S");c(c$,"getCoordinate",function(){if(null!=this.selectedPanel){var a=this.pd().getClickedCoordinate();
if(null!=a)return a.getXVal()+" "+a.getYVal()}return""});c(c$,"fillSpecList",function(a,b,c){var e,f=null,g=a.equalsIgnoreCase("NONE");if(g||a.equalsIgnoreCase("all"))a="*";if(0>a.indexOf("*")){e=a.$plit(" ");a=new JU.SB;for(var l=0;l<e.length;l++){var h=e[l].indexOf(".");h!=e[l].lastIndexOf(".")&&(e[l]=e[l].substring(0,h+1)+e[l].substring(h+1).$replace(".","_"));a.append(e[l]).append(" ")}a=a.toString().trim()}if(a.equals("*"))e=JSV.common.ScriptToken.getTokens(JSV.common.PanelNode.getSpectrumListAsString(this.panelNodes));
else if(a.startsWith('"'))e=JSV.common.ScriptToken.getTokens(a);else if(a=JU.PT.simpleReplace(a,"_"," _ "),a=JU.PT.simpleReplace(a,"-"," - "),e=JSV.common.ScriptToken.getTokens(a),f=JSV.common.ScriptToken.getTokens(JSV.common.PanelNode.getSpectrumListAsString(this.panelNodes)),0==f.size())return null;var k=null==this.selectedPanel?"1.":JSV.common.PanelNode.findNode(this.selectedPanel,this.panelNodes).id,k=k.substring(0,k.indexOf(".")+1);a=new JU.SB;for(var m=e.size(),p=null,l=0;l<m;l++){var n=e.get(l),
h=NaN,q=-1;l+1<m&&e.get(l+1).equals("*")?(l+=2,h=Double.parseDouble(e.get(l))):l+1<m&&e.get(l+1).equals("_")&&(l+=2,q=Integer.parseInt(e.get(l)));if(n.equals("-")){null==p&&(p=f.get(0));n=l+1==m?f.get(f.size()-1):e.get(++l);n.contains(".")||(n=k+n);for(h=0;h<f.size()&&!f.get(h).equals(p);)h++;for(h++;h<f.size()&&!p.equals(n);)b.addLast(JSV.common.PanelNode.findNodeById(p=f.get(h++),this.panelNodes).jsvp.getPanelData().getSpectrumAt(0)),a.append(",").append(p)}else{var r;if(n.startsWith('"')){n=JU.PT.trim(n,
'"');for(q=0;q<this.panelNodes.size();q++)if(r=this.panelNodes.get(q),null!=r.fileName&&r.fileName.startsWith(n)||null!=r.frameTitle&&r.frameTitle.startsWith(n))this.addSpecToList(r.jsvp.getPanelData(),h,-1,b,c),a.append(",").append(r.id)}else n.contains(".")||(n=k+n),r=JSV.common.PanelNode.findNodeById(n,this.panelNodes),null!=r&&(p=n,this.addSpecToList(r.jsvp.getPanelData(),h,q,b,c),a.append(",").append(n),0<q&&a.append(".").appendI(q))}}c&&1==b.size()&&(r=JSV.common.PanelNode.findNodeById(p,this.panelNodes),
null!=r&&(this.setNode(r,!0),b.clear()));return g?"NONE":0<a.length()?a.toString().substring(1):null},"~S,JU.List,~B");c(c$,"addSpecToList",function(a,b,c,e,f){f?(a.getSpectrumAt(0).setUserYFactor(Double.isNaN(b)?1:b),a.addToList(c-1,e)):a.selectFromEntireSet(c-1)},"JSV.common.PanelData,~N,~N,JU.List,~B");c(c$,"getSolutionColor",function(){var a=this.pd().getSpectrum();return a.canShowSolutionColor()?JSV.common.JSViewer.getInterface("JSV.common.Visible").getColour(a.getXYCoords(),a.getYUnits()):"255,255,255"});
c(c$,"getSolutionColorHtml",function(){var a=this.getSolutionColor();return"<html><body style='background-color:rgb("+a+")'><br />Predicted Solution Colour- RGB("+a+")<br /><br /></body></html>"});c(c$,"openDataOrFile",function(a,b,c,e,f,g,l){if("NONE".equals(b))return this.close("View*"),0;this.si.writeStatus("");var h=null,k=null,m=null;b=!1;if(null==a)if(null!=c)b=!0,k=m=h="View"+this.si.siIncrementViewCount(1);else if(null!=e)try{h=(new java.net.URL(JSV.common.JSVFileManager.appletDocumentBase,
e,null)).toString(),this.si.siSetRecentURL(h),m=JSV.common.JSVFileManager.getName(h)}catch(n){if(C(n,java.net.MalformedURLException))h=this.apiPlatform.newFile(e),m=h.getName(),k=h=h.getFullPath(),this.si.siSetRecentURL(null);else throw n;}if(!b&&(JSV.common.PanelNode.isOpen(this.panelNodes,h)||JSV.common.PanelNode.isOpen(this.panelNodes,e)))return this.si.writeStatus(h+" is already open"),-1;!l&&!b&&this.close("all");this.si.setCursor(3);try{this.si.siSetCurrentSource(b?JSV.source.JDXSource.createView(c):
this.si.siCreateSource(a,h,f,g))}catch(p){if(C(p,Exception))return alert(p+"\n"+Ca()),this.si.setCursor(0),-3;throw p;}this.si.setCursor(0);System.gc();null==k?(k=this.currentSource.getFilePath(),null!=k&&(m=k.substring(k.lastIndexOf("/")+1))):this.currentSource.setFilePath(k);this.si.siSetLoaded(m,k);a=this.currentSource.getJDXSpectrum(0);if(null==a)return-4;c=this.currentSource.getSpectra();JSV.common.JDXSpectrum.process(c,this.irMode);c=this.si.siGetAutoCombine()||a.isAutoOverlayFromJmolClick();
b||c&&this.currentSource.isCompoundSource?this.combineSpectra(b?e:null):this.splitSpectra();this.selectedPanel.getPanelData().taintedAll=!0;b||this.si.siUpdateRecentMenus(h);return 0},"~S,~S,JU.List,~S,~N,~N,~B");c(c$,"close",function(a){if(null==a||a.equalsIgnoreCase("all")||a.equals("*"))this.si.siCloseSource(null);else{a=a.$replace("\\","/");if(a.endsWith("*")){a=a.substring(0,a.length-1);for(var b=this.panelNodes.size();0<=--b;)b<this.panelNodes.size()&&this.panelNodes.get(b).fileName.startsWith(a)&&
this.si.siCloseSource(this.panelNodes.get(b).source)}else if(a.equals("selected")){a=new JU.List;for(var c=null,b=this.panelNodes.size();0<=--b;){var e=this.panelNodes.get(b).source;this.panelNodes.get(b).isSelected&&(null==c||c!==e)&&a.addLast(e);c=e}for(b=a.size();0<=--b;)this.si.siCloseSource(a.get(b))}else{e=0==a.length?this.currentSource:JSV.common.PanelNode.findSourceByNameOrId(a,this.panelNodes);if(null==e)return;this.si.siCloseSource(e)}null==this.selectedPanel&&0<this.panelNodes.size()&&
this.si.siSetSelectedPanel(JSV.common.PanelNode.getLastFileFirstNode(this.panelNodes))}},"~S");c(c$,"load",function(a){var b=JSV.common.ScriptToken.getTokens(a);a=b.get(0);var c=0,e=a.equalsIgnoreCase("APPEND"),f=a.equalsIgnoreCase("CHECK");if(e||f)a=b.get(++c);a.equalsIgnoreCase("MOL")&&(a="http://SIMULATION/MOL="+JU.PT.trimQuotes(b.get(++c)));!f&&!e&&(a.equals('""')&&null!=this.currentSource&&(a=this.currentSource.getFilePath()),this.close("all"));a=JU.PT.trimQuotes(a);a.startsWith("$")&&(a="http://SIMULATION/"+
a);f=c+1<b.size()?Integer.$valueOf(b.get(++c)).intValue():-1;b=c+1<b.size()?Integer.$valueOf(b.get(++c)).intValue():f;this.si.siOpenDataOrFile(null,null,null,a,f,b,e)},"~S");c(c$,"combineSpectra",function(a){var b=this.currentSource,c=b.getSpectra(),c=this.si.siGetNewJSVPanel2(c);c.setTitle(b.getTitle());c.getTitle().equals("")&&(c.getPanelData().setViewTitle(b.getFilePath()),c.setTitle(a));this.si.siSetPropertiesFromPreferences(c,!0);this.si.siCreateTree(b,[c]).getPanelNode().isView=!0;b=JSV.common.PanelNode.findNode(this.selectedPanel,
this.panelNodes);b.setFrameTitle(a);b.isView=!0;this.si.siGetAutoShowLegend()&&1==this.pd().getNumberOfGraphSets()&&b.setLegend(this.getDialog(JSV.common.Annotation.AType.OverlayLegend,null));this.si.siSetMenuEnables(b,!1)},"~S");c(c$,"closeSource",function(a){for(var b=this.spectraTree.getRootNode(),c=null==a?null:a.getFilePath(),e=new JU.List,b=b.children();b.hasMoreElements();){var f=b.nextElement();if(null==c||f.getPanelNode().source.getFilePath().equals(c)){for(var g=f.children();g.hasMoreElements();){var l=
g.nextElement();e.addLast(l);this.panelNodes.removeObj(l.getPanelNode())}e.addLast(f);if(null!=c)break}}this.spectraTree.deleteNodes(e);null==a&&(null!=this.currentSource&&this.currentSource.dispose(),this.currentSource=null,null!=this.selectedPanel&&this.selectedPanel.dispose());this.currentSource===a&&(this.si.siSetSelectedPanel(null),this.si.siSetCurrentSource(null));for(c=a=0;c<this.panelNodes.size();c++)e=JU.PT.parseFloat(this.panelNodes.get(c).id),e>=a+1&&(a=r(Math.floor(e)));this.si.siSetFileCount(a);
System.gc();J.util.Logger.checkMemory()},"JSV.source.JDXSource");c(c$,"setFrameAndTreeNode",function(a){null==this.panelNodes||(0>a||a>=this.panelNodes.size())||this.setNode(this.panelNodes.get(a),!1)},"~N");c(c$,"selectFrameNode",function(a){a=JSV.common.PanelNode.findNode(a,this.panelNodes);if(null==a)return null;this.spectraTree.setPath(this.spectraTree.newTreePath(a.treeNode.getPath()));this.setOverlayLegendVisibility(null,!1);return a},"JSV.api.JSVPanel");c(c$,"setSpectrum",function(a){if(0<=
a.indexOf(".")){a=JSV.common.PanelNode.findNodeById(a,this.panelNodes);if(null==a)return!1;this.setNode(a,!1)}else{a=JU.PT.parseInt(a);if(0>=a)return this.checkOverlay(),!1;this.setFrameAndTreeNode(a-1)}return!0},"~S");c(c$,"splitSpectra",function(){for(var a=this.currentSource,b=a.getSpectra(),c=Array(b.size()),e=null,f=0;f<b.size();f++)e=b.get(f),e=this.si.siGetNewJSVPanel(e),this.si.siSetPropertiesFromPreferences(e,!0),c[f]=e;this.si.siCreateTree(a,c);this.si.siGetNewJSVPanel(null);a=JSV.common.PanelNode.findNode(this.selectedPanel,
this.panelNodes);this.si.siSetMenuEnables(a,!0)});c(c$,"selectedTreeNode",function(a){null!=a&&(a.isLeaf()?this.setNode(a.getPanelNode(),!0):System.out.println("not a leaf"),this.si.siSetCurrentSource(a.getPanelNode().source))},"JSV.api.JSVTreeNode");c(c$,"removeAllHighlights",function(){var a=this.selectedPanel;null!=a&&(a.getPanelData().removeAllHighlights(),a.doRepaint(!1))});c(c$,"removeHighlight",function(a,b){var c=this.selectedPanel;null!=c&&(c.getPanelData().removeHighlight(a,b),c.doRepaint(!1))},
"~N,~N");c(c$,"dispose",function(){this.fileHelper=null;null!=this.viewDialog&&this.viewDialog.dispose();this.viewDialog=null;null!=this.overlayLegendDialog&&this.overlayLegendDialog.dispose();this.overlayLegendDialog=null;null!=this.jsvpPopupMenu&&(this.jsvpPopupMenu.jpiDispose(),this.jsvpPopupMenu=null);if(null!=this.panelNodes)for(var a=this.panelNodes.size();0<=--a;)this.panelNodes.get(a).dispose(),this.panelNodes.remove(a)});c(c$,"runScript",function(a){null==this.scriptQueue?this.si.siProcessCommand(a):
this.scriptQueue.addLast(a)},"~S");c(c$,"requestRepaint",function(){null!=this.selectedPanel&&this.repaintManager.refresh()});c(c$,"repaintDone",function(){this.repaintManager.repaintDone()});c(c$,"checkOverlay",function(){null!=this.viewPanel&&this.viewPanel.markSelectedPanels(this.panelNodes);this.viewDialog=this.getDialog(JSV.common.Annotation.AType.Views,null)});c(c$,"execOverlayOffsetY",function(a){if(null!=this.selectedPanel){if(-2147483648==a){a=this.selectedPanel.getInput("Enter a vertical offset in percent for stacked plots",
"Overlay",""+this.recentStackPercent);a=JU.PT.parseFloat(a);if(Float.isNaN(a))return;a=Y(a)}this.recentStackPercent=a;this.pd().setYStackOffsetPercent(a)}},"~N");c(c$,"execScriptInline",function(a){0<a.length&&(a=a.substring(6).trim());0==a.length&&(a=this.selectedPanel.getInput("Enter a JSpecView script","Script",this.recentScript));null!=a&&(this.recentScript=a,this.runScriptNow(a))},"~S");c(c$,"setDisplay",function(a){this.apiPlatform.setViewer(this,this.display=a);var b=N(2,0);this.apiPlatform.getFullScreenDimensions(a,
b);this.setScreenDimension(b[0],b[1])},"~O");e(c$,"setScreenDimension",function(a,b){b=Math.min(b,this.maximumSize);a=Math.min(a,this.maximumSize);this.dimScreen.width==a&&this.dimScreen.height==b||this.resizeImage(a,b)},"~N,~N");c(c$,"resizeImage",function(a,b){0<a?(this.dimScreen.width=a,this.dimScreen.height=b):(a=0==this.dimScreen.width?this.dimScreen.width=500:this.dimScreen.width,b=0==this.dimScreen.height?this.dimScreen.height=500:this.dimScreen.height);this.g2d.setWindowParameters(a,b)},"~N,~N");
e(c$,"updateJS",function(){null!=this.selectedPanel&&this.selectedPanel.paintComponent(this.apiPlatform.context)},"~N,~N");e(c$,"processMouseEvent",function(a,b,c,e,f){return null!=this.selectedPanel&&this.selectedPanel.processMouseEvent(a,b,c,e,f)},"~N,~N,~N,~N,~N");e(c$,"processTwoPointGesture",function(a){null!=this.selectedPanel&&this.selectedPanel.processTwoPointGesture(a)},"~A");e(c$,"getApplet",function(){return this.applet});e(c$,"startHoverWatcher",function(){},"~B");e(c$,"cacheFileByName",
function(){return 0},"~S,~B");e(c$,"cachePut",function(){},"~S,~O");e(c$,"openFileAsyncSpecial",function(){},"~S,~N");c(c$,"getHeight",function(){return this.dimScreen.height});c(c$,"getWidth",function(){return this.dimScreen.width});c(c$,"getPlatformInterface",function(a){return JSV.common.JSViewer.getInterface("JSV."+(this.isJS?"js2d.Js":"java.Awt")+a)},"~S");c(c$,"getDialogManager",function(){if(null!=this.dialogManager)return this.dialogManager;this.dialogManager=this.getPlatformInterface("DialogManager");
return this.dialogManager.set(this)});c(c$,"getDialog",function(a,b){switch(a){case JSV.common.Annotation.AType.Integration:return JSV.common.JSViewer.getInterface("JSV.dialog.IntegrationDialog").setParams("Integration for "+b,this,b);case JSV.common.Annotation.AType.Measurements:return JSV.common.JSViewer.getInterface("JSV.dialog.MeasurementsDialog").setParams("Measurements for "+b,this,b);case JSV.common.Annotation.AType.PeakList:return JSV.common.JSViewer.getInterface("JSV.dialog.PeakListDialog").setParams("Peak List for "+
b,this,b);case JSV.common.Annotation.AType.OverlayLegend:return this.overlayLegendDialog=JSV.common.JSViewer.getInterface("JSV.dialog.OverlayLegendDialog").setParams(this.pd().getViewTitle(),this,null);case JSV.common.Annotation.AType.Views:return this.viewDialog=JSV.common.JSViewer.getInterface("JSV.dialog.ViewsDialog").setParams("View/Combine/Close Spectra",this,null);default:return null}},"JSV.common.Annotation.AType,JSV.common.JDXSpectrum");c(c$,"show",function(a){this.getDialogManager();a.equals("properties")?
this.dialogManager.showProperties(null,this.pd().getSpectrum()):a.equals("errors")?this.dialogManager.showSourceErrors(null,this.currentSource):a.equals("source")&&(null==this.currentSource?0<this.panelNodes.size()&&this.dialogManager.showMessageDialog(null,"Please Select a Spectrum","Select Spectrum",0):this.dialogManager.showSource(this,this.currentSource))},"~S");c(c$,"getDialogPrint",function(a){if(!this.isJS)try{var b=this.getPlatformInterface("PrintDialog").set(this.offWindowFrame,this.lastPrintLayout,
a).getPrintLayout();null!=b&&(this.lastPrintLayout=b);return b}catch(c){if(!C(c,Exception))throw c;}return new JSV.common.PrintLayout},"~B");c(c$,"setIRmode",function(a){this.irMode=a.equals("AtoT")?JSV.common.JDXSpectrum.IRMode.TO_TRANS:a.equals("TtoA")?JSV.common.JDXSpectrum.IRMode.TO_ABS:JSV.common.JDXSpectrum.IRMode.getMode(a)},"~S");c(c$,"getOptionFromDialog",function(a,b,c){this.getDialogManager().getOptionFromDialog(null,a,this.selectedPanel,b,c);return 0},"~A,~S,~S");c(c$,"execWrite",function(a){this.isJS&&
null==a&&(a="PDF");a=JSV.common.JSViewer.getInterface("JSV.export.Exporter").write(this,null==a?null:JSV.common.ScriptToken.getTokens(a),!1);this.si.writeStatus(a);return a},"~S");c(c$,"$export",function(a,b){null==a&&(a="XY");var c=this.pd(),e=c.getNumberOfSpectraInCurrentSet();if(-1>b||b>=e)return"Maximum spectrum index (0-based) is "+(e-1)+".";c=0>b?c.getSpectrum():c.getSpectrumAt(b);try{return JSV.common.JSViewer.getInterface("JSV.export.Exporter").exportTheSpectrum(this,JSV.common.ExportType.getType(a),
null,c,0,c.getXYCoords().length-1,null)}catch(f){if(C(f,Exception))return System.out.println(f),null;throw f;}},"~S,~N");e(c$,"postByteArray",function(a,b){return JSV.common.JSVFileManager.postByteArray(a,b)},"~S,~A");c(c$,"getOutputChannel",function(a,b){for(;a.startsWith("/");)a=a.substring(1);return(new JU.OC).setParams(this,a,!b,null)},"~S,~B");c$.getInterface=c(c$,"getInterface",function(a){try{var b=Class.forName(a);return null==b?null:b.newInstance()}catch(c){if(C(c,Exception))return J.util.Logger.error("Interface.java Error creating instance for "+
a+": \n"+c),null;throw c;}},"~S");H(c$,"sourceLabel","Original...","FILE_OPEN_OK",0,"FILE_OPEN_ALREADY",-1,"FILE_OPEN_ERROR",-3,"FILE_OPEN_NO_DATA",-4,"OVERLAY_DIALOG",-1,"OVERLAY_OFFSET",99,"PORTRAIT",1,"PAGE_EXISTS",0,"NO_SUCH_PAGE",1,"noColor","255,255,255","testScript",'<PeakData  index="1" title="" model="~1.1" type="1HNMR" xMin="3.2915" xMax="3.2965" atoms="15,16,17,18,19,20" multiplicity="" integral="1"> src="JPECVIEW" file="http://SIMULATION/$caffeine"',"NLEVEL_MAX",100)}),p("JSV.common"),
q(["JSV.common.Annotation","$.Coordinate"],"JSV.common.Measurement",null,function(){c$=w(function(){this.pt2=null;this.value=0;u(this,arguments)},JSV.common,"Measurement",JSV.common.Annotation);Z(c$,function(){this.pt2=new JSV.common.Coordinate});c(c$,"setM1",function(a,b,c){this.setA(a,b,c,"",!1,!1,0,6);this.setPt2(this.getXVal(),this.getYVal());return this},"~N,~N,JSV.common.JDXSpectrum");c(c$,"copyM",function(){var a=new JSV.common.Measurement;a.setA(this.getXVal(),this.getYVal(),this.spec,this.text,
!1,!1,this.offsetX,this.offsetY);a.setPt2(this.pt2.getXVal(),this.pt2.getYVal());return a});c(c$,"setPt2",function(a,b){this.spec=a;b&&this.setPt2(this.getXVal(),this.getYVal());return this},"JSV.common.JDXSpectrum,~B");c(c$,"setPt2",function(a,b){this.pt2.setXVal(a);this.pt2.setYVal(b);this.value=Math.abs(a-this.getXVal());this.text=this.spec.setMeasurementText(this)},"~N,~N");c(c$,"getSpectrum",function(){return this.spec});c(c$,"setValue",function(a){this.value=a;this.text=this.spec.setMeasurementText(this)},
"~N");c(c$,"getValue",function(){return this.value});c(c$,"getXVal2",function(){return this.pt2.getXVal()});c(c$,"getYVal2",function(){return this.pt2.getYVal()});e(c$,"addSpecShift",function(a){this.setXVal(this.getXVal()+a);this.pt2.setXVal(this.pt2.getXVal()+a)},"~N");c(c$,"setYVal2",function(a){this.pt2.setYVal(a)},"~N");c(c$,"overlaps",function(a,b){return Math.min(this.getXVal(),this.getXVal2())<Math.max(a,b)&&Math.max(this.getXVal(),this.getXVal2())>Math.min(a,b)},"~N,~N");e(c$,"toString",
function(){return"["+this.getXVal()+","+this.pt2.getXVal()+"]"})}),p("JSV.common"),q(["JU.List","JSV.api.AnnotationData"],"JSV.common.MeasurementData",["JU.AU","$.DF","JSV.common.Annotation","$.Parameters"],function(){c$=w(function(){this.units=this.spec=this.type=null;this.precision=0;this.myParams=null;this.isON=!0;this.key=null;u(this,arguments)},JSV.common,"MeasurementData",JU.List,JSV.api.AnnotationData);z(c$,function(a,b){P(this,JSV.common.MeasurementData,[]);this.type=a;this.spec=b;this.myParams=
(new JSV.common.Parameters).setName("MeasurementData")},"JSV.common.Annotation.AType,JSV.common.JDXSpectrum");c(c$,"getMeasurements",function(){return this});e(c$,"getAType",function(){return this.type});e(c$,"getState",function(){return this.isON});e(c$,"setState",function(a){this.isON=a},"~B");c(c$,"setMeasurements",function(){},"JU.List");e(c$,"getParameters",function(){return this.myParams});c(c$,"getDataHeader",function(){return JSV.common.MeasurementData.HEADER});c(c$,"getMeasurementListArray",
function(a){this.units=a;var b=this.getMeasurementListArrayReal(a),c=this.spec.isNMR()?4:2;a=this.spec.isHNMR()&&a.equals("ppm")?4:2;for(var e=Array(this.size()),f=this.size();0<=--f;)e[f]=[""+(f+1),JU.DF.formatDecimalDbl(b[f][0],c),JU.DF.formatDecimalDbl(b[f][1],c),JU.DF.formatDecimalDbl(b[f][2],a)];return e},"~S");c(c$,"getMeasurementListArrayReal",function(a){a=this.spec.isNMR()&&a.equalsIgnoreCase("HZ");for(var b=JU.AU.newDouble2(this.size()),c=0,e=this.size();0<=--e;){var f=this.get(e).getValue();
a&&(f*=this.spec.observedFreq);b[c++]=[this.get(e).getXVal(),this.get(e).getXVal2(),f]}return b},"~S");c$.checkParameters=c(c$,"checkParameters",function(a,b){if(0==a.size())return!1;var c=a.getParameters();switch(a.getAType()){case JSV.common.Annotation.AType.PeakList:return b.peakListInterpolation.equals(c.peakListInterpolation)&&b.peakListThreshold==c.peakListThreshold}return!1},"JSV.common.MeasurementData,JSV.common.ColorParameters");e(c$,"getSpectrum",function(){return this.spec});e(c$,"getData",
function(){return this});c(c$,"clear",function(a,b){for(var c=this.size();0<=--c;){var e=this.get(c);(0==e.text.length||e.overlaps(a,b))&&this.remove(c)}},"~N,~N");e(c$,"setSpecShift",function(a){for(var b=this.size();0<=--b;){var c=this.get(b),e=c.getXVal()+a;c.setXVal(e);c.setValue(e);c.text=JU.DF.formatDecimalDbl(e,this.precision)}},"~N");e(c$,"getGraphSetKey",function(){return this.key});e(c$,"setGraphSetKey",function(a){this.key=a},"~S");e(c$,"isVisible",function(){return!0});c(c$,"getInfo",
function(a){a.put("header",this.getDataHeader());a.put("table",this.getMeasurementListArrayReal("ppm"));null!=this.units&&a.put("units",this.units)},"java.util.Map");c$.HEADER=c$.prototype.HEADER=["","start","end","value"]}),p("JSV.common"),q(["java.lang.Enum","javajs.api.EventManager","java.util.Hashtable","JU.List"],"JSV.common.PanelData","java.lang.Boolean $.Double javajs.awt.Font JU.CU JSV.api.JSVGraphics JSV.common.Annotation $.Coordinate $.GraphSet $.JDXSpectrum $.JSVFileManager $.JSVersion $.MeasurementData $.Parameters $.PeakPickEvent $.ScriptToken $.SubSpecChangeEvent $.ZoomEvent JSV.dialog.JSVDialog J.util.Logger".split(" "),
function(){c$=w(function(){this.graphSets=this.jsvp=this.options=this.currentGraphSet=this.listeners=this.viewer=this.g2d0=this.g2d=null;this.currentSplitPoint=0;this.coordsClicked=this.coordClicked=this.thisWidget=null;this.isIntegralDrag=this.drawXAxisLeftToRight=this.shiftPressed=this.ctrlPressed=!1;this.xAxisLeftToRight=!0;this.scalingFactor=1;this.integralShiftMode=0;this.left=60;this.right=50;this.coordStr="";this.startupPinTip="Click to set.";this.title=null;this.endIndex=this.startIndex=this.thisHeight=
this.thisWidth=this.nSpectra=this.clickCount=0;this.titleFontName=this.displayFontName=this.viewTitle=this.commonFilePath=null;this.isPrinting=!1;this.doReset=!0;this.printingFontName=null;this.printGraphPosition="default";this.isLinked=this.display1D=this.titleDrawn=!1;this.spectra=this.printJobTitle=null;this.taintedAll=!0;this.mouseState=this.currentFont=null;this.titleOn=this.gridOn=!1;this.mouseY=this.mouseX=0;this.linking=!1;this.xPixelClicked=0;this.gMain=this.optionsSaved=this.bgcolor=this.BLACK=
this.zoomBoxColor2=this.zoomBoxColor=this.highlightColor=this.unitsColor=this.titleColor=this.scaleColor=this.plotAreaColor=this.peakTabColor=this.integralPlotColor=this.gridColor=this.coordinatesColor=null;u(this,arguments)},JSV.common,"PanelData",null,javajs.api.EventManager);Z(c$,function(){this.listeners=new JU.List;this.options=new java.util.Hashtable});z(c$,function(a,b){this.viewer=b;this.jsvp=a;this.g2d=this.g2d0=b.g2d;this.BLACK=this.g2d.getColor1(0);this.highlightColor=this.g2d.getColor4(255,
0,0,200);this.zoomBoxColor=this.g2d.getColor4(150,150,100,130);this.zoomBoxColor2=this.g2d.getColor4(150,100,100,130)},"JSV.api.JSVPanel,JSV.common.JSViewer");c(c$,"addListener",function(a){this.listeners.contains(a)||this.listeners.addLast(a)},"JSV.api.PanelListener");c(c$,"getCurrentGraphSet",function(){return this.currentGraphSet});c(c$,"dispose",function(){this.jsvp=null;for(var a=0;a<this.graphSets.size();a++)this.graphSets.get(a).dispose();this.listeners=this.options=this.thisWidget=this.coordsClicked=
this.coordClicked=this.currentGraphSet=this.currentFont=this.graphSets=null});c(c$,"setViewTitle",function(a){this.viewTitle=a},"~S");c(c$,"getViewTitle",function(){return null==this.viewTitle?this.getTitle():this.viewTitle});c(c$,"getInfo",function(a,b){var c=new java.util.Hashtable,e=null;if(a)return this.currentGraphSet.getInfo(b,this.getCurrentSpectrumIndex());for(var f,e=this.options.entrySet().iterator();e.hasNext()&&((f=e.next())||1);)JSV.common.Parameters.putInfo(b,c,f.getKey().name(),f.getValue());
JSV.common.Parameters.putInfo(b,c,"type",this.getSpectrumAt(0).getDataType());JSV.common.Parameters.putInfo(b,c,"title",this.title);JSV.common.Parameters.putInfo(b,c,"nSets",Integer.$valueOf(this.graphSets.size()));e=new JU.List;for(f=this.graphSets.size();0<=--f;)e.addLast(this.graphSets.get(f).getInfo(b,-1));c.put("sets",e);return c},"~B,~S");c(c$,"setBooleans",function(a,b){if(null==b)for(var c,e=a.getBooleans().entrySet().iterator();e.hasNext()&&((c=e.next())||1);)this.setBooleans(a,c.getKey());
else this.setBoolean(b,a.getBoolean(b))},"JSV.common.Parameters,JSV.common.ScriptToken");c(c$,"setBoolean",function(a,b){this.taintedAll=!0;if(a===JSV.common.ScriptToken.REVERSEPLOT)this.currentGraphSet.setReversePlot(b);else switch(this.options.put(a,Boolean.$valueOf(b)),a){case JSV.common.ScriptToken.DISPLAY1D:case JSV.common.ScriptToken.DISPLAY2D:this.doReset=!0}},"JSV.common.ScriptToken,~B");c(c$,"getBoolean",function(a){if(a===JSV.common.ScriptToken.REVERSEPLOT)return this.currentGraphSet.reversePlot;
if(null==this.options)return!1;a=this.options.get(a);return null!=a&&y(a,Boolean)&&a===Boolean.TRUE},"JSV.common.ScriptToken");c(c$,"setFontName",function(a,b){switch(a){case JSV.common.ScriptToken.DISPLAYFONTNAME:this.displayFontName=b;break;case JSV.common.ScriptToken.TITLEFONTNAME:this.titleFontName=b}null!=b&&this.options.put(a,b)},"JSV.common.ScriptToken,~S");c(c$,"getDisplay1D",function(){return this.display1D});c(c$,"initOne",function(a){this.spectra=new JU.List;this.spectra.addLast(a);this.initMany(this.spectra,
0,0)},"JSV.common.JDXSpectrum");c(c$,"initMany",function(a,b,c){this.startIndex=b;this.endIndex=c;this.nSpectra=a.size();this.spectra=a;this.commonFilePath=a.get(0).getFilePath();for(b=0;b<this.nSpectra;b++)if(!this.commonFilePath.equalsIgnoreCase(a.get(b).getFilePath())){this.commonFilePath=null;break}this.setGraphSets(JSV.common.PanelData.LinkMode.NONE)},"JU.List,~N,~N");c(c$,"setGraphSets",function(a){this.graphSets=JSV.common.GraphSet.createGraphSetsAndSetLinkMode(this,this.jsvp,this.spectra,
this.startIndex,this.endIndex,a);this.currentGraphSet=this.graphSets.get(0);this.title=this.getSpectrum().getTitleLabel()},"JSV.common.PanelData.LinkMode");c(c$,"findMatchingPeakInfo",function(a){for(var b=null,c=0;c<this.graphSets.size()&&null==(b=this.graphSets.get(c).findMatchingPeakInfo(a));c++);return b},"JSV.common.PeakInfo");c(c$,"integrateAll",function(a){for(var b=this.graphSets.size();0<=--b;)this.graphSets.get(b).integrate(-1,a)},"JSV.common.ColorParameters");c(c$,"getNumberOfGraphSets",
function(){return this.graphSets.size()});c(c$,"getTitle",function(){return this.title});c(c$,"refresh",function(){this.doReset=!0});c(c$,"addAnnotation",function(a){a=this.currentGraphSet.addAnnotation(a,this.getTitle());null!=a&&(this.title=a)},"JU.List");c(c$,"addPeakHighlight",function(a){for(var b=0;b<this.graphSets.size();b++)this.graphSets.get(b).addPeakHighlight(a)},"JSV.common.PeakInfo");c(c$,"selectPeakByFileIndex",function(a,b){var c=this.currentGraphSet.selectPeakByFileIndex(a,b);if(null==
c)for(var e=this.graphSets.size();0<=--e&&!(this.graphSets.get(e)!==this.currentGraphSet&&null!=(c=this.graphSets.get(e).selectPeakByFileIndex(a,b))););return c},"~S,~S");c(c$,"setPlotColors",function(a){for(var b=this.graphSets.size();0<=--b;)this.graphSets.get(b).setPlotColors(a)},"~A");c(c$,"selectSpectrum",function(a,b,c,e){e&&this.currentGraphSet.selectSpectrum(a,b,c);for(e=0;e<this.graphSets.size();e+=1)this.graphSets.get(e)!==this.currentGraphSet&&this.graphSets.get(e).selectSpectrum(a,b,c)},
"~S,~S,~S,~B");c(c$,"hasFileLoaded",function(a){for(var b=this.graphSets.size();0<=--b;)if(this.graphSets.get(b).hasFileLoaded(a))return!0;return!1},"~S");c(c$,"clearAllView",function(){for(var a=this.graphSets.size();0<=--a;)this.graphSets.get(a).clearViews()});c(c$,"drawGraph",function(a,b,c,e,f){var g;this.gMain=a;this.display1D=!this.isLinked&&this.getBoolean(JSV.common.ScriptToken.DISPLAY1D);var l=40,h=50,k=this.isPrinting||this.doReset||this.thisWidth!=c||this.thisHeight!=e;k&&(this.taintedAll=
!0);this.taintedAll&&this.g2d.fillBackground(a,this.bgcolor);b!==a&&(this.g2d.fillBackground(b,null),this.g2d.setStrokeBold(a,!1));this.isPrinting?(l*=3,h*=3,this.scalingFactor=10,g=!1):(this.scalingFactor=1,g=this.getBoolean(JSV.common.ScriptToken.COORDINATESON),this.titleOn=this.getBoolean(JSV.common.ScriptToken.TITLEON),this.gridOn=this.getBoolean(JSV.common.ScriptToken.GRIDON));this.titleDrawn=this.doReset=!1;this.thisWidth=c;this.thisHeight=e;for(var m=this.graphSets.size();0<=--m;)this.graphSets.get(m).drawGraphSet(a,
b,c,e,this.left,this.right,l,h,k,this.taintedAll);this.titleOn&&(!this.titleDrawn&&this.taintedAll)&&this.drawTitle(a,e*this.scalingFactor,c*this.scalingFactor,this.getDrawTitle(this.isPrinting));g&&null!=this.coordStr&&this.drawCoordinates(b,l,this.thisWidth-this.right,l-20);f&&this.taintedAll&&(c=null!=this.commonFilePath?this.commonFilePath:1==this.graphSets.size()&&null!=this.currentGraphSet.getTitle(!0)?this.getSpectrum().getFilePath():null,null!=c&&this.printFilePath(a,this.left,e,c));this.isPrinting&&
this.printVersion(a,e);this.taintedAll=this.isPrinting||a===b},"~O,~O,~N,~N,~B");c(c$,"drawCoordinates",function(a,b,c,e){this.g2d.setGraphicsColor(a,this.coordinatesColor);b=this.setFont(a,this.jsvp.getWidth(),0,12,!0);this.g2d.drawString(a,this.coordStr,c-b.stringWidth(this.coordStr),e)},"~O,~N,~N,~N");c(c$,"setFont",function(a,b,c,e,f){return this.g2d.setFont(a,this.getFont(a,b,c,e,f))},"~O,~N,~N,~N,~B");c(c$,"printFilePath",function(a,b,c,e){b*=this.scalingFactor;c*=this.scalingFactor;0<e.indexOf("?")&&
(e=e.substring(e.indexOf("?")+1));e=e.substring(e.lastIndexOf("/")+1);e=e.substring(e.lastIndexOf("\\")+1);this.g2d.setGraphicsColor(a,this.BLACK);var f=this.setFont(a,1E3,0,9,!0);b!=this.left*this.scalingFactor&&(b-=f.stringWidth(e));this.g2d.drawString(a,e,b,c-f.getHeight())},"~O,~N,~N,~S");c(c$,"printVersion",function(a,b){this.g2d.setGraphicsColor(a,this.BLACK);var c=this.setFont(a,100,0,12,!0),e=this.jsvp.getApiPlatform().getDateFormat(!1)+" JSpecView "+JSV.common.JSVersion.VERSION_SHORT,f=c.stringWidth(e);
this.g2d.drawString(a,e,(this.thisWidth-this.right)*this.scalingFactor-f,b*this.scalingFactor-3*c.getHeight())},"~O,~N");c(c$,"drawTitle",function(a,b,c,e){e=e.$replace("\n"," ");var f=this.getFont(a,c,this.isPrinting||this.getBoolean(JSV.common.ScriptToken.TITLEBOLDON)?1:0,14,!0),g=f.stringWidth(e);g>c&&(f=r(14*c/g),10>f&&(f=10),f=this.getFont(a,c,this.isPrinting||this.getBoolean(JSV.common.ScriptToken.TITLEBOLDON)?1:0,f,!0));this.g2d.setGraphicsColor(a,this.titleColor);this.setCurrentFont(this.g2d.setFont(a,
f));this.g2d.drawString(a,e,this.isPrinting?this.left*this.scalingFactor:5,b-r(f.getHeight()*(this.isPrinting?2:0.5)))},"~O,~N,~N,~S");c(c$,"setCurrentFont",function(a){this.currentFont=a},"javajs.awt.Font");c(c$,"getFontHeight",function(){return this.currentFont.getAscent()});c(c$,"getStringWidth",function(a){return this.currentFont.stringWidth(a)},"~S");c(c$,"selectFromEntireSet",function(a){for(var b=0,c=0;b<this.graphSets.size();b++)if(-2147483648==a)this.graphSets.get(b).setSelected(-1);else for(var e=
this.graphSets.get(b).spectra,f=0;f<e.size();f++,c++)(0>a||a==c)&&this.graphSets.get(b).setSelected(f)},"~N");c(c$,"addToList",function(a,b){for(var c=0;c<this.spectra.size();c++)(0>a||c==a)&&b.addLast(this.spectra.get(c))},"~N,JU.List");c(c$,"scaleSelectedBy",function(a){for(var b=this.graphSets.size();0<=--b;)this.graphSets.get(b).scaleSelectedBy(a)},"~N");c(c$,"setCurrentGraphSet",function(a,b,c){b=a.getSplitPoint(b);var e=this.currentGraphSet!==a,f=e||this.currentSplitPoint!=b;this.currentGraphSet=
a;this.currentSplitPoint=b;(e||1<a.nSplit&&f)&&this.setSpectrum(this.currentSplitPoint,!0);if(!e&&(e=a.checkSpectrumClickedEvent(this.mouseX,this.mouseY,c),!e))return;(e||1<a.nSplit&&f)&&this.setSpectrum(this.currentSplitPoint,!0);a=a.getSpectrum();this.notifySubSpectrumChange(a.getSubIndex(),a)},"JSV.common.GraphSet,~N,~N");c(c$,"splitStack",function(a){this.currentGraphSet.splitStack(this.graphSets,a)},"~B");c(c$,"getNumberOfSpectraInCurrentSet",function(){return this.currentGraphSet.nSpectra});
c(c$,"getStartingPointIndex",function(a){return this.currentGraphSet.viewData.getStartingPointIndex(a)},"~N");c(c$,"getEndingPointIndex",function(a){return this.currentGraphSet.viewData.getEndingPointIndex(a)},"~N");c(c$,"haveSelectedSpectrum",function(){return this.currentGraphSet.haveSelectedSpectrum()});c(c$,"getShowAnnotation",function(a){return this.currentGraphSet.getShowAnnotation(a,-1)},"JSV.common.Annotation.AType");c(c$,"showAnnotation",function(a,b){this.currentGraphSet.setShowAnnotation(a,
b)},"JSV.common.Annotation.AType,Boolean");c(c$,"setYStackOffsetPercent",function(a){this.currentGraphSet.yStackOffsetPercent=a},"~N");c(c$,"setSpectrum",function(a,b){this.currentGraphSet.setSpectrum(a,b)},"~N,~B");c(c$,"getSpectrum",function(){return this.currentGraphSet.getSpectrum()});c(c$,"setSpectrum",function(a){this.taintedAll=!0;var b=this.currentGraphSet.getSpectrum();this.currentGraphSet.setSpectrumJDX(a);for(var c=0;c<this.spectra.size();c++)this.spectra.get(c)===b&&this.spectra.set(c,
a)},"JSV.common.JDXSpectrum");c(c$,"isShowAllStacked",function(){return this.currentGraphSet.showAllStacked});c(c$,"getCurrentSpectrumIndex",function(){return this.currentGraphSet.getCurrentSpectrumIndex()});c(c$,"getSpectrumAt",function(a){return this.currentGraphSet.getSpectrumAt(a)},"~N");c(c$,"addHighlight",function(a,b,c,e,f,g,l,h){(null==a?this.currentGraphSet:a).addHighlight(b,c,e,this.g2d.getColor4(f,g,l,h))},"JSV.common.GraphSet,~N,~N,JSV.common.JDXSpectrum,~N,~N,~N,~N");c(c$,"removeHighlight",
function(a,b){this.currentGraphSet.removeHighlight(a,b)},"~N,~N");c(c$,"removeAllHighlights",function(){this.currentGraphSet.removeAllHighlights()});c(c$,"setZoom",function(a,b,c,e){this.currentGraphSet.setZoom(a,b,c,e);this.taintedAll=this.doReset=!0;this.notifyListeners(new JSV.common.ZoomEvent(a,b,c,e))},"~N,~N,~N,~N");c(c$,"resetView",function(){this.currentGraphSet.resetView()});c(c$,"previousView",function(){this.currentGraphSet.previousView()});c(c$,"nextView",function(){this.currentGraphSet.nextView()});
c(c$,"getSelectedIntegral",function(){return this.currentGraphSet.getSelectedIntegral()});c(c$,"advanceSubSpectrum",function(a){this.currentGraphSet.advanceSubSpectrum(a)},"~N");c(c$,"setSelectedIntegral",function(a){this.currentGraphSet.setSelectedIntegral(a)},"~N");c(c$,"scaleYBy",function(a){this.currentGraphSet.scaleYBy(a)},"~N");c(c$,"toPeak",function(a){this.currentGraphSet.toPeak(a)},"~N");c(c$,"getClickedCoordinate",function(){return this.coordClicked});c(c$,"getPickedCoordinates",function(a,
b){return JSV.common.Coordinate.getPickedCoordinates(this.coordsClicked,this.coordClicked,a,b)},"JSV.common.Coordinate,JSV.common.Coordinate");c(c$,"shiftSpectrum",function(a,b){return this.currentGraphSet.shiftSpectrum(a,b)},"~N,~N");c(c$,"findX",function(a,b){this.currentGraphSet.setXPointer(a,b)},"JSV.common.JDXSpectrum,~N");c(c$,"setXPointers",function(a,b,c,e){this.currentGraphSet.setXPointer(a,b);this.currentGraphSet.setXPointer2(c,e)},"JSV.common.JDXSpectrum,~N,JSV.common.JDXSpectrum,~N");
c(c$,"isCurrentGraphSet",function(a){return a===this.currentGraphSet},"JSV.common.GraphSet");c(c$,"repaint",function(){this.jsvp.doRepaint(!1)});c(c$,"setToolTipText",function(a){this.jsvp.setToolTipText(a)},"~S");c(c$,"setHighlightColor",function(a){this.jsvp.getPanelData().setColor(JSV.common.ScriptToken.HIGHLIGHTCOLOR,a)},"javajs.api.GenericColor");c(c$,"getInput",function(a,b,c){return this.jsvp.getInput(a,b,c)},"~S,~S,~S");c(c$,"getFont",function(a,b,c,e,f){e*=this.scalingFactor;f?400>b&&(e=
b*e/400):250>b&&(e=b*e/250);b=this.jsvp.getFontFaceID(this.isPrinting?this.printingFontName:this.displayFontName);return this.currentFont=javajs.awt.Font.createFont3D(b,c,e,e,this.jsvp.getApiPlatform(),a)},"~O,~N,~N,~N,~B");c(c$,"notifySubSpectrumChange",function(a,b){this.notifyListeners(new JSV.common.SubSpecChangeEvent(a,null==b?null:b.getTitleLabel()))},"~N,JSV.common.JDXSpectrum");c(c$,"notifyPeakPickedListeners",function(a){null==a&&(a=new JSV.common.PeakPickEvent(this.jsvp,this.coordClicked,
this.getSpectrum().getAssociatedPeakInfo(this.xPixelClicked,this.coordClicked)));this.notifyListeners(a)},"JSV.common.PeakPickEvent");c(c$,"notifyListeners",function(a){for(var b=0;b<this.listeners.size();b++)null!=this.listeners.get(b)&&this.listeners.get(b).panelEvent(a)},"~O");c(c$,"escapeKeyPressed",function(a){this.currentGraphSet.escapeKeyPressed(a)},"~B");c(c$,"hasFocus",function(){return this.jsvp.hasFocus()});c(c$,"isMouseUp",function(){return this.mouseState===JSV.common.PanelData.Mouse.UP});
c(c$,"doMouseMoved",function(a,b){this.mouseX=a;this.mouseY=b;this.mouseState=JSV.common.PanelData.Mouse.UP;this.clickCount=0;var c=JSV.common.GraphSet.findGraphSet(this.graphSets,a,b);null!=c&&c.mouseMovedEvent(a,b)},"~N,~N");c(c$,"doMousePressed",function(a,b){this.mouseState=JSV.common.PanelData.Mouse.DOWN;var c=JSV.common.GraphSet.findGraphSet(this.graphSets,a,b);null!=c&&(this.setCurrentGraphSet(c,b,0),this.clickCount=++this.clickCount%3,c.checkWidgetEvent(a,b,!0))},"~N,~N");c(c$,"doMouseDragged",
function(a,b){this.isIntegralDrag=(new Boolean(this.isIntegralDrag|this.ctrlPressed)).valueOf();this.mouseState=JSV.common.PanelData.Mouse.DOWN;JSV.common.GraphSet.findGraphSet(this.graphSets,a,b)===this.currentGraphSet&&(this.currentGraphSet.checkWidgetEvent(a,b,!1),this.currentGraphSet.mouseMovedEvent(a,b))},"~N,~N");c(c$,"doMouseReleased",function(a,b,c){this.mouseState=JSV.common.PanelData.Mouse.UP;!(null==this.thisWidget&&null==this.currentGraphSet.pendingMeasurement)&&c&&(this.currentGraphSet.mouseReleasedEvent(a,
b),this.thisWidget=null,this.isIntegralDrag=!1,this.integralShiftMode=0)},"~N,~N,~B");c(c$,"doMouseClicked",function(a,b,c){var e=JSV.common.GraphSet.findGraphSet(this.graphSets,a,b);null!=e&&(this.setCurrentGraphSet(e,b,this.clickCount),e.mouseClickedEvent(a,b,this.clickCount,c),this.repaint())},"~N,~N,~B");c(c$,"hasCurrentMeasurements",function(a){return this.currentGraphSet.hasCurrentMeasurement(a)},"JSV.common.Annotation.AType");c(c$,"getDialog",function(a){return this.currentGraphSet.getDialog(a,
-1)},"JSV.common.Annotation.AType");c(c$,"addDialog",function(a,b,c){this.currentGraphSet.addDialog(a,b,c)},"~N,JSV.common.Annotation.AType,JSV.api.AnnotationData");c(c$,"getPeakListing",function(a,b){null!=a&&this.currentGraphSet.getPeakListing(-1,a,!0);this.currentGraphSet.setPeakListing(b)},"JSV.common.Parameters,Boolean");c(c$,"checkIntegral",function(a,b){this.currentGraphSet.checkIntegral(a,b)},"JSV.common.Parameters,~S");c(c$,"setIntegrationRatios",function(a){this.currentGraphSet.setIntegrationRatios(a)},
"~S");c(c$,"getView",function(){return this.currentGraphSet.getCurrentView()});c(c$,"closeAllDialogsExcept",function(a){for(var b=this.graphSets.size();0<=--b;)this.graphSets.get(b).closeDialogsExcept(a)},"JSV.common.Annotation.AType");c(c$,"removeDialog",function(a){this.currentGraphSet.removeDialog(a)},"JSV.dialog.JSVDialog");c(c$,"normalizeIntegral",function(){var a=this.getSelectedIntegral();if(null!=a){var b=a.text;0==b.length&&(b=""+a.getValue());a=this.getInput("Enter a new value for this integral",
"Normalize Integral",b);try{this.setSelectedIntegral(Double.parseDouble(a))}catch(c){if(!C(c,Exception))throw c;}}});c(c$,"getDrawTitle",function(a){var b=null;a?b=this.printJobTitle:1==this.nSpectra?b=this.getSpectrum().getPeakTitle():null!=this.viewTitle?(null!=this.currentGraphSet.getTitle(!1)&&(b=this.getSpectrum().getPeakTitle()),null==b&&(b=this.viewTitle)):b=this.jsvp.getTitle().trim();0<=b.indexOf("\n")&&(b=b.substring(0,b.indexOf("\n")).trim());return b},"~B");c(c$,"getPrintJobTitle",function(a){var b=
null;1==this.nSpectra?b=this.getSpectrum().getTitle():null!=this.viewTitle?(1==this.graphSets.size()&&(b=this.currentGraphSet.getTitle(a)),null==b&&(b=this.viewTitle)):b=this.jsvp.getTitle().trim();0<=b.indexOf("\n")&&(b=b.substring(0,b.indexOf("\n")).trim());return b},"~B");c(c$,"linkSpectra",function(a){a===JSV.common.PanelData.LinkMode.ALL&&(a=2==this.nSpectra?JSV.common.PanelData.LinkMode.AB:3==this.nSpectra?JSV.common.PanelData.LinkMode.ABC:JSV.common.PanelData.LinkMode.NONE);a!==JSV.common.PanelData.LinkMode.NONE&&
a.toString().length!=this.nSpectra||this.setGraphSets(a)},"JSV.common.PanelData.LinkMode");c(c$,"doZoomLinked",function(a,b,c,e,f,g){if(!this.linking){this.linking=!0;for(var l=a.getSpectrumAt(0),h=this.graphSets.size();0<=--h;){var k=this.graphSets.get(h);k!==a&&JSV.common.JDXSpectrum.areXScalesCompatible(l,this.graphSets.get(h).getSpectrumAt(0),!1,!0)&&k.doZoom(b,0,c,0,g,!1,f,!1,e)}this.linking=!1}},"JSV.common.GraphSet,~N,~N,~B,~B,~B");c(c$,"clearLinkViews",function(a){if(!this.linking){this.linking=
!0;for(var b=a.getSpectrum(),c=this.graphSets.size();0<=--c;){var e=this.graphSets.get(c);e!==a&&JSV.common.JDXSpectrum.areXScalesCompatible(b,this.graphSets.get(c).getSpectrum(),!1,!0)&&e.clearViews()}this.linking=!1}},"JSV.common.GraphSet");c(c$,"setlinkedXMove",function(a,b,c){if(!this.linking){this.linking=!0;for(var e=a.getSpectrum(),f=this.graphSets.size();0<=--f;){var g=this.graphSets.get(f);g!==a&&JSV.common.JDXSpectrum.areXScalesCompatible(e,this.graphSets.get(f).getSpectrum(),!1,!0)&&null==
g.imageView&&(c?g.setXPixelMovedTo(1.7976931348623157E308,b,0,0):g.setXPixelMovedTo(b,1.7976931348623157E308,0,0))}this.linking=!1}},"JSV.common.GraphSet,~N,~B");c(c$,"set2DCrossHairsLinked",function(a,b,c,e){0.1>Math.abs(b-c)&&(b=c=1.7976931348623157E308);for(var f=this.graphSets.size();0<=--f;){var g=this.graphSets.get(f);g!==a&&g.set2DXY(b,c,e)}},"JSV.common.GraphSet,~N,~N,~B");c(c$,"dialogsToFront",function(){this.currentGraphSet.dialogsToFront()});c(c$,"setColor",function(a,b){null!=b&&this.options.put(a,
JU.CU.toRGBHexString(b));switch(a){case JSV.common.ScriptToken.BACKGROUNDCOLOR:this.jsvp.setBackgroundColor(this.bgcolor=b);this.taintedAll=!0;break;case JSV.common.ScriptToken.COORDINATESCOLOR:this.coordinatesColor=b;break;case JSV.common.ScriptToken.GRIDCOLOR:this.gridColor=b;this.taintedAll=!0;break;case JSV.common.ScriptToken.HIGHLIGHTCOLOR:this.highlightColor=b;255==this.highlightColor.getOpacity255()&&this.highlightColor.setOpacity255(150);break;case JSV.common.ScriptToken.INTEGRALPLOTCOLOR:this.integralPlotColor=
b;this.taintedAll=!0;break;case JSV.common.ScriptToken.PEAKTABCOLOR:this.peakTabColor=b;this.taintedAll=!0;break;case JSV.common.ScriptToken.PLOTCOLOR:for(var c=this.graphSets.size();0<=--c;)this.graphSets.get(c).setPlotColor0(b);this.taintedAll=!0;break;case JSV.common.ScriptToken.PLOTAREACOLOR:this.plotAreaColor=b;this.taintedAll=!0;break;case JSV.common.ScriptToken.SCALECOLOR:this.scaleColor=b;this.taintedAll=!0;break;case JSV.common.ScriptToken.TITLECOLOR:this.titleColor=b;this.taintedAll=!0;
break;case JSV.common.ScriptToken.UNITSCOLOR:this.unitsColor=b;this.taintedAll=!0;break;case JSV.common.ScriptToken.ZOOMBOXCOLOR:this.zoomBoxColor=b;break;case JSV.common.ScriptToken.ZOOMBOXCOLOR2:this.zoomBoxColor2=b;break;default:J.util.Logger.warn("AwtPanel --- unrecognized color: "+a)}},"JSV.common.ScriptToken,javajs.api.GenericColor");c(c$,"getColor",function(a){switch(a){default:return J.util.Logger.error("awtgraphset missing color "+a),this.BLACK;case JSV.common.ScriptToken.ZOOMBOXCOLOR2:return this.zoomBoxColor2;
case JSV.common.ScriptToken.ZOOMBOXCOLOR:return this.zoomBoxColor;case JSV.common.ScriptToken.HIGHLIGHTCOLOR:return this.highlightColor;case JSV.common.ScriptToken.INTEGRALPLOTCOLOR:return this.integralPlotColor;case JSV.common.ScriptToken.GRIDCOLOR:return this.gridColor;case JSV.common.ScriptToken.PEAKTABCOLOR:return this.peakTabColor;case JSV.common.ScriptToken.PLOTAREACOLOR:return this.plotAreaColor;case JSV.common.ScriptToken.SCALECOLOR:return this.scaleColor;case JSV.common.ScriptToken.TITLECOLOR:return this.titleColor;
case JSV.common.ScriptToken.UNITSCOLOR:return this.unitsColor}},"JSV.common.ScriptToken");c(c$,"getOverlayLegendData",function(){for(var a=this.currentGraphSet.nSpectra,b=Array(a),c=this.getSpectrumAt(0).getFilePath(),e=this.getSpectrumAt(a-1).getFilePath(),c=!c.equals(e),e=0;e<a;e++){var f=Array(3),g=this.getSpectrumAt(e);this.title=g.getTitle();c&&(this.title=JSV.common.JSVFileManager.getName(g.getFilePath())+" - "+this.title);g=this.getCurrentPlotColor(e);f[0]=new Integer(e+1);f[1]=g;f[2]=" "+
this.title;b[e]=f}return b});c(c$,"setColorOrFont",function(a,b){if(null==b){for(var c,e=a.elementColors.entrySet().iterator();e.hasNext()&&((c=e.next())||1);)this.setColorOrFont(a,c.getKey());this.setColorOrFont(a,JSV.common.ScriptToken.DISPLAYFONTNAME);this.setColorOrFont(a,JSV.common.ScriptToken.TITLEFONTNAME)}else{switch(b){case JSV.common.ScriptToken.DISPLAYFONTNAME:this.setFontName(b,a.displayFontName);return;case JSV.common.ScriptToken.TITLEFONTNAME:this.setFontName(b,a.titleFontName);return}this.setColor(b,
a.getElementColor(b))}},"JSV.common.ColorParameters,JSV.common.ScriptToken");c(c$,"getCurrentPlotColor",function(a){return this.currentGraphSet.getPlotColor(a)},"~N");c(c$,"setPrint",function(a,b){null==a?(this.options.putAll(this.optionsSaved),this.optionsSaved=null):(this.printJobTitle=a.title,this.printingFontName=b,this.printGraphPosition=a.position,this.optionsSaved=new java.util.Hashtable,this.optionsSaved.putAll(this.options),this.gridOn=a.showGrid,this.titleOn=a.showTitle,this.setBoolean(JSV.common.ScriptToken.XSCALEON,
a.showXScale),this.setBoolean(JSV.common.ScriptToken.XUNITSON,a.showXScale),this.setBoolean(JSV.common.ScriptToken.YSCALEON,a.showYScale),this.setBoolean(JSV.common.ScriptToken.YUNITSON,a.showYScale))},"JSV.common.PrintLayout,~S");c(c$,"showDialog",function(a){var b=this.getDialog(a);this.closeAllDialogsExcept(a);if(null!=b&&y(b,JSV.dialog.JSVDialog))return b.reEnable();var c=this.getCurrentSpectrumIndex();if(0>c)return this.jsvp.showMessage("To enable "+a+" first select a spectrum by clicking on it.",
""+a),null;var e=this.getSpectrum(),f=this.viewer.getDialog(a,e);null==b&&a===JSV.common.Annotation.AType.Measurements&&(b=new JSV.common.MeasurementData(JSV.common.Annotation.AType.Measurements,e));null!=b&&f.setData(b);this.addDialog(c,a,f);f.reEnable();return f},"JSV.common.Annotation.AType");c(c$,"printPdf",function(a,b){var c=!b.layout.equals("landscape");this.print(a,c?b.imageableHeight:b.imageableWidth,c?b.imageableWidth:b.imageableHeight,b.imageableX,b.imageableY,b.paperHeight,b.paperWidth,
c,0)},"JSV.api.JSVGraphics,JSV.common.PrintLayout");c(c$,"print",function(a,b,c,e,f,g,l,h,k){this.g2d=this.g2d0;if(0==k)return this.isPrinting=!0,k=!1,y(a,JSV.api.JSVGraphics)&&(this.g2d=a,a=this.gMain),this.printGraphPosition.equals("default")?h?(b=450,c=280):(b=280,c=450):this.printGraphPosition.equals("fit to page")?k=!0:h?(b=450,c=280,e=r(r(l-c)/2),f=r(r(g-b)/2)):(b=280,c=450,f=r(r(l-280)/2),e=r(r(g-450)/2)),this.g2d.translateScale(a,e,f,0.1),this.taintedAll=!0,this.drawGraph(a,a,r(c),r(b),k),
this.isPrinting=!1,0;this.isPrinting=!1;return 1},"~O,~N,~N,~N,~N,~N,~N,~B,~N");e(c$,"keyPressed",function(a,b){if(this.isPrinting)return!1;this.checkKeyControl(a,!0);switch(a){case 27:case 127:case 8:return this.escapeKeyPressed(27!=a),this.isIntegralDrag=!1,this.repaint(),!0}var c=0,e=!1;if(0==b)switch(a){case 37:case 39:this.doMouseMoved(39==a?++this.mouseX:--this.mouseX,this.mouseY);this.repaint();e=!0;break;case 33:case 34:c=33==a?JSV.common.GraphSet.RT2:1/JSV.common.GraphSet.RT2;e=!0;break;
case 40:case 38:e=40==a?-1:1,null==this.getSpectrumAt(0).getSubSpectra()?this.notifySubSpectrumChange(e,null):(this.advanceSubSpectrum(e),this.repaint()),e=!0}else if(this.checkMod(a,2))switch(a){case 40:case 38:case 45:case 61:c=61==a||38==a?JSV.common.GraphSet.RT2:1/JSV.common.GraphSet.RT2;e=!0;break;case 37:case 39:this.toPeak(39==a?1:-1),e=!0}0!=c&&(this.scaleYBy(c),this.repaint());return e},"~N,~N");e(c$,"keyReleased",function(a){this.isPrinting||this.checkKeyControl(a,!1)},"~N");e(c$,"keyTyped",
function(a,b){if(this.isPrinting)return!1;switch(a){case "n":if(0!=b)break;this.normalizeIntegral();return!0;case 26:if(2!=b)break;this.previousView();this.repaint();return!0;case 25:if(2!=b)break;this.nextView();this.repaint();return!0}return!1},"~N,~N");e(c$,"mouseAction",function(a,b,c,e,f,g){if(!this.isPrinting)switch(a){case 4:if(!this.checkMod(g,16))break;this.doMousePressed(c,e);break;case 5:this.doMouseReleased(c,e,this.checkMod(g,16));this.repaint();break;case 1:this.doMouseDragged(c,e);
this.repaint();break;case 0:this.jsvp.getFocusNow(!1);if(0!=(g&28)){this.doMouseDragged(c,e);this.repaint();break}this.doMouseMoved(c,e);null!=this.coordStr&&this.repaint();break;case 2:if(this.checkMod(g,4)){this.viewer.showMenu(c,e);break}this.ctrlPressed=!1;this.doMouseClicked(c,e,this.updateControlPressed(g))}},"~N,~N,~N,~N,~N,~N");c(c$,"checkMod",function(a,b){return(a&b)==b},"~N,~N");c(c$,"checkKeyControl",function(a,b){switch(a){case 17:case 157:this.ctrlPressed=b;break;case 16:this.shiftPressed=
b}},"~N,~B");c(c$,"updateControlPressed",function(a){return this.ctrlPressed=(new Boolean(this.ctrlPressed|(this.checkMod(a,2)||this.checkMod(a,20)))).valueOf()},"~N");e(c$,"mouseEnterExit",function(a,b,c,e){e?(this.thisWidget=null,this.isIntegralDrag=!1,this.integralShiftMode=0):this.jsvp.getFocusNow(!1)},"~N,~N,~N,~B");fa();c$=F(JSV.common.PanelData,"LinkMode",Enum);c$.getMode=c(c$,"getMode",function(a){if(a.equals("*"))return JSV.common.PanelData.LinkMode.ALL;for(var b,c=0,e=JSV.common.PanelData.LinkMode.values();c<
e.length&&((b=e[c])||1);c++)if(b.name().equalsIgnoreCase(a))return b;return JSV.common.PanelData.LinkMode.NONE},"~S");n(c$,"ALL",0,[]);n(c$,"NONE",1,[]);n(c$,"AB",2,[]);n(c$,"ABC",3,[]);c$=ea();fa();c$=F(JSV.common.PanelData,"Mouse",Enum);n(c$,"UP",0,[]);n(c$,"DOWN",1,[]);c$=ea();H(c$,"defaultPrintHeight",450,"defaultPrintWidth",280,"topMargin",40,"bottomMargin",50,"leftMargin",60,"rightMargin",50)}),p("JSV.common"),q(null,"JSV.common.PanelNode",["JU.SB","JSV.common.Parameters"],function(){c$=w(function(){this.legend=
this.id=this.jsvp=this.fileName=this.source=this.treeNode=null;this.isView=this.isSelected=!1;this.frameTitle=null;u(this,arguments)},JSV.common,"PanelNode");z(c$,function(a,b,c,e){this.id=a;this.source=c;this.fileName=b;this.jsvp=e;null!=e&&(e.getPanelData().getSpectrumAt(0).setId(a),this.frameTitle=e.getTitle())},"~S,~S,JSV.source.JDXSource,JSV.api.JSVPanel");c(c$,"setTreeNode",function(a){this.treeNode=a},"JSV.api.JSVTreeNode");c(c$,"getTreeNode",function(){return this.treeNode});c(c$,"dispose",
function(){this.source.dispose();null!=this.jsvp&&this.jsvp.dispose();this.legend=this.jsvp=this.source=null});c(c$,"getSpectrum",function(){return this.jsvp.getPanelData().getSpectrum()});c(c$,"setLegend",function(a){null!=this.legend&&this.legend.dispose();return this.legend=a},"JSV.dialog.JSVDialog");e(c$,"toString",function(){return(null==this.id?"":this.id+": ")+(null==this.frameTitle?this.fileName:this.frameTitle)});c$.findSourceByNameOrId=c(c$,"findSourceByNameOrId",function(a,b){for(var c=
b.size();0<=--c;){var e=b.get(c);if(a.equals(e.id)||a.equalsIgnoreCase(e.source.getFilePath()))return e.source}for(c=b.size();0<=--c;)if(e=b.get(c),a.equals(e.fileName))return e.source;return null},"~S,JU.List");c$.findNodeById=c(c$,"findNodeById",function(a,b){for(var c=b.size();0<=--c;)if(a.equals(b.get(c).id))return b.get(c);return null},"~S,JU.List");c$.findNode=c(c$,"findNode",function(a,b){for(var c=b.size();0<=--c;)if(b.get(c).jsvp===a)return b.get(c);return null},"JSV.api.JSVPanel,JU.List");
c$.getSpectrumListAsString=c(c$,"getSpectrumListAsString",function(a){for(var b=new JU.SB,c=0;c<a.size();c++){var e=a.get(c).id;b.append(" ").append(e)}return b.toString().trim()},"JU.List");c$.isOpen=c(c$,"isOpen",function(a,b){if(null!=b)for(var c=a.size();0<=--c;)if(b.equals(a.get(c).source.getFilePath())||b.equals(a.get(c).frameTitle))return!0;return!1},"JU.List,~S");c(c$,"setFrameTitle",function(a){this.frameTitle=a},"~S");c$.getLastFileFirstNode=c(c$,"getLastFileFirstNode",function(a){for(var b=
a.size(),c=0==b?null:a.get(b-1),b=b-1;0<=--b&&a.get(b).source===c.source;)c=a.get(b);return null==c?null:c.jsvp},"JU.List");c(c$,"getInfo",function(a){var b=this.jsvp.getPanelData().getInfo(!1,a);JSV.common.Parameters.putInfo(a,b,"panelId",this.id);JSV.common.Parameters.putInfo(a,b,"panelFileName",this.fileName);JSV.common.Parameters.putInfo(a,b,"panelSource",this.source.getFilePath());return b},"~S")}),p("JSV.common"),q(null,"JSV.common.Parameters",["java.lang.Boolean","java.util.Hashtable","JSV.common.ScriptToken"],
function(){c$=w(function(){this.name=null;this.integralMinY=0.1;this.integralRange=50;this.integralOffset=30;this.integralDrawAll=!1;this.peakListThreshold=NaN;this.peakListInterpolation="parabolic";this.precision=2;this.htBooleans=null;u(this,arguments)},JSV.common,"Parameters");z(c$,function(){this.htBooleans=new java.util.Hashtable;this.setBoolean(JSV.common.ScriptToken.TITLEON,!0);this.setBoolean(JSV.common.ScriptToken.ENABLEZOOM,!0);this.setBoolean(JSV.common.ScriptToken.DISPLAY2D,!0);this.setBoolean(JSV.common.ScriptToken.COORDINATESON,
!0);this.setBoolean(JSV.common.ScriptToken.GRIDON,!0);this.setBoolean(JSV.common.ScriptToken.XSCALEON,!0);this.setBoolean(JSV.common.ScriptToken.YSCALEON,!0);this.setBoolean(JSV.common.ScriptToken.XUNITSON,!0);this.setBoolean(JSV.common.ScriptToken.YUNITSON,!0)});c(c$,"setName",function(a){this.name=a;return this},"~S");c(c$,"getBooleans",function(){return this.htBooleans});c(c$,"setBoolean",function(a,b){this.htBooleans.put(a,Boolean.$valueOf(b));return b},"JSV.common.ScriptToken,~B");c(c$,"getBoolean",
function(a){return Boolean.TRUE===this.htBooleans.get(a)},"JSV.common.ScriptToken");c$.isTrue=c(c$,"isTrue",function(a){return 0==a.length||Boolean.parseBoolean(a)},"~S");c$.getTFToggle=c(c$,"getTFToggle",function(a){return a.equalsIgnoreCase("TOGGLE")?null:JSV.common.Parameters.isTrue(a)?Boolean.TRUE:Boolean.FALSE},"~S");c(c$,"setP",function(a,b,c){switch(b){default:return;case JSV.common.ScriptToken.COORDINATESON:case JSV.common.ScriptToken.DISPLAY1D:case JSV.common.ScriptToken.DISPLAY2D:case JSV.common.ScriptToken.ENABLEZOOM:case JSV.common.ScriptToken.GRIDON:case JSV.common.ScriptToken.REVERSEPLOT:case JSV.common.ScriptToken.TITLEON:case JSV.common.ScriptToken.TITLEBOLDON:case JSV.common.ScriptToken.XSCALEON:case JSV.common.ScriptToken.XUNITSON:case JSV.common.ScriptToken.YSCALEON:case JSV.common.ScriptToken.YUNITSON:c=
JSV.common.Parameters.getTFToggle(c);if(null!=c){this.setBoolean(b,c.booleanValue());break}if(null==a)return;c=!a.getBoolean(b);switch(b){case JSV.common.ScriptToken.XSCALEON:this.setBoolean(JSV.common.ScriptToken.XUNITSON,c);a.setBoolean(JSV.common.ScriptToken.XUNITSON,c);break;case JSV.common.ScriptToken.YSCALEON:this.setBoolean(JSV.common.ScriptToken.YUNITSON,c),a.setBoolean(JSV.common.ScriptToken.YUNITSON,c)}this.setBoolean(b,c)}null!=a&&a.setBooleans(this,b)},"JSV.common.PanelData,JSV.common.ScriptToken,~S");
c$.isMatch=c(c$,"isMatch",function(a,b){return null==a||b.equalsIgnoreCase(a)},"~S,~S");c$.putInfo=c(c$,"putInfo",function(a,b,c,e){null!=e&&JSV.common.Parameters.isMatch(a,c)&&b.put(null==a?c:a,e)},"~S,java.util.Map,~S,~O")}),p("JSV.common"),q(["JSV.common.MeasurementData"],"JSV.common.PeakData",["java.lang.Double","JU.DF","JSV.common.Coordinate","$.PeakPick"],function(){c$=w(function(){this.maxY=this.minY=this.thresh=0;u(this,arguments)},JSV.common,"PeakData",JSV.common.MeasurementData);c(c$,"getThresh",
function(){return this.thresh});e(c$,"getDataHeader",function(){return this.spec.isHNMR()?JSV.common.PeakData.HNMR_HEADER:["peak",this.spec.getXUnits(),this.spec.getYUnits()]});e(c$,"getMeasurementListArray",function(){for(var a=Array(this.size()),b=[-1E100,1E100,1E100],c,e=0,f=this.size();0<=--f;e++)c=this.spec.getPeakListArray(this.get(f),b,this.maxY),a[e]=2==c.length?[""+(e+1),JU.DF.formatDecimalDbl(c[0],2),JU.DF.formatDecimalDbl(c[1],4)]:[""+(e+1),JU.DF.formatDecimalDbl(c[0],4),JU.DF.formatDecimalDbl(c[1],
4),JU.DF.formatDecimalDbl(c[2],2),0==c[3]?"":JU.DF.formatDecimalDbl(c[3],2),0==c[4]?"":JU.DF.formatDecimalDbl(c[4],2),0==c[5]?"":JU.DF.formatDecimalDbl(c[5],2)];return a},"~S");e(c$,"getMeasurementListArrayReal",function(){for(var a=pa(this.size(),0),b=[-1E100,1E100,1E100],c=0,e=this.size();0<=--e;c++)a[c]=this.spec.getPeakListArray(this.get(e),b,this.maxY);return a},"~S");c(c$,"getInfo",function(a){a.put("interpolation",this.myParams.peakListInterpolation);a.put("threshold",Double.$valueOf(this.myParams.peakListThreshold));
ua(this,JSV.common.PeakData,"getInfo",[a])},"java.util.Map");c(c$,"setPeakList",function(a,b,c){this.precision=-2147483648==b?this.spec.getDefaultUnitPrecision():b;var e=this.spec.getXYCoords();if(!(3>e.length)){this.clear();null!=a&&(this.myParams.peakListInterpolation=a.peakListInterpolation,this.myParams.peakListThreshold=a.peakListThreshold);a=this.myParams.peakListInterpolation.equals("parabolic");var f=this.spec.isInverted();this.minY=c.minYOnScale;this.maxY=c.maxYOnScale;var g=c.minXOnScale;
c=c.maxXOnScale;this.thresh=this.myParams.peakListThreshold;Double.isNaN(this.thresh)&&(this.thresh=this.myParams.peakListThreshold=(this.minY+this.maxY)/2);var l=0,h=[e[0].getYVal(),l=e[1].getYVal(),0],k=0;if(f)for(f=2;f<e.length;f++){var m=h[f%3]=e[f].getYVal();if(l<this.thresh&&(h[(f-2)%3]>l&&l<m)&&(l=a?JSV.common.Coordinate.parabolicInterpolation(e,f-1):e[f-1].getXVal(),l>=g||l<=c))if(l=(new JSV.common.PeakPick).setValue(l,m,this.spec,null,0),this.addLast(l),100==++k)break;l=m}else for(f=2;f<
e.length;f++){m=h[f%3]=e[f].getYVal();if(l>this.thresh&&(h[(f-2)%3]<l&&l>m)&&(l=a?JSV.common.Coordinate.parabolicInterpolation(e,f-1):e[f-1].getXVal(),l>=g&&l<=c&&(l=(new JSV.common.PeakPick).setValue(l,m,this.spec,JU.DF.formatDecimalDbl(l,b),l),this.addLast(l),100==++k)))break;l=m}}},"JSV.common.Parameters,~N,JSV.common.ScaleData");c$.HNMR_HEADER=c$.prototype.HNMR_HEADER="peak shift/ppm intens shift/hz diff/hz 2-diff 3-diff".split(" ")}),p("JSV.common"),q(null,"JSV.common.PeakInfo",["JU.PT"],function(){c$=
w(function(){this.px1=this.px0=this.yMax=this.yMin=this.xMax=this.xMin=0;this._match=this.spectrum=this.id=this.atoms=this.model=this.title=this.filePathForwardSlash=this.file=this.index=this.type2=this.type=this.stringInfo=null;u(this,arguments)},JSV.common,"PeakInfo");z(c$,function(){});z(c$,function(a){this.stringInfo=a;this.type=JU.PT.getQuotedAttribute(a,"type");null==this.type&&(this.type="");this.type=this.type.toUpperCase();var b=this.type.indexOf("/");this.type2=0>b?"":JSV.common.PeakInfo.fixType(this.type.substring(this.type.indexOf("/")+
1));this.type=0<=b?JSV.common.PeakInfo.fixType(this.type.substring(0,b))+"/"+this.type2:JSV.common.PeakInfo.fixType(this.type);this.id=JU.PT.getQuotedAttribute(a,"id");this.index=JU.PT.getQuotedAttribute(a,"index");this.file=JU.PT.getQuotedAttribute(a,"file");System.out.println("pi file="+this.file);this.filePathForwardSlash=null==this.file?null:this.file.$replace("\\","/");this.model=JU.PT.getQuotedAttribute(a,"model");a.contains('baseModel=""')||(this.atoms=JU.PT.getQuotedAttribute(a,"atoms"));
this.title=JU.PT.getQuotedAttribute(a,"title");this._match=JU.PT.getQuotedAttribute(a,"_match");this.xMax=JU.PT.parseFloat(JU.PT.getQuotedAttribute(a,"xMax"));this.xMin=JU.PT.parseFloat(JU.PT.getQuotedAttribute(a,"xMin"));this.yMax=JU.PT.parseFloat(JU.PT.getQuotedAttribute(a,"yMax"));this.yMin=JU.PT.parseFloat(JU.PT.getQuotedAttribute(a,"yMin"))},"~S");c(c$,"isClearAll",function(){return null==this.spectrum});c(c$,"getType",function(){return this.type});c(c$,"getAtoms",function(){return this.atoms});
c(c$,"getXMax",function(){return this.xMax});c(c$,"getXMin",function(){return this.xMin});c(c$,"getYMin",function(){return this.yMin});c(c$,"getYMax",function(){return this.yMax});c(c$,"getX",function(){return(this.xMax+this.xMin)/2});c(c$,"getMatch",function(){return this._match});c$.fixType=c(c$,"fixType",function(a){return a.equals("HNMR")?"1HNMR":a.equals("CNMR")?"13CNMR":a},"~S");e(c$,"toString",function(){return this.stringInfo});c(c$,"getIndex",function(){return this.index});c(c$,"getTitle",
function(){return this.title});c(c$,"checkFileIndex",function(a,b){return b.equals(this.index)&&(a.equals(this.file)||a.equals(this.filePathForwardSlash))},"~S,~S");c(c$,"checkFileTypeModel",function(a,b,c){return a.equals(this.file)&&this.checkModel(c)&&this.type.endsWith(b)},"~S,~S,~S");c(c$,"checkTypeModel",function(a,b){return this.checkType(a)&&this.checkModel(b)},"~S,~S");c(c$,"checkModel",function(a){return null!=a&&a.equals(this.model)},"~S");c(c$,"checkType",function(a){return a.endsWith(this.type)},
"~S");c(c$,"checkTypeMatch",function(a){return this.checkType(a.type)&&(this.checkId(a._match)||this.checkModel(a._match)||0<=this.title.toUpperCase().indexOf(a._match))},"JSV.common.PeakInfo");c(c$,"checkId",function(a){return null!=this.id&&null!=a&&a.toUpperCase().startsWith("ID=")&&a.substring(3).equals(this.id)},"~S");c(c$,"getModel",function(){return this.model});c(c$,"getFilePath",function(){return this.file});c(c$,"autoSelectOnLoad",function(){return this.type.startsWith("GC")});c(c$,"setPixelRange",
function(a,b){this.px0=a;this.px1=b},"~N,~N");c(c$,"checkRange",function(a,b){return(2147483647!=a?this.px0<=a&&this.px1>=a:b>=this.xMin&&b<=this.xMax)?Math.abs(b-this.getX()):1E100},"~N,~N");c(c$,"getXPixel",function(){return r((this.px0+this.px1)/2)});c$.nullPeakInfo=c$.prototype.nullPeakInfo=new JSV.common.PeakInfo}),p("JSV.common"),q(["JSV.common.Measurement"],"JSV.common.PeakPick",null,function(){c$=F(JSV.common,"PeakPick",JSV.common.Measurement);c(c$,"setValue",function(a,b,c,e,f){null==e?(this.set(a,
b),this.setPt2(c,!1)):(this.setA(a,b,c,e,!1,!1,0,6),this.value=f,this.setPt2(this.getXVal(),this.getYVal()));return this},"~N,~N,JSV.common.JDXSpectrum,~S,~N")}),p("JSV.common"),q(["java.util.EventObject"],"JSV.common.PeakPickEvent",null,function(){c$=w(function(){this.peakInfo=this.coord=null;u(this,arguments)},JSV.common,"PeakPickEvent",java.util.EventObject);z(c$,function(a,b,c){P(this,JSV.common.PeakPickEvent,[a]);this.coord=b;this.peakInfo=null==c?null:c},"~O,JSV.common.Coordinate,JSV.common.PeakInfo");
c(c$,"getCoord",function(){return this.coord});c(c$,"getPeakInfo",function(){return this.peakInfo});e(c$,"toString",function(){return null==this.peakInfo?null:this.peakInfo.toString()})}),p("JSV.common"),q(["JSV.common.Coordinate","$.ScriptToken"],"JSV.common.PlotWidget",null,function(){c$=w(function(){this.yPixel1=this.xPixel1=this.yPixel0=this.xPixel0=0;this.is2Donly=this.is2D=this.isXtype=this.isPinOrCursor=this.isPin=!1;this.isEnabled=!0;this.isVisible=!1;this.color=this.name=null;u(this,arguments)},
JSV.common,"PlotWidget",JSV.common.Coordinate);Z(c$,function(){this.color=JSV.common.ScriptToken.PLOTCOLOR});e(c$,"toString",function(){return this.name+(!this.isPinOrCursor?""+this.xPixel0+" "+this.yPixel0+" / "+this.xPixel1+" "+this.yPixel1:" x="+this.getXVal()+"/"+this.xPixel0+" y="+this.getYVal()+"/"+this.yPixel0)});z(c$,function(a){P(this,JSV.common.PlotWidget,[]);this.name=a;this.isPin="p"==a.charAt(0);this.isPinOrCursor="z"!=a.charAt(0);this.isXtype=0<=a.indexOf("x");this.is2Donly=(this.is2D=
0<=a.indexOf("2D"))&&"p"==a.charAt(0)},"~S");c(c$,"selected",function(a,b){return this.isVisible&&5>Math.abs(a-this.xPixel0)&&5>Math.abs(b-this.yPixel0)},"~N,~N");c(c$,"setX",function(a,b){this.setXVal(a);this.xPixel0=this.xPixel1=b},"~N,~N");c(c$,"setY",function(a,b){this.setYVal(a);this.yPixel0=this.yPixel1=b},"~N,~N");c(c$,"getValue",function(){return this.isXtype?this.getXVal():this.getYVal()});c(c$,"setEnabled",function(a){this.isEnabled=a},"~B")}),p("JSV.common"),c$=w(function(){this.imageableWidth=
this.imageableHeight=this.paperWidth=this.paperHeight=this.imageableY=this.imageableX=0;this.layout="landscape";this.position="fit to page";this.showTitle=this.showYScale=this.showXScale=this.showGrid=!0;this.font="Helvetica";this.paper=null;this.asPDF=!0;this.date=this.title=null;u(this,arguments)},JSV.common,"PrintLayout"),Z(c$,function(){this.paperHeight=Y(72*Math.min(11,11.69));this.paperWidth=Y(72*Math.min(8.5,8.27));this.imageableHeight=this.paperHeight;this.imageableWidth=this.paperWidth}),
p("JSV.common"),c$=w(function(){this.repaintPending=!1;this.viewer=null;this.n=0;u(this,arguments)},JSV.common,"RepaintManager"),z(c$,function(a){this.viewer=a},"JSV.common.JSViewer"),c(c$,"refresh",function(){this.n++;if(this.repaintPending)return System.out.println("Repaint "+this.n+" skipped"),!1;this.repaintPending=!0;this.viewer.selectedPanel.getPanelData().taintedAll=!0;"undefined"!=typeof Jmol&&(Jmol._repaint&&this.viewer.applet)&&Jmol._repaint(this.viewer.applet,!1);this.repaintDone();return!0}),
c(c$,"repaintDone",function(){this.repaintPending=!1;this.notify()}),p("JSV.common"),q(null,"JSV.common.ScaleData",["java.lang.Double","JSV.common.Coordinate"],function(){c$=w(function(){this.maxX=this.minX=this.pointCount=this.endDataPointIndex=this.startDataPointIndex=this.initMaxY=this.initMinY=this.initMaxYOnScale=this.initMinYOnScale=0;this.firstX=NaN;this.specShift=this.maxXOnScale=this.minXOnScale=0;this.minorTickCounts=this.steps=this.exportPrecision=this.precision=null;this.maxY=this.minY=
this.maxYOnScale=this.minYOnScale=0;this.isShiftZoomedY=!1;this.spectrumScaleFactor=1;this.spectrumYRef=0;this.userYFactor=1;this.yFactorForScale=this.xFactorForScale=this.maxY2D=this.minY2D=this.firstY=0;u(this,arguments)},JSV.common,"ScaleData");Z(c$,function(){this.precision=N(2,0);this.exportPrecision=N(2,0);this.steps=pa(2,0);this.minorTickCounts=N(2,0)});z(c$,function(){});z(c$,function(a,b){this.startDataPointIndex=a;this.endDataPointIndex=b;this.pointCount=this.endDataPointIndex-this.startDataPointIndex+
1},"~N,~N");z(c$,function(a,b,c,e,f){this.minX=JSV.common.Coordinate.getMinX(a,b,c);this.maxX=JSV.common.Coordinate.getMaxX(a,b,c);this.minY=JSV.common.Coordinate.getMinY(a,b,c);0<this.minY&&!e&&(this.minY=0);this.maxY=JSV.common.Coordinate.getMaxY(a,b,c);this.setScale(e,f)},"~A,~N,~N,~B,~B");c(c$,"setScale",function(a,b){this.setXScale();a||(this.maxXOnScale+=this.steps[0]/2);this.setYScale(this.minY,this.maxY,!0,b)},"~B,~B");c(c$,"setXScale",function(){var a=this.setScaleParams(this.minX,this.maxX,
0);this.firstX=Math.floor(this.minX/a)*a;1E-4<Math.abs((this.minX-this.firstX)/a)&&(this.firstX+=a);this.minXOnScale=this.minX;this.maxXOnScale=this.maxX});c(c$,"isYZeroOnScale",function(){return this.minYOnScale<this.spectrumYRef&&this.maxYOnScale>this.spectrumYRef});c(c$,"setYScale",function(a,b,c,e){0==a&&0==b&&(b=1);this.isShiftZoomedY&&(a=this.minYOnScale,b=this.maxYOnScale);var f=this.setScaleParams(a,b,1),g=e?f/2:f/4;e=e?f/4:f/2;this.isShiftZoomedY||(this.minYOnScale=0==a?0:c?g*Math.floor(a/
g):a,this.maxYOnScale=c?e*Math.ceil(1.05*b/e):b);this.firstY=0==a?0:Math.floor(a/g)*g;if(0>this.minYOnScale&&0<this.maxYOnScale)for(this.firstY=0;this.firstY-f>this.minYOnScale;)this.firstY-=f;else 0!=this.minYOnScale&&1E-4<Math.abs((a-this.firstY)/g)&&(this.firstY+=g);c&&(this.initMinYOnScale=this.minYOnScale,this.initMaxYOnScale=this.maxYOnScale,this.initMinY=a,this.initMaxY=b)},"~N,~N,~B,~B");c(c$,"scale2D",function(a){var b=this.maxY-this.minY;1==a?(this.maxY=this.initMaxY,this.minY=this.initMinY):
this.maxY=this.minY+b/a},"~N");c(c$,"setXRange",function(a,b){this.minX=a;this.maxX=b;this.setXScale()},"~N,~N");c$.getXRange=c(c$,"getXRange",function(a,b,c,e,f,g,l,h){for(var k=0,m=0,k=f;k<=g;k++)if(f=b[k].getXVal(),f>=c){l[a]=k;break}for(;k<=g&&!(f=b[k].getXVal(),m++,f>=e);k++);h[a]=k-1;return m},"~N,~A,~N,~N,~N,~N,~A,~A");c(c$,"setScaleParams",function(a,b,c){a=b==a?1:Math.abs(b-a)/14;var e=Math.log10(Math.abs(a));b=r(Math.floor(e));this.exportPrecision[c]=b;this.precision[c]=0>=b?Math.min(8,
1-b):3<b?-2:0;a=0;for(e=Math.pow(10,e-b);e>JSV.common.ScaleData.NTICKS[a];)a++;this.steps[c]=Math.pow(10,b)*JSV.common.ScaleData.NTICKS[a];e=Math.log10(Math.abs(100010*this.steps[c]));b=e-Math.floor(e);for(a=e=0;a<JSV.common.ScaleData.NTICKS.length;a++)if(0.001>Math.abs(b-JSV.common.ScaleData.LOGTICKS[a])){e=JSV.common.ScaleData.NTICKS[a];break}this.minorTickCounts[c]=e;return this.steps[c]},"~N,~N,~N");c(c$,"isInRangeX",function(a){return a>=this.minX&&a<=this.maxX},"~N");c(c$,"addSpecShift",function(a){this.specShift+=
a;this.minX+=a;this.maxX+=a;this.minXOnScale+=a;this.maxXOnScale+=a;this.firstX+=a},"~N");c(c$,"getInfo",function(a){a.put("specShift",Double.$valueOf(this.specShift));a.put("minX",Double.$valueOf(this.minX));a.put("maxX",Double.$valueOf(this.maxX));a.put("minXOnScale",Double.$valueOf(this.minXOnScale));a.put("maxXOnScale",Double.$valueOf(this.maxXOnScale));a.put("minY",Double.$valueOf(this.minY));a.put("maxY",Double.$valueOf(this.maxY));a.put("minYOnScale",Double.$valueOf(this.minYOnScale));a.put("maxYOnScale",
Double.$valueOf(this.maxYOnScale));a.put("minorTickCountX",Integer.$valueOf(this.minorTickCounts[0]));a.put("xStep",Double.$valueOf(this.steps[0]));return a},"java.util.Map");c(c$,"setMinMax",function(a,b,c,e){this.minX=a;this.maxX=b;this.minY=c;this.maxY=e},"~N,~N,~N,~N");c(c$,"toX",function(a,b,c){return this.toXScaled(a,b,c,this.xFactorForScale)},"~N,~N,~B");c(c$,"toX0",function(a,b,c,e){return this.toXScaled(a,c,e,(this.maxXOnScale-this.minXOnScale)/(c-b))},"~N,~N,~N,~B");c(c$,"toXScaled",function(a,
b,c,e){return c?this.maxXOnScale-(b-a)*e:this.minXOnScale+(b-a)*e},"~N,~N,~B,~N");c(c$,"toPixelX",function(a,b,c,e){return this.toPixelXScaled(a,b,c,e,this.xFactorForScale)},"~N,~N,~N,~B");c(c$,"toPixelX0",function(a,b,c,e){return this.toPixelXScaled(a,b,c,e,(this.maxXOnScale-this.minXOnScale)/(c-b))},"~N,~N,~N,~B");c(c$,"toPixelXScaled",function(a,b,c,e,f){a=r((a-this.minXOnScale)/f);return e?b+a:c-a},"~N,~N,~N,~B,~N");c(c$,"toY",function(a,b){return this.maxYOnScale+(b-a)*this.yFactorForScale},
"~N,~N");c(c$,"toY0",function(a,b,c){return Math.max(this.minYOnScale,Math.min(this.maxYOnScale+(b-a)*((this.maxYOnScale-this.minYOnScale)/(c-b)),this.maxYOnScale))},"~N,~N,~N");c(c$,"toPixelY",function(a,b){return Double.isNaN(a)?-2147483648:b-r(((a-this.spectrumYRef)*this.userYFactor+this.spectrumYRef-this.minYOnScale)/this.yFactorForScale)},"~N,~N");c(c$,"toPixelY0",function(a,b,c){return r(b+(this.maxYOnScale-a)/((this.maxYOnScale-this.minYOnScale)/(c-b)))},"~N,~N,~N");c(c$,"setXYScale",function(a,
b,c){var e=this.spectrumYRef,f=this.spectrumScaleFactor,g=1!=f||this.isShiftZoomedY,l=g?this.initMinYOnScale:this.minY,h=g?this.initMaxYOnScale:this.maxY;g&&e<l&&(e=l);g&&e>h&&(e=h);this.setYScale((l-e)/f+e,(h-e)/f+e,1==f,c);this.xFactorForScale=(this.maxXOnScale-this.minXOnScale)/(a-1);this.yFactorForScale=(this.maxYOnScale-this.minYOnScale)/(b-1)},"~N,~N,~B");c$.copyScaleFactors=c(c$,"copyScaleFactors",function(a,b){for(var c=0;c<a.length;c++)b[c].spectrumScaleFactor=a[c].spectrumScaleFactor,b[c].spectrumYRef=
a[c].spectrumYRef,b[c].userYFactor=a[c].userYFactor,b[c].specShift=a[c].specShift,b[c].isShiftZoomedY=a[c].isShiftZoomedY},"~A,~A");c$.copyYScales=c(c$,"copyYScales",function(a,b){for(var c=0;c<a.length;c++)b[c].initMinYOnScale=a[c].initMinYOnScale,b[c].initMaxYOnScale=a[c].initMaxYOnScale,b[c].minY=a[c].minY,b[c].maxY=a[c].maxY,a[c].isShiftZoomedY&&(b[c].isShiftZoomedY=!0,b[c].minYOnScale=a[c].minYOnScale,b[c].maxYOnScale=a[c].maxYOnScale)},"~A,~A");c$.setDataPointIndices=c(c$,"setDataPointIndices",
function(a,b,c,e,f,g){for(var l=0,h=a.size(),k=0;k<h;k++){var m=a.get(k).getXYCoords();JSV.common.ScaleData.getXRange(k,m,b,c,0,m.length-1,f,g)>=e&&l++}return l==h},"JU.List,~N,~N,~N,~A,~A");c$.fixScale=c(c$,"fixScale",function(a){if(!a.isEmpty())for(;;){for(var b,c=a.entrySet().iterator();c.hasNext()&&((b=c.next())||1);){var e=b.getValue(),f=e.indexOf("E");0<=f&&(e=e.substring(0,f));if(0>e.indexOf(".")||!e.endsWith("0")&&!e.endsWith("."))return}for(c=a.entrySet().iterator();c.hasNext()&&((b=c.next())||
1);)e=b.getValue(),f=e.indexOf("E"),0<=f?b.setValue(e.substring(0,f-1)+e.substring(f)):b.setValue(e.substring(0,e.length-1))}},"java.util.Map");c(c$,"scaleBy",function(a){if(this.isShiftZoomedY){var b=this.isYZeroOnScale()?this.spectrumYRef:(this.minYOnScale+this.maxYOnScale)/2;this.minYOnScale=b-(b-this.minYOnScale)/a;this.maxYOnScale=b-(b-this.maxYOnScale)/a}else this.spectrumScaleFactor*=a},"~N");H(c$,"NTICKS",[2,5,10,10]);c$.LOGTICKS=c$.prototype.LOGTICKS=[Math.log10(2),Math.log10(5),0,1]}),p("JSV.common"),
q(["java.lang.Enum"],"JSV.common.ScriptToken",["java.util.Hashtable","JU.List","$.SB","JSV.common.ScriptTokenizer"],function(){c$=w(function(){this.tip=null;u(this,arguments)},JSV.common,"ScriptToken",Enum);c(c$,"getTip",function(){return"  "+("T"===this.tip?"TRUE/FALSE/TOGGLE":"TF"===this.tip?"TRUE or FALSE":"C"===this.tip?"<color>":this.tip)});z(c$,function(){});z(c$,function(a){this.tip=a},"~S");c$.getScriptToken=c(c$,"getScriptToken",function(a){if(null==JSV.common.ScriptToken.htParams){JSV.common.ScriptToken.htParams=
new java.util.Hashtable;for(var b,c=0,e=JSV.common.ScriptToken.values();c<e.length&&((b=e[c])||1);c++)JSV.common.ScriptToken.htParams.put(b.name(),b)}a=JSV.common.ScriptToken.htParams.get(a.toUpperCase());return null==a?JSV.common.ScriptToken.UNKNOWN:a},"~S");c$.getScriptTokenList=c(c$,"getScriptTokenList",function(a,b){a=a.toUpperCase();var c=new JU.List,e=JSV.common.ScriptToken.getScriptToken(a);if(b)null!=e&&c.addLast(e);else for(var f,e=JSV.common.ScriptToken.htParams.entrySet().iterator();e.hasNext()&&
((f=e.next())||1);)f.getKey().startsWith(a)&&null!=f.getValue().tip&&c.addLast(f.getValue());return c},"~S,~B");c$.getValue=c(c$,"getValue",function(a,b,c){if(!b.hasMoreTokens())return"";switch(a){default:return JSV.common.ScriptTokenizer.nextStringToken(b,!0);case JSV.common.ScriptToken.CLOSE:case JSV.common.ScriptToken.GETPROPERTY:case JSV.common.ScriptToken.INTEGRATION:case JSV.common.ScriptToken.INTEGRATE:case JSV.common.ScriptToken.JMOL:case JSV.common.ScriptToken.LABEL:case JSV.common.ScriptToken.LOAD:case JSV.common.ScriptToken.PEAK:case JSV.common.ScriptToken.PLOTCOLORS:case JSV.common.ScriptToken.YSCALE:case JSV.common.ScriptToken.WRITE:return JSV.common.ScriptToken.removeCommandName(c);
case JSV.common.ScriptToken.SELECT:case JSV.common.ScriptToken.OVERLAY:case JSV.common.ScriptToken.VIEW:case JSV.common.ScriptToken.ZOOM:return JSV.common.ScriptToken.removeCommandName(c).$replace(","," ").trim()}},"JSV.common.ScriptToken,JSV.common.ScriptTokenizer,~S");c$.removeCommandName=c(c$,"removeCommandName",function(a){var b=a.indexOf(" ");return 0>b?"":a.substring(b).trim()},"~S");c$.getKey=c(c$,"getKey",function(a){var b=a.nextToken();if(b.startsWith("#")||b.startsWith("//"))return null;
b.equalsIgnoreCase("SET")&&(b=a.nextToken());return b.toUpperCase()},"JSV.common.ScriptTokenizer");c$.getTokens=c(c$,"getTokens",function(a){var b=new JU.List;for(a=new JSV.common.ScriptTokenizer(a,!1);a.hasMoreTokens();){var c=JSV.common.ScriptTokenizer.nextStringToken(a,!1);if(c.startsWith("//")||c.startsWith("#"))break;b.addLast(c)}return b},"~S");c$.getNameList=c(c$,"getNameList",function(a){if(0==a.size())return"";for(var b=new JU.SB,c=0;c<a.size();c++)b.append(",").append(a.get(c).toString());
return b.toString().substring(1)},"JU.List");c$.htParams=null;n(c$,"UNKNOWN",0,[]);n(c$,"APPLETID",1,[]);n(c$,"APPLETREADYCALLBACKFUNCTIONNAME",2,[]);n(c$,"AUTOINTEGRATE",3,["TF"]);n(c$,"BACKGROUNDCOLOR",4,["C"]);n(c$,"CLOSE",5,["spectrumId or fileName or ALL"]);n(c$,"COMPOUNDMENUON",6,["TF"]);n(c$,"COORDCALLBACKFUNCTIONNAME",7,[]);n(c$,"COORDINATESCOLOR",8,["C"]);n(c$,"COORDINATESON",9,["T"]);n(c$,"DEBUG",10,["TF"]);n(c$,"DISPLAYFONTNAME",11,["fontName"]);n(c$,"DISPLAY1D",12,["T"]);n(c$,"DISPLAY2D",
13,["T"]);n(c$,"ENABLEZOOM",14,["T"]);n(c$,"ENDINDEX",15,[]);n(c$,"FINDX",16,["x-value"]);n(c$,"GETPROPERTY",17,["[ALL] [propertyName]"]);n(c$,"GETSOLUTIONCOLOR",18,[]);n(c$,"GRIDCOLOR",19,["C"]);n(c$,"GRIDON",20,["T"]);n(c$,"HIDDEN",21,["TF"]);n(c$,"HIGHLIGHTCOLOR",22,["C"]);n(c$,"INTEGRALOFFSET",23,["percent"]);n(c$,"INTEGRALRANGE",24,["percent"]);n(c$,"INTEGRATE",25,[]);n(c$,"INTEGRATION",26,["ON/OFF/AUTO/TOGGLE/MIN value/MARK ppm1-ppm2:norm,ppm3-ppm4,... (start with 0-0 to clear)"]);n(c$,"INTEGRALPLOTCOLOR",
27,[]);n(c$,"INTEGRATIONRATIOS",28,[]);n(c$,"INTERFACE",29,[]);n(c$,"IRMODE",30,["A or T or TOGGLE"]);n(c$,"JMOL",31,["...Jmol command..."]);n(c$,"JSV",32,[]);n(c$,"LABEL",33,['x y [color and/or "text"]']);n(c$,"LINK",34,["AB or ABC or NONE or ALL"]);n(c$,"LOAD",35,['[APPEND] "fileName" [first] [last]; use "" to reload current file']);n(c$,"LOADFILECALLBACKFUNCTIONNAME",36,[]);n(c$,"LOADIMAGINARY",37,["T/F - default is to NOT load imaginary spectra"]);n(c$,"MENUON",38,[]);n(c$,"OBSCURE",39,[]);n(c$,
"OVERLAY",40,[]);n(c$,"OVERLAYSTACKED",41,["TF"]);n(c$,"PEAK",42,['<type(IR,CNMR,HNMR,MS, etc)> id=xxx or "match" [ALL], for example: PEAK HNMR id=3']);n(c$,"PEAKCALLBACKFUNCTIONNAME",43,[]);n(c$,"PEAKLIST",44,[" Example: PEAKLIST threshold=20 [%, or include=10] skip=0 interpolate=parabolic [or NONE]"]);n(c$,"PEAKTABCOLOR",45,["C"]);n(c$,"PLOTAREACOLOR",46,["C"]);n(c$,"PLOTCOLOR",47,["C"]);n(c$,"PLOTCOLORS",48,["color,color,color,..."]);n(c$,"PRINT",49,[]);n(c$,"REVERSEPLOT",50,["T"]);n(c$,"SCALEBY",
51,["factor"]);n(c$,"SCALECOLOR",52,["C"]);n(c$,"SCRIPT",53,["filename.jsv"]);n(c$,"SELECT",54,["spectrumID, spectrumID,..."]);n(c$,"SETPEAK",55,["x (ppm) or NONE does peak search, unlike SETX -- NMR only"]);n(c$,"SETX",56,["x (ppm) does no peak search, unlike SETPEAK -- NMR only"]);n(c$,"SHIFTX",57,["dx (ppm) or NONE -- NMR only"]);n(c$,"SHOWERRORS",58,[]);n(c$,"SHOWINTEGRATION",59,["T"]);n(c$,"SHOWKEY",60,["T"]);n(c$,"SHOWMEASUREMENTS",61,["T"]);n(c$,"SHOWMENU",62,[]);n(c$,"SHOWPEAKLIST",63,["T"]);
n(c$,"SHOWPROPERTIES",64,[]);n(c$,"SHOWSOURCE",65,[]);n(c$,"SPECTRUM",66,["spectrumID"]);n(c$,"SPECTRUMNUMBER",67,[]);n(c$,"STACKOFFSETY",68,["percent"]);n(c$,"STARTINDEX",69,[]);n(c$,"SYNCCALLBACKFUNCTIONNAME",70,[]);n(c$,"SYNCID",71,[]);n(c$,"TEST",72,[]);n(c$,"TITLEON",73,["T"]);n(c$,"TITLEBOLDON",74,["T"]);n(c$,"TITLECOLOR",75,["C"]);n(c$,"TITLEFONTNAME",76,["fontName"]);n(c$,"UNITSCOLOR",77,["C"]);n(c$,"VERSION",78,[]);n(c$,"VIEW",79,['spectrumID, spectrumID, ... Example: VIEW 3.1, 3.2  or  VIEW "acetophenone"']);
n(c$,"XSCALEON",80,["T"]);n(c$,"XUNITSON",81,["T"]);n(c$,"YSCALE",82,["[ALL] lowValue highValue"]);n(c$,"YSCALEON",83,["T"]);n(c$,"YUNITSON",84,["T"]);n(c$,"WINDOW",85,[]);n(c$,"WRITE",86,['[XY,DIF,DIFDUP,PAC,FIX,SQZ,AML,CML,JPG,PDF,PNG,SVG] "filename"']);n(c$,"ZOOM",87,["OUT or x1,x2 or x1,y1 x2,y2"]);n(c$,"ZOOMBOXCOLOR",88,[]);n(c$,"ZOOMBOXCOLOR2",89,[])}),p("JSV.common"),q(null,"JSV.common.ScriptTokenizer",["JU.PT"],function(){c$=w(function(){this.str=null;this.pt=-1;this.len=0;this.isCmd=!1;this.doCheck=
!0;u(this,arguments)},JSV.common,"ScriptTokenizer");z(c$,function(a,b){this.str=a;this.len=a.length;this.isCmd=b},"~S,~B");c$.nextStringToken=c(c$,"nextStringToken",function(a,b){var c=a.nextToken();return b&&'"'==c.charAt(0)&&c.endsWith('"')&&1<c.length?JU.PT.trimQuotes(c):c},"JSV.common.ScriptTokenizer,~B");c(c$,"nextToken",function(){this.doCheck&&this.hasMoreTokens();for(var a=this.pt,b='"'==this.str.charAt(this.pt);++this.pt<this.len;){switch(this.str.charAt(this.pt)){case '"':if(b){if(this.isCmd){b=
!1;continue}this.pt++;break}this.isCmd&&(b=!0);continue;case " ":if(!this.isCmd&&!b)break;continue;case ";":case "\n":if(this.isCmd&&!b)break;continue;default:continue}break}this.doCheck=!0;return this.str.substring(a,this.pt)});c(c$,"hasMoreTokens",function(){for(;++this.pt<this.len;){switch(this.str.charAt(this.pt)){case " ":case ";":case "\n":continue}break}this.doCheck=!1;return this.pt<this.len})}),p("JSV.common"),c$=w(function(){this.isub=0;this.title=null;u(this,arguments)},JSV.common,"SubSpecChangeEvent"),
z(c$,function(a,b){this.isub=a;this.title=b},"~N,~S"),c(c$,"isValid",function(){return null!=this.title}),c(c$,"getSubIndex",function(){return this.isub}),e(c$,"toString",function(){return this.title}),p("JSV.common"),q(null,"JSV.common.ViewData",["JSV.common.Coordinate","$.ScaleData"],function(){c$=w(function(){this.thisScale=this.scaleData=null;this.iThisScale=this.nSpectra=0;u(this,arguments)},JSV.common,"ViewData");c(c$,"getScaleData",function(){return this.scaleData});c(c$,"getScale",function(){return this.thisScale});
z(c$,function(a,b,c,e,f,g,l){this.nSpectra=l?1:a.size();this.scaleData=Array(this.nSpectra);for(l=0;l<this.nSpectra;l++)this.scaleData[l]=new JSV.common.ScaleData(e[l],f[l]);this.init(a,b,c,g)},"JU.List,~N,~N,~A,~A,~B,~B");z(c$,function(a,b,c,e){this.nSpectra=a.size();var f=a.get(0).getXYCoords().length;this.scaleData=Array(1);this.scaleData[0]=new JSV.common.ScaleData(0,f-1);this.init(a,b,c,e)},"JU.List,~N,~N,~B");c(c$,"init",function(a,b,c,e){this.thisScale=this.scaleData[this.iThisScale=0];for(var f=
0;f<this.scaleData.length;f++)this.scaleData[f].userYFactor=a.get(f).getUserYFactor(),this.scaleData[f].spectrumYRef=a.get(f).getYRef();this.resetScaleFactors();var g=JSV.common.Coordinate.getMinX(a,this),l=JSV.common.Coordinate.getMaxX(a,this),h=JSV.common.Coordinate.getMinYUser(a,this),k=JSV.common.Coordinate.getMaxYUser(a,this);b!=c&&(h=b,k=c,h>k&&(f=h,h=k,k=f));a=a.get(0).isInverted();for(f=0;f<this.scaleData.length;f++)this.scaleData[f].setMinMax(g,l,h,k),this.scaleData[f].setScale(e,a)},"JU.List,~N,~N,~B");
c(c$,"newSpectrum",function(a){this.init(a,0,0,!1)},"JU.List");c(c$,"setXRangeForSubSpectrum",function(a){this.setXRange(0,a,this.scaleData[0].minX,this.scaleData[0].maxX,0,a.length-1)},"~A");c(c$,"setXRange",function(a,b,c,e,f,g){for(var l=0,h=0,l=f;l<=g;l++)if(f=b[l].getXVal(),f>=c){this.scaleData[a%this.scaleData.length].startDataPointIndex=l;break}for(;l<=g&&!(f=b[l].getXVal(),h++,f>=e);l++);this.scaleData[a%this.scaleData.length].endDataPointIndex=l-1;return h},"~N,~A,~N,~N,~N,~N");c(c$,"getStartingPointIndex",
function(a){return this.scaleData[a%this.scaleData.length].startDataPointIndex},"~N");c(c$,"getEndingPointIndex",function(a){return this.scaleData[a%this.scaleData.length].endDataPointIndex},"~N");c(c$,"areYScalesSame",function(a,b){a%=this.scaleData.length;b%=this.scaleData.length;return this.scaleData[a].minYOnScale==this.scaleData[b].minYOnScale&&this.scaleData[a].maxYOnScale==this.scaleData[b].maxYOnScale},"~N,~N");c(c$,"setScale",function(a,b,c,e){this.iThisScale=a%this.scaleData.length;this.thisScale=
this.scaleData[this.iThisScale];this.thisScale.setXYScale(b,c,e)},"~N,~N,~N,~B");c(c$,"resetScaleFactors",function(){for(var a=0;a<this.scaleData.length;a++)this.scaleData[a].spectrumScaleFactor=1});c(c$,"scaleSpectrum",function(a,b){if(!(0>=b||a>=this.nSpectra))if(-2==a)this.thisScale.scale2D(b);else if(0>a)for(a=0;a<this.scaleData.length;a++)this.scaleData[a].scaleBy(b);else this.scaleData[a%this.scaleData.length].scaleBy(b)},"~N,~N");c(c$,"getNewScales",function(a,b,c,e){if(b)return this.scaleData;
a%=this.scaleData.length;b=(c-this.thisScale.minYOnScale)/(this.thisScale.maxYOnScale-this.thisScale.minYOnScale);e=(e-this.thisScale.minYOnScale)/(this.thisScale.maxYOnScale-this.thisScale.minYOnScale);c=Array(this.scaleData.length);for(var f=0;f<this.scaleData.length;f++)c[f]=0<=a&&f!=a?this.scaleData[f]:new JSV.common.ScaleData;JSV.common.ScaleData.copyScaleFactors(this.scaleData,c);JSV.common.ScaleData.copyYScales(this.scaleData,c);for(f=0;f<this.scaleData.length;f++)0<=a&&f!=a||(c[f].isShiftZoomedY=
!0,c[f].minYOnScale=this.scaleData[f].minYOnScale*(1-b)+b*this.scaleData[f].maxYOnScale,c[f].maxYOnScale=this.scaleData[f].minYOnScale*(1-e)+e*this.scaleData[f].maxYOnScale);return c},"~N,~B,~N,~N")}),p("JSV.common"),c$=w(function(){this.y2=this.x2=this.y1=this.x1=0;u(this,arguments)},JSV.common,"ZoomEvent"),z(c$,function(a,b,c,e){this.x1=a;this.y1=b;this.x2=c;this.y2=e},"~N,~N,~N,~N"),p("JSV.dialog"),q(["JSV.api.AnnotationData","JSV.common.Annotation"],"JSV.dialog.JSVDialog",["java.lang.Double",
"JU.DF","$.PT","JSV.common.IntegralData","$.PeakData"],function(){c$=w(function(){this.myParams=this.xyData=this.combo1=this.txt3=this.txt2=this.txt1=this.jsvp=this.dialog=this.manager=this.$spec=this.viewer=this.title=this.type=this.options=this.optionKey=null;this.precision=1;this.showHideButton=this.loc=null;this.defaultVisible=this.isNumeric=this.addApplyBtn=this.addCombo1=this.addClearBtn=!1;this.tableData=this.graphSetKey=this.subType=null;this.addUnits=!1;this.unitPtr=this.formatOptions=this.unitOptions=
null;this.isON=!0;this.lastNorm=1;this.iSelected=this.iRowColSelected=-1;this.skipCreate=!1;this.iColSelected=this.iRowSelected=-1;u(this,arguments)},JSV.dialog,"JSVDialog",JSV.common.Annotation,JSV.api.AnnotationData);c(c$,"setParams",function(a,b,c){this.title=a;this.viewer=b;this.$spec=c;this.manager=b.getDialogManager();this.jsvp=b.selectedPanel;this.myParams=b.getPlatformInterface("Parameters").setName("dialogParams");this.subType=null==c?"!":c.getTypeLabel();this.optionKey=this.type+"_"+this.subType;
this.options=this.manager.getDialogOptions();null!=c&&(a=c.getDefaultAnnotationInfo(this.type),this.options.put(this.optionKey,a),this.unitOptions=a[0],this.formatOptions=a[1],this.unitPtr=this.options.get(this.optionKey+"_unitPtr"),null==this.unitPtr&&(this.unitPtr=a[2]));switch(this.type){case JSV.common.Annotation.AType.Integration:this.addApplyBtn=this.defaultVisible=this.addClearBtn=this.isNumeric=!0;break;case JSV.common.Annotation.AType.Measurements:this.defaultVisible=this.addCombo1=this.addClearBtn=
this.isNumeric=!0;break;case JSV.common.Annotation.AType.PeakList:this.defaultVisible=this.addApplyBtn=this.isNumeric=!0;break;case JSV.common.Annotation.AType.Views:this.defaultVisible=!0}this.initDialog();return this},"~S,JSV.common.JSViewer,JSV.common.JDXSpectrum");c(c$,"initDialog",function(){this.dialog=this.manager.getDialog(this);this.restoreDialogPosition(this.jsvp,this.getPosXY());this.dialog.setTitle(this.title);this.layoutDialog()});c(c$,"layoutDialog",function(){this.dialog.startLayout();
this.addUniqueControls();this.isNumeric&&(this.getUnitOptions(),this.addCombo1&&(this.combo1=this.dialog.addSelectOption("cmbUnits","Units",this.unitOptions,this.unitPtr.intValue(),this.addUnits)),this.addApplyBtn&&this.dialog.addButton("btnApply","Apply"),this.showHideButton=this.dialog.addButton("btnShow","Show"),this.addClearBtn&&this.dialog.addButton("btnClear","Clear"));this.dialog.endLayout();this.checkEnables();this.dialog.setVisible(this.defaultVisible)});c(c$,"callbackAD",function(a,b){if(a.equals("tableSelect"))this.tableSelect(b);
else if(a.equals("btnClear"))this.clear();else if(a.equals("btnApply"))this.eventApply();else if(a.equals("btnShow")){var c=this.dialog.getText(this.showHideButton);this.eventShowHide(c.equals("Show"))}else if(a.equals("cmbUnits"))this.setPrecision(this.dialog.getSelectedIndex(this.combo1));else if(a.startsWith("txt"))this.eventApply();else if(a.equals("windowClosing"))return this.done(),!0;null!=this.jsvp&&this.jsvp.doRepaint(!0);return!0},"~S,~S");c(c$,"addUniqueControls",function(){},"JSV.dialog.DialogManager");
e(c$,"getAType",function(){return this.type});e(c$,"getGraphSetKey",function(){return this.graphSetKey});e(c$,"setGraphSetKey",function(a){this.graphSetKey=a},"~S");e(c$,"getSpectrum",function(){return this.$spec});e(c$,"getState",function(){return this.isON});e(c$,"setState",function(a){this.isON=a},"~B");c(c$,"checkEnables",function(){var a=this.checkVisible();this.dialog.setText(this.showHideButton,a?"Hide":"Show")});c(c$,"createTable",function(a,b,c){this.tableData=a;this.dialog.createTable(a,
b,c)},"~A,~A,~A");c(c$,"setTableSelectionEnabled",function(a){this.dialog.setCellSelectionEnabled(a)},"~B");c(c$,"getParameters",function(){return this.myParams});c(c$,"showMessage",function(a,b,c){this.manager.showMessageDialog(this.dialog,a,b,c)},"~S,~S,~N");c(c$,"setThreshold",function(a){this.dialog.setText(this.txt1,this.getThreasholdText(a))},"~N");c(c$,"setComboSelected",function(a){this.dialog.setSelectedIndex(this.combo1,a)},"~N");c(c$,"applyFromFields",function(){this.apply(null)});c(c$,
"reEnable",function(){this.paramsReEnable();return this});c(c$,"dispose",function(){this.dialog.dispose()});c(c$,"setVisible",function(a){this.dialog.setVisible(a)},"~B");e(c$,"isVisible",function(){return this.dialog.isVisible()});c(c$,"selectTableRow",function(a){this.dialog.selectTableRow(a)},"~N");c(c$,"repaint",function(){this.dialog.repaint()});c(c$,"setFields",function(){switch(this.type){case JSV.common.Annotation.AType.PeakList:this.myParams=this.xyData.getParameters(),this.setThreshold(this.myParams.peakListThreshold),
this.setComboSelected(this.myParams.peakListInterpolation.equals("none")?1:0),this.createData()}});c(c$,"update",function(a,b,c){this.selectTableRow(-1);switch(this.type){case JSV.common.Annotation.AType.Integration:this.loadData();this.checkEnables();break;case JSV.common.Annotation.AType.Measurements:this.loadData();this.checkEnables();break;case JSV.common.Annotation.AType.PeakList:20<c&&this.applyFromFields();if(null==this.xyData||null==a||20<c)break;c=0;var e=1E100;a=a.getXVal();var f=this.xyData;
b=Math.abs(b/20);for(var g=f.size();0<=--g;){var l=Math.abs(a-f.get(g).getXVal());l<e&&(e=l,c=g)}e<b&&(this.selectTableRow(f.size()-2-c),this.repaint())}},"JSV.common.Coordinate,~N,~N");c(c$,"getPeakData",function(){var a=new JSV.common.PeakData(JSV.common.Annotation.AType.PeakList,this.$spec);a.setPeakList(this.myParams,this.precision,this.jsvp.getPanelData().getView());this.xyData=a;return null});e(c$,"getData",function(){null==this.xyData&&this.createData();return this.xyData});c(c$,"setData",
function(a){this.myParams=a.getParameters();this.xyData=a},"JSV.api.AnnotationData");e(c$,"setSpecShift",function(a){null!=this.xyData&&this.xyData.setSpecShift(a)},"~N");c(c$,"setType",function(a){this.type=a;switch(a){case JSV.common.Annotation.AType.Measurements:this.addUnits=!0}},"JSV.common.Annotation.AType");c(c$,"apply",function(a){try{switch(this.type){case JSV.common.Annotation.AType.Integration:var b=Double.parseDouble(a[0]),c=Double.parseDouble(a[1]);this.myParams.integralOffset=b;this.myParams.integralRange=
c;this.myParams.integralDrawAll=!1;this.getData().update(this.myParams);break;case JSV.common.Annotation.AType.NONE:return;case JSV.common.Annotation.AType.PeakList:this.skipCreate||(this.setThreshold(NaN),this.createData()),this.skipCreate=!1}this.loadData();this.checkEnables();this.jsvp.doRepaint(!0)}catch(e){if(!C(e,Exception))throw e;}},"~A");c(c$,"done",function(){null!=this.jsvp&&null!=this.$spec&&this.jsvp.getPanelData().removeDialog(this);null!=this.xyData&&this.xyData.setState(this.isON);
this.saveDialogPosition(this.getPosXY());this.dispose();this.jsvp.doRepaint(!0)});c(c$,"restoreDialogPosition",function(a,b){if(null!=a){-2147483648==b[0]&&(b[0]=0,b[1]=-20);var c=this.manager.getLocationOnScreen(a),e=a.getHeight();this.loc=[Math.max(0,c[0]+b[0]),Math.max(0,c[1]+e+b[1])];this.dialog.setIntLocation(this.loc)}},"JSV.api.JSVPanel,~A");c(c$,"saveDialogPosition",function(a){try{var b=this.manager.getLocationOnScreen(this.dialog);a[0]+=b[0]-this.loc[0];a[1]+=b[1]-this.loc[1]}catch(c){if(!C(c,
Exception))throw c;}},"~A");c(c$,"getThreasholdText",function(a){if(Double.isNaN(a)){a=this.jsvp.getPanelData();var b=a.getSpectrum().isInverted()?0.1:0.9,c=a.getClickedCoordinate();a=null==c?(a.getView().minYOnScale*b+a.getView().maxYOnScale)*(1-b):c.getYVal()}return" "+JU.DF.formatDecimalDbl(a,1E3>a?2:-2)},"~N");c(c$,"checkVisible",function(){return this.viewer.selectedPanel.getPanelData().getShowAnnotation(this.type)});c(c$,"getUnitOptions",function(){var a=this.optionKey+"_format";null==this.options.get(a)&&
this.options.put(a,Integer.$valueOf(this.formatOptions[null==this.unitPtr?0:this.unitPtr.intValue()]))});c(c$,"eventApply",function(){switch(this.type){case JSV.common.Annotation.AType.PeakList:this.createData(),this.skipCreate=!0}this.applyFromFields()});c(c$,"eventShowHide",function(a){(this.isON=a)&&this.eventApply();this.jsvp.doRepaint(!0);this.checkEnables()},"~B");c(c$,"clear",function(){this.setState(!0);null!=this.xyData&&(this.xyData.clear(),this.applyFromFields())});c(c$,"paramsReEnable",
function(){switch(this.type){case JSV.common.Annotation.AType.PeakList:this.skipCreate=!0}this.setVisible(!0);this.isON=!0;this.applyFromFields()});c(c$,"tableCellSelect",function(a,b){var c=this.tableData[a][1],e=1E3*this.iRowSelected+this.iColSelected;if(e!=this.iRowColSelected){this.iRowColSelected=e;this.selectTableRow(this.iRowSelected);try{switch(this.type){case JSV.common.Annotation.AType.Integration:for(e=0;e<this.xyData.size();e++)if(JU.DF.formatDecimalDbl(this.xyData.get(e).getXVal(),2).equals(c)){this.iSelected=
e;this.jsvp.getPanelData().setXPointers(this.$spec,this.xyData.get(e).getXVal(),this.$spec,this.xyData.get(e).getXVal2());this.jsvp.doRepaint(!0);break}this.checkEnables();break;case JSV.common.Annotation.AType.PeakList:try{switch(b){case 6:case 5:case 4:var f=Double.parseDouble(c),g=Double.parseDouble(this.tableData[a+3-b][1]);this.jsvp.getPanelData().setXPointers(this.$spec,f,this.$spec,g);break;default:this.jsvp.getPanelData().findX(this.$spec,Double.parseDouble(c))}}catch(l){if(C(l,Exception))this.jsvp.getPanelData().findX(this.$spec,
1E100);else throw l;}this.jsvp.doRepaint(!1);break;case JSV.common.Annotation.AType.OverlayLegend:this.jsvp.getPanelData().setSpectrum(a,!1)}}catch(h){if(!C(h,Exception))throw h;}}},"~N,~N");c(c$,"loadData",function(){var a,b,c;switch(this.type){case JSV.common.Annotation.AType.Integration:null==this.xyData&&this.createData();this.iSelected=-1;a=this.xyData.getMeasurementListArray(null);b=this.xyData.getDataHeader();c=[40,65,65,50];this.createTable(a,b,c);break;case JSV.common.Annotation.AType.Measurements:if(null==
this.xyData)break;a=this.xyData.getMeasurementListArray(this.dialog.getSelectedItem(this.combo1).toString());b=this.xyData.getDataHeader();c=[40,65,65,50];this.createTable(a,b,c);break;case JSV.common.Annotation.AType.PeakList:null==this.xyData&&this.createData();a=this.xyData.getMeasurementListArray(null);b=this.xyData.getDataHeader();c=[40,65,50,50,50,50,50];this.createTable(a,b,c);this.setTableSelectionEnabled(!0);break;case JSV.common.Annotation.AType.OverlayLegend:b=["No.","Plot Color","Title"],
a=this.viewer.selectedPanel.getPanelData().getOverlayLegendData(),c=[30,60,250],this.createTable(a,b,c),this.setTableSelectionEnabled(!0)}});c(c$,"createData",function(){switch(this.type){case JSV.common.Annotation.AType.Integration:this.xyData=new JSV.common.IntegralData(this.$spec,this.myParams);this.iSelected=-1;break;case JSV.common.Annotation.AType.PeakList:try{var a=Double.parseDouble(this.dialog.getText(this.txt1));this.myParams.peakListThreshold=a;this.myParams.peakListInterpolation=this.dialog.getSelectedItem(this.combo1).toString();
this.myParams.precision=this.precision;var b=new JSV.common.PeakData(JSV.common.Annotation.AType.PeakList,this.$spec);b.setPeakList(this.myParams,this.precision,this.jsvp.getPanelData().getView());this.xyData=b;this.loadData()}catch(c){if(!C(c,Exception))throw c;}}});c(c$,"setPrecision",function(a){this.precision=this.formatOptions[a]},"~N");c(c$,"tableSelect",function(a){if("true".equals(this.getField(a,"adjusting")))this.iColSelected=this.iRowSelected=-1;else{var b=JU.PT.parseInt(this.getField(a,
"index"));switch("ROW COL ROWCOL".indexOf(this.getField(a,"selector"))){case 8:this.iColSelected=JU.PT.parseInt(this.getField(a,"index2"));case 0:this.iRowSelected=b;break;case 4:this.iColSelected=b}0<=this.iColSelected&&0<=this.iRowSelected&&this.tableCellSelect(this.iRowSelected,this.iColSelected)}},"~S");c(c$,"getField",function(a,b){a+="&";var c="&"+b+"=",e=a.indexOf(c);return 0>e?null:a.substring(e+c.length,a.indexOf("&",e+1))},"~S,~S")}),p("JSV.exception"),q(["JSV.exception.JSpecViewException"],
"JSV.exception.JDXSourceException",null,function(){c$=F(JSV.exception,"JDXSourceException",JSV.exception.JSpecViewException)}),p("JSV.exception"),q(["java.lang.Exception"],"JSV.exception.JSpecViewException",null,function(){c$=F(JSV.exception,"JSpecViewException",Exception)}),p("JSV.js2d"),c$=F(JSV.js2d,"Display"),c$.getFullScreenDimensions=c(c$,"getFullScreenDimensions",function(a,b){b[0]=a.width;b[1]=a.height},"~O,~A"),c$.hasFocus=c(c$,"hasFocus",function(){return!0},"~O"),c$.requestFocusInWindow=
c(c$,"requestFocusInWindow",function(){},"~O"),c$.repaint=c(c$,"repaint",function(){},"~O"),c$.renderScreenImage=c(c$,"renderScreenImage",function(){},"javajs.api.PlatformViewer,~O,~O"),c$.setTransparentCursor=c(c$,"setTransparentCursor",function(){},"~O"),c$.setCursor=c(c$,"setCursor",function(){},"~N,~O"),c$.prompt=c(c$,"prompt",function(a,b){var c=prompt(a,b);return null!=c?c:"null"},"~S,~S,~A,~B"),c$.convertPointFromScreen=c(c$,"convertPointFromScreen",function(){},"~O,JU.P3"),p("JSV.js2d"),c$=
F(JSV.js2d,"Image"),c$.getWidth=c(c$,"getWidth",function(a){return a.imageWidth?a.imageWidth:a.width},"~O"),c$.getHeight=c(c$,"getHeight",function(a){return a.imageHeight?a.imageHeight:a.height},"~O"),c$.grabPixels=c(c$,"grabPixels",function(a,b,c){if(a._buf32)return a._buf32;a=a.getImageData(0,0,b,c).data;return this.toIntARGB(a)},"~O,~N,~N"),c$.toIntARGB=c(c$,"toIntARGB",function(a){for(var b=r(a.length/4),c=N(b,0),e=0,f=0;e<b;f++)c[e++]=a[f++]<<16|a[f++]<<8|a[f++]|4278190080;return c},"~A"),c$.fromIntARGB=
c(c$,"fromIntARGB",function(a,b){for(var c=b.length>>2,e=0,f=0;e<c;e++)b[f++]=a[e]>>16&255,b[f++]=a[e]>>8&255,b[f++]=a[e]&255,b[f++]=255},"~A,~A"),c$.getTextPixels=c(c$,"getTextPixels",function(a,b,c,e,f,g){c.fillStyle="#000000";c.fillRect(0,0,e,f);c.fillStyle="#FFFFFF";c.font=b.font;c.fillText(a,0,g);return this.grabPixels(c,e,f)},"~S,javajs.awt.Font,~O,~N,~N,~N"),c$.allocateRgbImage=c(c$,"allocateRgbImage",function(a,b,c,e,f,g){null==g&&(g={width:a,height:b});g.buf32=c;return g},"~N,~N,~A,~N,~B,~O"),
c$.getStaticGraphics=c(c$,"getStaticGraphics",function(a){return this.getGraphics(a)},"~O,~B"),c$.getGraphics=c(c$,"getGraphics",function(a){return a.getContext("2d")},"~O"),c$.drawImage=c(c$,"drawImage",function(a,b,c,e){this.fromIntARGB(b.buf32,b.buf8);a.putImageData(b.imgdata,c,e)},"~O,~O,~N,~N,~N,~N"),p("JSV.js2d"),q(["javajs.api.GenericFileInterface"],"JSV.js2d.JsFile",["JU.PT","JSV.common.JSVFileManager"],function(){c$=w(function(){this.fullName=this.name=null;u(this,arguments)},JSV.js2d,"JsFile",
null,javajs.api.GenericFileInterface);c$.newFile=c(c$,"newFile",function(a){return new JSV.js2d.JsFile(a)},"~S");z(c$,function(a){this.name=a.$replace("\\","/");this.fullName=a;!this.fullName.startsWith("/")&&0>JSV.common.JSVFileManager.urlTypeIndex(a)&&(this.fullName=JSV.common.JSVFileManager.jsDocumentBase+"/"+this.fullName);this.fullName=JU.PT.simpleReplace(this.fullName,"/./","/");a.substring(a.lastIndexOf("/")+1)},"~S");e(c$,"getParentAsFile",function(){var a=this.fullName.lastIndexOf("/");return 0>
a?null:new JSV.js2d.JsFile(this.fullName.substring(0,a))});e(c$,"getFullPath",function(){return this.fullName});e(c$,"getName",function(){return this.name});e(c$,"isDirectory",function(){return this.fullName.endsWith("/")});e(c$,"length",function(){return 0});c$.getBufferedURLInputStream=c(c$,"getBufferedURLInputStream",function(a,b,c){try{var e=a.openConnection();null!=b?e.outputBytes(b):null!=c&&e.outputString(c);return e.getSB()}catch(f){if(C(f,Exception))return f.toString();throw f;}},"java.net.URL,~A,~S")}),
p("JSV.js2d"),q(["JSV.api.JSVFileHelper"],"JSV.js2d.JsFileHelper",["JSV.js2d.JsFile"],function(){c$=F(JSV.js2d,"JsFileHelper",null,JSV.api.JSVFileHelper);z(c$,function(){});e(c$,"set",function(){return this},"JSV.common.JSViewer");e(c$,"getFile",function(a){var b=null,b=prompt("Enter a file name:",a);return null==b?null:new JSV.js2d.JsFile(b)},"~S,~O,~B");e(c$,"setDirLastExported",function(a){return a},"~S");e(c$,"setFileChooser",function(){},"JSV.common.ExportType")}),p("JSV.js2d"),c$=F(JSV.js2d,
"JsFont"),c$.newFont=c(c$,"newFont",function(a,b,c,e,f){a=a.equals("Monospaced")?"Courier":a.startsWith("Sans")?"Sans-Serif":"Serif";return(b?"bold ":"")+(c?"italic ":"")+e+f+" "+a},"~S,~B,~B,~N,~S"),c$.getFontMetrics=c(c$,"getFontMetrics",function(a,b){b.font!=a.font&&(b.font=a.font,a.font=b.font,b._fontAscent=Math.ceil(a.fontSize),b._fontDescent=Math.ceil(0.25*a.fontSize));return b},"javajs.awt.Font,~O"),c$.getAscent=c(c$,"getAscent",function(a){return Math.ceil(a._fontAscent)},"~O"),c$.getDescent=
c(c$,"getDescent",function(a){return Math.ceil(a._fontDescent)},"~O"),c$.stringWidth=c(c$,"stringWidth",function(a,b){a.fontMetrics.font=a.font;return Math.ceil(a.fontMetrics.measureText(b).width)},"javajs.awt.Font,~S"),p("JSV.js2d"),q(["JSV.api.JSVGraphics"],"JSV.js2d.JsG2D",["javajs.awt.Color","JU.CU"],function(){c$=w(function(){this.windowHeight=this.windowWidth=0;this.inPath=this.isShifted=!1;u(this,arguments)},JSV.js2d,"JsG2D",null,JSV.api.JSVGraphics);z(c$,function(){});e(c$,"getColor4",function(a,
b,c,e){return javajs.awt.Color.get4(a,b,c,e)},"~N,~N,~N,~N");e(c$,"getColor3",function(a,b,c){return javajs.awt.Color.get3(a,b,c)},"~N,~N,~N");e(c$,"getColor1",function(a){return javajs.awt.Color.get1(a)},"~N");e(c$,"newGrayScaleImage",function(a,b,c,e,f){var g,l;null==b?(g=(""+Math.random()).substring(3),l=document.createElement("canvas"),l.id=g,l.style.width=c+"px",l.style.height=e+"px",l.width=c,l.height=e,g=a.canvas.applet._id,a=document.getElementById(g+"_imagelayer"),b=new Image,b.canvas=l,
b.appId=g,b.id=g+"_image",b.layer=a,b.w=c,b.h=e,b.onload=function(){try{URL.revokeObjectURL(b.src)}catch(a){}},g=document.createElement("div"),b.div=g,g.style.position="relative",a.appendChild(g),g.appendChild(b)):l=b.canvas;a=l.getContext("2d");c=a.getImageData(0,0,c,e);e=c.data;g=f.length;for(var h=0,k=0;k<g;k++)e[h++]=e[h++]=e[h++]=f[k],e[h++]=255;a.putImageData(c,0,0);l.toBlob(function(a){b.src=URL.createObjectURL(a)});return b},"~O,~O,~N,~N,~A");e(c$,"drawGrayScaleImage",function(a,b,c,e,f,g,
l,h,k,m){a=f-c+1;g=g-e+1;k=k-l+1;m=m-h+1;f=b.w*a/k;var n=b.h*g/m;b.width=f;b.height=n;var p=b.div;b=b.layer;b.style.left=c+"px";b.style.top=e+"px";b.style.width=a+"px";b.style.height=g+"px";p.style.left=-l*a/k+"px";p.style.top=-h*g/m+"px";p.style.width=f+"px";p.style.height=n+"px"},"~O,~O,~N,~N,~N,~N,~N,~N,~N,~N");e(c$,"drawLine",function(a,b,c,e,f){this.inPath||a.beginPath();a.moveTo(b,c);a.lineTo(e,f);this.inPath||a.stroke()},"~O,~N,~N,~N,~N");e(c$,"drawCircle",function(a,b,c,e){e/=2;a.beginPath();
a.arc(b+e,c+e,e,0,2*Math.PI,!1);a.stroke()},"~O,~N,~N,~N");e(c$,"drawPolygon",function(a,b,c,e){this.doPoly(a,b,c,e,!1)},"~O,~A,~A,~N");c(c$,"doPoly",function(a,b,c,e,f){a.beginPath();a.moveTo(b[0],c[0]);for(var g=1;g<e;g++)a.lineTo(b[g],c[g]);f?a.fill():a.stroke()},"~O,~A,~A,~N,~B");e(c$,"drawRect",function(a,b,c,e,f){a.beginPath();a.rect(b,c,e,f);a.stroke()},"~O,~N,~N,~N,~N");e(c$,"drawString",function(a,b,c,e){a.fillText(b,c,e)},"~O,~S,~N,~N");e(c$,"drawStringRotated",function(){},"~O,~S,~N,~N,~N");
e(c$,"fillBackground",function(a,b){null==b?(this.isShifted||(a.translate(-0.5,-0.5),this.isShifted=!0),a.clearRect(0,0,this.windowWidth,this.windowHeight)):(this.setGraphicsColor(a,b),this.fillRect(a,0,0,this.windowWidth,this.windowHeight))},"~O,javajs.api.GenericColor");e(c$,"fillCircle",function(a,b,c,e){e/=2;a.beginPath();a.arc(b+e,c+e,e,0,2*Math.PI,!1);a.fill()},"~O,~N,~N,~N");e(c$,"fillPolygon",function(a,b,c,e){this.doPoly(a,b,c,e,!0)},"~O,~A,~A,~N");e(c$,"fillRect",function(a,b,c,e,f){a.fillRect(b,
c,e,f)},"~O,~N,~N,~N,~N");e(c$,"setGraphicsColor",function(a,b){var c=JU.CU.toCSSString(b);a.fillStyle=a.strokeStyle=c},"~O,javajs.api.GenericColor");e(c$,"setFont",function(a,b){var c=b.getInfo(),e=c.indexOf(" "),c=c.substring(0,e)+"px"+c.substring(e);a.font=c;return b},"~O,javajs.awt.Font");e(c$,"setStrokeBold",function(a,b){a.lineWidth=b?2:1},"~O,~B");e(c$,"setWindowParameters",function(a,b){this.windowWidth=a;this.windowHeight=b},"~N,~N");e(c$,"translateScale",function(){},"~O,~N,~N,~N");e(c$,
"canDoLineTo",function(){return!0});e(c$,"doStroke",function(a,b){(this.inPath=b)?a.beginPath():a.stroke()},"~O,~B");e(c$,"lineTo",function(a,b,c){a.lineTo(b,c)},"~O,~N,~N")}),p("JSV.js2d"),q(["JSV.api.JSVPanel"],"JSV.js2d.JsPanel",["javajs.awt.Font","JSV.common.JSViewer","$.PanelData","J.util.Logger"],function(){c$=w(function(){this.name=this.viewer=this.mouse=this.pd=this.apiPlatform=null;u(this,arguments)},JSV.js2d,"JsPanel",null,JSV.api.JSVPanel);e(c$,"finalize",function(){J.util.Logger.info("JSVPanel "+
this+" finalized")});e(c$,"getApiPlatform",function(){return this.apiPlatform});e(c$,"getPanelData",function(){return this.pd});c$.getPanelOne=c(c$,"getPanelOne",function(a,b){var c=new JSV.js2d.JsPanel(a);c.pd.initOne(b);return c},"JSV.common.JSViewer,JSV.common.JDXSpectrum");c$.getPanelMany=c(c$,"getPanelMany",function(a,b,c,e){a=new JSV.js2d.JsPanel(a);a.pd.initMany(b,c,e);return a},"JSV.common.JSViewer,JU.List,~N,~N");z(c$,function(a){this.viewer=a;this.pd=new JSV.common.PanelData(this,a);this.apiPlatform=
a.apiPlatform;this.mouse=this.apiPlatform.getMouseManager(0,this)},"JSV.common.JSViewer");e(c$,"getTitle",function(){return this.pd.getTitle()});e(c$,"dispose",function(){null!=this.pd&&this.pd.dispose();this.pd=null;this.mouse.dispose()});e(c$,"setTitle",function(a){this.name=this.pd.title=a},"~S");c(c$,"setColorOrFont",function(a,b){this.pd.setColorOrFont(a,b)},"JSV.common.ColorParameters,JSV.common.ScriptToken");e(c$,"setBackgroundColor",function(){},"javajs.api.GenericColor");e(c$,"getInput",
function(a,b,c){b=null;b=prompt(a,c);this.getFocusNow(!0);return b},"~S,~S,~S");e(c$,"showMessage",function(a){J.util.Logger.info(a);alert(a);this.getFocusNow(!0)},"~S,~S");e(c$,"getFocusNow",function(){this.pd.dialogsToFront()},"~B");e(c$,"getFontFaceID",function(){return javajs.awt.Font.getFontFaceID("SansSerif")},"~S");e(c$,"doRepaint",function(a){this.pd.taintedAll=(new Boolean(this.pd.taintedAll|a)).valueOf();this.pd.isPrinting||this.viewer.requestRepaint()},"~B");c(c$,"paintComponent",function(a){if(!(null==
this.viewer||null==this.pd||null==this.pd.graphSets||this.pd.isPrinting)){var b=null,b=a.canvas.topLayer.getContext("2d");this.pd.g2d=this.pd.g2d0;this.pd.drawGraph(a,b,this.getWidth(),this.getHeight(),!1);this.viewer.repaintDone()}},"~O");e(c$,"printPanel",function(a,b,c){a.title=c;a.date=this.apiPlatform.getDateFormat(!0);this.pd.setPrint(a,"Helvetica");try{JSV.common.JSViewer.getInterface("JSV.common.PDFWriter").createPdfDocument(this,a,b)}catch(e){if(C(e,Exception))this.showMessage(e.toString(),
"creating PDF");else throw e;}finally{this.pd.setPrint(null,null)}},"JSV.common.PrintLayout,java.io.OutputStream,~S");e(c$,"saveImage",function(){return null},"~S,javajs.api.GenericFileInterface");e(c$,"hasFocus",function(){return!1});e(c$,"repaint",function(){});e(c$,"setToolTipText",function(){},"~S");e(c$,"getHeight",function(){return this.viewer.getHeight()});e(c$,"getWidth",function(){return this.viewer.getWidth()});e(c$,"isEnabled",function(){return!1});e(c$,"isFocusable",function(){return!1});
e(c$,"isVisible",function(){return!1});e(c$,"setEnabled",function(){},"~B");e(c$,"setFocusable",function(){},"~B");e(c$,"toString",function(){return this.pd.getSpectrumAt(0).toString()});e(c$,"processMouseEvent",function(a,b,c,e,f){return this.mouse.processEvent(a,b,c,e,f)},"~N,~N,~N,~N,~N");e(c$,"processTwoPointGesture",function(a){this.mouse.processTwoPointGesture(a)},"~A")}),p("JSV.js2d"),q(["JSV.common.ColorParameters"],"JSV.js2d.JsParameters",["javajs.awt.Color"],function(){c$=F(JSV.js2d,"JsParameters",
JSV.common.ColorParameters);z(c$,function(){P(this,JSV.js2d.JsParameters,[])});e(c$,"isValidFontName",function(){return!0},"~S");e(c$,"getColor1",function(a){return javajs.awt.Color.get1(a)},"~N");e(c$,"getColor3",function(a,b,c){return javajs.awt.Color.get3(a,b,c)},"~N,~N,~N");c(c$,"copy",function(a){return(new JSV.js2d.JsParameters).setName(a).setElementColors(this)},"~S")}),p("JSV.js2d"),q(["javajs.api.GenericPlatform"],"JSV.js2d.JsPlatform","java.net.URL JU.AjaxURLStreamHandlerFactory JSV.js2d.Display $.Image $.JsFile $.JsFont $.Mouse".split(" "),
function(){c$=w(function(){this.context=this.viewer=this.canvas=null;u(this,arguments)},JSV.js2d,"JsPlatform",null,javajs.api.GenericPlatform);e(c$,"setViewer",function(a,b){this.viewer=a;this.canvas=b;null!=b&&(this.context=b.getContext("2d"),b.imgdata=this.context.getImageData(0,0,b.width,b.height),b.buf8=b.imgdata.data);try{java.net.URL.setURLStreamHandlerFactory(new JU.AjaxURLStreamHandlerFactory)}catch(c){}},"javajs.api.PlatformViewer,~O");e(c$,"isSingleThreaded",function(){return!0});e(c$,"getJsObjectInfo",
function(a,b,c){return"localName"==b?a[0].nodeName:null==c?a[0][b]:a[0][b](c[0])},"~A,~S,~A");e(c$,"isHeadless",function(){return!1});c(c$,"getMouseManager",function(a,b){return new JSV.js2d.Mouse(b)},"~N,~O");e(c$,"convertPointFromScreen",function(a,b){JSV.js2d.Display.convertPointFromScreen(a,b)},"~O,JU.P3");e(c$,"getFullScreenDimensions",function(a,b){JSV.js2d.Display.getFullScreenDimensions(a,b)},"~O,~A");e(c$,"getMenuPopup",function(){return null},"~S,~S");e(c$,"hasFocus",function(a){return JSV.js2d.Display.hasFocus(a)},
"~O");e(c$,"prompt",function(a,b,c,e){return JSV.js2d.Display.prompt(a,b,c,e)},"~S,~S,~A,~B");e(c$,"renderScreenImage",function(a,b){JSV.js2d.Display.renderScreenImage(this.viewer,a,b)},"~O,~O");e(c$,"drawImage",function(a,b,c,e,f,g){JSV.js2d.Image.drawImage(a,b,c,e,f,g)},"~O,~O,~N,~N,~N,~N");e(c$,"requestFocusInWindow",function(a){JSV.js2d.Display.requestFocusInWindow(a)},"~O");e(c$,"repaint",function(a){JSV.js2d.Display.repaint(a)},"~O");e(c$,"setTransparentCursor",function(a){JSV.js2d.Display.setTransparentCursor(a)},
"~O");e(c$,"setCursor",function(a,b){JSV.js2d.Display.setCursor(a,b)},"~N,~O");e(c$,"allocateRgbImage",function(a,b,c,e,f,g){return JSV.js2d.Image.allocateRgbImage(a,b,c,e,f,g?null:this.canvas)},"~N,~N,~A,~N,~B,~B");e(c$,"notifyEndOfRendering",function(){});e(c$,"createImage",function(){return null},"~O");e(c$,"disposeGraphics",function(){},"~O");e(c$,"grabPixels",function(a,b,c){a.image&&(b!=a.width||c!=a.height)&&Jmol._setCanvasImage(a,b,c);if(a.buf32)return a.buf32;b=JSV.js2d.Image.grabPixels(JSV.js2d.Image.getGraphics(a),
b,c);return a.buf32=b},"~O,~N,~N,~A,~N,~N");e(c$,"drawImageToBuffer",function(a,b,c,e,f){return this.grabPixels(c,e,f,null,0,0)},"~O,~O,~O,~N,~N,~N");e(c$,"getTextPixels",function(a,b,c,e,f,g,l){return JSV.js2d.Image.getTextPixels(a,b,c,f,g,l)},"~S,javajs.awt.Font,~O,~O,~N,~N,~N");e(c$,"flushImage",function(){},"~O");e(c$,"getGraphics",function(a){return JSV.js2d.Image.getGraphics(a)},"~O");e(c$,"getImageHeight",function(a){return null==a?-1:JSV.js2d.Image.getHeight(a)},"~O");e(c$,"getImageWidth",
function(a){return null==a?-1:JSV.js2d.Image.getWidth(a)},"~O");e(c$,"getStaticGraphics",function(a,b){return JSV.js2d.Image.getStaticGraphics(a,b)},"~O,~B");e(c$,"newBufferedImage",function(a,b,c){return"undefined"!=typeof Jmol&&Jmol._getHiddenCanvas?Jmol._getHiddenCanvas(this.viewer.applet,"stereoImage",b,c):null},"~O,~N,~N");e(c$,"newOffScreenImage",function(a,b){return"undefined"!=typeof Jmol&&Jmol._getHiddenCanvas?Jmol._getHiddenCanvas(this.viewer.applet,"textImage",a,b):null},"~N,~N");e(c$,
"waitForDisplay",function(a,b){if("undefined"==typeof Jmol||!Jmol._getHiddenCanvas)return!1;var c=this.viewer,e=c.getEvalContextAndHoldQueue(c.eval),f=a[0];return Jmol._loadImage(this,a,b,function(a,b){c.loadImageData(a,b,f,e)})},"~O,~O");e(c$,"fontStringWidth",function(a,b){return JSV.js2d.JsFont.stringWidth(a,b)},"javajs.awt.Font,~S");e(c$,"getFontAscent",function(a){return JSV.js2d.JsFont.getAscent(a)},"~O");e(c$,"getFontDescent",function(a){return JSV.js2d.JsFont.getDescent(a)},"~O");e(c$,"getFontMetrics",
function(a,b){return JSV.js2d.JsFont.getFontMetrics(a,b)},"javajs.awt.Font,~O");e(c$,"newFont",function(a,b,c,e){return JSV.js2d.JsFont.newFont(a,b,c,e,"px")},"~S,~B,~B,~N");e(c$,"getDateFormat",function(a){if(a){var b=new Date;a=b.toString().split(" ");var c="0"+b.getMonth(),c=c.substring(c.length-2),b="0"+b.getDate(),b=b.substring(b.length-2);return a[3]+c+b+a[4].replace(/\:/g,"")+a[5].substring(3,6)+"'"+a[5].substring(6,8)+"'"}return(""+new Date).split(" (")[0]},"~B");e(c$,"newFile",function(a){return new JSV.js2d.JsFile(a)},
"~S");e(c$,"getBufferedFileInputStream",function(){return null},"~S");e(c$,"getBufferedURLInputStream",function(a,b,c){return JSV.js2d.JsFile.getBufferedURLInputStream(a,b,c)},"java.net.URL,~A,~S");c(c$,"getMouseManager",function(a){return new JSV.js2d.Mouse(a)},"JSV.api.JSVPanel");e(c$,"getLocalUrl",function(){return null},"~S")}),p("JSV.js2d"),q(["JSV.api.JSVMainPanel","$.JSVViewPanel"],"JSV.js2d.JsViewPanel",["JSV.common.Annotation"],function(){c$=w(function(){this.selectedPanel=null;this.currentPanelIndex=
0;this.title=null;this.enabled=this.focusable=this.visible=!1;u(this,arguments)},JSV.js2d,"JsViewPanel",null,[JSV.api.JSVViewPanel,JSV.api.JSVMainPanel]);e(c$,"getCurrentPanelIndex",function(){return this.currentPanelIndex});e(c$,"dispose",function(){});e(c$,"getTitle",function(){return this.title});e(c$,"setTitle",function(a){this.title=a},"~S");e(c$,"setSelectedPanel",function(a,b){a!==this.selectedPanel&&(this.selectedPanel=a);for(var c=b.size();0<=--c;){var e=b.get(c).jsvp;e===a?this.currentPanelIndex=
c:(e.setEnabled(!1),e.setFocusable(!1),e.getPanelData().closeAllDialogsExcept(JSV.common.Annotation.AType.NONE))}this.markSelectedPanels(b);this.visible=null!=a},"JSV.api.JSVPanel,JU.List");e(c$,"markSelectedPanels",function(a){for(var b=a.size();0<=--b;)a.get(b).isSelected=this.currentPanelIndex==b},"JU.List");c(c$,"getHeight",function(){return null==this.selectedPanel?0:this.selectedPanel.getHeight()});c(c$,"getWidth",function(){return null==this.selectedPanel?0:this.selectedPanel.getWidth()});
e(c$,"isEnabled",function(){return this.enabled});e(c$,"isFocusable",function(){return this.focusable});e(c$,"isVisible",function(){return this.visible});c(c$,"setEnabled",function(a){this.enabled=a},"~B");c(c$,"setFocusable",function(a){this.focusable=a},"~B")}),p("JSV.js2d"),q(["javajs.api.GenericMouseInterface","javajs.awt.event.Event"],"JSV.js2d.Mouse",["J.util.Logger"],function(){c$=w(function(){this.pd=null;this.modifiersWhenPressed10=this.yWhenPressed=this.xWhenPressed=0;this.isMouseDown=!1;
u(this,arguments)},JSV.js2d,"Mouse",null,javajs.api.GenericMouseInterface);z(c$,function(a){this.pd=a.getPanelData()},"JSV.api.JSVPanel");e(c$,"clear",function(){});e(c$,"dispose",function(){});e(c$,"processEvent",function(a,b,c,e,f){-1!=a&&(e=JSV.js2d.Mouse.applyLeftMouse(e));switch(a){case -1:this.wheeled(f,b,e|32);break;case 501:this.xWhenPressed=b;this.yWhenPressed=c;this.modifiersWhenPressed10=e;this.pressed(f,b,c,e,!1);break;case 506:this.dragged(f,b,c,e);break;case 504:this.entered(f,b,c);
break;case 505:this.exited(f,b,c);break;case 503:this.moved(f,b,c,e);break;case 502:this.released(f,b,c,e);b==this.xWhenPressed&&(c==this.yWhenPressed&&e==this.modifiersWhenPressed10)&&this.clicked(f,b,c,e,1);break;default:return!1}return!0},"~N,~N,~N,~N,~N");c(c$,"mouseClicked",function(a){this.clicked(a.getWhen(),a.getX(),a.getY(),a.getModifiers(),a.getClickCount())},"java.awt.event.MouseEvent");c(c$,"mouseEntered",function(a){this.entered(a.getWhen(),a.getX(),a.getY())},"java.awt.event.MouseEvent");
c(c$,"mouseExited",function(a){this.exited(a.getWhen(),a.getX(),a.getY())},"java.awt.event.MouseEvent");c(c$,"mousePressed",function(a){this.pressed(a.getWhen(),a.getX(),a.getY(),a.getModifiers(),a.isPopupTrigger())},"java.awt.event.MouseEvent");c(c$,"mouseReleased",function(a){this.released(a.getWhen(),a.getX(),a.getY(),a.getModifiers())},"java.awt.event.MouseEvent");c(c$,"mouseDragged",function(a){var b=a.getModifiers();0==(b&28)&&(b|=16);this.dragged(a.getWhen(),a.getX(),a.getY(),b)},"java.awt.event.MouseEvent");
c(c$,"mouseMoved",function(a){this.moved(a.getWhen(),a.getX(),a.getY(),a.getModifiers())},"java.awt.event.MouseEvent");c(c$,"mouseWheelMoved",function(a){a.consume();this.wheeled(a.getWhen(),a.getWheelRotation(),a.getModifiers()|32)},"java.awt.event.MouseWheelEvent");c(c$,"keyTyped",function(a){var b=a.getKeyChar(),c=a.getModifiers();J.util.Logger.info("MouseManager keyTyped: "+b+" "+(0+b.charCodeAt(0))+" "+c);this.pd.keyTyped(b.charCodeAt(0),c)&&a.consume()},"java.awt.event.KeyEvent");c(c$,"keyPressed",
function(a){this.pd.keyPressed(a.getKeyCode(),a.getModifiers())&&a.consume()},"java.awt.event.KeyEvent");c(c$,"keyReleased",function(a){this.pd.keyReleased(a.getKeyCode())},"java.awt.event.KeyEvent");c(c$,"entered",function(a,b,c){this.pd.mouseEnterExit(a,b,c,!1)},"~N,~N,~N");c(c$,"exited",function(a,b,c){this.pd.mouseEnterExit(a,b,c,!0)},"~N,~N,~N");c(c$,"clicked",function(a,b,c,e){this.pd.mouseAction(2,a,b,c,1,e)},"~N,~N,~N,~N,~N");c(c$,"moved",function(a,b,c,e){this.isMouseDown?this.pd.mouseAction(1,
a,b,c,0,JSV.js2d.Mouse.applyLeftMouse(e)):this.pd.mouseAction(0,a,b,c,0,e&-29)},"~N,~N,~N,~N");c(c$,"wheeled",function(a,b,c){this.pd.mouseAction(3,a,0,b,0,c)},"~N,~N,~N");c(c$,"pressed",function(a,b,c,e){this.isMouseDown=!0;this.pd.mouseAction(4,a,b,c,0,e)},"~N,~N,~N,~N,~B");c(c$,"released",function(a,b,c,e){this.isMouseDown=!1;this.pd.mouseAction(5,a,b,c,0,e)},"~N,~N,~N,~N");c(c$,"dragged",function(a,b,c,e){20==(e&20)&&(e=e&-5|2);this.pd.mouseAction(1,a,b,c,0,e)},"~N,~N,~N,~N");c$.applyLeftMouse=
c(c$,"applyLeftMouse",function(a){return 0==(a&28)?a|16:a},"~N");e(c$,"processTwoPointGesture",function(){},"~A")}),p("JSV.source"),q(null,"JSV.source.FileReader","java.io.BufferedReader $.StringReader java.lang.Character $.Double $.Exception $.Float java.util.Arrays $.Hashtable $.StringTokenizer JU.BS $.List $.PT $.SB JSV.api.JSVZipReader JSV.common.Coordinate $.JDXSpectrum $.JSVFileManager $.JSViewer $.PeakInfo JSV.exception.JDXSourceException $.JSpecViewException JSV.source.JDXDecompressor $.JDXSource $.JDXSourceStreamTokenizer JSV.util.JSVEscape J.util.Logger".split(" "),
function(){c$=w(function(){this.errorLog=this.t=this.source=null;this.isZipFile=this.done=this.obscure=!1;this.filePath=null;this.loadImaginary=!0;this.blockID=this.nSpec=this.lastSpec=this.firstSpec=0;this.thisModelID=this.piUnitsY=this.piUnitsX=null;this.peakIndex=0;u(this,arguments)},JSV.source,"FileReader");z(c$,function(a,b,c,e,f){System.out.println("FileReader filePath="+a+"<<");a=JU.PT.trimQuotes(a);this.filePath=null!=a&&a.startsWith("http://SIMULATION/MOL=")?"http://SIMULATION/MOL="+Math.abs(a.hashCode()):
a;this.obscure=b;this.firstSpec=e;this.lastSpec=f;this.loadImaginary=c},"~S,~B,~B,~N,~N");c$.createJDXSourceFromStream=c(c$,"createJDXSourceFromStream",function(a,b,c){return JSV.source.FileReader.createJDXSource(JSV.common.JSVFileManager.getBufferedReaderForInputStream(a),"stream",b,c,-1,-1)},"java.io.InputStream,~B,~B");c$.createJDXSource=c(c$,"createJDXSource",function(a,b,c,e,f,g){try{null==a&&(a=JSV.common.JSVFileManager.getBufferedReaderFromName(b,"##TITLE"));a.mark(400);var l=ja(400,"\x00");
a.read(l,0,400);a.reset();var h=String.instantialize(l),k=h.indexOf("#"),m=h.indexOf("<");if(0>k||0<=m&&m<k){var n=h.toLowerCase();n.contains("404")&&System.out.println(n);var n=n.contains("<animl")||n.contains("<!doctype technique")?"AnIML":n.contains("xml-cml")?"CML":null,p=JSV.common.JSViewer.getInterface("JSV.source."+n+"Reader").getSource(b,a);a.close();if(null==p)throw new JSV.exception.JSpecViewException("File type not recognized");return p}return(new JSV.source.FileReader(b,c,e,f,g)).getJDXSource(a)}catch(q){if(C(q,
JSV.exception.JSpecViewException))throw a.close(),new Exception("Error reading JDX format: "+q);throw q;}},"java.io.BufferedReader,~S,~B,~B,~N,~N");c(c$,"getJDXSource",function(a){this.source=new JSV.source.JDXSource(0,this.filePath);this.isZipFile=y(a,JSV.api.JSVZipReader);this.t=new JSV.source.JDXSourceStreamTokenizer(a);this.errorLog=new JU.SB;for(a=null;!this.done&&"##TITLE".equals(this.t.peakLabel());){null!=a&&!this.isZipFile&&this.errorLog.append("Warning - file is a concatenation without LINK record -- does not conform to IUPAC standards!\n");
for(var b=new JSV.common.JDXSpectrum,c=new JU.List;!this.done&&null!=(a=this.t.getLabel())&&!this.isEnd(a);)if(a.equals("##DATATYPE")&&this.t.getValue().toUpperCase().equals("LINK"))this.getBlockSpectra(c),b=null;else if(a.equals("##NTUPLES")||a.equals("##VARNAME"))this.getNTupleSpectra(c,b,a),b=null;else if(0<java.util.Arrays.binarySearch(JSV.source.FileReader.TABULAR_DATA_LABELS,a)){this.setTabularDataType(b,a);if(!this.processTabularData(b,c))throw new JSV.exception.JDXSourceException("Unable to read JDX file");
this.addSpectrum(b,!1);b=null}else if(null==b&&(b=new JSV.common.JDXSpectrum),!JSV.source.FileReader.readDataLabel(b,a,this.t,this.errorLog,this.obscure)){var e=this.t.getValue();JSV.source.FileReader.addHeader(c,this.t.getRawLabel(),e);this.checkCustomTags(b,a,e)}}this.source.setErrorLog(this.errorLog.toString());return this.source},"~O");c(c$,"isEnd",function(a){if(!a.equals("##END"))return!1;this.t.getValue();return!0},"~S");c(c$,"addSpectrum",function(a,b){if(!this.loadImaginary&&a.isImaginary())return J.util.Logger.info("FileReader skipping imaginary spectrum -- use LOADIMAGINARY TRUE to load this spectrum."),
!0;this.nSpec++;if(0<this.firstSpec&&this.nSpec<this.firstSpec)return!0;if(0<this.lastSpec&&this.nSpec>this.lastSpec)return!(this.done=!0);a.setBlockID(this.blockID);this.source.addJDXSpectrum(null,a,b);return!0},"JSV.common.JDXSpectrum,~B");c(c$,"getBlockSpectra",function(a){J.util.Logger.debug("--JDX block start--");for(var b="",c=0==this.source.type,e=!1;null!=(b=this.t.getLabel())&&!b.equals("##TITLE");)c?JSV.source.FileReader.readHeaderLabel(this.source,b,this.t,this.errorLog,this.obscure)||
JSV.source.FileReader.addHeader(a,this.t.getRawLabel(),this.t.getValue()):this.t.getValue(),b.equals("##BLOCKS")&&100<JU.PT.parseInt(this.t.getValue())&&0>=this.firstSpec&&(e=!0);if(!"##TITLE".equals(b))throw new JSV.exception.JSpecViewException("Unable to read block source");c&&this.source.setHeaderTable(a);this.source.type=1;this.source.isCompoundSource=!0;c=new JSV.common.JDXSpectrum;a=new JU.List;JSV.source.FileReader.readDataLabel(c,b,this.t,this.errorLog,this.obscure);try{for(var f;null!=(f=
this.t.getLabel());){if("##END".equals(b)&&this.isEnd(f)){J.util.Logger.debug("##END= "+this.t.getValue());break}b=f;if(0<java.util.Arrays.binarySearch(JSV.source.FileReader.TABULAR_DATA_LABELS,b)){if(this.setTabularDataType(c,b),!this.processTabularData(c,a))throw new JSV.exception.JDXSourceException("Unable to read Block Source");}else{if(b.equals("##DATATYPE")&&this.t.getValue().toUpperCase().equals("LINK"))this.getBlockSpectra(a),b=c=null;else if(b.equals("##NTUPLES")||b.equals("##VARNAME"))this.getNTupleSpectra(a,
c,b),c=null,b="";else if(b.equals("##JCAMPCS")){for(;!(b=this.t.getLabel()).equals("##TITLE");)this.t.getValue();c=null}else this.t.getValue();if(this.done)break;if(null==c){c=new JSV.common.JDXSpectrum;a=new JU.List;if(""===b)continue;if(null==b){b="##END";continue}}if(!JSV.source.FileReader.readDataLabel(c,b,this.t,this.errorLog,this.obscure))if(this.isEnd(b)){if(0<c.getXYCoords().length&&!this.addSpectrum(c,e))return this.source;c=new JSV.common.JDXSpectrum;a=new JU.List;this.t.getValue()}else{var g=
this.t.getValue();JSV.source.FileReader.addHeader(a,this.t.getRawLabel(),g);this.checkCustomTags(c,b,g)}}}}catch(l){if(C(l,java.util.NoSuchElementException))throw new JSV.exception.JSpecViewException("Unable to Read Block Source");C(l,JSV.exception.JSpecViewException);throw l;}this.addErrorLogSeparator();this.source.setErrorLog(this.errorLog.toString());J.util.Logger.debug("--JDX block end--");return this.source},"JU.List");c(c$,"checkCustomTags",function(a,b,c){b="##$MODELS ##$PEAKS  ##$SIGNALS".indexOf(b);
switch(b){default:return!1;case 0:return this.thisModelID=JU.PT.getQuotedAttribute(c,"id"),!0;case 10:case 20:return this.peakIndex=this.source.peakCount,this.source.peakCount+=this.readPeaks(a,c,20==b),!0}},"JSV.common.JDXSpectrum,~S,~S");c(c$,"addErrorLogSeparator",function(){0<this.errorLog.length()&&this.errorLog.lastIndexOf("=====================\n")!=this.errorLog.length()-22&&this.errorLog.append("=====================\n")});c(c$,"getNTupleSpectra",function(a,b,c){var e=[1.7976931348623157E308,
4.9E-324];this.blockID=Math.random();0<this.firstSpec&&(b.numDim=1);var f=c.equals("##VARNAME");f||(c="",this.t.getValue());var g=new java.util.Hashtable,l=Array(2);0==this.source.type&&(this.source.type=2,this.source.isCompoundSource=!0,this.source.setHeaderTable(a));for(;!(c=f?c:this.t.getLabel()).equals("##PAGE");){for(var f=!1,h=new java.util.StringTokenizer(this.t.getValue(),","),k=new JU.List;h.hasMoreTokens();)k.addLast(h.nextToken().trim());g.put(c,k)}f=g.get("##SYMBOL");if(!c.equals("##PAGE"))throw new JSV.exception.JSpecViewException("Error Reading NTuple Source");
for(var h=this.t.getValue(),k=null,m=!0;!this.done;){if((c=this.t.getLabel()).equals("##ENDNTUPLES")){this.t.getValue();break}if(c.equals("##PAGE"))h=this.t.getValue();else{if(null==k&&(k=new JSV.common.JDXSpectrum,b.copyTo(k),k.setTitle(b.getTitle()),!k.is1D())){var n=h.indexOf("=");if(0<=n)try{k.setY2D(Double.parseDouble(h.substring(n+1).trim()));var p=h.substring(0,n).trim(),q=f.indexOf(p);0<=q&&k.setY2DUnits(g.get("##UNITS").get(q))}catch(r){if(!C(r,Exception))throw r;}}n=new JU.List;for(k.setHeaderTable(n);!c.equals("##DATATABLE");)JSV.source.FileReader.addHeader(n,
this.t.getRawLabel(),this.t.getValue()),c=this.t.getLabel();c=!0;q=this.t.flushLine();0<q.trim().indexOf("PEAKS")&&(c=!1);var t=q.indexOf("("),u=q.lastIndexOf(")");if(-1==t||-1==u)throw new JSV.exception.JDXSourceException("Variable List not Found");t=q.substring(t,u+1);for(q=u=0;q<f.size();q++){var v=f.get(q).trim();-1!=t.indexOf(v)&&(l[u++]=v);if(2==u)break}this.setTabularDataType(k,"##"+(c?"XYDATA":"PEAKTABLE"));if(!this.readNTUPLECoords(k,g,l,e))throw new JSV.exception.JDXSourceException("Unable to read Ntuple Source");
k.nucleusX.equals("?")||(b.nucleusX=k.nucleusX);b.nucleusY=k.nucleusY;b.freq2dX=k.freq2dX;b.freq2dY=k.freq2dY;b.y2DUnits=k.y2DUnits;for(q=0;q<a.size();q++)c=a.get(q),t=JSV.source.JDXSourceStreamTokenizer.cleanLabel(c[0]),!t.equals("##TITLE")&&(!t.equals("##DATACLASS")&&!t.equals("##NTUPLES"))&&n.addLast(c);this.addSpectrum(k,!m);m=!1;k=null}}this.addErrorLogSeparator();this.source.setErrorLog(this.errorLog.toString());J.util.Logger.info("NTUPLE MIN/MAX Y = "+e[0]+" "+e[1]);return this.source},"JU.List,JSV.source.JDXDataObject,~S");
c(c$,"readPeaks",function(a,b,c){var e=new JU.List,f=new java.io.BufferedReader(new java.io.StringReader(b));try{b=c?1:0;System.out.println("offset is "+b+" isSignals="+c);var g=c?"Signals":"Peaks";c=c?"<Signal":"<PeakData";var l=this.discardUntil(f,g);0>l.indexOf("<"+g)&&(l=this.discardUntil(f,"<"+g));if(0>l.indexOf("<"+g))return 0;var h=this.getPeakFilePath(),k=this.getQuotedAttribute(l,"model"),k=" model="+this.escape(null==k?this.thisModelID:k),m=this.getQuotedAttribute(l,"type");"HNMR".equals(m)?
m="1HNMR":"CNMR".equals(m)&&(m="13CNMR");m=null==m?"":" type="+this.escape(m);this.piUnitsX=this.getQuotedAttribute(l,"xLabel");this.piUnitsY=this.getQuotedAttribute(l,"yLabel");for(var n=new java.util.Hashtable,p=new JU.List;null!=(l=f.readLine())&&!(l=l.trim()).startsWith("</"+g);)if(l.startsWith(c)){this.info(l);var q=this.getQuotedAttribute(l,"title");null==q?(q="1HNMR"===m?"atom%S%: %ATOMS%; integration: %NATOMS%":"",q=" title="+this.escape(q)):q="";var r="<PeakData "+h+' index="%INDEX%"'+q+
m+(null==this.getQuotedAttribute(l,"model")?k:"")+" "+l.substring(c.length).trim(),t=this.getQuotedAttribute(r,"atoms");null!=t&&(r=this.simpleReplace(r,'atoms="'+t+'"','atoms="%ATOMS%"'));var u=Y(100*this.parseFloatStr(this.getQuotedAttribute(l,"xMin")))+"_"+Y(100*this.parseFloatStr(this.getQuotedAttribute(l,"xMax"))),v=n.get(u);null==v&&(v=[r,null==t?null:new JU.BS],n.put(u,v),p.addLast(v));var w=v[1];null!=t&&null!=w&&(t=t.$replace(","," "),w.or(this.unescapeBitSet("({"+t+"})")),System.out.println("bs is  "+
w))}for(var l=0,x=p.size(),h=0;h<x;h++){v=p.get(h);r=v[0];r=this.simpleReplace(r,"%INDEX%",""+this.getPeakIndex());w=v[1];if(null!=w){System.out.println("bs "+h+" is "+w);for(var k="",y=w.nextSetBit(0);0<=y;y=w.nextSetBit(y+1))k+=","+(y+b);var z=w.cardinality(),l=l+z,r=this.simpleReplace(r,"%ATOMS%",k.substring(1)),r=this.simpleReplace(r,"%S%",1==z?"":"s"),r=this.simpleReplace(r,"%NATOMS%",""+z)}this.info("JSpecView using "+r);this.add(e,r)}this.setSpectrumPeaks(a,e,l);return x}catch(A){if(C(A,Exception))return 0;
throw A;}},"JSV.common.JDXSpectrum,~S,~B");c(c$,"add",function(a,b){a.addLast(new JSV.common.PeakInfo(b))},"JU.List,~S");c(c$,"info",function(a){J.util.Logger.info(a)},"~S");c(c$,"unescapeBitSet",function(a){var b,c;if(null==a||4>(c=(a=a.trim()).length)||a.equalsIgnoreCase("({null})")||"("!=(b=a.charAt(0))&&"["!=b||a.charAt(c-1)!=("("==b?")":"]")||"{"!=a.charAt(1)||a.indexOf("}")!=c-2)return null;for(var e=c-=2;2<=--e;)if(!Character.isDigit(b=a.charAt(e))&&" "!=b&&"\t"!=b&&":"!=b)return null;for(var f=
c;Character.isDigit(a.charAt(--f)););if(++f==c)f=0;else try{f=Integer.parseInt(a.substring(f,c))}catch(g){if(C(g,NumberFormatException))return null;throw g;}for(var l=JU.BS.newN(f),h=f=-1,k=-2,e=2;e<=c;e++)switch(b=a.charAt(e)){case "\t":case " ":case "}":if(0>k)break;if(k<f)return null;f=k;0>h&&(h=k);l.setBits(h,k+1);h=-1;k=-2;break;case ":":h=f=k;k=-2;break;default:Character.isDigit(b)&&(0>k&&(k=0),k=10*k+(b.charCodeAt(0)-48))}return 0<=h?null:l},"~S");c(c$,"parseFloatStr",function(a){return JU.PT.parseFloat(a)},
"~S");c(c$,"simpleReplace",function(a,b,c){return JU.PT.simpleReplace(a,b,c)},"~S,~S,~S");c(c$,"escape",function(a){return JSV.util.JSVEscape.eS(a)},"~S");c(c$,"getQuotedAttribute",function(a,b){return JU.PT.getQuotedAttribute(a,b)},"~S,~S");c(c$,"getPeakFilePath",function(){return" file="+JSV.util.JSVEscape.eS(JU.PT.trimQuotes(this.filePath).$replace("\\","/"))});c(c$,"setSpectrumPeaks",function(a,b,c){a.setPeakList(b,this.piUnitsX,this.piUnitsY);a.setNHydrogens(c)},"JSV.common.JDXSpectrum,JU.List,~N");
c(c$,"discardUntil",function(a,b){for(var c;null!=(c=a.readLine())&&0>c.indexOf("<"+b)&&0>c.indexOf("##"););return c},"java.io.BufferedReader,~S");c(c$,"getPeakIndex",function(){return++this.peakIndex});c$.readDataLabel=c(c$,"readDataLabel",function(a,b,c,e,f){if(JSV.source.FileReader.readHeaderLabel(a,b,c,e,f))return!0;if(b.equals("##MINX")||b.equals("##MINY")||b.equals("##MAXX")||b.equals("##MAXY")||b.equals("##FIRSTY")||b.equals("##DELTAX")||b.equals("##DATACLASS"))return c.getValue(),!0;if(b.equals("##FIRSTX"))return a.fileFirstX=
Double.parseDouble(c.getValue()),!0;if(b.equals("##LASTX"))return a.fileLastX=Double.parseDouble(c.getValue()),!0;if(b.equals("##NPOINTS"))return a.nPointsFile=Integer.parseInt(c.getValue()),!0;if(b.equals("##XFACTOR"))return a.xFactor=Double.parseDouble(c.getValue()),!0;if(b.equals("##YFACTOR"))return a.yFactor=Double.parseDouble(c.getValue()),!0;if(b.equals("##XUNITS"))return a.setXUnits(c.getValue()),!0;if(b.equals("##YUNITS"))return a.setYUnits(c.getValue()),!0;if(b.equals("##XLABEL"))return a.setXLabel(c.getValue()),
!1;if(b.equals("##YLABEL"))return a.setYLabel(c.getValue()),!1;if(b.equals("##NUMDIM"))return a.numDim=Integer.parseInt(c.getValue()),!0;if(b.equals("##.OBSERVEFREQUENCY"))return a.observedFreq=Double.parseDouble(c.getValue()),!0;if(b.equals("##.OBSERVENUCLEUS"))return a.setObservedNucleus(c.getValue()),!0;if(b.equals("##$OFFSET")&&0!=a.shiftRefType)return 1.7976931348623157E308==a.offset&&(a.offset=Double.parseDouble(c.getValue())),a.dataPointNum=1,a.shiftRefType=1,!1;if(b.equals("##$REFERENCEPOINT")&&
0!=a.shiftRefType)return a.offset=Double.parseDouble(c.getValue()),a.dataPointNum=1,a.shiftRefType=2,!1;if(b.equals("##.SHIFTREFERENCE")){b=c.getValue();if(!a.dataType.toUpperCase().contains("SPECTRUM"))return!0;b=new java.util.StringTokenizer(b,",");if(4!=b.countTokens())return!0;try{b.nextToken(),b.nextToken(),a.dataPointNum=Integer.parseInt(b.nextToken().trim()),a.offset=Double.parseDouble(b.nextToken().trim())}catch(g){if(C(g,NumberFormatException)||C(g,java.util.NoSuchElementException))return!0;
throw g;}0>=a.dataPointNum&&(a.dataPointNum=1);a.shiftRefType=0;return!0}return!1},"JSV.source.JDXDataObject,~S,JSV.source.JDXSourceStreamTokenizer,JU.SB,~B");c$.readHeaderLabel=c(c$,"readHeaderLabel",function(a,b,c,e,f){return b.equals("##TITLE")?(b=c.getValue(),a.setTitle(f||null==b||b.equals("")?"Unknown":b),!0):b.equals("##JCAMPDX")?(b=c.getValue(),a.jcampdx=b,a=JU.PT.parseFloat(b),(6<=a||Float.isNaN(a))&&null!=e&&e.append("Warning: JCAMP-DX version may not be fully supported: "+b+"\n"),!0):b.equals("##ORIGIN")?
(b=c.getValue(),a.origin=null!=b&&!b.equals("")?b:"Unknown",!0):b.equals("##OWNER")?(b=c.getValue(),a.owner=null!=b&&!b.equals("")?b:"Unknown",!0):b.equals("##DATATYPE")?(a.dataType=c.getValue(),!0):b.equals("##LONGDATE")?(a.longDate=c.getValue(),!0):b.equals("##DATE")?(a.date=c.getValue(),!0):b.equals("##TIME")?(a.time=c.getValue(),!0):!1},"JSV.source.JDXHeader,~S,JSV.source.JDXSourceStreamTokenizer,JU.SB,~B");c(c$,"setTabularDataType",function(a,b){b.equals("##PEAKASSIGNMENTS")?a.setDataClass("PEAKASSIGNMENTS"):
b.equals("##PEAKTABLE")?a.setDataClass("PEAKTABLE"):b.equals("##XYDATA")?a.setDataClass("XYDATA"):b.equals("##XYPOINTS")&&a.setDataClass("XYPOINTS")},"JSV.source.JDXDataObject,~S");c(c$,"processTabularData",function(a,b){if(a.dataClass.equals("PEAKASSIGNMENTS"))return!0;a.setHeaderTable(b);if(a.dataClass.equals("XYDATA"))return a.checkRequiredTokens(),this.decompressData(a,null),!0;if(a.dataClass.equals("PEAKTABLE")||a.dataClass.equals("XYPOINTS")){a.setContinuous(a.dataClass.equals("XYPOINTS"));
try{this.t.readLineTrimmed()}catch(c){if(C(c,java.io.IOException))c.printStackTrace();else throw c;}var e;e=1.7976931348623157E308!=a.xFactor&&1.7976931348623157E308!=a.yFactor?JSV.common.Coordinate.parseDSV(this.t.getValue(),a.xFactor,a.yFactor):JSV.common.Coordinate.parseDSV(this.t.getValue(),1,1);a.setXYCoords(e);e=JSV.common.Coordinate.deltaX(e[e.length-1].getXVal(),e[0].getXVal(),e.length);a.setIncreasing(0<e);return!0}return!1},"JSV.source.JDXDataObject,JU.List");c(c$,"readNTUPLECoords",function(a,
b,c,e){var f;if(a.dataClass.equals("XYDATA")){f=b.get("##SYMBOL");var g=f.indexOf(c[0]);c=f.indexOf(c[1]);f=b.get("##VARNAME");a.varName=f.get(c).toUpperCase();f=b.get("##FACTOR");a.xFactor=Double.parseDouble(f.get(g));a.yFactor=Double.parseDouble(f.get(c));f=b.get("##LAST");a.fileLastX=Double.parseDouble(f.get(g));f=b.get("##FIRST");a.fileFirstX=Double.parseDouble(f.get(g));f=b.get("##VARDIM");a.nPointsFile=Integer.parseInt(f.get(g));f=b.get("##UNITS");a.setXUnits(f.get(g));a.setYUnits(f.get(c));
null==a.nucleusX&&null!=(f=b.get("##.NUCLEUS"))?(a.setNucleus(f.get(0),!1),a.setNucleus(f.get(g),!0)):null==a.nucleusX&&(a.nucleusX="?");this.decompressData(a,e);return!0}return a.dataClass.equals("PEAKTABLE")||a.dataClass.equals("XYPOINTS")?(a.setContinuous(a.dataClass.equals("XYPOINTS")),f=b.get("##SYMBOL"),g=f.indexOf(c[0]),c=f.indexOf(c[1]),f=b.get("##UNITS"),a.setXUnits(f.get(g)),a.setYUnits(f.get(c)),a.setXYCoords(JSV.common.Coordinate.parseDSV(this.t.getValue(),a.xFactor,a.yFactor)),!0):!1},
"JSV.source.JDXDataObject,java.util.Map,~A,~A");c(c$,"decompressData",function(a,b){var c=this.errorLog.length(),e=JSV.common.Coordinate.deltaX(a.fileLastX,a.fileFirstX,a.nPointsFile);a.setIncreasing(0<e);a.setContinuous(!0);var f=new JSV.source.JDXDecompressor(this.t,a.fileFirstX,a.xFactor,a.yFactor,e,a.nPointsFile),g=pa(2,0),l=System.currentTimeMillis(),h=f.decompressData(this.errorLog,g);System.out.println("decompression time = "+(System.currentTimeMillis()-l)+" ms");a.setXYCoords(h);l=f.getMinY();
null!=b&&(l<b[0]&&(b[0]=l),l=f.getMaxY(),l>b[1]&&(b[1]=l));f=Double.isNaN(a.freq2dX)?a.observedFreq:a.freq2dX;1.7976931348623157E308!=a.offset&&(1.7976931348623157E308!=f&&a.dataType.toUpperCase().contains("SPECTRUM"))&&JSV.common.Coordinate.applyShiftReference(h,a.dataPointNum,a.fileFirstX,a.fileLastX,a.offset,f,a.shiftRefType);1.7976931348623157E308!=f&&a.getXUnits().toUpperCase().equals("HZ")&&(JSV.common.Coordinate.applyScale(h,1/f,1),a.setXUnits("PPM"),a.setHZtoPPM(!0));this.errorLog.length()!=
c&&(this.errorLog.append(a.getTitle()).append("\n"),this.errorLog.append("firstX: "+a.fileFirstX+" Found "+g[0]+"\n"),this.errorLog.append("lastX from Header "+a.fileLastX+" Found "+g[1]+"\n"),this.errorLog.append("deltaX from Header "+e+"\n"),this.errorLog.append("Number of points in Header "+a.nPointsFile+" Found "+h.length+"\n"));J.util.Logger.debugging&&System.err.println(this.errorLog.toString())},"JSV.source.JDXDataObject,~A");c$.addHeader=c(c$,"addHeader",function(a,b,c){for(var e,f=0;f<a.size();f++)if((e=
a.get(f))[0].equals(b)){e[1]=c;return}a.addLast([b,c,JSV.source.JDXSourceStreamTokenizer.cleanLabel(b)])},"JU.List,~S,~S");H(c$,"VAR_LIST_TABLE",[["PEAKTABLE","XYDATA","XYPOINTS"],["(XY..XY)","(X++(Y..Y))","(XY..XY)"]],"ERROR_SEPARATOR","=====================\n","TABULAR_DATA_LABELS",["##DATATABLE","##PEAKASSIGNMENTS","##PEAKTABLE","##XYDATA","##XYPOINTS"])}),p("JSV.source"),q(["JSV.source.JDXHeader"],"JSV.source.JDXDataObject","java.lang.Character $.Double JU.DF $.PT JSV.common.Annotation $.Coordinate $.Integral JSV.exception.JSpecViewException J.util.Logger".split(" "),
function(){c$=w(function(){this.filePathForwardSlash=this.filePath=null;this.blockID=0;this.fileLastX=this.fileFirstX=1.7976931348623157E308;this.nPointsFile=-1;this.yFactor=this.xFactor=1.7976931348623157E308;this.yUnits=this.xUnits=this.varName="";this.yLabel=this.xLabel=null;this.nH=0;this.observedNucl="";this.observedFreq=1.7976931348623157E308;this.parent=null;this.offset=1.7976931348623157E308;this.dataPointNum=this.shiftRefType=-1;this.numDim=1;this.nucleusX=null;this.nucleusY="?";this.y2D=
this.freq2dY=this.freq2dX=NaN;this.y2DUnits="";this.$isHZtoPPM=!1;this.xIncreases=!0;this.continuous=!1;this.xyCoords=null;this.deltaX=this.maxY=this.maxX=this.minY=this.minX=NaN;u(this,arguments)},JSV.source,"JDXDataObject",JSV.source.JDXHeader);c(c$,"setFilePath",function(a){null!=a&&(this.filePath=a.trim(),this.filePathForwardSlash=this.filePath.$replace("\\","/"))},"~S");c(c$,"getFilePath",function(){return this.filePath});c(c$,"getFilePathForwardSlash",function(){return this.filePathForwardSlash});
c(c$,"setBlockID",function(a){this.blockID=a},"~N");c(c$,"isImaginary",function(){return this.varName.contains("IMAG")});c(c$,"setXFactor",function(a){this.xFactor=a},"~N");c(c$,"getXFactor",function(){return this.xFactor});c(c$,"setYFactor",function(a){this.yFactor=a},"~N");c(c$,"getYFactor",function(){return this.yFactor});c(c$,"checkRequiredTokens",function(){if(1.7976931348623157E308==this.fileFirstX)throw new JSV.exception.JSpecViewException("Error Reading Data Set: ##FIRST not found");if(1.7976931348623157E308==
this.fileLastX)throw new JSV.exception.JSpecViewException("Error Reading Data Set: ##LASTX not found");if(-1==this.nPointsFile)throw new JSV.exception.JSpecViewException("Error Reading Data Set: ##NPOINTS not found");if(1.7976931348623157E308==this.xFactor)throw new JSV.exception.JSpecViewException("Error Reading Data Set: ##XFACTOR not found");if(1.7976931348623157E308==this.yFactor)throw new JSV.exception.JSpecViewException("Error Reading Data Set: ##YFACTOR not found");});c(c$,"setXUnits",function(a){this.xUnits=
a},"~S");c(c$,"getXUnits",function(){return this.xUnits});c(c$,"setYUnits",function(a){this.yUnits=a},"~S");c(c$,"getYUnits",function(){return this.yUnits});c(c$,"setXLabel",function(a){this.xLabel=a},"~S");c(c$,"setYLabel",function(a){this.yLabel=a},"~S");c(c$,"setObservedNucleus",function(a){this.observedNucl=a;1==this.numDim&&(this.parent.nucleusX=this.nucleusX=JU.PT.trim(a,"[]^<>"))},"~S");c(c$,"setObservedFreq",function(a){this.observedFreq=a},"~N");c(c$,"getObservedFreq",function(){return this.observedFreq});
c(c$,"is1D",function(){return 1==this.numDim});c(c$,"setY2D",function(a){this.y2D=a},"~N");c(c$,"getY2D",function(){return this.y2D});c(c$,"setY2DUnits",function(a){this.y2DUnits=a},"~S");c(c$,"getY2DPPM",function(){var a=this.y2D;this.y2DUnits.equals("HZ")&&(a/=this.freq2dY);return a});c(c$,"setNucleus",function(a,b){b?this.nucleusX=a:this.nucleusY=a;var c;if(0<=this.observedNucl.indexOf(a))c=this.observedFreq;else{c=JSV.source.JDXDataObject.getGyroMagneticRatio(this.observedNucl);var e=JSV.source.JDXDataObject.getGyroMagneticRatio(a);
c=this.observedFreq*e/c}b?this.freq2dX=c:this.freq2dY=c;J.util.Logger.info("Freq for "+a+" = "+c)},"~S,~B");c$.getGyroMagneticRatio=c(c$,"getGyroMagneticRatio",function(a){for(var b=0;b<a.length&&!Character.isDigit(a.charAt(b));)b++;b=JU.PT.parseInt(a.substring(b));for(a=0;a<JSV.source.JDXDataObject.gyroData.length&&!(JSV.source.JDXDataObject.gyroData[a]>=b);a+=2);return JSV.source.JDXDataObject.gyroData[a]==b?JSV.source.JDXDataObject.gyroData[a+1]:NaN},"~S");c(c$,"isTransmittance",function(){var a=
this.yUnits.toLowerCase();return a.equals("transmittance")||a.contains("trans")||a.equals("t")});c(c$,"isAbsorbance",function(){var a=this.yUnits.toLowerCase();return a.equals("absorbance")||a.contains("abs")||a.equals("a")});c(c$,"canSaveAsJDX",function(){return this.getDataClass().equals("XYDATA")});c(c$,"canIntegrate",function(){return this.continuous&&(this.isHNMR()||this.isGC())&&this.is1D()});c(c$,"isAutoOverlayFromJmolClick",function(){return this.isGC()});c(c$,"isGC",function(){return this.dataType.startsWith("GC")});
c(c$,"isMS",function(){return this.dataType.startsWith("MASS")||this.dataType.startsWith("MS")});c(c$,"isStackable",function(){return!this.isMS()});c(c$,"isScalable",function(){return!0});c(c$,"getYRef",function(){return!this.isTransmittance()?0:2>JSV.common.Coordinate.getMaxY(this.xyCoords,0,this.xyCoords.length)?1:100});c(c$,"isInverted",function(){return this.isTransmittance()});c(c$,"canConvertTransAbs",function(){return this.continuous&&this.yUnits.toLowerCase().contains("abs")||this.yUnits.toLowerCase().contains("trans")});
c(c$,"canShowSolutionColor",function(){return this.canConvertTransAbs()&&(this.xUnits.toLowerCase().contains("nanometer")||this.xUnits.equalsIgnoreCase("nm"))&&401>this.getFirstX()&&699<this.getLastX()});c(c$,"isHZtoPPM",function(){return this.$isHZtoPPM});c(c$,"setHZtoPPM",function(a){this.$isHZtoPPM=a},"~B");c(c$,"setIncreasing",function(a){this.xIncreases=a},"~B");c(c$,"isXIncreasing",function(){return this.xIncreases});c(c$,"shouldDisplayXAxisIncreasing",function(){var a=this.dataType.toUpperCase(),
b=this.xUnits.toUpperCase();return a.contains("NMR")&&!a.contains("FID")||a.contains("LINK")&&b.contains("CM")||a.startsWith("IR")||a.contains("INFRA")&&b.contains("CM")||a.contains("RAMAN")&&b.contains("CM")?!1:a.contains("VIS")&&b.contains("NANOMETERS")?!0:this.xIncreases});c(c$,"setContinuous",function(a){this.continuous=a},"~B");c(c$,"isContinuous",function(){return this.continuous});c(c$,"getHeaderRowDataAsArray",function(){var a=8;1.7976931348623157E308!=this.observedFreq&&a++;""!==this.observedNucl&&
a++;var b=this.getHeaderRowDataAsArray(!0,a),a=b.length-a;1.7976931348623157E308!=this.observedFreq&&(b[a++]=["##.OBSERVE FREQUENCY",""+this.observedFreq]);""!==this.observedNucl&&(b[a++]=["##.OBSERVE NUCLEUS",this.observedNucl]);b[a++]=["##XUNITS",this.$isHZtoPPM?"HZ":this.xUnits];b[a++]=["##YUNITS",this.yUnits];var c=this.xIncreases?this.getFirstX():this.getLastX();b[a++]=["##FIRSTX",String.valueOf(this.isHZtoPPM()?c*this.observedFreq:c)];c=this.xIncreases?this.getLastX():this.getFirstX();b[a++]=
["##FIRSTY",String.valueOf(this.xIncreases?this.getFirstY():this.getLastY())];b[a++]=["##LASTX",String.valueOf(this.isHZtoPPM()?c*this.observedFreq:c)];b[a++]=["##XFACTOR",String.valueOf(this.getXFactor())];b[a++]=["##YFACTOR",String.valueOf(this.getYFactor())];b[a++]=["##NPOINTS",String.valueOf(this.getNumberOfPoints())];return b});c(c$,"getDefaultUnitPrecision",function(){return 2});c(c$,"setMeasurementText",function(a){var b=a.getValue();if(Double.isNaN(b))return"";var c=1,e="";if(this.isNMR())if(1==
this.numDim)a=y(a,JSV.common.Integral),this.isHNMR()||a?a||(b*=this.observedFreq,e=" Hz"):(e=" ppm",c=2);else return"";return 0.1>b?"":JU.DF.formatDecimalDbl(b,c)+e},"JSV.common.Measurement");c(c$,"isNMR",function(){return 0<=this.dataType.toUpperCase().indexOf("NMR")});c(c$,"isHNMR",function(){return this.isNMR()&&0<=this.observedNucl.toUpperCase().indexOf("H")});c(c$,"setXYCoords",function(a){this.xyCoords=a},"~A");c(c$,"getFirstX",function(){return this.xyCoords[0].getXVal()});c(c$,"getFirstY",
function(){return this.xyCoords[0].getYVal()});c(c$,"getLastX",function(){return this.xyCoords[this.getNumberOfPoints()-1].getXVal()});c(c$,"getLastY",function(){return this.xyCoords[this.getNumberOfPoints()-1].getYVal()});c(c$,"getNumberOfPoints",function(){return this.xyCoords.length});c(c$,"getMinX",function(){return Double.isNaN(this.minX)?this.minX=JSV.common.Coordinate.getMinX(this.xyCoords,0,this.xyCoords.length):this.minX});c(c$,"getMinY",function(){return Double.isNaN(this.minY)?this.minY=
JSV.common.Coordinate.getMinY(this.xyCoords,0,this.xyCoords.length):this.minY});c(c$,"getMaxX",function(){return Double.isNaN(this.maxX)?this.maxX=JSV.common.Coordinate.getMaxX(this.xyCoords,0,this.xyCoords.length):this.maxX});c(c$,"getMaxY",function(){return Double.isNaN(this.maxY)?this.maxY=JSV.common.Coordinate.getMaxY(this.xyCoords,0,this.xyCoords.length):this.maxY});c(c$,"getDeltaX",function(){return Double.isNaN(this.deltaX)?this.deltaX=JSV.common.Coordinate.deltaX(this.getLastX(),this.getFirstX(),
this.getNumberOfPoints()):this.deltaX});c(c$,"copyTo",function(a){a.setTitle(this.title);a.setJcampdx(this.jcampdx);a.setOrigin(this.origin);a.setOwner(this.owner);a.setDataClass(this.dataClass);a.setDataType(this.dataType);a.setHeaderTable(this.headerTable);a.setXFactor(this.xFactor);a.setYFactor(this.yFactor);a.setXUnits(this.xUnits);a.setYUnits(this.yUnits);a.setXLabel(this.xLabel);a.setYLabel(this.yLabel);a.setXYCoords(this.xyCoords);a.setContinuous(this.continuous);a.setIncreasing(this.xIncreases);
a.observedFreq=this.observedFreq;a.observedNucl=this.observedNucl;a.offset=this.offset;a.dataPointNum=this.dataPointNum;a.shiftRefType=this.shiftRefType;a.$isHZtoPPM=this.$isHZtoPPM;a.numDim=this.numDim;a.nucleusX=this.nucleusX;a.nucleusY=this.nucleusY;a.freq2dX=this.freq2dX;a.freq2dY=this.freq2dY;a.setFilePath(this.filePath);a.nH=this.nH},"JSV.source.JDXDataObject");c(c$,"getTypeLabel",function(){return this.isNMR()?this.nucleusX+"NMR":this.dataType});c(c$,"getDefaultAnnotationInfo",function(a){var b,
c=this.isNMR();switch(a){case JSV.common.Annotation.AType.Integration:return[null,[1],null];case JSV.common.Annotation.AType.Measurements:return a=c?["Hz","ppm"]:[""],b=this.isHNMR()?[1,4]:[1,3],[a,b,Integer.$valueOf(0)];case JSV.common.Annotation.AType.PeakList:return a=c?["Hz","ppm"]:[""],b=this.isHNMR()?[1,2]:[1,1],[a,b,Integer.$valueOf(c?1:0)]}return null},"JSV.common.Annotation.AType");c(c$,"getPeakListArray",function(a,b,c){var e=a.getXVal();a=a.getYVal()/c;c=Math.abs(e-b[0]);b[0]=e;var f=c+
b[1];b[1]=c;var g=f+b[2];b[2]=f;return this.isNMR()?[e,a,e*this.observedFreq,20<c*this.observedFreq?0:c*this.observedFreq,20<f*this.observedFreq?0:f*this.observedFreq,20<g*this.observedFreq?0:g*this.observedFreq]:[e,a]},"JSV.common.Measurement,~A,~N");H(c$,"ERROR",1.7976931348623157E308,"SCALE_NONE",0,"SCALE_TOP",1,"SCALE_BOTTOM",2,"SCALE_TOP_BOTTOM",3,"gyroData",[1,42.5774806,2,6.53590131,3,45.4148,3,32.436,6,6.2661,7,16.5483,9,5.9842,10,4.5752,11,13.663,13,10.70839657,14,3.07770646,15,4.3172657,
17,5.7742,19,40.07757016,21,3.3631,23,11.26952167,25,2.6083,27,11.1031,29,8.4655,31,17.2514409,33,3.2717,35,4.1765,37,3.4765,37,5.819,39,3.46,39,1.9893,40,2.4737,41,1.0919,43,2.8688,45,10.3591,47,2.4041,49,2.4048,50,4.2505,51,11.2133,53,2.4115,55,10.5763,57,1.3816,59,10.077,61,3.8114,63,11.2982,65,12.103,67,2.6694,69,10.2478,71,13.0208,73,1.4897,75,7.315,77,8.1571,79,10.7042,81,11.5384,83,1.6442,85,4.1254,87,13.9811,87,1.8525,89,2.0949,91,3.9748,93,10.4523,95,2.7874,97,2.8463,99,9.6294,99,1.9553,
101,2.1916,103,1.3477,105,1.957,107,1.7331,109,1.9924,111,9.0692,113,9.4871,113,9.3655,115,9.3856,115,14.0077,117,15.261,119,15.966,121,10.2551,123,5.5532,123,11.2349,125,13.5454,127,8.5778,129,11.8604,131,3.5159,133,5.6234,135,4.2582,137,4.7634,138,5.6615,139,6.0612,137,4.88,139,5.39,141,2.37,141,13.0359,143,2.319,145,1.429,143,11.59,147,5.62,147,1.7748,149,14631,151,10.5856,153,4.6745,155,1.312,157,1.72,159,10.23,161,1.4654,163,2.0508,165,9.0883,167,1.2281,169,3.531,171,7.5261,173,2.073,175,4.8626,
176,3.451,177,1.7282,179,1.0856,180,4.087,181,5.1627,183,1.7957,185,9.7176,187,9.817,187,0.9856,189,3.3536,191,0.7658,191,0.8319,195,9.2922,197,0.7406,199,7.7123,201,2.8469,203,24.7316,205,24.9749,207,9.034,209,6.963,209,11.7,211,9.16,223,5.95,223,1.3746,225,11.187,227,5.6,229,1.4,231,10.2,235,0.83,237,9.57,239,3.09,243,4.6,1E100])}),p("JSV.source"),q(null,"JSV.source.JDXDecompressor",["java.lang.Double","JSV.common.Coordinate","J.util.Logger"],function(){c$=w(function(){this.lineNumber=this.ich=
this.nPoints=this.deltaX=this.yFactor=this.xFactor=0;this.t=null;this.dx=this.firstX=0;this.maxY=4.9E-324;this.minY=1.7976931348623157E308;this.debugging=!1;this.xyCoords=null;this.ipt=0;this.lastLine=this.line=null;this.lineLen=0;this.errorLog=null;this.lastDif=this.difVal=-2147483648;this.yval=this.xval=this.dupCount=0;this.firstLastX=null;u(this,arguments)},JSV.source,"JDXDecompressor");c(c$,"getMinY",function(){return this.minY});c(c$,"getMaxY",function(){return this.maxY});z(c$,function(a,b,
c,e,f,g){this.t=a;this.firstX=b;this.xFactor=c;this.yFactor=e;this.deltaX=f;this.nPoints=g;this.lineNumber=a.getLabelLineNo();this.debugging=J.util.Logger.isActiveLevel(6)},"JSV.source.JDXSourceStreamTokenizer,~N,~N,~N,~N,~N");c(c$,"addPoint",function(a){if(this.ipt==this.xyCoords.length){var b=Array(2*this.ipt);System.arraycopy(this.xyCoords,0,b,0,this.ipt);this.xyCoords=b}b=a.getYVal();b>this.maxY?this.maxY=b:b<this.minY&&(this.minY=b);this.debugging&&this.logError("Coord: "+this.ipt+a);this.xyCoords[this.ipt++]=
a;this.firstLastX[1]=a.getXVal()},"JSV.common.Coordinate");c(c$,"decompressData",function(a,b){this.errorLog=a;this.firstLastX=b;this.debugging&&this.logError("firstX="+this.firstX+" xFactor="+this.xFactor+" yFactor="+this.yFactor+" deltaX="+this.deltaX+" nPoints="+this.nPoints);this.testAlgorithm();this.xyCoords=Array(this.nPoints);var c=Math.abs(0.35*this.deltaX),e=Math.abs(1.4*this.deltaX),f=Math.abs(0.6*this.deltaX);try{for(;null!=(this.line=this.t.readLineTrimmed())&&0>this.line.indexOf("##");)if(this.lineNumber++,
this.debugging&&this.logError(this.lineNumber+"\t"+this.line),0!=(this.lineLen=this.line.length)){this.ich=0;var g=-2147483648!=this.lastDif;this.xval=this.getValueDelim()*this.xFactor;0==this.ipt&&(b[0]=this.xval,this.dx=this.firstX-this.xval);this.xval+=this.dx;var l=(new JSV.common.Coordinate).set(this.xval,(this.yval=this.getYValue())*this.yFactor);if(0==this.ipt)this.addPoint(l);else{var h=this.xyCoords[this.ipt-1],k=Math.abs(h.getXVal()-l.getXVal());if(g&&k<c){this.xyCoords[this.ipt-1]=l;var m=
h.getYVal(),n=l.getYVal();n!=m&&this.logError(this.lastLine+"\n"+this.line+"\nY-value Checkpoint Error! Line "+this.lineNumber+" for y1="+n+" y0="+m)}else this.addPoint(l),(k<f||k>e)&&this.logError(this.lastLine+"\n"+this.line+"\nX-sequence Checkpoint Error! Line "+this.lineNumber+" |x1-x0|="+k+" instead of "+Math.abs(this.deltaX)+" for x1="+l.getXVal()+" x0="+h.getXVal())}for(;this.ich<this.lineLen||-2147483648!=this.difVal||0<this.dupCount;)this.xval+=this.deltaX,Double.isNaN(this.yval=this.getYValue())||
this.addPoint((new JSV.common.Coordinate).set(this.xval,this.yval*this.yFactor));this.lastLine=this.line}}catch(p){if(!C(p,java.io.IOException))throw p;}this.nPoints!=this.ipt&&(this.logError("Decompressor did not find "+this.nPoints+" points -- instead "+this.ipt),c=Array(this.ipt),System.arraycopy(this.xyCoords,0,c,0,this.ipt),this.xyCoords=c);return 0<this.deltaX?this.xyCoords:JSV.common.Coordinate.reverse(this.xyCoords)},"JU.SB,~A");c(c$,"logError",function(a){this.debugging&&J.util.Logger.debug(a);
this.errorLog.append(a).appendC("\n")},"~S");c(c$,"getYValue",function(){if(0<this.dupCount)return--this.dupCount,this.yval=-2147483648==this.lastDif?this.yval:this.yval+this.lastDif;if(-2147483648!=this.difVal)return this.yval+=this.difVal,this.lastDif=this.difVal,this.difVal=-2147483648,this.yval;if(this.ich==this.lineLen)return NaN;var a=this.line.charAt(this.ich);this.debugging&&J.util.Logger.info(""+a);switch(a){case "%":this.difVal=0;break;case "J":case "K":case "L":case "M":case "N":case "O":case "P":case "Q":case "R":this.difVal=
a.charCodeAt(0)-73;break;case "j":case "k":case "l":case "m":case "n":case "o":case "p":case "q":case "r":this.difVal=105-a.charCodeAt(0);break;case "S":case "T":case "U":case "V":case "W":case "X":case "Y":case "Z":this.dupCount=a.charCodeAt(0)-82;break;case "s":this.dupCount=9;break;case "+":case "-":case ".":case "0":case "1":case "2":case "3":case "4":case "5":case "6":case "7":case "8":case "9":case "@":case "A":case "B":case "C":case "D":case "E":case "F":case "G":case "H":case "I":case "a":case "b":case "c":case "d":case "e":case "f":case "g":case "h":case "i":return this.lastDif=
-2147483648,this.getValue();case "?":return this.lastDif=-2147483648,NaN;default:return this.ich++,this.lastDif=-2147483648,this.getYValue()}this.ich++;-2147483648!=this.difVal?this.difVal=this.getDifDup(this.difVal):this.dupCount=this.getDifDup(this.dupCount)-1;return this.getYValue()});c(c$,"getDifDup",function(a){var b=this.ich;this.next();var c=a+this.line.substring(b,this.ich);return b==this.ich?a:Integer.$valueOf(c).intValue()},"~N");c(c$,"getValue",function(){var a=this.ich;if(this.ich==this.lineLen)return NaN;
var a=this.line.charAt(this.ich),b=0;switch(a){case "+":case "-":case ".":case "0":case "1":case "2":case "3":case "4":case "5":case "6":case "7":case "8":case "9":return this.getValueDelim();case "@":case "A":case "B":case "C":case "D":case "E":case "F":case "G":case "H":case "I":b=a.charCodeAt(0)-64;a=++this.ich;break;case "a":case "b":case "c":case "d":case "e":case "f":case "g":case "h":case "i":b=96-a.charCodeAt(0);a=++this.ich;break;default:return this.ich++,this.getValue()}this.next();return Double.$valueOf(b+
this.line.substring(a,this.ich)).doubleValue()});c(c$,"getValueDelim",function(){for(var a=this.ich,b="\x00";this.ich<this.lineLen&&0<=" ,\t\n".indexOf(b=this.line.charAt(this.ich));)this.ich++;var c=1;switch(b){case "-":c=-1;case "+":a=++this.ich}b=this.next();if("E"==b&&this.ich+3<this.lineLen)switch(this.line.charAt(this.ich+1)){case "-":case "+":this.ich+=4,this.ich<this.lineLen&&("0"<=(b=this.line.charAt(this.ich))&&"9">=b)&&this.ich++}return c*Double.$valueOf(this.line.substring(a,this.ich)).doubleValue()});
c(c$,"next",function(){for(;this.ich<this.lineLen&&0>"+-%@ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrs? ,\t\n".indexOf(this.line.charAt(this.ich));)this.ich++;return this.ich==this.lineLen?"\x00":this.line.charAt(this.ich)});c(c$,"testAlgorithm",function(){});H(c$,"allDelim","+-%@ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrs? ,\t\n","WHITE_SPACE"," ,\t\n")}),p("JSV.source"),q(["JU.List"],"JSV.source.JDXHeader",null,function(){c$=w(function(){this.title="";this.jcampdx="5.01";this.origin=this.dataClass=
this.dataType="";this.owner="PUBLIC DOMAIN";this.time=this.date=this.longDate="";this.headerTable=this.qualifiedType=null;u(this,arguments)},JSV.source,"JDXHeader");Z(c$,function(){this.headerTable=new JU.List});c(c$,"setTitle",function(a){this.title=a},"~S");c(c$,"setJcampdx",function(a){this.jcampdx=a},"~S");c(c$,"setDataType",function(a){this.dataType=a},"~S");c(c$,"setDataClass",function(a){this.dataClass=a},"~S");c(c$,"setOrigin",function(a){this.origin=a},"~S");c(c$,"setOwner",function(a){this.owner=
a},"~S");c(c$,"setLongDate",function(a){this.longDate=a},"~S");c(c$,"setDate",function(a){this.date=a},"~S");c(c$,"setTime",function(a){this.time=a},"~S");c(c$,"getTitle",function(){return this.title});c$.getTypeName=c(c$,"getTypeName",function(a){a=a.toUpperCase();for(var b=0;b<JSV.source.JDXHeader.typeNames.length;b++)if(JSV.source.JDXHeader.typeNames[b].startsWith(a))return JSV.source.JDXHeader.typeNames[b].substring(18);return a},"~S");c(c$,"getQualifiedDataType",function(){return null==this.qualifiedType?
this.qualifiedType=JSV.source.JDXHeader.getTypeName(this.dataType):this.qualifiedType});c(c$,"getJcampdx",function(){return this.jcampdx});c(c$,"getDataType",function(){return this.dataType});c(c$,"getOrigin",function(){return this.origin});c(c$,"getOwner",function(){return this.owner});c(c$,"getLongDate",function(){return this.longDate});c(c$,"getDate",function(){return this.date});c(c$,"getTime",function(){return this.time});c(c$,"getDataClass",function(){return this.dataClass});c(c$,"setHeaderTable",
function(a){this.headerTable=a},"JU.List");c(c$,"getHeaderTable",function(){return this.headerTable});c(c$,"getHeaderRowDataAsArray",function(a,b){var c=Array((a?6:5)+this.headerTable.size()+b),e=0;c[e++]=["##TITLE",this.title];c[e++]=["##JCAMP-DX",this.jcampdx];c[e++]=["##DATA TYPE",this.dataType];a&&(c[e++]=["##DATA CLASS",this.dataClass]);c[e++]=["##ORIGIN",this.origin];c[e++]=["##OWNER",this.owner];for(var f=0;f<this.headerTable.size();f++)c[e++]=this.headerTable.get(f);return c},"~B,~N");H(c$,
"typeNames","ND NMR SPECTRUM   NMR;NMR SPECTRUM      NMR;INFRARED SPECTRUM IR;MASS SPECTRUM     MS;RAMAN SPECTRUM    RAMAN;GAS CHROMATOGRAM  GC;UV/VIS SPECTRUM   UV/VIS".split(";"))}),p("JSV.source"),q(["JSV.source.JDXHeader"],"JSV.source.JDXSource",["JU.List"],function(){c$=w(function(){this.type=0;this.isCompoundSource=!1;this.jdxSpectra=null;this.errors="";this.filePath=null;this.peakCount=0;this.isView=!1;u(this,arguments)},JSV.source,"JDXSource",JSV.source.JDXHeader);c(c$,"dispose",function(){this.jdxSpectra=
this.headerTable=null});z(c$,function(a,b){P(this,JSV.source.JDXSource,[]);this.type=a;this.setFilePath(b);this.headerTable=new JU.List;this.jdxSpectra=new JU.List;this.isCompoundSource=0!=a},"~N,~S");c(c$,"getJDXSpectrum",function(a){return this.jdxSpectra.size()<=a?null:this.jdxSpectra.get(a)},"~N");c(c$,"addJDXSpectrum",function(a,b,c){null==a&&(a=this.filePath);b.setFilePath(a);a=this.jdxSpectra.size();(0==a||!this.jdxSpectra.get(a-1).addSubSpectrum(b,c))&&this.jdxSpectra.addLast(b)},"~S,JSV.common.JDXSpectrum,~B");
c(c$,"getNumberOfSpectra",function(){return this.jdxSpectra.size()});c(c$,"getSpectra",function(){return this.jdxSpectra});c(c$,"getSpectraAsArray",function(){return null==this.jdxSpectra?null:this.jdxSpectra.toArray()});c(c$,"getErrorLog",function(){return this.errors});c(c$,"setErrorLog",function(a){this.errors=a},"~S");c(c$,"setFilePath",function(a){this.filePath=a},"~S");c(c$,"getFilePath",function(){return this.filePath});c$.createView=c(c$,"createView",function(a){var b=new JSV.source.JDXSource(-2,
"view");b.isView=!0;for(var c=0;c<a.size();c++)b.addJDXSpectrum(a.get(c).getFilePath(),a.get(c),!1);return b},"JU.List");c(c$,"getHeaderRowDataAsArray",function(a,b){null==b&&(b=ba(0,0,null));for(var c=this.getHeaderRowDataAsArray(a,b.length),e=b.length;0<=--e;)c[c.length-b.length+e]=b[e];return c},"~B,~A");H(c$,"TYPE_VIEW",-2,"TYPE_UNKNOWN",-1,"TYPE_SIMPLE",0,"TYPE_BLOCK",1,"TYPE_NTUPLE",2)}),p("JSV.source"),q(null,"JSV.source.JDXSourceStreamTokenizer",["java.lang.Character","JU.SB","J.util.Logger"],
function(){c$=w(function(){this.value=this.label=this.br=null;this.labelLineNo=0;this.line=null;this.lineNo=0;u(this,arguments)},JSV.source,"JDXSourceStreamTokenizer");z(c$,function(a){this.br=a},"java.io.BufferedReader");c(c$,"peakLabel",function(){return this.nextLabel(!1)});c(c$,"getLabel",function(){return this.nextLabel(!0)});c(c$,"nextLabel",function(a){for(this.value=this.label=null;null==this.line;){try{this.readLine();if(null==this.line)return this.line="",null;this.line=this.line.trim()}catch(b){if(C(b,
java.io.IOException))return this.line="",null;throw b;}if(this.line.startsWith("##"))break;this.line=null}var c=this.line.indexOf("=");0>c?(a&&J.util.Logger.info("BAD JDX LINE -- no '=' (line "+this.lineNo+"): "+this.line),this.label=this.line,a||(this.line="")):(this.label=this.line.substring(0,c).trim(),a&&(this.line=this.line.substring(c+1)));this.labelLineNo=this.lineNo;J.util.Logger.debugging&&J.util.Logger.info(this.label);return JSV.source.JDXSourceStreamTokenizer.cleanLabel(this.label)},"~B");
c$.cleanLabel=c(c$,"cleanLabel",function(a){if(null==a)return null;var b,c=new JU.SB;for(b=0;b<a.length;b++)switch(a.charAt(b)){case "/":case "\\":case " ":case "-":case "_":break;default:c.appendC(a.charAt(b))}return c.toString().toUpperCase()},"~S");c(c$,"getRawLabel",function(){return this.label});c(c$,"getLabelLineNo",function(){return this.labelLineNo});c(c$,"getValue",function(){if(null!=this.value)return this.value;var a=(new JU.SB).append(this.line);0<a.length()&&a.appendC("\n");try{for(;null!=
this.readLine()&&!(0<=this.line.indexOf("##")&&this.line.trim().startsWith("##"));)a.append(this.line).appendC("\n")}catch(b){if(C(b,java.io.IOException))b.printStackTrace();else throw b;}this.value=JSV.source.JDXSourceStreamTokenizer.trimLines(a);J.util.Logger.debugging&&J.util.Logger.info(this.value);return this.value});c(c$,"readLineTrimmed",function(){this.readLine();if(null==this.line)return null;if(0>this.line.indexOf("$$"))return this.line.trim();var a=(new JU.SB).append(this.line);return JSV.source.JDXSourceStreamTokenizer.trimLines(a)});
c(c$,"flushLine",function(){var a=(new JU.SB).append(this.line);this.line=null;return JSV.source.JDXSourceStreamTokenizer.trimLines(a)});c(c$,"readLine",function(){this.line=this.br.readLine();this.lineNo++;return this.line});c$.trimLines=c(c$,"trimLines",function(a){var b=a.length(),c=b-1,e=JSV.source.JDXSourceStreamTokenizer.ptNonWhite(a,0,b);if(e>=b)return"";if("<"==a.charAt(e))return b=a.lastIndexOf(">")+1,0==b&&(b=a.length()),a.toString().substring(e,b);for(var f=ja(b-e,"\x00"),g=0;e<b;e++){var l;
switch(l=a.charAt(e)){case "\r":if(e<c&&"\n"==a.charAt(e+1))continue;l="\n";break;case "\n":0<g&&"\n"!=f[g-1]&&(g-=e-JSV.source.JDXSourceStreamTokenizer.ptNonSpaceRev(a,e)-1);e=JSV.source.JDXSourceStreamTokenizer.ptNonSpace(a,++e,b)-1;break;case "$":if(e<c&&"$"==a.charAt(e+1)){for(e++;++e<b&&0>"\n\r".indexOf(a.charAt(e)););continue}}"\n"==l&&0<g&&"\n"==f[g-1]||(f[g++]=l)}0<g&&"\n"==f[g-1]&&--g;return String.instantialize(f).substring(0,g).trim()},"JU.SB");c$.ptNonWhite=c(c$,"ptNonWhite",function(a,
b,c){for(;b<c&&Character.isWhitespace(a.charAt(b));)b++;return b},"JU.SB,~N,~N");c$.ptNonSpace=c(c$,"ptNonSpace",function(a,b,c){for(;b<c&&(" "==a.charAt(b)||"\t"==a.charAt(b));)b++;return b},"JU.SB,~N,~N");c$.ptNonSpaceRev=c(c$,"ptNonSpaceRev",function(a,b){for(;0<=--b&&(" "==a.charAt(b)||"\t"==a.charAt(b)););return b},"JU.SB,~N")}),p("JSV.tree"),q(["JSV.api.JSVTree"],"JSV.tree.SimpleTree",["JSV.common.JSVFileManager","$.PanelNode","JSV.tree.SimpleTreeModel","$.SimpleTreeNode","$.SimpleTreePath"],
function(){c$=w(function(){this.selectedPath=this.viewer=this.spectraTreeModel=this.rootNode=this.si=null;u(this,arguments)},JSV.tree,"SimpleTree",null,JSV.api.JSVTree);e(c$,"getRootNode",function(){return this.rootNode});z(c$,function(a){this.viewer=a;this.rootNode=new JSV.tree.SimpleTreeNode("Spectra",null);this.spectraTreeModel=new JSV.tree.SimpleTreeModel(this.rootNode)},"JSV.common.JSViewer");c(c$,"valueChanged",function(){this.viewer.selectedTreeNode(this.getLastSelectedPathComponent())});c(c$,
"getLastSelectedPathComponent",function(){return null==this.selectedPath?null:this.selectedPath.getLastPathComponent()});e(c$,"setSelectedPanel",function(a,b){if(null!=b){var c=JSV.common.PanelNode.findNode(b,this.viewer.panelNodes).treeNode;this.setSelectionPath(this.viewer.spectraTree.newTreePath(c.getPath()))}},"JSV.api.ScriptInterface,JSV.api.JSVPanel");c(c$,"setSelectionPath",function(a){this.selectedPath=a;this.valueChanged()},"JSV.api.JSVTreePath");e(c$,"createTree",function(a,b,c){var e=this.viewer.spectraTree,
f=e.getRootNode(),g=this.viewer.panelNodes,l=JSV.common.JSVFileManager.getName(b.getFilePath()),h=new JSV.common.PanelNode(null,l,b,null),k=new JSV.tree.SimpleTreeNode(l,h);h.setTreeNode(k);e.spectraTreeModel.insertNodeInto(k,f,f.getChildCount());f=a.siGetFileCount()+1;a.siSetFileCount(f);for(var m=0;m<c.length;m++){var h=a.siGetNewPanelNode(f+"."+(m+1),l,b,c[m]),n=new JSV.tree.SimpleTreeNode(h.toString(),h);h.setTreeNode(n);g.addLast(h);e.spectraTreeModel.insertNodeInto(n,k,k.getChildCount())}this.viewer.selectFrameNode(c[0]);
return k},"JSV.api.ScriptInterface,JSV.source.JDXSource,~A");e(c$,"setPath",function(a){this.setSelectionPath(a)},"JSV.api.JSVTreePath");c(c$,"newTreePath",function(a){return new JSV.tree.SimpleTreePath(a)},"~A");e(c$,"deleteNodes",function(a){for(var b=0;b<a.size();b++)this.spectraTreeModel.removeNodeFromParent(a.get(b))},"JU.List")}),p("JSV.tree"),q(["java.util.Enumeration"],"JSV.tree.SimpleTreeEnumeration",null,function(){c$=w(function(){this.node=null;this.pt=0;u(this,arguments)},JSV.tree,"SimpleTreeEnumeration",
null,java.util.Enumeration);z(c$,function(a){this.node=a},"JSV.tree.SimpleTreeNode");e(c$,"hasMoreElements",function(){return this.pt<this.node.$children.size()});e(c$,"nextElement",function(){return this.node.$children.get(this.pt++)})}),p("JSV.tree"),c$=w(function(){this.rootNode=null;u(this,arguments)},JSV.tree,"SimpleTreeModel"),z(c$,function(a){this.rootNode=a},"JSV.api.JSVTreeNode"),c(c$,"insertNodeInto",function(a,b,c){b.$children.add(c,a);a.prevNode=b},"JSV.api.JSVTreeNode,JSV.api.JSVTreeNode,~N"),
c(c$,"removeNodeFromParent",function(a){a.prevNode.$children.removeObj(a)},"JSV.api.JSVTreeNode"),p("JSV.tree"),q(["JSV.api.JSVTreeNode"],"JSV.tree.SimpleTreeNode",["JU.List","JSV.tree.SimpleTreeEnumeration"],function(){c$=w(function(){this.panelNode=null;this.index=0;this.text=this.$children=this.prevNode=null;u(this,arguments)},JSV.tree,"SimpleTreeNode",null,JSV.api.JSVTreeNode);z(c$,function(a,b){this.text=a;this.panelNode=b;this.$children=new JU.List},"~S,JSV.common.PanelNode");e(c$,"getPanelNode",
function(){return this.panelNode});e(c$,"getIndex",function(){return this.index});e(c$,"setIndex",function(a){this.index=a},"~N");e(c$,"children",function(){return new JSV.tree.SimpleTreeEnumeration(this)});e(c$,"getChildCount",function(){return this.$children.size()});e(c$,"getPath",function(){var a=new JU.List,b=this;for(a.addLast(b);null!=(b=b.prevNode);)a.add(0,b);return a.toArray()});e(c$,"isLeaf",function(){return null!=this.prevNode&&null!=this.prevNode.prevNode});e(c$,"toString",function(){return this.text})}),
p("JSV.tree"),q(["JSV.api.JSVTreePath"],"JSV.tree.SimpleTreePath",null,function(){c$=w(function(){this.path=null;u(this,arguments)},JSV.tree,"SimpleTreePath",null,JSV.api.JSVTreePath);z(c$,function(a){this.path=a},"~A");e(c$,"getLastPathComponent",function(){return null==this.path||0==this.path.length?null:this.path[this.path.length-1]})}),p("JSV.util"),q(null,"JSV.util.JSVEscape",["JU.SB"],function(){c$=F(JSV.util,"JSVEscape");c$.eS=c(c$,"eS",function(a){if(null==a)return'""';for(var b=!1,c=0;10>
c;c+=2)if(0<=a.indexOf('\\\\\tt\rr\nn""'.charAt(c))){b=!0;break}if(b)for(;10>c;){for(var b=-1,e='\\\\\tt\rr\nn""'.charAt(c++),f='\\\\\tt\rr\nn""'.charAt(c++),g=new JU.SB,l=0;0<=(b=a.indexOf(e,b+1));)g.append(a.substring(l,b)).appendC("\\").appendC(f),l=b+1;g.append(a.substring(l,a.length));a=g.toString()}for(c=a.length;0<=--c;)127<a.charCodeAt(c)&&(a=a.substring(0,c)+JSV.util.JSVEscape.unicode(a.charAt(c))+a.substring(c+1));return'"'+a+'"'},"~S");c$.unicode=c(c$,"unicode",function(a){a="0000"+Integer.toHexString(a.charCodeAt(0));
return"\\u"+a.substring(a.length-4)},"~S");H(c$,"escapable",'\\\\\tt\rr\nn""')}));Clazz_coreLoaded=!0})(Clazz,Clazz.newArray,Clazz.newBooleanArray,Clazz.newByteArray,Clazz.newCharArray,Clazz.newDoubleArray,Clazz.newFloatArray,Clazz.newIntArray,Clazz.newLongArray,Clazz.newShortArray,Clazz.prepareCallback,Clazz.decorateAsClass,Clazz.isClassDefined,Clazz.defineEnumConstant,Clazz.cloneFinals,Clazz.inheritArgs,Clazz.pu$h,Clazz.declareInterface,Clazz.declarePackage,Clazz.makeConstructor,Clazz.overrideConstructor,
Clazz.load,Clazz.defineMethod,Clazz.innerTypeInstance,Clazz.instanceOf,Clazz.p0p,Clazz.makeFunction,Clazz.superConstructor,Clazz.defineStatics,Clazz.registerSerializableFields,Clazz.declareType,Clazz.superCall,Clazz.overrideMethod,Clazz.declareAnonymous,Clazz.checkPrivateMethod,Clazz.prepareFields,Clazz.instantialize,Clazz.doubleToInt,Clazz.declarePackage,Clazz.instanceOf,Clazz.load,Clazz.instantialize,Clazz.decorateAsClass,Clazz.floatToInt,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.supportsNativeObject,Clazz.extendedObjectMethods,
Clazz.callingStackTraces,Clazz.clone,Clazz.doubleToShort,Clazz.innerFunctions,Clazz.getInheritedLevel,Clazz.getParamsType,Clazz.isAF,Clazz.isAI,Clazz.isAS,Clazz.isASS,Clazz.isAP,Clazz.isAFloat,Clazz.isAII,Clazz.isAFF,Clazz.isAFFF,Clazz.tryToSearchAndExecute,Clazz.getStackTrace,Clazz.inheritArgs);
