-
Notifications
You must be signed in to change notification settings - Fork 0
/
JSmol.min.nojq.js
260 lines (260 loc) · 129 KB
/
JSmol.min.nojq.js
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
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
(function(a){function h(a){try{return a?new window.ActiveXObject("Microsoft.XMLHTTP"):new window.XMLHttpRequest}catch(e){}}a.ajaxSettings.xhr=void 0===window.ActiveXObject?h:function(){return(this.url==document.location||0==this.url.indexOf("http")||!this.isLocal)&&/^(get|post|head|put|delete|options)$/i.test(this.type)&&h()||h(1)};a.ajaxTransport("+script",function(a){var e,c=document.head||jQuery("head")[0]||document.documentElement;return{send:function(j,h){e=document.createElement("script");a.scriptCharset&&
(e.charset=a.scriptCharset);e.src=a.url;e.onload=e.onreadystatechange=function(a,b){if(b||!e.readyState||/loaded|complete/.test(e.readyState))e.onload=e.onreadystatechange=null,e.parentNode&&e.parentNode.removeChild(e),e=null,b||h(200,"success")};c.insertBefore(e,c.firstChild)},abort:function(){if(e)e.onload(void 0,!0)}}});a.extend(a.support,{iecors:!!window.XDomainRequest});a.support.iecors?a.ajaxTransport(function(a){return{send:function(e,c){var j=new window.XDomainRequest;j.onload=function(){c(200,
"OK",{text:j.responseText},{"Content-Type":j.contentType})};a.xhrFields&&(j.onerror=a.xhrFields.error,j.ontimeout=a.xhrFields.timeout);j.open(a.type,a.url);j.send(a.hasContent&&a.data||null)},abort:function(){xdr.abort()}}}):(a.ajaxSetup({accepts:{binary:"text/plain; charset=x-user-defined"},responseFields:{binary:"response"}}),a.ajaxTransport("binary",function(a){var e;return{send:function(c,j){var h=a.xhr();console.log("xhr.open binary async="+a.async+" url="+a.url);h.open(a.type,a.url,a.async);
var d=!1;try{h.hasOwnProperty("responseType")&&(h.responseType="arraybuffer",d=!0)}catch(b){}try{!d&&h.overrideMimeType&&h.overrideMimeType("text/plain; charset=x-user-defined")}catch(g){}!a.crossDomain&&!c["X-Requested-With"]&&(c["X-Requested-With"]="XMLHttpRequest");try{for(var m in c)h.setRequestHeader(m,c[m])}catch(n){}h.send(a.hasContent&&a.data||null);e=function(){var b=h.status,g="",d=h.getAllResponseHeaders(),m={};try{if(e&&4===h.readyState){e=void 0;try{m.text="string"===typeof h.responseText?
h.responseText:null}catch(c){}try{m.binary=h.response}catch(n){}try{g=h.statusText}catch(s){g=""}!b&&a.isLocal&&!a.crossDomain?b=m.text?200:404:1223===b&&(b=204);j(b,g,m,d)}}catch(v){alert(v),j(-1,v)}};a.async?4===h.readyState?setTimeout(e):h.onreadystatechange=e:e()},abort:function(){}}}))})(jQuery);
(function(a,h,f,e){function c(c,f){function d(g){a(b).each(function(){self.Jmol&&(0<=f.indexOf("mouseup")||0<=f.indexOf("touchend"))&&Jmol._setMouseOwner(null);var b=a(this);this!==g.target&&!b.has(g.target).length&&b.triggerHandler(f,[g.target,g])})}f=f||c+e;var b=a(),g=c+"."+f+"-special-event";a.event.special[f]={setup:function(){b=b.add(this);1===b.length&&a(h).bind(g,d)},teardown:function(){self.Jmol&&Jmol._setMouseOwner(null);b=b.not(this);0===b.length&&a(h).unbind(g)},add:function(b){var a=
b.handler;b.handler=function(b,g){b.target=g;a.apply(this,arguments)}}}}a.map(f.split(" "),function(a){c(a)});c("focusin","focus"+e);c("focusout","blur"+e)})(jQuery,document,"click mousemove mouseup touchmove touchend","outjsmol");"undefined"==typeof jQuery&&alert("Note -- JSmoljQuery is required for JSmol, but it's not defined.");self.Jmol||(Jmol={});
Jmol._version||(Jmol=function(a){var h=function(a){return{header:a++,rear:a++,main:a++,image:a++,front:a++,fileOpener:a++,coverImage:a++,dialog:a++,menu:a+9E4,console:a+91E3,monitorZIndex:a+99999}},h={_version:"$Date: 2014-12-19 08:17:57 -0600 (Fri, 19 Dec 2014) $",_alertNoBinary:!0,_allowedJmolSize:[25,2048,300],_appletCssClass:"",_appletCssText:"",_fileCache:null,_jarFile:null,_j2sPath:null,_use:null,_j2sLoadMonitorOpacity:90,_applets:{},_asynchronous:!0,_ajaxQueue:[],_getZOrders:h,_z:h(Jmol.z||
9E3),_debugCode:!0,db:{_databasePrefixes:"$=:",_fileLoadScript:";if (_loadScript = '' && defaultLoadScript == '' && _filetype == 'Pdb') { select protein or nucleic;cartoons Only;color structure; select * };",_nciLoadScript:";n = ({molecule=1}.length < {molecule=2}.length ? 2 : 1); select molecule=n;display selected;center selected;",_pubChemLoadScript:"",_DirectDatabaseCalls:{"cactus.nci.nih.gov":"%URL","www.rcsb.org":"%URL","pdbe.org":"%URL","www.ebi.ac.uk":"%URL","wwwdev.ebi.ac.uk":"%URL","pubchem.ncbi.nlm.nih.gov":"%URL",
"http://www.nmrdb.org/tools/jmol/predict.php":"%URL",$:"http://cactus.nci.nih.gov/chemical/structure/%FILENCI/file?format=sdf&get3d=True",$$:"http://cactus.nci.nih.gov/chemical/structure/%FILENCI/file?format=sdf","=":"http://www.rcsb.org/pdb/files/%FILE.pdb","*":"http://www.ebi.ac.uk/pdbe/entry-files/download/%FILE.cif","==":"http://www.rcsb.org/pdb/files/ligand/%FILE.cif",":":"http://pubchem.ncbi.nlm.nih.gov/rest/pug/compound/%FILE/SDF?record_type=3d"},_restQueryUrl:"http://www.rcsb.org/pdb/rest/search",
_restQueryXml:"<orgPdbQuery><queryType>org.pdb.query.simple.AdvancedKeywordQuery</queryType><description>Text Search</description><keywords>QUERY</keywords></orgPdbQuery>",_restReportUrl:"http://www.pdb.org/pdb/rest/customReport?pdbids=IDLIST&customReportColumns=structureId,structureTitle"},_debugAlert:!1,_document:a,_isXHTML:!1,_lastAppletID:null,_mousePageX:null,_mouseOwner:null,_serverUrl:"http://your.server.here/jsmol.php",_syncId:(""+Math.random()).substring(3),_touching:!1,_XhtmlElement:null,
_XhtmlAppendChild:!1};a=a.location.href.toLowerCase();h._httpProto=0==a.indexOf("https")?"https://":"http://";h._isFile=0==a.indexOf("file:");h._ajaxTestSite=h._httpProto+"google.com";a=h._isFile||0==a.indexOf("http://localhost")||0==a.indexOf("http://127.");h._tracker="http://"==h._httpProto&&!a&&"http://chemapps.stolaf.edu/jmol/JmolTracker.htm?id=UA-45940799-1";h._isChrome=0<=navigator.userAgent.toLowerCase().indexOf("chrome");h._isSafari=!h._isChrome&&0<=navigator.userAgent.toLowerCase().indexOf("safari");
h._isMsie=void 0!==window.ActiveXObject;h._useDataURI=!h._isSafari&&!h._isMsie;for(var f in Jmol)h[f]=Jmol[f];return h}(document,Jmol));
(function(a,h){h(document).ready(function(){a._document=null});a.$=function(b,a){null==b&&alert(a+arguments.callee.caller.toString());return h(a?"#"+b._id+"_"+a:b)};a._$=function(b){return"string"==typeof b?h("#"+b):b};a.$ajax=function(b){a._ajaxCall=b.url;b.cache="NO"!=b.cache;0==b.url.indexOf("http://pubchem.ncbi.nlm.nih")&&(b.url="https://"+b.url.substring(7));return h.ajax(b)};a._getNCIInfo=function(b,g){return a._getFileData("http://cactus.nci.nih.gov/chemical/structure/"+b+"/"+("name"==g?"names":
g))};a.$appEvent=function(b,g,d,c){b=a.$(b,g);b.off(d)&&c&&b.on(d,c)};a.$resize=function(b){return h(window).resize(b)};a.$after=function(b,a){return h(b).after(a)};a.$bind=function(b,a,d){return d?h(b).bind(a,d):h(b).unbind(a)};a.$closest=function(b,a){return h(b).closest(a)};a.$get=function(b,a){return h(b).get(a)};a.$documentOff=function(b,a){return h(document).off(b,"#"+a)};a.$documentOn=function(b,a,d){return h(document).on(b,"#"+a,d)};a.$getAncestorDiv=function(b,a){return h("div."+a+":has(#"+
b+")")[0]};a.$supportsIECrossDomainScripting=function(){return h.support.iecors};a.$attr=function(b,g,d){return a._$(b).attr(g,d)};a.$css=function(b,g){return a._$(b).css(g)};a.$find=function(b,g){return a._$(b).find(g)};a.$focus=function(b){return a._$(b).focus()};a.$html=function(b,g){return a._$(b).html(g)};a.$offset=function(b){return a._$(b).offset()};a.$windowOn=function(b,a){return h(window).on(b,a)};a.$prop=function(b,g,d){var c=a._$(b);return 3==arguments.length?c.prop(g,d):c.prop(g)};a.$remove=
function(b){return a._$(b).remove()};a.$scrollTo=function(b,g){var d=a._$(b);return d.scrollTop(0>g?d[0].scrollHeight:g)};a.$setEnabled=function(b,g){return a._$(b).attr("disabled",g?null:"disabled")};a.$setSize=function(b,g,d){return a._$(b).width(g).height(d)};a.$setVisible=function(b,g){var d=a._$(b);return g?d.show():d.hide()};a.$submit=function(b){return a._$(b).submit()};a.$val=function(b,g){var d=a._$(b);return 1==arguments.length?d.val():d.val(g)};a._clearVars=function(){delete jQuery;delete h;
delete a;delete SwingController;delete J;delete JM;delete JS;delete JSV;delete JU;delete JV;delete java;delete javajs;delete Clazz;delete c$};var f=document,e=window,c={};c.ua=navigator.userAgent.toLowerCase();var j;a:{j=["linux","unix","mac","win"];for(var k=j.length;k--;)if(-1!=c.ua.indexOf(j[k])){j=j[k];break a}j="unknown"}c.os=j;c.browser=function(){for(var b=c.ua,a="konqueror webkit omniweb opera webtv icab msie mozilla".split(" "),d=0;d<a.length;d++)if(0<=b.indexOf(a[d]))return a[d];return"unknown"};
c.browserName=c.browser();c.browserVersion=parseFloat(c.ua.substring(c.ua.indexOf(c.browserName)+c.browserName.length+1));c.supportsXhr2=function(){return h.support.cors||h.support.iecors};c.allowDestroy="msie"!=c.browserName;c.allowHTML5="msie"!=c.browserName||0>navigator.appVersion.indexOf("MSIE 8");c.getDefaultLanguage=function(){return navigator.language||navigator.userLanguage||"en-US"};c._webGLtest=0;c.supportsWebGL=function(){if(!a.featureDetection._webGLtest){var b;a.featureDetection._webGLtest=
e.WebGLRenderingContext&&((b=f.createElement("canvas")).getContext("webgl")||b.getContext("experimental-webgl"))?1:-1}return 0<a.featureDetection._webGLtest};c.supportsLocalization=function(){for(var b=f.getElementsByTagName("meta"),a=b.length;0<=--a;)if(0<=b[a].outerHTML.toLowerCase().indexOf("utf-8"))return!0;return!1};c.supportsJava=function(){a.featureDetection._javaEnabled||(a.featureDetection._javaEnabled=a._isMsie?navigator.javaEnabled()?1:-1:navigator.javaEnabled()&&(!navigator.mimeTypes||
navigator.mimeTypes["application/x-java-applet"])?1:-1);return 0<a.featureDetection._javaEnabled};c.compliantBrowser=function(){var b=!!f.getElementById,a=c.os;if("opera"==c.browserName&&7.54>=c.browserVersion&&"mac"==a||"webkit"==c.browserName&&125.12>c.browserVersion||"msie"==c.browserName&&"mac"==a||"konqueror"==c.browserName&&3.3>=c.browserVersion)b=!1;return b};c.isFullyCompliant=function(){return c.compliantBrowser()&&c.supportsJava()};c.useIEObject="win"==c.os&&"msie"==c.browserName&&5.5<=
c.browserVersion;c.useHtml4Object="mozilla"==c.browserName&&5<=c.browserVersion||"opera"==c.browserName&&8<=c.browserVersion||"webkit"==c.browserName;c.hasFileReader=e.File&&e.FileReader;a.featureDetection=c;a._ajax=function(b){if(!b.async)return a.$ajax(b).responseText;a._ajaxQueue.push(b);1==a._ajaxQueue.length&&a._ajaxDone()};a._ajaxDone=function(){var b=a._ajaxQueue.shift();b&&a.$ajax(b)};a._grabberOptions=[["$","NCI(small molecules)"],[":","PubChem(small molecules)"],["=","RCSB(macromolecules)"],
["*","PDBe(macromolecules)"]];a._getGrabberOptions=function(b){if(0==a._grabberOptions.length)return"";var g='<input type="text" id="ID_query" onfocus="jQuery(this).select()" onkeypress="if(13==event.which){Jmol._applets[\'ID\']._search();return false}" size="32" value="" />',d='<button id="ID_submit" onclick="Jmol._applets[\'ID\']._search()">Search</button></nobr>';1==a._grabberOptions.length?(g="<nobr>"+g+'<span style="display:none">',d="</span>"+d):g+="<br /><nobr>";for(var g=g+'<select id="ID_select">',
c=0;c<a._grabberOptions.length;c++)var f=a._grabberOptions[c],g=g+('<option value="'+f[0]+'" '+(0==c?"selected":"")+">"+f[1]+"</option>");g=(g+"</select>"+d).replace(/ID/g,b._id);return"<br />"+g};a._getScriptForDatabase=function(b){return"$"==b?a.db._nciLoadScript:":"==b?a.db._pubChemLoadScript:a.db._fileLoadScript};a._setInfo=function(b,a,d){var c=[],f="";if(0==d.indexOf("ERROR"))f=d;else switch(a){case "=":a=d.split("<dimStructure.structureId>");c=["<table>"];for(d=1;d<a.length;d++)c.push('<tr><td valign=top><a href="javascript:Jmol.search('+
b._id+",'="+a[d].substring(0,4)+"')\">"+a[d].substring(0,4)+"</a></td>"),c.push("<td>"+a[d].split("Title>")[1].split("</")[0]+"</td></tr>");c.push("</table>");f=a.length-1+" matches";break;case "$":case ":":break;default:return}b._infoHeader=f;b._info=c.join("");b._showInfo(!0)};a._loadSuccess=function(b,g){g&&(a._ajaxDone(),g(b))};a._loadError=function(b){a._ajaxDone();a.say("Error connecting to server: "+a._ajaxCall);null!=b&&b()};a._isDatabaseCall=function(b){return 0<=a.db._databasePrefixes.indexOf(b.substring(0,
1))};a._getDirectDatabaseCall=function(b,g){if(g&&!a.featureDetection.supportsXhr2())return b;var d=2,c,f=a.db._DirectDatabaseCalls[b.substring(0,d)];f||(f=a.db._DirectDatabaseCalls[c=b.substring(0,--d)]);f&&(":"==c?(c=b.toLowerCase(),isNaN(parseInt(b.substring(1)))?0==c.indexOf(":smiles:")?(f+="?POST?smiles="+b.substring(8),b="smiles"):0==c.indexOf(":cid:")?b="cid/"+b.substring(5):(0==c.indexOf(":name:")?b=b.substring(5):0==c.indexOf(":cas:")&&(b=b.substring(4)),b="name/"+encodeURIComponent(b.substring(d))):
b="cid/"+b.substring(1)):b=encodeURIComponent(b.substring(d)),0<=f.indexOf("FILENCI")?(b=b.replace(/\%2F/g,"/"),b=f.replace(/\%FILENCI/,b)):b=f.replace(/\%FILE/,b));return b};a._getRawDataFromServer=function(b,g,d,c,f,l){b="?call=getRawDataFromDatabase&database="+b+(0<=g.indexOf("?POST?")?"?POST?":"")+"&query="+encodeURIComponent(g)+(f?"&encoding=base64":"")+(l?"":"&script="+encodeURIComponent(a._getScriptForDatabase(b)));return a._contactServer(b,d,c)};a._checkFileName=function(b,g,d){a._isDatabaseCall(g)&&
(d&&a._setQueryTerm(b,g),g=a._getDirectDatabaseCall(g,!0),a._isDatabaseCall(g)&&(g=a._getDirectDatabaseCall(g,!1),d&&(d[0]=!0)));return g};a._checkCache=function(b,g,d){if(b._cacheFiles&&a._fileCache&&!g.endsWith(".js")){if(b=a._fileCache[g])return System.out.println("using "+b.length+" bytes of cached data for "+g),d(b),null;d=function(b,g){d(a._fileCache[b]=g)}}return d};a._loadFileData=function(b,g,d,c){var f=[];g=a._checkFileName(b,g,f);d=a._checkCache(b,g,d);f[0]?a._getRawDataFromServer("_",
g,d,c):(b={type:"GET",dataType:"text",url:g,async:a._asynchronous,success:function(b){a._loadSuccess(b,d)},error:function(){a._loadError(c)}},a._checkAjaxPost(b),a._ajax(b))};a._getInfoFromDatabase=function(b,g,d){if("===="==g){var c=a.db._restQueryXml.replace(/QUERY/,d),c={dataType:"text",type:"POST",contentType:"application/x-www-form-urlencoded",url:a.db._restQueryUrl,data:encodeURIComponent(c)+"&req=browser",success:function(c){a._ajaxDone();a._extractInfoFromRCSB(b,g,d,c)},error:function(){a._loadError(null)},
async:a._asynchronous};return a._ajax(c)}d="?call=getInfoFromDatabase&database="+g+"&query="+encodeURIComponent(d);return a._contactServer(d,function(d){a._setInfo(b,g,d)})};a._extractInfoFromRCSB=function(b,g,d,c){var f=c.length/5;if(0!=f&&4==d.length&&1!=f){d=d.toUpperCase();var l=c.indexOf(d);0<l&&0<="123456789".indexOf(d.substring(0,1))&&(c=d+","+c.substring(0,l)+c.substring(l+5));50<f&&(c=c.substring(0,250));c=c.replace(/\n/g,",");c=a._restReportUrl.replace(/IDLIST/,c);a._loadFileData(b,c,function(d){a._setInfo(b,
g,d)})}};a._checkAjaxPost=function(b){var a=b.url.indexOf("?POST?");0<a&&(b.data=b.url.substring(a+6),b.url=b.url.substring(0,a),b.type="POST",b.contentType="application/x-www-form-urlencoded")};a._contactServer=function(b,g,d){b={dataType:"text",type:"GET",url:a._serverUrl+b,success:function(b){a._loadSuccess(b,g)},error:function(){a._loadError(d)},async:g?a._asynchronous:!1};a._checkAjaxPost(b);return a._ajax(b)};a._setQueryTerm=function(b,g){if(g&&b._hasOptions&&"http://"!=g.substring(0,7)){if(a._isDatabaseCall(g)){var d=
g.substring(0,1);g=g.substring(1);g.substring(0,1)==d&&0<="=$".indexOf(d)&&(g=g.substring(1));var c=a._getElement(b,"select");if(c&&c.options)for(var f=0;f<c.options.length;f++)c[f].value==d&&(c[f].selected=!0)}a.$val(a.$(b,"query"),g)}};a._search=function(b,g,d){1<arguments.length||(g=null);a._setQueryTerm(b,g);g||(g=a.$val(a.$(b,"query")));0==g.indexOf("!")?b._script(g.substring(1)):(g&&(g=g.replace(/\"/g,"")),b._showInfo(!1),a._searchMol(b,g,d,!0))};a._searchMol=function(b,g,d,c){var f;a._isDatabaseCall(g)?
(f=g.substring(0,1),g=g.substring(1)):f=b._hasOptions?a.$val(a.$(b,"select")):"$";"="==f&&3==g.length&&(g="="+g);var l=f+g;if(g&&!(0>l.indexOf("?")&&l==b._thisJmolModel)){b._thisJmolModel=l;var e;c&&null!=b._viewSet&&null!=(e=a.View.__findView(b._viewSet,{chemID:l}))?a.View.__setView(e,b,!1):("$"==f||":"==f?b._jmolFileType="MOL":"="==f&&(b._jmolFileType="PDB"),b._searchDatabase(g,f,d))}};a._searchDatabase=function(b,g,d,c){b._showInfo(!1);return 0<=g.indexOf("?")?(a._getInfoFromDatabase(b,d,g.split("?")[0]),
!0):a.db._DirectDatabaseCalls[d]?(b._loadFile(d+g,c),!0):!1};a._syncBinaryOK="?";a._canSyncBinary=function(b){if(a._isAsync)return!0;if(self.VBArray)return a._syncBinaryOK=!1;if("?"!=a._syncBinaryOK)return a._syncBinaryOK;a._syncBinaryOK=!0;try{var g=new window.XMLHttpRequest;g.open("text",a._ajaxTestSite,!1);g.hasOwnProperty("responseType")?g.responseType="arraybuffer":g.overrideMimeType&&g.overrideMimeType("text/plain; charset=x-user-defined")}catch(d){return System.out.println("JSmolCore.js: synchronous binary file transfer is requested but not available"),
a._alertNoBinary&&!b&&alert("JSmolCore.js: synchronous binary file transfer is requested but not available"),a._syncBinaryOK=!1}return!0};a._binaryTypes=".gz .jpg .gif .png .zip .jmol .bin .smol .spartan .mrc .pse .map .omap".split(" ");a._isBinaryUrl=function(b){for(var g=a._binaryTypes.length;0<=--g;)if(0<=b.indexOf(a._binaryTypes[g]))return!0;return!1};a._getFileData=function(b,g,d){var c=a._isBinaryUrl(b),f=0<=b.indexOf("pdb.gz")&&0==b.indexOf("http://www.rcsb.org/pdb/files/"),l=c&&!a._canSyncBinary(f);
l&&f&&(b=b.replace(/pdb\.gz/,"pdb"),l=c=!1);f=0<=b.indexOf("?POST?");0==b.indexOf("file:/")&&0!=b.indexOf("file:///")&&(b="file://"+b.substring(5));var e=0>b.indexOf("://")||0==b.indexOf(document.location.protocol)&&0<=b.indexOf(document.location.host),j=a._isDirectCall(b),h=!e&&a.$supportsIECrossDomainScripting(),k=null;if((!g||l)&&(h||l||!e&&!j))k=a._getRawDataFromServer("_",b,g,g,l,!0);else{b=b.replace(/file:\/\/\/\//,"file://");var s={dataType:c?"binary":"text",async:!!g};f?(s.type="POST",s.url=
b.split("?POST?")[0],s.data=b.split("?POST?")[1]):(s.type="GET",s.url=b);g&&(s.success=function(){g(a._xhrReturn(s.xhr))},s.error=function(){xxi=s;g(s.xhr.statusText)});s.xhr=a.$ajax(s);g||(k=a._xhrReturn(s.xhr))}if(!d)return k;null==k&&(k="",c=!1);c&&(c=a._canSyncBinary(!0));return c?a._strToBytes(k):JU.SB.newS(k)};a._xhrReturn=function(b){return!b.responseText||self.Clazz&&Clazz.instanceOf(b.response,self.ArrayBuffer)?b.response||b.statusText:b.responseText};a._isDirectCall=function(b){for(var g in a.db._DirectDatabaseCalls)if(0<=
g.indexOf(".")&&0<=b.indexOf(g))return!0;return!1};a._cleanFileData=function(b){return 0<=b.indexOf("\r")&&0<=b.indexOf("\n")?b.replace(/\r\n/g,"\n"):0<=b.indexOf("\r")?b.replace(/\r/g,"\n"):b};a._getFileType=function(b){var a=b.substring(0,1);if("$"==a||":"==a)return"MOL";if("="==a)return"="==b.substring(1,2)?"LCIF":"PDB";b=b.split(".").pop().toUpperCase();return b.substring(0,Math.min(b.length,3))};a._getZ=function(b,g){return b&&b._z&&b._z[g]||a._z[g]};a._incrZ=function(b,g){return b&&b._z&&++b._z[g]||
++a._z[g]};a._loadFileAsynchronously=function(b,g,d,c){if(0!=d.indexOf("?")){var f=d;d=a._checkFileName(g,d);var l=function(g){a._setData(b,d,f,g,c)},l=a._checkCache(g,d,l);0<=d.indexOf("|")&&(d=d.split("|")[0]);return null==l?null:a._getFileData(d,l)}if(!a.featureDetection.hasFileReader)return b.setData("Local file reading is not enabled in your browser",null,null,c);g._localReader||(l='<div id="ID" style="z-index:'+a._getZ(g,"fileOpener")+';position:absolute;background:#E0E0E0;left:10px;top:10px"><div style="margin:5px 5px 5px 5px;"><input type="file" id="ID_files" /><button id="ID_loadfile">load</button><button id="ID_cancel">cancel</button></div><div>',
a.$after("#"+g._id+"_appletdiv",l.replace(/ID/g,g._id+"_localReader")),g._localReader=a.$(g,"localReader"));a.$appEvent(g,"localReader_loadfile","click");a.$appEvent(g,"localReader_loadfile","click",function(){var d=a.$(g,"localReader_files")[0].files[0],m=new FileReader;m.onloadend=function(m){m.target.readyState==FileReader.DONE&&(a.$css(a.$(g,"localReader"),{display:"none"}),a._setData(b,d.name,d.name,m.target.result,c))};m.readAsArrayBuffer(d)});a.$appEvent(g,"localReader_cancel","click");a.$appEvent(g,
"localReader_cancel","click",function(){a.$css(a.$(g,"localReader"),{display:"none"});b.setData(null,null,null,c)});a.$css(a.$(g,"localReader"),{display:"block"})};a._setData=function(b,g,d,c,f){c=a._strToBytes(c);0<=g.indexOf(".jdx")&&a.Cache.put("cache://"+g,c);b.setData(g,d,c,f)};a._toBytes=function(b){if("string"==typeof b)return b.getBytes();b=new Uint8Array(b);for(var a=Clazz.newByteArray(b.length,0),d=b.length;0<=--d;)a[d]=b[d];return a};a._doAjax=function(b,g,d){b=b.toString();if(null!=d)return a._saveFile(b,
d);g&&(b+="?POST?"+g);return a._getFileData(b,null,!0)};a._saveFile=function(b,g,d,c){if(a._localFileSaveFunction&&a._localFileSaveFunction(b,g))return"OK";b=b.substring(b.lastIndexOf("/")+1);d||(d=0<=b.indexOf(".pdf")?"application/pdf":0<=b.indexOf(".png")?"image/png":0<=b.indexOf(".gif")?"image/gif":0<=b.indexOf(".jpg")?"image/jpg":"");var f="string"==typeof g;f||(g=(JU?JU:J.util).Base64.getBase64(g).toString());c||(c=f?"":"base64");(f=a._serverUrl)&&0<=f.indexOf("your.server")&&(f="");a._useDataURI||
!f?(c||(g=btoa(g)),c=document.createElement("a"),c.href="data:"+d+";base64,"+g,c.type=d||"text/plain",c.download=b,c.target="_blank",h("body").append(c),c.click(),c.remove()):(a._formdiv||(a.$after("body",'<div id="__jsmolformdiv__" style="display:none">\t\t\t\t\t\t<form id="__jsmolform__" method="post" target="_blank" action="">\t\t\t\t\t\t<input name="call" value="saveFile"/>\t\t\t\t\t\t<input id="__jsmolmimetype__" name="mimetype" value=""/>\t\t\t\t\t\t<input id="__jsmolencoding__" name="encoding" value=""/>\t\t\t\t\t\t<input id="__jsmolfilename__" name="filename" value=""/>\t\t\t\t\t\t<textarea id="__jsmoldata__" name="data"></textarea>\t\t\t\t\t\t</form>\t\t\t\t\t\t</div>'),
a._formdiv="__jsmolform__"),a.$attr(a._formdiv,"action",f+"?"+(new Date).getMilliseconds()),a.$val("__jsmoldata__",g),a.$val("__jsmolfilename__",b),a.$val("__jsmolmimetype__",d),a.$val("__jsmolencoding__",c),a.$submit("__jsmolform__"),a.$val("__jsmoldata__",""),a.$val("__jsmolfilename__",""));return"OK"};a._strToBytes=function(b){if(Clazz.instanceOf(b,self.ArrayBuffer))return a._toBytes(b);for(var g=Clazz.newByteArray(b.length,0),d=b.length;0<=--d;)g[d]=b.charCodeAt(d)&255;return g};a._setConsoleDiv=
function(b){self.Clazz&&Clazz.setConsoleDiv(b)};a._registerApplet=function(b,g){return window[b]=a._applets[b]=a._applets[g]=a._applets[b+"__"+a._syncId+"__"]=g};a._readyCallback=function(b,g,d,c){b=b.split("_object")[0];d=d.booleanValue?d.booleanValue():d;a._track(a._applets[b])._readyCallback(b,g,d,c)};a._getWrapper=function(b,g){var d;if(g){var c="";b._coverImage&&(c=' onclick="Jmol.coverApplet(ID, false)" title="'+b._coverTitle+'"',d='<image id="ID_coverclickgo" src="'+b._j2sPath+'/img/play_make_live.jpg" style="width:25px;height:25px;position:absolute;bottom:10px;left:10px;z-index:'+
a._getZ(b,"coverImage")+';opacity:0.5;"'+c+" />",c='<div id="ID_coverdiv" style="background-color:red;z-index:'+a._getZ(b,"coverImage")+';width:100%;height:100%;display:inline;position:absolute;top:0px;left:0px"><image id="ID_coverimage" src="'+b._coverImage+'" style="width:100%;height:100%"'+c+"/>"+d+"</div>");d=a._appletCssText.replace(/\'/g,'"');d=0<=d.indexOf('style="')?d.split('style="')[1]:'" '+d;d='...<div id="ID_appletinfotablediv" style="width:Wpx;height:Hpx;position:relative;font-size:14px;text-align:left">IMG......<div id="ID_appletdiv" style="z-index:'+
a._getZ(b,"header")+";width:100%;height:100%;position:absolute;top:0px;left:0px;"+d+">";var f=b._height,l=b._width;if("string"!==typeof f||0>f.indexOf("%"))f+="px";if("string"!==typeof l||0>l.indexOf("%"))l+="px";d=d.replace(/IMG/,c).replace(/Hpx/g,f).replace(/Wpx/g,l)}else d='......</div>......<div id="ID_2dappletdiv" style="position:absolute;width:100%;height:100%;overflow:hidden;display:none"></div>......<div id="ID_infotablediv" style="width:100%;height:100%;position:absolute;top:0px;left:0px">.........<div id="ID_infoheaderdiv" style="height:20px;width:100%;background:yellow;display:none"><span id="ID_infoheaderspan"></span><span id="ID_infocheckboxspan" style="position:absolute;text-align:right;right:1px;"><a href="javascript:Jmol.showInfo(ID,false)">[x]</a></span></div>.........<div id="ID_infodiv" style="position:absolute;top:20px;bottom:0px;width:100%;height:100%;overflow:auto"></div>......</div>...</div>';
return d.replace(/\.\.\./g,"").replace(/[\n\r]/g,"").replace(/ID/g,b._id)};a._documentWrite=function(b){if(a._document){if(a._isXHTML&&!a._XhtmlElement){var g=document.getElementsByTagName("script");a._XhtmlElement=g.item(g.length-1);a._XhtmlAppendChild=!1}a._XhtmlElement?a._domWrite(b):a._document.write(b)}return b};a._domWrite=function(b){for(var g=[0];g[0]<b.length;){var d=a._getDomElement(b,g);if(!d)break;a._XhtmlAppendChild?a._XhtmlElement.appendChild(d):a._XhtmlElement.parentNode.insertBefore(d,
_jmol.XhtmlElement)}};a._getDomElement=function(b,a){var d=document.createElement("span");d.innerHTML=b;a[0]=b.length;return d};a._setObject=function(b,g,d){b._id=g;b.__Info={};d.z&&d.zIndexBase&&(a._z=a._getZOrders(d.zIndexBase));for(var c in d)b.__Info[c]=d[c];(b._z=d.z)||d.zIndexBase&&(b._z=b.__Info.z=a._getZOrders(d.zIndexBase));b._width=d.width;b._height=d.height;b._noscript=!b._isJava&&d.noscript;b._console=d.console;b._cacheFiles=!!d.cacheFiles;b._viewSet=null==d.viewSet||b._isJava?null:"Set"+
d.viewSet;null!=b._viewSet&&(a.View.__init(b),b._currentView=null);!a._fileCache&&b._cacheFiles&&(a._fileCache={});b._console||(b._console=b._id+"_infodiv");"none"==b._console&&(b._console=null);b._color=d.color?d.color.replace(/0x/,"#"):"#FFFFFF";b._disableInitialConsole=d.disableInitialConsole;b._noMonitor=d.disableJ2SLoadMonitor;a._j2sPath&&(d.j2sPath=a._j2sPath);b._j2sPath=d.j2sPath;b._coverImage=d.coverImage;b._isCovered=!!b._coverImage;b._deferApplet=d.deferApplet||b._isCovered&&b._isJava;b._deferUncover=
d.deferUncover&&!b._isJava;b._coverScript=d.coverScript;b._coverTitle=d.coverTitle;b._coverTitle||(b._coverTitle=b._deferApplet?"activate 3D model":"3D model is loading...");b._containerWidth=b._width+(b._width==parseFloat(b._width)?"px":"");b._containerHeight=b._height+(b._height==parseFloat(b._height)?"px":"");b._info="";b._infoHeader=b._jmolType+' "'+b._id+'"';b._hasOptions=d.addSelectionOptions;b._defaultModel=d.defaultModel;b._readyScript=d.script?d.script:"";b._readyFunction=d.readyFunction;
b._coverImage&&!b._deferApplet&&(b._readyScript+=";javascript "+g+"._displayCoverImage(false)");b._src=d.src};a._addDefaultInfo=function(b,d){for(var c in d)"undefined"==typeof b[c]&&(b[c]=d[c]);a._use&&(b.use=a._use);0<=b.use.indexOf("SIGNED")&&(0>b.jarFile.indexOf("Signed")&&(b.jarFile=b.jarFile.replace(/Applet/,"AppletSigned")),b.use=b.use.replace(/SIGNED/,"JAVA"),b.isSigned=!0)};a._syncedApplets=[];a._syncedCommands=[];a._syncedReady=[];a._syncReady=!1;a._isJmolJSVSync=!1;a._setReady=function(b){a._syncedReady[b]=
1;for(var d=0,c=0;c<a._syncedApplets.length;c++){if(a._syncedApplets[c]==b._id)a._syncedApplets[c]=b,a._syncedReady[c]=1;else if(!a._syncedReady[c])continue;d++}d==a._syncedApplets.length&&a._setSyncReady()};a._setDestroy=function(b){a.featureDetection.allowDestroy&&a.$windowOn("beforeunload",function(){a._destroy(b)})};a._destroy=function(b){try{b._applet&&b._applet.destroy();b._applet=null;a._unsetMouse(b._canvas);b._canvas=null;for(var d=0,c=0;c<a._syncedApplets.length;c++)a._syncedApplets[c]==
b&&(a._syncedApplets[c]=null),a._syncedApplets[c]&&d++;0<d||a._clearVars()}catch(f){}};a._setSyncReady=function(){a._syncReady=!0;for(var b="",d=0;d<a._syncedApplets.length;d++)a._syncedCommands[d]&&(b+="Jmol.script(Jmol._syncedApplets["+d+"], Jmol._syncedCommands["+d+"]);");setTimeout(b,50)};a._mySyncCallback=function(b,d){app=a._applets[b];if(app._viewSet)a.View.updateFromSync(app,d);else{if(!a._syncReady||!a._isJmolJSVSync)return 1;for(var c=0;c<a._syncedApplets.length;c++)0<=d.indexOf(a._syncedApplets[c]._syncKeyword)&&
a._syncedApplets[c]._syncScript(d);return 0}};a._getElement=function(b,a){return document.getElementById(b._id+"_"+a)||{}};a._evalJSON=function(b,a){b+="";if(!b)return[];if("{"!=b.charAt(0))return 0<=b.indexOf(" | ")&&(b=b.replace(/\ \|\ /g,"\n")),b;var d=(new Function("return "+b))();return!d?null:a&&void 0!=d[a]?d[a]:d};a._sortMessages=function(b){function a(b,d){return b[0]<d[0]?1:b[0]>d[0]?-1:0}if(!b||"object"!=typeof b)return[];for(var d=[],c=b.length-1;0<=c;c--)for(var f=0,l=b[c].length;f<l;f++)d[d.length]=
b[c][f];if(0!=d.length)return d=d.sort(a)};a._setMouseOwner=function(b,d){null==b||d?a._mouseOwner=b:a._mouseOwner==b&&(a._mouseOwner=null)};a._jsGetMouseModifiers=function(b){var a=0;switch(b.button){case 0:a=16;break;case 1:a=8;break;case 2:a=4}b.shiftKey&&(a+=1);b.altKey&&(a+=8);b.ctrlKey&&(a+=2);return a};a._jsGetXY=function(b,d){if(!b.applet._ready||a._touching&&0>d.type.indexOf("touch"))return!1;d.preventDefault();var c=a.$offset(b.id),f,e=d.originalEvent;d.pageX||(d.pageX=e.pageX);d.pageY||
(d.pageY=e.pageY);a._mousePageX=d.pageX;a._mousePageY=d.pageY;e.targetTouches&&e.targetTouches[0]?(f=e.targetTouches[0].pageX-c.left,c=e.targetTouches[0].pageY-c.top):e.changedTouches?(f=e.changedTouches[0].pageX-c.left,c=e.changedTouches[0].pageY-c.top):(f=d.pageX-c.left,c=d.pageY-c.top);return void 0==f?null:[Math.round(f),Math.round(c),a._jsGetMouseModifiers(d)]};a._gestureUpdate=function(b,d){d.stopPropagation();d.preventDefault();var c=d.originalEvent;switch(d.type){case "touchstart":a._touching=
!0;break;case "touchend":a._touching=!1}if(!c.touches||2!=c.touches.length)return!1;switch(d.type){case "touchstart":b._touches=[[],[]];break;case "touchmove":var f=a.$offset(b.id),e=b._touches[0],l=b._touches[1];e.push([c.touches[0].pageX-f.left,c.touches[0].pageY-f.top]);l.push([c.touches[1].pageX-f.left,c.touches[1].pageY-f.top]);c=e.length;3<c&&(e.shift(),l.shift());2<=c&&b.applet._processGesture(b._touches)}return!0};a._jsSetMouse=function(b){a.$bind(b,"mousedown touchstart",function(d){a._setMouseOwner(b,
!0);d.stopPropagation();d.preventDefault();b.isDragging=!0;if("touchstart"==d.type&&a._gestureUpdate(b,d))return!1;a._setConsoleDiv(b.applet._console);var c=a._jsGetXY(b,d);if(!c)return!1;2!=d.button&&a.Swing.hideMenus(b.applet);b.applet._processEvent(501,c);return!1});a.$bind(b,"mouseup touchend",function(d){a._setMouseOwner(null);d.stopPropagation();d.preventDefault();b.isDragging=!1;if("touchend"==d.type&&a._gestureUpdate(b,d))return!1;d=a._jsGetXY(b,d);if(!d)return!1;b.applet._processEvent(502,
d);return!1});a.$bind(b,"mousemove touchmove",function(d){return a._mouseOwner&&a._mouseOwner!=b&&a._mouseOwner.isDragging?(a._mouseOwner.mouseMove(d),!1):a._drag(b,d)});a._drag=function(b,d){d.stopPropagation();d.preventDefault();if("touchmove"==d.type&&a._gestureUpdate(b,d))return!1;var c=a._jsGetXY(b,d);if(!c)return!1;b.isDragging||(c[2]=0);b.applet._processEvent(b.isDragging?506:503,c);return!1};a.$bind(b,"DOMMouseScroll mousewheel",function(d){d.stopPropagation();d.preventDefault();b.isDragging=
!1;var c=d.originalEvent,c=c.detail?c.detail:("mac"==a.featureDetection.os?1:-1)*c.wheelDelta;d=a._jsGetMouseModifiers(d);b.applet._processEvent(-1,[0>c?-1:1,0,d]);return!1});a.$bind(b,"contextmenu",function(){return!1});a.$bind(b,"mouseout",function(d){b.applet._applet&&b.applet._applet.startHoverWatcher(!1);a._jsGetXY(b,d);return!1});a.$bind(b,"mouseenter",function(d){b.applet._applet&&b.applet._applet.startHoverWatcher(!0);if(0===d.buttons||0===d.which){b.isDragging=!1;d=a._jsGetXY(b,d);if(!d)return!1;
b.applet._processEvent(504,d);b.applet._processEvent(502,d);return!1}});a.$bind(b,"mousemoveoutjsmol",function(d,c,f){if(b==a._mouseOwner&&b.isDragging)return a._drag(b,f)});b.applet._is2D&&a.$resize(function(){b.applet&&b.applet._resize()});a.$bind("body","mouseup touchend",function(){b.applet&&(b.isDragging=!1);a._setMouseOwner(null)})};a._jsUnsetMouse=function(b){b.applet=null;a.$bind(b,"mousedown touchstart mousemove touchmove mouseup touchend DOMMouseScroll mousewheel contextmenu mouseout mouseenter",
null);a._setMouseOwner(null)};a.Swing={count:0,menuInitialized:0,menuCounter:0,htDialogs:{}};var d=a.Swing;SwingController=d;d.setDraggable=function(b){b=b.prototype;b.setContainer||(b.setContainer=function(b){this.container=b;b.obj=this;this.ignoreMouse=this.isDragging=!1;var d=this;b.bind("mousedown touchstart",function(b){if(d.ignoreMouse)return d.ignoreMouse=!1,!0;a._setMouseOwner(d,!0);d.isDragging=!0;d.pageX=b.pageX;d.pageY=b.pageY;return!1});b.bind("mousemove touchmove",function(b){if(d.isDragging&&
a._mouseOwner==d)return d.mouseMove(b),!1});b.bind("mouseup touchend",function(b){d.mouseUp(b);a._setMouseOwner(null)})},b.mouseUp=function(b){if(this.isDragging&&a._mouseOwner==this)return this.pageX0+=b.pageX-this.pageX,this.pageY0+=b.pageY-this.pageY,this.isDragging=!1;a._setMouseOwner(null)},b.setPosition=function(){if(null===a._mousePageX){var b=a.$offset(this.applet._id+"_"+(this.applet._is2D?"canvas2d":"canvas"));a._mousePageX=b.left;a._mousePageY=b.top}this.pageX0=a._mousePageX;this.pageY0=
a._mousePageY;this.container.css({top:a._mousePageY+"px",left:a._mousePageX+"px"})},b.mouseMove=function(b){this.isDragging&&a._mouseOwner==this&&(this.timestamp=System.currentTimeMillis(),this.container.css({top:this.pageY0+(b.pageY-this.pageY)+"px",left:this.pageX0+(b.pageX-this.pageX)+"px"}))},b.dragBind=function(b){this.applet._ignoreMouse=!b;this.container.unbind("mousemoveoutjsmol");this.container.unbind("touchmoveoutjsmol");this.container.unbind("mouseupoutjsmol");this.container.unbind("touchendoutjsmol");
a._setMouseOwner(null);if(b){var d=this;this.container.bind("mousemoveoutjsmol touchmoveoutjsmol",function(b,a,g){d.mouseMove(g)});this.container.bind("mouseupoutjsmol touchendoutjsmol",function(b,a,g){d.mouseUp(g)})}})};d.JSDialog=function(){};d.setDraggable(d.JSDialog);d.getScreenDimensions=function(b){b.width=h(window).width();b.height=h(window).height()};d.dispose=function(b){a.$remove(b.id+"_mover");delete d.htDialogs[b.id];b.container.obj.dragBind(!1)};d.register=function(b,a){b.id=a+ ++d.count;
d.htDialogs[b.id]=b};d.setDialog=function(b){a._setMouseOwner(null);a.$remove(b.id);var g=b.id+"_mover",c=a._$(g),f;c[0]?(c.html(b.html),f=c[0].jd):(a.$after("body","<div id='"+g+"' style='position:absolute;left:0px;top:0px;'>"+b.html+"</div>"),f=new d.JSDialog,c=a._$(g),b.container=c,f.applet=b.manager.vwr.html5Applet,f.setContainer(c),f.dialog=b,f.setPosition(),f.dragBind(!0),c[0].jd=f);a.$bind("#"+b.id+" .JButton","mousedown touchstart",function(){f.ignoreMouse=!0});a.$bind("#"+b.id+" .JComboBox",
"mousedown touchstart",function(){f.ignoreMouse=!0});a.$bind("#"+b.id+" .JCheckBox","mousedown touchstart",function(){f.ignoreMouse=!0});a.$bind("#"+b.id+" .JTextField","mousedown touchstart",function(){f.ignoreMouse=!0});a.$bind("#"+b.id+" .JTable","mousedown touchstart",function(){f.ignoreMouse=!0});a.$bind("#"+b.id+" .JScrollPane","mousedown touchstart",function(){f.ignoreMouse=!0});a.$bind("#"+b.id+" .JEditorPane","mousedown touchstart",function(){f.ignoreMouse=!0})};d.setSelected=function(b){a.$prop(b.id,
"checked",!!b.selected)};d.setSelectedIndex=function(b){a.$prop(b.id,"selectedIndex",b.selectedIndex)};d.setText=function(b){a.$prop(b.id,"value",b.text)};d.setVisible=function(b){a.$setVisible(b.id,b.visible)};d.setEnabled=function(b){a.$setEnabled(b.id,b.enabled)};d.click=function(b,g){var c=d.htDialogs[b.id];if(c){var f=c.toString();if(0<=f.indexOf("JCheck"))c.selected=b.checked;else if(0<=f.indexOf("JCombo"))c.selectedIndex=b.selectedIndex;else if(null!=c.text&&(c.text=b.value,g&&13!=(g.charCode||
g.keyCode)))return}f=d.htDialogs[a.$getAncestorDiv(b.id,"JDialog").id];f.manager.actionPerformed(c?c.name:f.registryKey+"/"+b.id)};d.setFront=function(b){var d=b.manager.vwr.html5Applet;b.zIndex!=a._getZ(d,"dialog")&&(b.zIndex=a._incrZ(d,"dialog"));b.container&&((b.container[0]||b.container).style.zIndex=b.zIndex)};d.hideMenus=function(b){if(b=b._menus)for(var a in b)b[a].visible&&d.hideMenu(b[a])};d.windowClosing=function(b){b=d.htDialogs[a.$getAncestorDiv(b.id,"JDialog").id];b.registryKey?b.manager.processWindowClosing(b.registryKey):
b.dispose()};a._track=function(b){if(a._tracker){try{var d='<iframe style="display:none" width="0" height="0" frameborder="0" tabindex="-1" src="'+(a._tracker+"&applet="+b._jmolType+"&version="+a._version+"&appver="+a.___JmolVersion+"&url="+encodeURIComponent(document.location.href))+'"></iframe>';a.$after("body",d)}catch(c){}delete a._tracker}return b};a.getProfile=function(){window["j2s.doProfile"]=!0;if(self.Clazz&&self.JSON)return Clazz._profile||(Clazz._profile={}),Clazz.getProfile()};a._getInChIKey=
function(b,a){0<=a.indexOf("MOL=")&&a.split("MOL=")[1].split('"')};a._getAttr=function(b,a){var d=b.indexOf(a+"=");return 0<=d&&0<=(d=b.indexOf('"',d))?b.substring(d+1,b.indexOf('"',d+1)):null};a.User={viewUpdatedCallback:null};a.View={count:0,applets:{},sets:{}};(function(b){b.updateView=function(d,c){if(null!=d._viewSet){c.chemID||(d._searchQuery=null);c.data||(c.data="N/A");c.type=d._viewType;if(null==(d._currentView=b.__findView(d._viewSet,c)))d._currentView=b.__createViewSet(d._viewSet,c.chemID,
c.viewID||c.chemID);d._currentView[c.type].data=c.data;d._currentView[c.type].smiles=d._getSmiles();a.User.viewUpdatedCallback&&a.User.viewUpdatedCallback(d,"updateView");b.__setView(d._currentView,d,!1)}};b.updateFromSync=function(d,c){d._updateMsg=c;var f=a._getAttr(c,"sourceID")||a._getAttr(c,"file");if(f){var e=b.__findView(d._viewSet,{viewID:f});if(null==e)return a.updateView(d,c);e!=d._currentView&&b.__setView(e,d,!0);var l=(f=a._getAttr(c,"atoms"))&&0<=c.indexOf("selectionhalos ON")?eval("["+
f+"]"):[];setTimeout(function(){d._currentView==e&&b.updateAtomPick(d,l)},10);a.User.viewUpdatedCallback&&a.User.viewUpdatedCallback(d,"updateFromSync")}};b.updateAtomPick=function(b,d){var c=b._currentView;if(null!=c){for(var f in c)"info"!=f&&c[f].applet!=b&&c[f].applet._updateAtomPick(d);a.User.viewUpdatedCallback&&a.User.viewUpdatedCallback(b,"updateAtomPick")}};b.dumpViews=function(a){var d=b.sets[a];if(d){var c="View set "+a+":\n";a=b.applets[a];for(var f in a)c+="\napplet "+a[f]._id+" currentView="+
(a[f]._currentView?a[f]._currentView.info.viewID:null);for(f=d.length;0<=--f;){a=d[f];var c=c+("\n\n<b>view="+f+" viewID="+a.info.viewID+" chemID="+a.info.chemID+"</b>\n"),l,e;for(e in a)"info"!=e&&(c+="\nview="+f+" type="+e+" applet="+((l=a[e]).applet?l.applet._id:null)+" SMILES="+l.smiles+"\n atomMap="+JSON.stringify(l.atomMap)+"\n data=\n"+l.data+"\n")}return c}};b.__init=function(a){var d=a._viewSet,c=b.applets;c[d]||(c[d]={});c[d][a._viewType]=a};b.__findView=function(a,d){var c=b.sets[a];null==
c&&(c=b.sets[a]=[]);for(var f=c.length;0<=--f;){var l=c[f];if(d.viewID){if(l.info.viewID==d.viewID)return l}else{if(null!=d.chemID&&d.chemID==l.info.chemID)return l;for(var e in l)if("info"!=e&&(null!=d.data&&null!=l[e].data?d.data==l[e].data:d.type==e))return l}}return null};b.__createViewSet=function(d,c,f){b.count++;c={info:{chemID:c,viewID:f||"model_"+b.count}};for(var e in a._applets)f=a._applets[e],f._viewSet==d&&(c[f._viewType]={applet:f,data:null});b.sets[d].push(c);return c};b.__setView=
function(b,a,d){for(var c in b)if("info"!=c){var f=b[c],e=f.applet,j=d||null!=e&&"<modified>"==e._molData;if(!(null==e||e==a&&!j)){var h=null==f.data,k=null!=e._currentView;e._currentView=b;if(!k||!(b[c].data==f.data&&!h&!j))if(e._loadModelFromView(b),h)break}}}})(a.View);a.Cache={fileCache:{}};a.Cache.get=function(b){return a.Cache.fileCache[b]};a.Cache.put=function(b,d){a.Cache.fileCache[b]=d};a.Cache.setDragDrop=function(b){a.$appEvent(b,"appletdiv","dragover",function(b){b=b.originalEvent;b.stopPropagation();
b.preventDefault();b.dataTransfer.dropEffect="copy"});a.$appEvent(b,"appletdiv","drop",function(d){var c=d.originalEvent;c.stopPropagation();c.preventDefault();var f=c.dataTransfer.files[0];if(null==f)try{f=""+c.dataTransfer.getData("text"),(0==f.indexOf("file:/")||0==f.indexOf("http:/"))&&b._scriptLoad(f)}catch(e){}else c=new FileReader,c.onloadend=function(c){if(c.target.readyState==FileReader.DONE){var e="cache://DROP_"+f.name;c=a._toBytes(c.target.result);e.endsWith(".spt")||b._applet.cacheFileByName("cache://DROP_*",
!1);"JSV"==b._viewType||e.endsWith(".jdx")?a.Cache.put(e,c):b._applet.cachePut(e,c);(c=a._jsGetXY(b._canvas,d))&&(!b._applet.setStatusDragDropped||b._applet.setStatusDragDropped(0,c[0],c[1],e))&&b._applet.openFileAsyncSpecial(e,1)}},c.readAsArrayBuffer(f)})}})(Jmol,jQuery);Jmol._debugCode=!1;
(function(a){a._isAsync=!1;a._asyncCallbacks={};a._coreFiles=[];a.__execLog=[];a.__execStack=[];a.__execTimer=0;a.__coreSet=[];a.__coreMore=[];a.__execDelayMS=100;a.showExecLog=function(){return a.__execLog.join("\n")};a.__addExec=function(h){var f="JSmol load "+h[0]._id+" "+h[3];self.console&&console.log(f+"...");a.__execLog.push(f);a.__execStack.push(h)};a.__addCoreFile=function(h,f,e){if(!(0<=a.__coreSet.join("").indexOf(h))){a.__coreSet.push(h);a.__coreSet.sort();h=a.__coreSet.join("");a._coreFiles=
[f+"/core/core"+("jmol"==h?"":h)+".z.js"];if(e&&(e=e.split(" ")))for(h=0;h<e.length;h++)0>a.__coreMore.join("").indexOf(e[h])&&a.__coreMore.push(f+"/core/core"+e[h]+".z.js");for(h=0;h<a.__coreMore.length;h++)a._coreFiles.push(a.__coreMore[h])}};a._loadZJars=function(h){h<a._coreFiles.length?Clazz._Loader.loadZJar(a._coreFiles[h],Clazz._Loader.runtimeKeyClass,function(){a._loadZJars(h+1)}):(window["java.registered"]=!0,a._nextExecution())};a.__nextExecution=function(h){delete a.__execTimer;for(var f=
a.__execStack,e;0<f.length&&"done"==(e=f[0])[4];)f.shift();0!=f.length&&(!a._isAsync&&!h?setTimeout("Jmol.__nextExecution(true)",10):(e.push("done"),h="JSmol exec "+e[0]._id+" "+e[3]+" "+e[2],self.System&&System.out.println(h),self.console&&console.log(h+" -- OK"),a.__execLog.push(h),e[1](e[0],e[2])))};a.__loadClazz=function(h){a.__clazzLoaded?a.__nextExecution():(a.__clazzLoaded=!0,LoadClazz(),h._noMonitor&&(Clazz._LoaderProgressMonitor.showStatus=function(){}),LoadClazz=null,Clazz._Loader.onGlobalLoaded=
function(){Clazz._LoaderProgressMonitor.showStatus("Application loaded.",!0);if(!a._debugCode||!a.haveCore)a.haveCore=!0,a.__nextExecution()},Clazz._Loader.loadPackageClasspath("java",null,!0,a.__nextExecution))};a.__loadClass=function(h,f){Clazz._Loader.loadClass(f,function(){a.__nextExecution()})};a._Canvas2D=function(h,f,e,c){this._uniqueId=(""+Math.random()).substring(3);this._id=h;this._is2D=!0;this._isJava=!1;this._jmolType="Jmol._Canvas2D ("+e+")";switch(e){case "Jmol":this._platform="J.awtjs2d.Platform";
break;case "JSV":this._isLayered=this._isJSV=!0;this._platform="JSV.awtjs2d.Platform";break;case "Astex":this._isAstex=!0,this._platform="astex.awtjs2d.Platform"}if(c)return this;window[h]=this;this._createCanvas(h,f);if(!a._document||this._deferApplet)return this;this._init();return this};a._setAppletParams=function(h,f,e,c){for(var j in e)if(!h||0<=h.indexOf(";"+j.toLowerCase()+";"))null==e[j]||"language"==j&&!a.featureDetection.supportsLocalization()||(c?f.put(j,!0===e[j]?Boolean.TRUE:!1===e[j]?
Boolean.FALSE:e[j]):f[j]=e[j])};a._jsSetPrototype=function(h){h._init=function(){this._setupJS();this._showInfo(!0);this._disableInitialConsole&&this._showInfo(!1)};h._createCanvas=function(f,e,c){a._setObject(this,f,e);c&&(this._GLmol=c,this._GLmol.applet=this,this._GLmol.id=this._id);c=a._getWrapper(this,!0);this._deferApplet||(a._document?(a._documentWrite(c),this._newCanvas(!1),c=""):(this._deferApplet=!0,c+='<script type="text/javascript">'+f+"._cover(false)\x3c/script>"));c+=a._getWrapper(this,
!1);e.addSelectionOptions&&(c+=a._getGrabberOptions(this));a._debugAlert&&!a._document&&alert(c);this._code=a._documentWrite(c)};h._newCanvas=function(a){this._is2D?this._createCanvas2d(a):this._GLmol.create()};h._createCanvas2d=function(){var f=a.$(this,"appletdiv");try{f[0].removeChild(this._canvas),this._canvas.frontLayer&&f[0].removeChild(this._canvas.frontLayer),this._canvas.rearLayer&&f[0].removeChild(this._canvas.rearLayer),this._canvas.imageLayer&&f[0].removeChild(this._canvas.imageLayer),
a._jsUnsetMouse(this._mouseInterface)}catch(e){}var c=Math.round(f.width()),j=Math.round(f.height()),h=document.createElement("canvas");h.applet=this;this._canvas=h;h.style.width="100%";h.style.height="100%";h.width=c;h.height=j;h.id=this._id+"_canvas2d";f.append(h);a._$(h.id).css({"z-index":a._getZ(this,"main")});if(this._isLayered){var d=document.createElement("div");h.imageLayer=d;d.id=this._id+"_imagelayer";f.append(d);a._$(d.id).css({zIndex:a._getZ(this,"image"),position:"absolute",left:"0px",
top:"0px",width:"0px",height:"0px",overflow:"hidden"});this._mouseInterface=this._getLayer("front",f,c,j,!1)}else this._mouseInterface=h;a._jsSetMouse(this._mouseInterface)};h._getLayer=function(f,e,c,j,h){var d=document.createElement("canvas");this._canvas[f+"Layer"]=d;d.style.width="100%";d.style.height="100%";d.id=this._id+"_"+f+"Layer";d.width=c;d.height=j;e.append(d);d.applet=this;a._$(d.id).css({background:h?"rgb(0,0,0,1)":"rgb(0,0,0,0.001)","z-index":a._getZ(this,f),position:"absolute",left:"0px",
top:"0px",overflow:"hidden"});return d};h._setupJS=function(){window["j2s.lib"]={base:this._j2sPath+"/",alias:".",console:this._console,monitorZIndex:a._getZ(this,"monitorZIndex")};0==a.__execStack.length&&a.__addExec([this,a.__loadClazz,null,"loadClazz"]);this._isJSV?(a.__addCoreFile("jsv",this._j2sPath,this.__Info.preloadCore),a._debugCode&&(a.__addExec([this,a.__loadClass,"JSV.appletjs.JSVApplet","load JSV"]),this._isPro&&a.__addExec([this,a.__loadClass,"JSV.appletjs.JSVAppletPro","load JSV(signed)"]))):
this._isAstex?(a.__addCoreFile("astex",this._j2sPath,this.__Info.preloadCore),a._debugCode&&a.__addExec([this,a.__loadClass,"astex.MoleculeViewerAppletJS","load Astex"])):(a.__addCoreFile("jmol",this._j2sPath,this.__Info.preloadCore),this._is2D||a.__addExec([this,a.__loadClass,"J.export.JSExporter","load JSExporter"]),a._debugCode&&a.__addExec([this,a.__loadClass,"J.appletjs.Jmol","load Jmol"]));a.__addExec([this,this.__startAppletJS,null,"start applet"]);this._isSigned=!0;this._ready=!1;this._applet=
null;this._canScript=function(){return!0};this._savedOrientations=[];a.__execTimer&&clearTimeout(a.__execTimer);a.__execTimer=setTimeout(a.__nextExecution,a.__execDelayMS)};h.__startAppletJS=function(f){0==a._version.indexOf("$Date: ")&&(a._version=(a._version.substring(7)+" -").split(" -")[0]+" (JSmol/j2s)");var e=Clazz._4Name("java.util.Hashtable").newInstance();a._setAppletParams(f._availableParams,e,f.__Info,!0);e.put("appletReadyCallback","Jmol._readyCallback");e.put("applet",!0);e.put("name",
f._id);e.put("syncId",a._syncId);a._isAsync&&e.put("async",!0);f._color&&e.put("bgcolor",f._color);f._is2D?f._startupScript&&e.put("script",f._startupScript):e.put("script","set multipleBondSpacing 0.35;");a._syncedApplets.length&&e.put("synccallback","Jmol._mySyncCallback");e.put("signedApplet","true");e.put("platform",f._platform);f._is2D&&e.put("display",f._id+"_canvas2d");e.put("documentBase",document.location.href);var c=f._j2sPath+"/";if(0>c.indexOf("://")){var j=document.location.href.split("#")[0].split("?")[0].split("/");
0==c.indexOf("/")?j=[j[0],c.substring(1)]:j[j.length-1]=c;c=j.join("/")}e.put("codePath",c);a._registerApplet(f._id,f);try{f._newApplet(e)}catch(h){System.out.println((a._isAsync?"normal async abort from ":"")+h);return}f._jsSetScreenDimensions();a.__nextExecution()};h._restoreState=function(f,e){System.out.println("\n\nasynchronous restore state for "+f+" "+e);var c=this,j=c._applet&&c._applet.viewer;switch(e){case "setOptions":return function(){c.__startAppletJS(c)};case "render":return function(){setTimeout(function(){j.refresh(2)},
10)};default:switch(f){case "J.shape.Balls":case "J.shape.Sticks":case "J.shape.Frank":return null}if(j&&j.isScriptExecuting&&j.isScriptExecuting()){if(a._asyncCallbacks[f])return System.out.println("...ignored"),1;var h=j.getEvalContextAndHoldQueue(j.eval),d=h.pc-1;h.asyncID=f;a._asyncCallbacks[f]=function(b){h.pc=b;System.out.println("sc.asyncID="+h.asyncID+" sc.pc = "+h.pc);j.eval.resumeEval(h)};j.eval.pc=j.eval.pcEnd;System.out.println("setting resume for pc="+h.pc+" "+f+" to "+a._asyncCallbacks[f]+
"//");return function(){System.out.println("resuming "+f+" "+a._asyncCallbacks[f]);a._asyncCallbacks[f](d)}}System.out.println(f+"?????????????????????"+e);return function(){setTimeout(function(){j.refresh(2)},10)}}};h._jsSetScreenDimensions=function(){if(this._applet){var f=a._getElement(this,this._is2D?"canvas2d":"canvas");this._applet.setScreenDimension(f.width,f.height)}};h._show=function(f){a.$setVisible(a.$(this,"appletdiv"),f);f&&a._repaint(this,!0)};h._canScript=function(){return!0};h._delay=
function(a,e,c){this._delayID=setTimeout(function(){a.resumeEval(e,!1)},c)};h._createDomNode=function(a,e){a=this._id+"_"+a;var c=document.getElementById(a);c&&document.body.removeChild(c);if(e){0==e.indexOf("<?")&&(e=e.substring(e.indexOf("<",1)));if(0<=e.indexOf("/>")){for(var c=e.split("/>"),j=c.length-1;0<=--j;)for(var h=c[j],d=h.lastIndexOf("<")+1,b=d,g=h.length,m="";++b<g;)if(0<=" \t\n\r".indexOf(h.charAt(b))){m=h.substring(d,b);c[j]=h+"></"+m+">";break}e=c.join("")}c=document.createElement("_xml");
c.id=a;c.innerHTML=e;c.style.display="none";document.body.appendChild(c);return c}};h.equals=function(a){return this==a};h.clone=function(){return this};h.hashCode=function(){return parseInt(this._uniqueId)};h._processGesture=function(a){return this._applet.processTwoPointGesture(a)};h._processEvent=function(a,e){this._applet.processMouseEvent(a,e[0],e[1],e[2],System.currentTimeMillis())};h._resize=function(){var f="__resizeTimeout_"+this._id;a[f]&&clearTimeout(a[f]);var e=this;a[f]=setTimeout(function(){a._repaint(e,
!0);a[f]=null},100)};return h};a._repaint=function(h,f){if(h&&h._applet){var e=a.$(h,"appletdiv"),c=Math.round(e.width()),e=Math.round(e.height());if(h._is2D&&(h._canvas.width!=c||h._canvas.height!=e))h._newCanvas(!0),h._applet.setDisplay(h._canvas);h._applet.setScreenDimension(c,e);f?setTimeout(function(){h._applet&&h._applet.update()}):h._applet.update()}};a._getHiddenCanvas=function(a,f,e,c,j){f=a._id+"_"+f;(a=document.getElementById(f))&&j&&(a=null);a||(a=document.createElement("canvas"));a.width=
a.style.width=e;a.height=a.style.height=c;a.id!=f&&(a.id=f);return a};a._loadImage=function(h,f,e,c,j){var k=f[1];if(null==j)return j=new Image,j.onload=function(){a._loadImage(h,f,null,c,j)},null!=e&&(e=J.io.Base64.getBase64(e).toString(),e=k.substring(url.lastIndexOf("/")+1),0<=e.indexOf(".png")||e.indexOf(".jpg")),j.src=k,!0;e=j.width;var d=j.height,b="echo_"+f[0],g=a._getHiddenCanvas(h.vwr.html5Applet,b,e,d,!0);g.imageWidth=e;g.imageHeight=d;g.id=b;g.image=j;a._setCanvasImage(g,e,d);c(g,k)};a._setCanvasImage=
function(a,f,e){a.buf32=null;a.width=f;a.height=e;a.getContext("2d").drawImage(a.image,0,0,f,e)}})(Jmol);
(function(a,h){a._Applet=function(c,f,e){window[c]=this;this._jmolType="Jmol._Applet"+(f.isSigned?" (signed)":"");this._viewType="Jmol";this._isJava=!0;this._syncKeyword="Select:";this._availableParams=";progressbar;progresscolor;boxbgcolor;boxfgcolor;allowjavascript;boxmessage;\t\t\t\t\t\t\t\t\t;messagecallback;pickcallback;animframecallback;appletreadycallback;atommovedcallback;\t\t\t\t\t\t\t\t\t;echocallback;evalcallback;hovercallback;language;loadstructcallback;measurecallback;\t\t\t\t\t\t\t\t\t;minimizationcallback;resizecallback;scriptcallback;statusform;statustext;statustextarea;\t\t\t\t\t\t\t\t\t;synccallback;usecommandthread;syncid;appletid;startupscript;menufile;";if(e)return this;
this._isSigned=f.isSigned;this._readyFunction=f.readyFunction;this._ready=!1;this._isJava=!0;this._isInfoVisible=!1;this._applet=null;this._memoryLimit=f.memoryLimit||512;this._canScript=function(){return!0};this._savedOrientations=[];this._initialize=function(d,b){var g=!1;a._jarFile&&(b=a._jarFile);if(this._jarFile){var c=this._jarFile;0<=c.indexOf("/")?(alert("This web page URL is requesting that the applet used be "+c+". This is a possible security risk, particularly if the applet is signed, because signed applets can read and write files on your local machine or network."),
"yes"==prompt("Do you want to use applet "+c+"? ","yes or no")?(d=c.substring(0,c.lastIndexOf("/")),b=c.substring(c.lastIndexOf("/")+1)):g=!0):b=c;this_isSigned=f.isSigned=0<=b.indexOf("Signed")}this._jarPath=f.jarPath=d||".";this._jarFile=f.jarFile="string"==typeof b?b:(b?"JmolAppletSigned":"JmolApplet")+"0.jar";g&&alert("The web page URL was ignored. Continuing using "+this._jarFile+' in directory "'+this._jarPath+'"');void 0==a.controls||a.controls._onloadResetForms()};this._create(c,f);return this};
var f=a._Applet,e=a._Applet.prototype;f._get=function(c,e,h){h||(h=!1);e||(e={});a._addDefaultInfo(e,{color:"#FFFFFF",width:300,height:300,addSelectionOptions:!1,serverURL:"http://your.server.here/jsmol.php",defaultModel:"",script:null,src:null,readyFunction:null,use:"HTML5",jarPath:"java",jarFile:"JmolApplet0.jar",isSigned:!1,j2sPath:"j2s",coverImage:null,coverTitle:"",coverCommand:"",deferApplet:!1,deferUncover:!1,disableJ2SLoadMonitor:!1,disableInitialConsole:!1,debug:!1});a._debugAlert=e.debug;
e.serverURL&&(a._serverUrl=e.serverURL);for(var d=!1,b=null,g=e.use.toUpperCase().split("#")[0].split(" "),m=0;m<g.length;m++){switch(g[m]){case "JAVA":d=!0;a.featureDetection.supportsJava()&&(b=new f(c,e,h));break;case "WEBGL":b=f._getCanvas(c,e,h,!0);break;case "HTML5":a.featureDetection.allowHTML5?b=f._getCanvas(c,e,h,!1):g.push("JAVA");break;case "IMAGE":b=new a._Image(c,e,h)}if(null!=b)break}null==b&&(h||!d?b={_jmolType:"none"}:d&&(b=new f(c,e)));return h?b:a._registerApplet(c,b)};f._getCanvas=
function(c,e,h,d){return d&&a.featureDetection.supportsWebGL()?(a._Canvas3D.prototype=a.GLmol.extendApplet(a._jsSetPrototype(new f(c,e,!0))),new a._Canvas3D(c,e,"Jmol",h)):!d?(a._Canvas2D.prototype=a._jsSetPrototype(new f(c,e,!0)),new a._Canvas2D(c,e,"Jmol",h)):null};f._noJavaMsg="Either you do not have Java applets enabled in your web<br />browser or your browser is blocking this applet.<br />\t\t\tCheck the warning message from your browser and/or enable Java applets in<br />\t\t\tyour web browser preferences, or install the Java Runtime Environment from <a href='http://www.java.com'>www.java.com</a>";
f._setCommonMethods=function(a){a._showInfo=e._showInfo;a._search=e._search;a._getName=e._getName;a._readyCallback=e._readyCallback};f._createApplet=function(c,e,k){c._initialize(e.jarPath,e.jarFile);var d=c._jarFile;a._isFile&&(d=d.replace(/0\.jar/,".jar"));var b=0<=c._containerWidth.indexOf("px")?c._containerWidth:"100%",g=0<=c._containerHeight.indexOf("px")?c._containerHeight:"100%",b=' style="width:'+b+";height:"+g+'" ',g="name='"+c._id+"_object' id='"+c._id+"_object' \n"+b+"\n";k.codebase=c._jarPath;
k.codePath=k.codebase+"/";if(0>k.codePath.indexOf("://")){var m=h.location.href.split("#")[0].split("?")[0].split("/");m[m.length-1]=k.codePath;k.codePath=m.join("/")}k.archive=d;k.mayscript="true";k.java_arguments="-Xmx"+Math.round(e.memoryLimit||c._memoryLimit)+"m";k.permissions=c._isSigned?"all-permissions":"sandbox";k.documentLocation=h.location.href;k.documentBase=h.location.href.split("#")[0].split("?")[0];k.jarPath=e.jarPath;a._syncedApplets.length&&(k.synccallback="Jmol._mySyncCallback");
c._startupScript&&(k.script=c._startupScript);var m="\n",n;for(n in k)k[n]&&(m+=" <param name='"+n+"' value='"+k[n]+"' />\n");m=a.featureDetection.useIEObject||a.featureDetection.useHtml4Object?"<object "+g+(a.featureDetection.useIEObject?" classid='clsid:8AD9C840-044E-11D1-B3E9-00805F499D93' codebase='http://java.sun.com/update/1.6.0/jinstall-6u22-windows-i586.cab'>":" type='application/x-java-applet'>")+m+"<p style='background-color:yellow;"+b.split('"')[1]+";text-align:center;vertical-align:middle;'>\n"+
f._noJavaMsg+"</p></object>\n":"<applet "+g+" code='"+k.code+"' codebase='"+c._jarPath+"' archive='"+d+"' mayscript='true'>\n"+m+"<table bgcolor='yellow'><tr><td align='center' valign='middle' "+b+">\n"+f._noJavaMsg+"</td></tr></table></applet>\n";c._deferApplet&&(c._javaCode=m,m="");m=a._getWrapper(c,!0)+m+a._getWrapper(c,!1)+(e.addSelectionOptions?a._getGrabberOptions(c):"");a._debugAlert&&alert(m);c._code=a._documentWrite(m)};e._newApplet=function(a){this._viewerOptions=a;return new J.appletjs.Jmol(a)};
e._create=function(c,e){a._setObject(this,c,e);var h={syncId:a._syncId,progressbar:"true",progresscolor:"blue",boxbgcolor:this._color||"black",boxfgcolor:"white",boxmessage:"Downloading JmolApplet ...",script:this._color?'background "'+this._color+'"':"",code:"JmolApplet.class"};a._setAppletParams(this._availableParams,h,e);var d;e.inlineModel?(d=e.inlineModel,d=d.replace(/\r|\n|\r\n/g,0<=d.indexOf("|")?"\\/n":"|").replace(/'/g,"'"),a._debugAlert&&alert("inline model:\n"+d)):d="";h.loadInline=
d;h.appletReadyCallback="Jmol._readyCallback";a._syncedApplets.length&&(h.synccallback="Jmol._mySyncCallback");h.java_arguments="-Xmx"+Math.round(e.memoryLimit||this._memoryLimit)+"m";this._initialize(e.jarPath,e.jarFile);f._createApplet(this,e,h)};e._readyCallback=function(c,f,e,d){e&&(a._setDestroy(this),this._ready=!0,c=this._readyScript,this._applet=d,this._defaultModel?a._search(this,this._defaultModel,c?";"+c:""):c?this._script(c):this._src&&this._script('load "'+this._src+'"'),this._showInfo(!0),
this._showInfo(!1),a.Cache.setDragDrop(this),this._readyFunction&&this._readyFunction(this),a._setReady(this),(d=this._2dapplet)&&(d._isEmbedded&&d._ready&&d.__Info.visible)&&this._show2d(!0))};e._showInfo=function(c){c&&this._2dapplet&&this._2dapplet._show(!1);a.$html(a.$(this,"infoheaderspan"),this._infoHeader);this._info&&a.$html(a.$(this,"infodiv"),this._info);if(!this._isInfoVisible!=!c){this._isInfoVisible=c;if(this._isJava){var f=c?2:"100%";a.$setSize(a.$(this,"appletdiv"),f,f)}a.$setVisible(a.$(this,
"infotablediv"),c);a.$setVisible(a.$(this,"infoheaderdiv"),c);this._show(!c)}};e._show2d=function(a){this._2dapplet._show2d(a);this._2dapplet._isEmbedded&&(this._showInfo(!1),this._show(!a),this._2dapplet.__showContainer(!0,!0))};e._getAtomCorrelation=function(a){this._loadMolData(a,"atommap = compare({1.1} {2.1} 'MAP' 'H'); zap 2.1",!0);a=jmol._evaluate("atommap");for(var f=jmol._evaluate("{*}.count"),e=[],d=[],b=0;b<a.length;b++){var g=a[b];e[g[0]+1]=g[1]-f+1;d[g[1]-f+1]=g[0]+1}return{fromJmol:e,
toJmol:d}};e._show=function(c){var f=!c?2:"100%";a.$setSize(a.$(this,"object"),f,f);this._isJava||a.$setVisible(a.$(this,"appletdiv"),c)};e._clearConsole=function(){this._console==this._id+"_infodiv"&&(this.info="");self.Clazz&&(a._setConsoleDiv(this._console),Clazz.Console.clear())};e._addScript=function(a){this._readyScript||(this.readyScript="");this._readyScript&&(this._readyScript+=";");this._readyScript+=a;return!0};e._script=function(c){if(!this._ready)return this._addScript(c);a._setConsoleDiv(this._console);
this._applet.script(c)};e._syncScript=function(a){this._applet.syncScript(a)};e._scriptCheck=function(a){return this._ready&&this._applet.scriptCheck(a)};e._scriptWait=function(a,f){var e=this._scriptWaitAsArray(a),d="";if(!f)for(var b=e.length;0<=--b;)for(var g=0,h=e[b].length;g<h;g++)d+=e[b][g]+"\n";return d};e._scriptEcho=function(a){a=this._scriptWaitAsArray(a);for(var f="",e=a.length;0<=--e;)for(var d=a[e].length;0<=--d;)"scriptEcho"==a[e][d][1]&&(f+=a[e][d][3]+"\n");return f.replace(/ \| /g,
"\n")};e._scriptMessage=function(a){a=this._scriptWaitAsArray(a);for(var f="",e=a.length;0<=--e;)for(var d=a[e].length;0<=--d;)"scriptStatus"==a[e][d][1]&&(f+=a[e][d][3]+"\n");return f.replace(/ \| /g,"\n")};e._scriptWaitOutput=function(a){var f="";try{a&&(f+=this._applet.scriptWaitOutput(a))}catch(e){}return f};e._scriptWaitAsArray=function(c){var f="";try{if(this._getStatus("scriptEcho,scriptMessage,scriptStatus,scriptError"),c&&(f+=this._applet.scriptWait(c),f=a._evalJSON(f,"jmolStatus"),"object"==
typeof f))return f}catch(e){}return[[f]]};e._getStatus=function(c){return a._sortMessages(this._getPropertyAsArray("jmolStatus",c))};e._getPropertyAsArray=function(c,f){return a._evalJSON(this._getPropertyAsJSON(c,f),c)};e._getPropertyAsString=function(a,f){void 0==f&&(f="");return this._applet.getPropertyAsString(a,f)+""};e._getPropertyAsJSON=function(a,f){void 0==f&&(f="");try{return this._applet.getPropertyAsJSON(a,f)+""}catch(e){return""}};e._getPropertyAsJavaObject=function(a,f){void 0==f&&(f=
"");return this._applet.getProperty(a,f)};e._evaluate=function(a){null!=a||(a="");return this._getPropertyAsArray("variableInfo",a)};e._evaluateDEPRECATED=function(a){a=""+this._getPropertyAsJavaObject("evaluate",a);var f=a.replace(/\-*\d+/,"");if(""==f&&!isNaN(parseInt(a)))return parseInt(a);f=a.replace(/\-*\d*\.\d*/,"");return""==f&&!isNaN(parseFloat(a))?parseFloat(a):a};e._saveOrientation=function(a){return this._savedOrientations[a]=this._getPropertyAsArray("orientationInfo","info").moveTo};e._restoreOrientation=
function(a){a=this._savedOrientations[a];return!a||""==a?a.replace(/1\.0/,"0"):this._scriptWait(a)};e._restoreOrientationDelayed=function(a,f){1>arguments.length&&(f=1);var e=this._savedOrientations[a];return!e||""==e?e.replace(/1\.0/,f):this._scriptWait(e)};e._resizeApplet=function(c){function f(d,b){var g=""+d;return 0==g.length?b?"":a._allowedJmolSize[2]:g.indexOf("%")==g.length-1?g:1>=(d=parseFloat(d))&&0<d?100*d+"%":(isNaN(d=Math.floor(d))?a._allowedJmolSize[2]:d<a._allowedJmolSize[0]?a._allowedJmolSize[0]:
d>a._allowedJmolSize[1]?a._allowedJmolSize[1]:d)+(b?b:"")}var e;"object"==typeof c&&null!=c?(e=c[0]||c.width,c=c[1]||c.height):e=c;e=[f(e,"px"),f(c,"px")];c=a._getElement(this,"appletinfotablediv");c.style.width=e[0];c.style.height=e[1];this._containerWidth=e[0];this._containerHeight=e[1];this._is2D&&a._repaint(this,!0)};e._search=function(c,f){a._search(this,c,f)};e._searchDatabase=function(c,f,e){if(this._2dapplet&&this._2dapplet._isEmbedded&&!a.$(this,"appletdiv:visible")[0])return this._2dapplet._searchDatabase(c,
f,e);this._showInfo(!1);0<=c.indexOf("?")?a._getInfoFromDatabase(this,f,c.split("?")[0]):(e||(e=a._getScriptForDatabase(f)),c=f+c,this._currentView=null,this._searchQuery=c,this._loadFile(c,e,c))};e._loadFile=function(c,f,e){this._showInfo(!1);f||(f="");this._thisJmolModel=""+Math.random();this._fileName=c;if(!this._scriptLoad(c,f)){var d=this;a._loadFileData(this,c,function(a){d.__loadModel(a,f,e)},function(){d.__loadModel(null)})}};e._scriptLoad=function(a,f){f||(f="");var e=this._isJava||!this._noscript;
e&&this._script("zap;set echo middle center;echo Retrieving data...");if(!this._isSigned||null!=this._viewSet)return!1;e?this._script('load async "'+a+'";'+f):this._applet.openFile(a);this._checkDeferred("");return!0};e.__loadModel=function(c,f,e){null!=c&&(null!=this._viewSet&&(f||(f=""),f+=";if ({*}.molecule.max > 1 || {*}.modelindex.max > 0){ delete molecule > 1 or modelindex > 0;x = getProperty('extractModel',{*});load inline @x};"),!f&&this._noscript?this._applet.loadInlineString(c,"",!1):this._loadMolData(c,
f,!1),null!=this._viewSet&&a.View.updateView(this,{chemID:e,data:c}))};e._loadMolData=function(a,f,e){f||(f="");e=e?"append":"model";this._applet.scriptWait('load DATA "'+e+'"'+a+'\nEND "'+e+'" ;'+f)};e._loadModelFromView=function(c){this._currentView=c;var f=c.Jmol;null!=f.data?this.__loadModel(f.data,null,c.info.chemID):null!=c.info.chemID?a._searchMol(this,c.info.chemID,null,!1):(f=c.JME)&&f.applet._show2d(!1,this)};e._updateView=function(){null!=this._viewSet&&this._applet&&(chemID=""+this._getPropertyAsJavaObject("variableInfo",
"script('show chemical inchiKey')"),chemID=36>chemID.length()?null:chemID.substring(36).split("\n")[0],a.View.updateView(this,{chemID:chemID,data:""+this._getPropertyAsJavaObject("evaluate","extractModel","{visible}")}))};e._atomPickedCallback=function(c,f){if(!(0>f)){var e=[f+1];a.View.updateAtomPick(this,e);this._updateAtomPick(e)}};e._updateAtomPick=function(a){this._script(0==a.length?"select none":"select on visible and (@"+a.join(",@")+")")};e._isDeferred=function(){return!this._canvas&&this._cover&&
this._isCovered&&this._deferApplet};e._checkDeferred=function(a){return this._isDeferred()?(this._coverScript=a,this._cover(!1),!0):!1};e._cover=function(c){c||!this._deferApplet?this._displayCoverImage(c):(c=this._coverScript?this._coverScript:"",this._coverScript="",this._deferUncover&&(c+=";refresh;javascript "+this._id+"._displayCoverImage(false)"),this._script(c,!0),this._deferUncover&&"activate 3D model"==this._coverTitle&&(a._getElement(this,"coverimage").title="3D model is loading..."),this._isJava||
this._newCanvas(!1),this._defaultModel&&a._search(this,this._defaultModel),this._showInfo(!1),this._deferUncover||this._displayCoverImage(!1),this._isJava&&a.$html(a.$(this,"appletdiv"),this._javaCode),this._init&&this._init())};e._displayCoverImage=function(c){this._coverImage&&this._isCovered!=c&&(this._isCovered=c,a._getElement(this,"coverdiv").style.display=c?"block":"none")};e._getSmiles=function(){return this._evaluate("{visible}.find('SMILES')")};e._getMol=function(){return this._evaluate("getProperty('ExtractModel',{visible})")};
e._getMol2D=function(){return jmol._evaluate("script('select visible;show chemical sdf')")};a.jmolSmiles=function(a){return a._getSmiles()}})(Jmol,document);
(function(a){var h=a.controls={_hasResetForms:!1,_scripts:[""],_checkboxMasters:{},_checkboxItems:{},_actions:{},_buttonCount:0,_checkboxCount:0,_radioGroupCount:0,_radioCount:0,_linkCount:0,_cmdCount:0,_menuCount:0,_previousOnloadHandler:null,_control:null,_element:null,_appletCssClass:null,_appletCssText:"",_buttonCssClass:null,_buttonCssText:"",_checkboxCssClass:null,_checkboxCssText:"",_radioCssClass:null,_radioCssText:"",_linkCssClass:null,_linkCssText:"",_menuCssClass:null,_menuCssText:""};
h._addScript=function(a,e){var c=h._scripts.length;h._scripts[c]=[a,e];return c};h._getIdForControl=function(a,e){return"string"==typeof a?a:!e||!a._canScript||a._canScript(e)?a._id:null};h._radio=function(a,e,c,j,k,d,b,g){var m=h._getIdForControl(a,e);if(null==m)return null;++h._radioCount;void 0!=d&&null!=d||(d="jmolRadioGroup"+(h._radioGroupCount-1));if(!e)return"";void 0!=b&&null!=b||(b="jmolRadio"+(h._radioCount-1));void 0!=c&&null!=c||(c=e.substring(0,32));k||(k="");a="</span>";h._actions[b]=
h._addScript(m,e);e='<span id="span_'+b+'"'+(g?' title="'+g+'"':"")+"><input name='"+d+"' id='"+b+"' type='radio' onclick='Jmol.controls._click(this);return true;' onmouseover='Jmol.controls._mouseOver(this);return true;' onmouseout='Jmol.controls._mouseOut()' "+(j?"checked='true' ":"")+h._radioCssText+" />";0<=c.toLowerCase().indexOf("<td>")&&(e+=a,a="");return e+('<label for="'+b+'">'+c+"</label>"+a+k)};h._scriptExecute=function(f,e){var c=a._applets[e[0]],h=e[1];if("object"==typeof h)h[0](f,h,
c);else"function"==typeof h?h(c):a.script(c,h)};h.__checkScript=function(a,e){var c=0<=e.value.indexOf("JSCONSOLE ")||""===a._scriptCheck(e.value);e.style.color=c?"black":"red";return c};h.__getCmd=function(a,e){if(e._cmds&&e._cmds.length){var c=e._cmds[e._cmdpt=(e._cmdpt+e._cmds.length+a)%e._cmds.length];setTimeout(function(){e.value=c},10);e._cmdadd=1;e._cmddir=a}};h._commandKeyPress=function(f,e,c){f=13==f?13:window.event?window.event.keyCode:f?f.keyCode||f.which:0;var j=document.getElementById(e),
k=a._applets[c];switch(f){case 13:return e=j.value,h._scriptExecute(j,[c,e]),j._cmds||(j._cmds=[],j._cmddir=0,j._cmdpt=-1,j._cmdadd=0),e&&0==j._cmdadd?(++j._cmdpt,j._cmds.splice(j._cmdpt,0,e),j._cmdadd=0,j._cmddir=0):j._cmdadd=0,j.value="",!1;case 27:return setTimeout(function(){j.value=""},20),!1;case 38:h.__getCmd(-1,j);break;case 40:h.__getCmd(1,j);break;default:j._cmdadd=0}setTimeout(function(){h.__checkScript(k,j)},20);return!0};h._click=function(a,e){h._element=a;1==arguments.length&&(e=h._actions[a.id]);
h._scriptExecute(a,h._scripts[e])};h._menuSelected=function(a){var e=a.value;if(void 0!=e)h._scriptExecute(a,h._scripts[e]);else{e=a.length;if("number"==typeof e)for(var c=0;c<e;++c)if(a[c].selected){h._click(a[c],a[c].value);return}alert("?Que? menu selected bug #8734")}};h._cbNotifyMaster=function(a){var e=!0,c=!0,j;for(j in a.chkGroup)a.chkGroup[j].checked?c=!1:e=!1;e&&(a.chkMaster.checked=!0);c&&(a.chkMaster.checked=!1);(e||c)&&h._checkboxItems[a.chkMaster.id]&&h._cbNotifyMaster(h._checkboxItems[a.chkMaster.id])};
h._cbNotifyGroup=function(a,e){for(var c in a.chkGroup){var j=a.chkGroup[c];j.checked!=e&&(j.checked=e,h._cbClick(j));h._checkboxMasters[j.id]&&h._cbNotifyGroup(h._checkboxMasters[j.id],e)}};h._cbSetCheckboxGroup=function(a,e,c){var j=a;"number"==typeof j&&(j="jmolCheckbox"+j);(a=document.getElementById(j))||alert("jmolSetCheckboxGroup: master checkbox not found: "+j);var k=h._checkboxMasters[j]={};k.chkMaster=a;k.chkGroup={};"string"==typeof e?(e=c,j=1):j=0;for(a=j;a<e.length;a++)j=e[a],"number"==
typeof j&&(j="jmolCheckbox"+j),(checkboxItem=document.getElementById(j))||alert("jmolSetCheckboxGroup: group checkbox not found: "+j),k.chkGroup[j]=checkboxItem,h._checkboxItems[j]=k};h._cbClick=function(a){h._control=a;var e=h._actions[a.id][0],c=h._actions[a.id][1];h._click(a,a.checked?e:c);h._checkboxMasters[a.id]&&h._cbNotifyGroup(h._checkboxMasters[a.id],a.checked);h._checkboxItems[a.id]&&h._cbNotifyMaster(h._checkboxItems[a.id])};h._cbOver=function(a){var e=h._actions[a.id][0],c=h._actions[a.id][1];
window.status=h._scripts[a.checked?c:e]};h._mouseOver=function(a,e){1==arguments.length&&(e=h._actions[a.id]);window.status=h._scripts[e]};h._mouseOut=function(){window.status=" ";return!0};h._onloadResetForms=function(){h._hasResetForms||(h._hasResetForms=!0,h._previousOnloadHandler=window.onload,window.onload=function(){if(0<h._buttonCount+h._checkboxCount+h._menuCount+h._radioCount+h._radioGroupCount)for(var a=document.forms,e=a.length;0<=--e;)a[e].reset();h._previousOnloadHandler&&h._previousOnloadHandler()})};
h._getButton=function(f,e,c,j,k){f=h._getIdForControl(f,e);if(null==f)return"";void 0!=j&&null!=j||(j="jmolButton"+h._buttonCount);void 0!=c&&null!=c||(c=e.substring(0,32));++h._buttonCount;h._actions[j]=h._addScript(f,e);e='<span id="span_'+j+'"'+(k?' title="'+k+'"':"")+"><input type='button' name='"+j+"' id='"+j+"' value='"+c+"' onclick='Jmol.controls._click(this)' onmouseover='Jmol.controls._mouseOver(this);return true' onmouseout='Jmol.controls._mouseOut()' "+h._buttonCssText+" /></span>";a._debugAlert&&
alert(e);return a._documentWrite(e)};h._getCheckbox=function(f,e,c,j,k,d,b){var g=h._getIdForControl(f,e);null!=g&&(g=h._getIdForControl(f,c));if(null==g)return"";void 0!=d&&null!=d||(d="jmolCheckbox"+h._checkboxCount);++h._checkboxCount;if(void 0==e||null==e||void 0==c||null==c)alert("jmolCheckbox requires two scripts");else if(void 0==j||null==j)alert("jmolCheckbox requires a label");else return h._actions[d]=[h._addScript(g,e),h._addScript(g,c)],f="</span>",k='<span id="span_'+d+'"'+(b?' title="'+
b+'"':"")+"><input type='checkbox' name='"+d+"' id='"+d+"' onclick='Jmol.controls._cbClick(this)' onmouseover='Jmol.controls._cbOver(this);return true' onmouseout='Jmol.controls._mouseOut()' "+(k?"checked='true' ":"")+h._checkboxCssText+" />",0<=j.toLowerCase().indexOf("<td>")&&(k+=f,f=""),k+='<label for="'+d+'">'+j+"</label>"+f,a._debugAlert&&alert(k),a._documentWrite(k)};h._getCommandInput=function(f,e,c,j,k,d){f=h._getIdForControl(f,"x");if(null==f)return"";void 0!=j&&null!=j||(j="jmolCmd"+h._cmdCount);
void 0!=e&&null!=e||(e="Execute");void 0!=c&&!isNaN(c)||(c=60);void 0!=d||(d="help");++h._cmdCount;e='<span id="span_'+j+'"'+(k?' title="'+k+'"':"")+"><input name='"+j+"' id='"+j+"' size='"+c+"' onkeydown='return Jmol.controls._commandKeyPress(event,\""+j+'","'+f+"\")' value='"+d+"'/><input type='button' name='"+j+"Btn' id='"+j+"Btn' value = '"+e+"' onclick='Jmol.controls._commandKeyPress(13,\""+j+'","'+f+"\")' /></span>";a._debugAlert&&alert(e);return a._documentWrite(e)};h._getLink=function(f,
e,c,j,k){f=h._getIdForControl(f,e);if(null==f)return"";void 0!=j&&null!=j||(j="jmolLink"+h._linkCount);void 0!=c&&null!=c||(c=e.substring(0,32));++h._linkCount;e=h._addScript(f,e);c='<span id="span_'+j+'"'+(k?' title="'+k+'"':"")+"><a name='"+j+"' id='"+j+"' href='javascript:Jmol.controls._click(null,"+e+");' onmouseover='Jmol.controls._mouseOver(null,"+e+");return true;' onmouseout='Jmol.controls._mouseOut()' "+h._linkCssText+">"+c+"</a></span>";a._debugAlert&&alert(c);return a._documentWrite(c)};
h._getMenu=function(f,e,c,j,k){var d=h._getIdForControl(f,null);void 0!=j&&null!=j||(j="jmolMenu"+h._menuCount);++h._menuCount;d=typeof e;if(null!=d&&"object"==d&&e.length){var b=e.length;"number"!=typeof c||1==c?c=null:0>c&&(c=b);c='<span id="span_'+j+'"'+(k?' title="'+k+'"':"")+"><select name='"+j+"' id='"+j+"' onChange='Jmol.controls._menuSelected(this)'"+(c?" size='"+c+"' ":"")+h._menuCssText+">";for(j=0;j<b;++j){var g=e[j],d=typeof g,m=null,n=k=null;"object"==d&&null!=g?(m=g[0],k=g[1],n=g[2]):
m=k=g;d=h._getIdForControl(f,m);if(null==d)return"";null==k&&(k=m);"#optgroup"==m?c+="<optgroup label='"+k+"'>":"#optgroupEnd"==m?c+="</optgroup>":(d=h._addScript(d,m),c+="<option value='"+d+(n?"' selected='true'>":"'>")+k+"</option>")}c+="</select></span>";a._debugAlert&&alert(c);return a._documentWrite(c)}};h._getRadio=function(f,e,c,j,k,d,b,g){0==h._radioGroupCount&&++h._radioGroupCount;d||(d="jmolRadioGroup"+(h._radioGroupCount-1));f=h._radio(f,e,c,j,k,d,b?b:d+"_"+h._radioCount,g?g:0);if(null==
f)return"";a._debugAlert&&alert(f);return a._documentWrite(f)};h._getRadioGroup=function(f,e,c,j,k,d){var b=typeof e;if("object"!=b||null==b||!e.length)alert("invalid arrayOfRadioButtons");else{void 0!=c&&null!=c||(c="  ");var g=e.length;++h._radioGroupCount;j||(j="jmolRadioGroup"+(h._radioGroupCount-1));for(var m="<span id='"+(k?k:j)+"'>",n=0;n<g;++n){n==g-1&&(c="");var t=e[n],b=typeof t,l=null,m="object"==b?m+(l=h._radio(f,t[0],t[1],t[2],c,j,3<t.length?t[3]:(k?k:j)+"_"+n,4<t.length?t[4]:0,
d)):m+(l=h._radio(f,t,null,null,c,j,(k?k:j)+"_"+n,d));if(null==l)return""}m+="</span>";a._debugAlert&&alert(m);return a._documentWrite(m)}}})(Jmol);
(function(a){var h=function(a){a="&"+a+"=";return decodeURI(("&"+document.location.search.substring(1)+a).split(a)[1].split("&")[0])};a._j2sPath=h("_J2S");a._jarFile=h("_JAR");a._use=h("_USE");a.getVersion=function(){return a._jmolInfo.version};a.getApplet=function(f,e,c){return a._Applet._get(f,e,c)};a.getJMEApplet=function(f,e,c,h){return a._JMEApplet._get(f,e,c,h)};a.getJSVApplet=function(f,e,c){return a._JSVApplet._get(f,e,c)};a.loadFile=function(a,e,c){a._loadFile(e,c)};a.script=function(a,e){a._checkDeferred(e)||
a._script(e)};a.scriptCheck=function(a,e){return a&&a._scriptCheck&&a._ready&&a._scriptCheck(e)};a.scriptWait=function(a,e){return a._scriptWait(e)};a.scriptEcho=function(a,e){return a._scriptEcho(e)};a.scriptMessage=function(a,e){return a._scriptMessage(e)};a.scriptWaitOutput=function(a,e){return a._scriptWait(e)};a.scriptWaitAsArray=function(a,e){return a._scriptWaitAsArray(e)};a.search=function(a,e,c){a._search(e,c)};a.evaluateVar=function(a,e){return a._evaluate(e)};a.evaluate=function(a,e){return a._evaluateDEPRECATED(e)};
a.getAppletHtml=function(f,e){if(e){var c=a._document;a._document=null;f=a.getApplet(f,e);a._document=c}return f._code};a.getPropertyAsArray=function(a,e,c){return a._getPropertyAsArray(e,c)};a.getPropertyAsJavaObject=function(a,e,c){return a._getPropertyAsJavaObject(e,c)};a.getPropertyAsJSON=function(a,e,c){return a._getPropertyAsJSON(e,c)};a.getPropertyAsString=function(a,e,c){return a._getPropertyAsString(e,c)};a.getStatus=function(a,e){return a._getStatus(e)};a.resizeApplet=function(a,e){return a._resizeApplet(e)};
a.restoreOrientation=function(a,e){return a._restoreOrientation(e)};a.restoreOrientationDelayed=function(a,e,c){return a._restoreOrientationDelayed(e,c)};a.saveOrientation=function(a,e){return a._saveOrientation(e)};a.say=function(a){alert(a)};a.clearConsole=function(a){a._clearConsole()};a.getInfo=function(a){return a._info};a.setInfo=function(a,e,c){a._info=e;2<arguments.length&&a._showInfo(c)};a.showInfo=function(a,e){a._showInfo(e)};a.show2d=function(a,e){a._show2d(e)};a.jmolBr=function(){return a._documentWrite("<br />")};
a.jmolButton=function(f,e,c,h,k){return a.controls._getButton(f,e,c,h,k)};a.jmolCheckbox=function(f,e,c,h,k,d,b){return a.controls._getCheckbox(f,e,c,h,k,d,b)};a.jmolCommandInput=function(f,e,c,h,k,d){return a.controls._getCommandInput(f,e,c,h,k,d)};a.jmolHtml=function(f){return a._documentWrite(f)};a.jmolLink=function(f,e,c,h,k){return a.controls._getLink(f,e,c,h,k)};a.jmolMenu=function(f,e,c,h,k){return a.controls._getMenu(f,e,c,h,k)};a.jmolRadio=function(f,e,c,h,k,d,b,g){return a.controls._getRadio(f,
e,c,h,k,d,b,g)};a.jmolRadioGroup=function(f,e,c,h,k,d){return a.controls._getRadioGroup(f,e,c,h,k,d)};a.setCheckboxGroup=function(f,e){a.controls._cbSetCheckboxGroup(f,e,arguments)};a.setDocument=function(f){a._document=f};a.setXHTML=function(f){a._isXHTML=!0;a._XhtmlElement=null;a._XhtmlAppendChild=!1;f&&(a._XhtmlElement=document.getElementById(f),a._XhtmlAppendChild=!0)};a.setAppletCss=function(f,e){null!=f&&(a._appletCssClass=f);a._appletCssText=e?e+" ":f?'class="'+f+'" ':""};a.setButtonCss=function(f,
e){null!=f&&(a.controls._buttonCssClass=f);a.controls._buttonCssText=e?e+" ":f?'class="'+f+'" ':""};a.setCheckboxCss=function(f,e){null!=f&&(a.controls._checkboxCssClass=f);a.controls._checkboxCssText=e?e+" ":f?'class="'+f+'" ':""};a.setRadioCss=function(f,e){null!=f&&(a.controls._radioCssClass=f);a.controls._radioCssText=e?e+" ":f?'class="'+f+'" ':""};a.setLinkCss=function(f,e){null!=f&&(a.controls._linkCssClass=f);a.controls._linkCssText=e?e+" ":f?'class="'+f+'" ':""};a.setMenuCss=function(f,e){null!=
f&&(a.controls._menuCssClass=f);a.controls._menuCssText=e?e+" ":f?'class="'+f+'" ':""};a.setAppletSync=function(f,e,c){a._syncedApplets=f;a._syncedCommands=e;a._syncedReady={};a._isJmolJSVSync=c};a.setGrabberOptions=function(f){a._grabberOptions=f};a.setAppletHtml=function(f,e){f._code&&(a.$html(e,f._code),f._init&&!f._deferApplet&&f._init())};a.coverApplet=function(a,e){a._cover&&a._cover(e)};a.setFileCaching=function(f,e){f?f._cacheFiles=e:a.fileCache=e?{}:null};a.updateView=function(a,e,c){a._updateView(e,
c)};a.getChemicalInfo=function(f,e,c){e||(e="name");"string"!=typeof applet_or_Identifier&&(f=f._getSmiles());return a._getNCIInfo(f,e,c)};a.saveImage=function(a){switch(a._viewType){case "Jmol":a._script('write PNGJ "'+a._id+'.png"');break;case "JSV":a._script("write PDF");break;case "JME":a._script("print")}}})(Jmol);
LoadClazz=function(){window["j2s.clazzloaded"]||(window["j2s.clazzloaded"]=!1);window["j2s.clazzloaded"]||(window["j2s.clazzloaded"]=!0,window["j2s.object.native"]=!0,Clazz=function(){},function(a){a.__debuggingBH=!1;a._globals=["j2s.clazzloaded","j2s.object.native"];a.setGlobal=function(d,b){a._globals.push(d);window[d]=b};a.getGlobals=function(){return a._globals.sort().join("\n")};a.setConsoleDiv=function(a){window["j2s.lib"]&&(window["j2s.lib"].console=a)};a._profile=window["j2s.doProfile"]&&
self.JSON?{}:null;a.getProfile=function(){var d="";if(a._profile){var d=[],b;for(b in a._profile){var g=""+a._profile[b];d.push(" ".substring(g.length)+g+"\t"+b)}d=d.sort().reverse().join("\r\n");a._profile={}}return d};a.addProfile=function(d,b,g){d=d.__CLASS_NAME__+" "+b+" "+JSON.stringify(g);a._profile[d]||(a._profile[d]=0);a._profile[d]++};NullObject=function(){};a._supportsNativeObject=window["j2s.object.native"];a._supportsNativeObject?(a._O=function(){},a._O.__CLASS_NAME__="Object",
a._O.getClass=function(){return a._O}):a._O=Object;a.Console={};a.dateToString=Date.prototype.toString;a.getSignature=function(a,b,g,c){return c?a[b]=g:a[b]};a.addProto=function(d,b,g){a.getSignature(d,b,g,!0)};var h=a._O.prototype;a.addProto(h,"equals",function(a){return this==a});a.addProto(h,"hashCode",function(){try{return this.toString().hashCode()}catch(a){var b=":",g;for(g in this)b+=g+":";return b.hashCode()}});a.addProto(h,"getClass",function(){return a.getClass(this)});a.addProto(h,"clone",
function(){return a.clone(this)});a.clone=function(a){var b=new a.constructor,g;for(g in a)b[g]=a[g];return b};a.addProto(h,"finalize",function(){});a.addProto(h,"notify",function(){});a.addProto(h,"notifyAll",function(){});a.addProto(h,"wait",function(){});a.addProto(h,"to$tring",Object.prototype.toString);a.addProto(h,"toString",function(){return this.__CLASS_NAME__?"["+this.__CLASS_NAME__+" object]":this.to$tring.apply(this,arguments)});a._extendedObjectMethods="equals hashCode getClass clone finalize notify notifyAll wait to$tring toString".split(" ");
a.extendJO=function(d,b){b&&(d.__CLASS_NAME__=d.prototype.__CLASS_NAME__=b);if(a._supportsNativeObject)for(var g=0;g<a._extendedObjectMethods.length;g++){var c=a._extendedObjectMethods[g];a.getSignature(d.prototype,c,a._O.prototype[c],!0)}};a.extractClassName=function(a){a=a.substring(1,a.length-1);return 0<=a.indexOf("Array")?"Array":0<=a.indexOf("object ")?a.substring(7):a};a.getClassName=function(d,b){if(null==d)return"NullObject";if(d instanceof a.CastedNull)return d.clazzName;switch(typeof d){case "number":return"Number";
case "boolean":return"Boolean";case "string":return"String";case "function":if(d.__CLASS_NAME__)return b?d.__CLASS_NAME__:"Class";var g=d.toString(),c=g.indexOf("function");if(0>c)return"["==g.charAt(0)?a.extractClassName(g):g.replace(/[^a-zA-Z0-9]/g,"");var c=c+8,e=g.indexOf("(",c);if(0>e)return"Object";g=g.substring(c,e);if(0<=g.indexOf("Array"))return"Array";g=g.replace(/^\s+/,"").replace(/\s+$/,"");return"anonymous"==g||""==g?"Function":g;case "object":if(d.__CLASS_NAME__)return d.__CLASS_NAME__;
if(!d.constructor)return"Object";if(!d.constructor.__CLASS_NAME__){if(d instanceof Number)return"Number";if(d instanceof Boolean)return"Boolean";if(d instanceof Array)return"Array";g=d.toString();if("["==g.charAt(0))return a.extractClassName(g)}}return a.getClassName(d.constructor,!0)};a.getClass=function(d){if(!d)return a._O;if("function"==typeof d)return d;if(d instanceof a.CastedNull)d=d.clazzName;else switch(typeof d){case "string":return String;case "object":if(!d.__CLASS_NAME__)return d.constructor||
a._O;d=d.__CLASS_NAME__;break;default:return d.constructor}return a.evalType(d,!0)};a.extendsProperties=function(d,b){for(var g in b)"b$"!=g&&("prototype"!=g&&"superClazz"!=g&&"__CLASS_NAME__"!=g&&"implementz"!=g&&!a.checkInnerFunction(b,g))&&(d[g]=b[g])};a.checkInnerFunction=function(d,b){for(var g=0;g<a.innerFunctionNames.length;g++)if(b==a.innerFunctionNames[g]&&a._innerFunctions[b]===d[b])return!0;return!1};a.implementsProperties=function(d,b){for(var g in b)if("b$"!=g&&"prototype"!=g&&"superClazz"!=
g&&"__CLASS_NAME__"!=g&&"implementz"!=g&&("function"!=typeof b[g]||!a.checkInnerFunction(b,g)))d[g]=d.prototype[g]=b[g]};a.args4InheritClass=function(){};a.inheritArgs=new a.args4InheritClass;a.inheritClass=function(d,b,g){a.extendsProperties(d,b);a.unloadedClasses[a.getClassName(d,!0)]||(d.prototype=g?g:b!==Number?new b(a.inheritArgs):new Number);d.superClazz=b;d.prototype.__CLASS_NAME__=d.__CLASS_NAME__};a.implementOf=function(d,b){if(2<=arguments.length){d.implementz||(d.implementz=[]);var g=d.implementz;
if(2==arguments.length)if("function"==typeof b)g.push(b),a.implementsProperties(d,b);else{if(b instanceof Array)for(var c=0;c<b.length;c++)g.push(b[c]),a.implementsProperties(d,b[c])}else for(c=1;c<arguments.length;c++)g.push(arguments[c]),a.implementsProperties(d,arguments[c])}};a.extendInterface=a.implementOf;a.equalsOrExtendsLevel=function(d,b){if(d===b)return 0;if(d.implementz)for(var g=d.implementz,c=0;c<g.length;c++){var e=a.equalsOrExtendsLevel(g[c],b);if(0<=e)return e+1}return-1};a.getInheritedLevel=
function(d,b){if(d===b)return 0;var g="string"==typeof d;if(g&&("void"==d||"unknown"==d))return-1;var c="string"==typeof b;if(c&&("void"==b||"unknown"==b))return-1;if(d===(g?"NullObject":NullObject))switch(b){case Number:case Boolean:case NullObject:break;default:return 0}g&&(d=a.evalType(d));c&&(b=a.evalType(b));if(!b||!d)return-1;g=0;for(c=d;c!==b&&10>g;){if(c.implementz)for(var e=c.implementz,f=0;f<e.length;f++){var l=a.equalsOrExtendsLevel(e[f],b);if(0<=l)return g+l+1}c=c.superClazz;if(!c)return b===
Object||b===a._O?g+1.5:-1;g++}return g};a.instanceOf=function(d,b){return null!=d&&b&&(d instanceof b||0<=a.getInheritedLevel(a.getClassName(d),b))};a.superCall=function(d,b,g,c){var e=null,f=-1,l=d[g];if(l)if(l.claxxOwner)l.claxxOwner!==b&&(e=l);else if(!l.stacks&&(!l.lastClaxxRef||!l.lastClaxxRef.prototype[g]||!l.lastClaxxRef.prototype[g].stacks))e=l;else{var h=l.stacks;h||(h=l.lastClaxxRef.prototype[g].stacks);for(f=h.length;0<=--f;)if(b===h[f]){0<f?(f--,e=h[f].prototype[g]):e=h[0].prototype[g]["\\unknown"];
break}else if(0<a.getInheritedLevel(b,h[f])){e=h[f].prototype[g];break}}if(e)return 0==f&&"construct"==g&&(b=l.stacks)&&(!b[0].superClazz&&b[0].con$truct)&&b[0].con$truct.apply(d,[]),e.apply(d,c||[]);if("construct"!=g)throw a.alert(["j2slib","no class found",c.typeString]),new a.MethodNotFoundException(d,b,g,a.getParamsType(c).typeString);};a.findArrayItem=function(a,b){if(a&&b)for(var g=a.length;0<=--g;)if(a[g]===b)return g;return-1};a.removeArrayItem=function(d,b){var g=a.findArrayItem(d,b);if(0<=
g){for(var c=d.length-1;g<c;g++)d[g]=d[g+1];d.length--;return!0}};a.superConstructor=function(d,b,g){a.superCall(d,b,"construct",g);b.con$truct&&b.con$truct.apply(d,[])};a.CastedNull=function(d){this.clazzName=d?d instanceof String?d:d instanceof Function?a.getClassName(d,!0):""+d:"Object";this.toString=function(){return null};this.valueOf=function(){return null}};a.castNullAs=function(d){return new a.CastedNull(d)};a.MethodException=function(){};a.MethodNotFoundException=function(){this.toString=
function(){return"MethodNotFoundException"}};a.getParamsType=function(d){var b=d.length;switch(b){case 0:var g=["void"];g.typeString="\\void";return g;case 1:if((g=d[0])&&"number"==typeof g)return g=["Number"],g.typeString="\\Number",g}g=[];g.hasCastedNull=!1;if(d)for(var c=0;c<b;c++)g[c]=a.getClassName(d[c]),d[c]instanceof a.CastedNull&&(g.hasCastedNull=!0);g.typeString="\\"+g.join("\\");return g};a.searchAndExecuteMethod=function(d,b,g,c){var e=d[g],f=a.getParamsType(c);a._profile&&a.addProfile(b,
g,f);if(e.lastParams==f.typeString&&e.lastClaxxRef===b){if(f.hasCastedNull){b=[];for(g=0;g<c.length;g++)b[g]=c[g]instanceof a.CastedNull?null:c[g]}else b=c;return e.lastMethod?e.lastMethod.apply(d,b):null}e.lastParams=f.typeString;e.lastClaxxRef=b;var l=e.stacks;l||(l=b.prototype[g].stacks);for(var h=!1,j=l.length;0<=--j;)if(h||l[j]===b){h=a.tryToSearchAndExecute(g,d,l[j].prototype[g],f,c,e);if(!(h instanceof a.MethodException))return h;h=!0}if("construct"!=g)throw new a.MethodNotFoundException(d,
b,g,f.typeString);};a.tryToSearchAndExecute=function(d,b,g,c,e,f){var l=[];d=!0;for(var h in g)if(92==h.charCodeAt(0)){var j=h.substring(1).split("\\");j.length==c.length&&l.push(j);d=!1}else if(d&&"funParams"==h&&g.funParams){h=g.funParams;j=h.substring(1).split("\\");j.length==c.length&&(l[0]=j);break}if(0==l.length)return new a.MethodException;if(l=a.searchMethod(l,c)){h=null;h=d?g:g["\\"+l];g=null;if(c.hasCastedNull){g=[];for(c=0;c<e.length;c++)g[c]=e[c]instanceof a.CastedNull?null:e[c]}else g=
e;f.lastMethod=h;return h.apply(b,g)}return new a.MethodException};a._initializingException=!1;a.searchMethod=function(d,b){for(var g=[],c=d.length,e=0;e<c;e++){for(var f=[],l=!0,h=d[e].length,j=0;j<h;j++)if(f[j]=a.getInheritedLevel(b[j],d[e][j]),0>f[j]){l=!1;break}l&&(f[b.length]=e,g.push(f))}if(0==g.length)return null;c=g[0];for(e=1;e<g.length;e++){f=!0;for(j=0;j<b.length;j++)if(c[j]<g[e][j]){f=!1;break}f&&(c=g[e])}return d[c[b.length]].join("\\")};a.generateDelegatingMethod=function(a,b){var g=
function(){var a=arguments;return SAEM(this,a.callee.claxxReference,a.callee.methodName,a)};g.methodName=b;g.claxxReference=a;return g};SAEM=a.searchAndExecuteMethod;a.expExpandParameters=function(a,b){switch(b){case "N":return"Number";case "B":return"Boolean";case "S":return"String";case "O":return"Object";case "A":return"Array"}return"Unknown"};a.formatParameters=function(d){return d?d.replace(/~([NABSO])/g,a.expExpandParameters).replace(/\s+/g,"").replace(/^|,/g,"\\").replace(/\$/g,"org.eclipse.s"):
"\\void"};a.overrideMethod=function(d,b,g,c){a.assureInnerClass&&a.assureInnerClass(d,g);g.exName=b;c=a.formatParameters(c);g.funParams=c;g.claxxOwner=d;return a.getSignature(d.prototype,b,g,!0)};a.defineMethod=function(d,b,g,c){a.assureInnerClass&&a.assureInnerClass(d,g);g.exName=b;c=a.formatParameters(c);var e=d.prototype,f=a.getSignature(e,b,g,!1);if(!f||f.claxxOwner===d&&f.funParams==c)return g.funParams=c,g.claxxOwner=d,g.exClazz=d,a.getSignature(e,b,g,!0);var l=null,h=[];f.stacks?h=f.stacks:
(l=f,f.claxxOwner&&(h[0]=l.claxxOwner));if(!f.stacks||f.claxxReference!==d){f=a.getSignature(e,b,a.generateDelegatingMethod(d,b,f),!0);b=[];for(e=0;e<h.length;e++)b[e]=h[e];f.stacks=b}h=f.stacks;0>a.findArrayItem(h,d)&&h.push(d);l&&(l.claxxOwner===d?(f[l.funParams]=l,l.claxxOwner=null,l.funParams=null):l.claxxOwner||(f["\\unknown"]=l));g.exClazz=d;f[c]=g;return f};a.makeConstructor=function(d,b,g){a.defineMethod(d,"construct",b,g);d.con$truct&&(d.con$truct.index=d.con$truct.stacks.length)};a.overrideConstructor=
function(d,b,g){a.overrideMethod(d,"construct",b,g);d.con$truct&&(d.con$truct.index=d.con$truct.stacks.length)};a.allPackage={};a.allClasses={};a.lastPackageName=null;a.lastPackage=null;a.unloadedClasses=[];a.declarePackage=function(d){if(a.lastPackageName==d)return a.lastPackage;if(d&&d.length){for(var b=d.split(/\./),g=a.allPackage,c=0;c<b.length;c++)g[b[c]]||(g[b[c]]={__PKG_NAME__:g.__PKG_NAME__?g.__PKG_NAME__+"."+b[c]:b[c]},0==c&&a.setGlobal(b[c],g[b[c]])),g=g[b[c]];a.lastPackageName=d;return a.lastPackage=
g}};a.evalType=function(d,b){var g=d.lastIndexOf(".");if(-1!=g){var c=d.substring(0,g),c=a.declarePackage(c),g=d.substring(g+1);return c[g]}if(b)return window[d];switch(d){case "string":return String;case "number":return Number;case "object":return a._O;case "boolean":return Boolean;case "function":return Function;case "void":case "undefined":case "unknown":return d;case "NullObject":return NullObject;default:return window[d]}};a.defineType=function(d,b,g,c){var e=a.unloadedClasses[d];e&&(b=e);e=
d.lastIndexOf(".");if(-1!=e){var f=d.substring(0,e),f=a.declarePackage(f),e=d.substring(e+1);if(f[e])return f[e];f[e]=b}else{if(window[d])return window[d];a.setGlobal(d,b)}a.decorateAsType(b,d,g,c);d=a._innerFunctions;b.defineMethod=d.defineMethod;b.defineStaticMethod=d.defineStaticMethod;b.makeConstructor=d.makeConstructor;return b};a.isSafari=-1!=navigator.userAgent.indexOf("Safari");a.isSafari4Plus=!1;if(a.isSafari){var h=navigator.userAgent,f=h.indexOf("Version/");-1!=f&&(h=h.substring(f+8),h=
parseFloat(h),a.isSafari4Plus=4<=h)}a.instantialize=function(d,b){if(!b||!(1==b.length&&b[0]&&b[0]instanceof a.args4InheritClass)){d instanceof Number&&(d.valueOf=function(){return this});if(a.isSafari4Plus){for(var g=[],c=0;c<b.length;c++)g[c]=b[c];b=g}(g=d.construct)?d.con$truct?d.getClass().superClazz?g.claxxOwner&&g.claxxOwner===d.getClass()||g.stacks&&g.stacks[g.stacks.length-1]==d.getClass()?g.apply(d,b):(g.claxxOwner&&!g.claxxOwner.superClazz&&g.claxxOwner.con$truct?g.claxxOwner.con$truct.apply(d,
[]):g.stacks&&(1==g.stacks.length&&!g.stacks[0].superClazz)&&g.stacks[0].con$truct.apply(d,[]),g.apply(d,b),d.con$truct.apply(d,[])):(d.con$truct.apply(d,[]),g.apply(d,b)):g.apply(d,b):d.con$truct&&d.con$truct.apply(d,[])}};a.innerFunctionNames="equals hashCode getName getClassLoader getResource getResourceAsStream defineMethod defineStaticMethod makeConstructor".split(" ");a._innerFunctions={equals:function(a){return this===a},hashCode:function(){return this.getName().hashCode()},toString:function(){return"class "+
this.getName()},getName:function(){return a.getClassName(this,!0)},getClassLoader:function(){var d=this.__CLASS_NAME__,b=a._Loader.getClasspathFor(d),g=b.lastIndexOf(d.replace(/\./g,"/")),b=-1!=g?b.substring(0,g):a._Loader.getClasspathFor(d,!0),d=a._Loader.requireLoaderByBase(b);d.getResourceAsStream=a._innerFunctions.getResourceAsStream;d.getResource=a._innerFunctions.getResource;return d},getResource:function(a){return this.getResourceAsStream(a).url},getResourceAsStream:function(d){if(!d)return null;
var b=null;java.io.InputStream?b=new java.io.InputStream:(b=new a._O,b.__CLASS_NAME__="java.io.InputStream",b.close=NullObject);b.read=function(){return 0};d=d.replace(/\\/g,"/");var g=null,c=this.__CLASS_NAME__;2==arguments.length&&0!=d.indexOf("/")&&(d="/"+d);if(0==d.indexOf("/"))if(2==arguments.length?(g=arguments[1])||(g=a._Loader.binaryFolders[0]):a._Loader&&(g=a._Loader.getClasspathFor(c,!0)),g){var g=g.replace(/\\/g,"/"),e=g.length,e=g.charAt(e-1);"/"!=e&&(g+="/");b.url=g+d.substring(1)}else b.url=
d.substring(1);else{if(this.base)g=this.base;else if(a._Loader)if(g=a._Loader.getClasspathFor(c),e=g.lastIndexOf(c.replace(/\./g,"/")),-1!=e)g=g.substring(0,e);else if(e=-1,g.indexOf(".z.js")==g.length-5&&-1!=(e=g.lastIndexOf("/")))for(var g=g.substring(0,e+1),e=c.split(/\./),f=1;f<e.length;f++){for(var l="/",h=0;h<f;h++)l+=e[h]+"/";if(l.length>g.length)break;if(g.indexOf(l)==g.length-l.length){g=g.substring(0,g.length-l.length+1);break}}else g=a._Loader.getClasspathFor(c,!0);else(e=a.binaryFolders)&&
e.length&&(g=e[0]);g||(g="j2s/");g=g.replace(/\\/g,"/");e=g.length;e=g.charAt(e-1);"/"!=e&&(g+="/");this.base?b.url=g+d:(e=c.lastIndexOf("."),b.url=-1==e||this.base?g+d:g+c.substring(0,e).replace(/\./g,"/")+"/"+d)}return b},defineMethod:function(d,b,g){a.defineMethod(this,d,b,g)},defineStaticMethod:function(d,b,g){a.defineMethod(this,d,b,g);this[d]=this.prototype[d]},makeConstructor:function(d,b){a.makeConstructor(this,d,b)}};a.decorateFunction=function(d,b,g){var c;b?b.__PKG_NAME__?(c=b.__PKG_NAME__+
"."+g,b[g]=d,b===java.lang&&a.setGlobal(g,d)):(c=b.__CLASS_NAME__+"."+g,b[g]=d):(c=g,a.setGlobal(g,d));a.extendJO(d,c);b=a.innerFunctionNames;for(g=0;g<b.length;g++)d[b[g]]=a._innerFunctions[b[g]];a._Loader&&(d=a._Loader.findClass(c))&&d.status==a._Node.STATUS_KNOWN&&window.setTimeout(function(b){return function(){a._Loader.updateNode(b)}}(d),1)};a.currentPath="";a.declareInterface=function(d,b,g){var c=function(){};a.decorateFunction(c,d,b);g&&a.implementOf(c,g);return c};a.decorateAsClass=function(d,
b,g,c,e,f){var l=null;b&&(l=b.__PKG_NAME__,l||(l=b.__CLASS_NAME__));(l=a.unloadedClasses[(l?l+".":"")+g])&&(d=l);a.decorateFunction(d,b,g);f?a.inheritClass(d,c,f):c&&a.inheritClass(d,c);e&&a.implementOf(d,e);return d};a.declareType=function(d,b,g,c,e){return a.decorateAsClass(function(){a.instantialize(this,arguments)},d,b,g,c,e)};a.declareAnonymous=function(d,b,g,c,e){return a.decorateAsClass(function(){a.prepareCallback(this,arguments);a.instantialize(this,arguments)},d,b,g,c,e)};a.decorateAsType=
function(d,b,g,c,e,f){a.extendJO(d,b);d.equals=a._innerFunctions.equals;d.getName=a._innerFunctions.getName;if(f)for(b=0;b<a.innerFunctionNames.length;b++)f=a.innerFunctionNames[b],d[f]=a._innerFunctions[f];e?a.inheritClass(d,g,e):g&&a.inheritClass(d,g);c&&a.implementOf(d,c);return d};a._ex_reg=function(a,b,g){g||(g="[^\\s]+");var c=a.indexOf(b);a=a.substring(0,c)+g+a.substring(c+b.length);return RegExp("^"+a+"$")};try{null.hello()}catch(e){/Opera[\/\s](\d+\.\d+)/.test(navigator.userAgent)?(h=e.message.indexOf(":"),
f=e.message.indexOf(":",h+2),a._NPEMsgFragment=e.message.substr(h+1,f-h-20),a._isNPEExceptionPredicate=function(d){return-1!=d.message.indexOf(a._NPEMsgFragment)}):-1!=navigator.userAgent.toLowerCase().indexOf("webkit")?(a._exceptionNPERegExp=a._ex_reg(e.message,"hello"),a._isNPEExceptionPredicate=function(d){return a._exceptionNPERegExp.test(d.message)}):(a._exceptionNPERegExp=a._ex_reg(e.message,"$$o$$"),a._isNPEExceptionPredicate=function(d){return a._exceptionNPERegExp.test(d.message)})}a.exceptionOf=
function(d,b){return d.__CLASS_NAME__?a.instanceOf(d,b):b==Error?(0<=(""+d).indexOf("Error")&&System.out.println(a.getStackTrace()),0<=(""+d).indexOf("Error")):b==Exception||b==Throwable||b==NullPointerException&&a._isNPEExceptionPredicate(d)};a.getStackTrace=function(a){a||(a=25);for(var b="\n",c=arguments.callee.caller,e=0;e<a&&c;e++)b+=e+" "+(c.exName?(c.claxxOwner?c.claxxOwner.__CLASS_NAME__+".":"")+c.exName:c.toString?c.toString().substring(0,c.toString().indexOf("{")):"<native method>")+"\n",
c=c.caller;return b};Number.prototype._numberToString=Number.prototype.toString;a.declarePackage("java.io");a.declarePackage("java.lang.annotation");a.declarePackage("java.lang.instrument");a.declarePackage("java.lang.management");a.declarePackage("java.lang.reflect");a.declarePackage("java.lang.ref");java.lang.ref.reflect=java.lang.reflect;a.declarePackage("java.util");a.declareInterface(java.io,"Closeable");a.declareInterface(java.io,"DataInput");a.declareInterface(java.io,"DataOutput");a.declareInterface(java.io,
"Externalizable");a.declareInterface(java.io,"Flushable");a.declareInterface(java.io,"Serializable");a.declareInterface(java.lang,"Iterable");a.declareInterface(java.lang,"CharSequence");a.declareInterface(java.lang,"Cloneable");a.declareInterface(java.lang,"Appendable");a.declareInterface(java.lang,"Comparable");a.declareInterface(java.lang,"Runnable");a.declareInterface(java.util,"Comparator");java.lang.ClassLoader={__CLASS_NAME__:"ClassLoader"};if(window.Clazz&&!window.Clazz.unloadClass){a.MethodNotFoundException=
function(d,b,c,e){d="";e&&(d=e.substring(1).replace(/\\/g,","));this.message=(c&&"construct"!=c?"Method":"Constructor")+" "+a.getClassName(b,!0)+"."+c+"("+d+") is not found!";this.toString=function(){return"MethodNotFoundException:"+this.message}};a.prepareCallback=function(d,b){var c=b[0];if(d&&c&&c!==window){var e=a.getClassName(c,!0),f={};if(d.b$)for(var h in d.b$)f[h]=d.b$[h];d.b$=f;f[e]=c;for(e=a.getClass(c);e.superClazz;)e=e.superClazz,f[a.getClassName(e,!0)]=c;if(c=c.b$)for(h in c)f[h]=c[h]}for(f=
0;f<b.length-1;f++)b[f]=b[f+1];b.length--};a.innerTypeInstance=function(d,b,c){d||(d=arguments.callee.caller);var e;if(c||b.$finals)if(e=new d(b,a.inheritArgs),c)if(b.f$){var f={},h;for(h in b.f$)f[h]=b.f$[h];for(h in c)f[h]=c[h];e.f$=f}else e.f$=c;else b.f$&&(e.f$=b.f$);else switch(arguments.length){case 3:return new d(b);case 4:return b.__CLASS_NAME__==d.__CLASS_NAME__&&arguments[3]===a.inheritArgs?b:new d(b,arguments[3]);case 5:return new d(b,arguments[3],arguments[4]);case 6:return new d(b,arguments[3],
arguments[4],arguments[5]);case 7:return new d(b,arguments[3],arguments[4],arguments[5],arguments[6]);case 8:return new d(b,arguments[3],arguments[4],arguments[5],arguments[6],arguments[7]);case 9:return new d(b,arguments[3],arguments[4],arguments[5],arguments[6],arguments[7],arguments[8]);case 10:return new d(b,arguments[3],arguments[4],arguments[5],arguments[6],arguments[7],arguments[8],arguments[9]);default:e=new d(b,a.inheritArgs)}h=arguments.length-3;for(f=Array(h);0<=--h;)f[h]=arguments[h+3];
a.instantialize(e,f);return e};a.cloneFinals=function(){for(var a={},b=arguments.length/2;0<=--b;)a[arguments[b+b]]=arguments[b+b+1];return a};a.isClassDefined=a.isDefinedClass=function(d){if(!d)return!1;if(a.allClasses[d])return!0;for(var b=d.split(/\./),c=null,e=0;e<b.length;e++)if(!(c=c?c[b[e]]:a.allPackage[b[0]]))return!1;return c&&(a.allClasses[d]=!0)};a.defineEnumConstant=function(a,b,c,e,f){f=f?new f:new a;f.$name=b;f.$ordinal=c;e&&e.length&&f.construct.apply(f,e);a[b]=f;a.prototype[b]=f;a["$ values"]||
(a["$ values"]=[],a.values=function(){return this["$ values"]});a["$ values"].push(f);return f};a.floatToInt=function(a){return 0>a?Math.ceil(a):Math.floor(a)};a.floatToByte=a.floatToShort=a.floatToLong=a.floatToInt;a.doubleToByte=a.doubleToShort=a.doubleToLong=a.doubleToInt=a.floatToInt;a.floatToChar=function(a){return String.fromCharCode(0>a?Math.ceil(a):Math.floor(a))};a.doubleToChar=a.floatToChar;self.Int32Array&&self.Int32Array!=Array?(a.haveInt32=!0,Int32Array.prototype.sort||(Int32Array.prototype.sort=
Array.prototype.sort)):(Int32Array=function(a){a||(a=0);var b=Array(a);b.toString=function(){return"[object Int32Array]"};for(var c=0;c<a;c++)b[c]=0;return b},a.haveInt32=!1,Int32Array.prototype.sort=Array.prototype.sort,Int32Array.prototype.int32Fake=function(){});self.Float64Array&&self.Float64Array!=Array?(a.haveFloat64=!0,Float64Array.prototype.sort||(Float64Array.prototype.sort=Array.prototype.sort)):(a.haveFloat64=!1,Float64Array=function(a){a||(a=0);for(var b=Array(a),c=0;c<a;c++)b[c]=0;return b},
Float64Array.prototype.sort=Array.prototype.sort,Float64Array.prototype.float64Fake=function(){},Float64Array.prototype.toString=function(){return"[object Float64Array]"});a.newArray=function(){if(arguments[0]instanceof Array)var d=arguments[0],b=arguments[1];else d=arguments,b=Array;if(1>=d.length)return[];var c=d[0];"string"==typeof c&&(c=c.charCodeAt(0));var e=d.length-1,f=d[e];if(2==d.length){if(null==f)return Array(c);if(!0===b&&a.haveInt32)return new Int32Array(c);if(!1===b&&a.haveFloat64)return new Float64Array(c);
if(b==Array&&null==f)return Array(c);for(var d=!0===b?new Int32Array:!1===b?new Float64Array:Array(c),h=c;0<=--h;)d[h]=f;return d}for(var l=Array(e),h=0;h<e;h++)l[h]=d[h+1];d=Array(c);if(null==f||0<=f||2<e)for(h=0;h<c;h++)d[h]=a.newArray(l,b);return d};a.newArray32=function(d,b){var c=d[0];"string"==typeof c&&(c=c.charCodeAt(0));var e=d.length-1,f=d[e];switch(d.length){case 0:case 1:return alert("ERROR IN newArray32 -- args length < 2"),[];case 2:if(0>f)return Array(c);try{return b?new Int32Array(c):
new Float64Array(c)}catch(h){alert(c+" "+arguments.callee.caller.arguments.callee.caller+h)}}for(f=Array(e);0<=--e;)f[e]=d[e+1];for(var l=Array(c),e=0;e<c;e++)l[e]=a.newArray(f,b);return l};a.newInt32Array=function(){return a.newArray32(arguments,!0)};a.newFloat64Array=function(){return a.newArray32(arguments,!1)};a.newFloatArray=a.newDoubleArray=a.newFloat64Array;a.newIntArray=a.newLongArray=a.newShortArray=a.newByteArray=a.newInt32Array;a.newCharArray=a.newBooleanArray=a.newArray;a.arrayIs=function(a,
b){return a.constructor&&a.constructor!=Number&&0<=a.constructor.toString().indexOf(b)};a.isAS=function(d){return d&&"object"==typeof d&&a.arrayIs(d," Array")&&("string"==typeof d[0]||"undefined"==typeof d[0])};a.isASS=function(d){return d&&"object"==typeof d&&a.isAS(d[0])};a.isAP=function(d){return d&&"JU.P3"==a.getClassName(d[0])};a.isAI=function(d){return d&&"object"==typeof d&&(a.haveInt32?a.arrayIs(d,"Int32Array"):d.int32Fake?!0:!1)};a.isAII=function(d){return d&&"object"==typeof d&&a.isAI(d[0])};
a.isAF=function(d){return d&&"object"==typeof d&&(a.haveFloat64?a.arrayIs(d,"Float64Array"):d.float64Fake?!0:!1)};a.isAFF=function(d){return d&&"object"==typeof d&&a.isAF(d[0])};a.isAFFF=function(d){return d&&"object"==typeof d&&a.isAFF(d[0])};a.isAFloat=function(d){return d&&"object"==typeof d&&a.arrayIs(d," Array")&&a.instanceOf(d[0],Float)};a.defineStatics=function(a){for(var b=arguments.length,c=(b-1)/2;0<=--c;){var e=arguments[--b],f=arguments[--b];a[f]=a.prototype[f]=e}};a.prepareFields=function(d,
b){var c=[];if(d.con$truct)for(var e=d.con$truct.stacks,f=0;f<e.length;f++)c[f]=e[f];a.addProto(d.prototype,"con$truct",d.con$truct=function(){var a=arguments.callee.stacks;if(a)for(var b=0;b<a.length;b++)a[b].apply(this,[])});c.push(b);d.con$truct.stacks=c;d.con$truct.index=0};a.registerSerializableFields=function(a){var b=arguments,c=b.length,e=[];if(a.declared$Fields)for(var f=0;f<a.declared$Fields.length;f++)e[f]=a.declared$Fields[f];a.declared$Fields=e;if(0<c&&1==c%2){e=a.declared$Fields;c=(c-
1)/2;for(f=1;f<=c;f++){for(var h={name:b[f+f-1],type:b[f+f]},l=!1,r=0;r<e.length;r++)if(e[r].name==h.name){e[r].type=h.type;l=!0;break}l||e.push(h)}}};a.getMixedCallerMethod=function(d){var b={};if((d=d.callee.caller)&&d!==a.tryToSearchAndExecute)d=d.arguments.callee.caller;if(d!==a.tryToSearchAndExecute||(d=d.arguments.callee.caller)!==a.searchAndExecuteMethod)return null;b.claxxRef=d.arguments[1];b.fxName=d.arguments[2];b.paramTypes=a.getParamsType(d.arguments[3]);d=d.arguments.callee.caller&&d.arguments.callee.caller;
if(!d)return null;b.caller=d;return b};c$=null;a.cStack=[];a.pu$h=function(d){d&&a.cStack.push(d)};a.p0p=function(){return a.cStack.pop()};a.tracingCalling=!1;a._initializingException=!1;a.callingStack=function(a,b){this.caller=a;this.owner=b};a._callingStackTraces=[];java.lang.Object=a._O;a._O.getName=a._innerFunctions.getName;System={props:null,$props:{},arraycopy:function(a,b,c,e,f){if(a!==c)for(var h=0;h<f;h++)c[e+h]=a[b+h];else{for(var l=[],h=0;h<f;h++)l[h]=a[b+h];for(h=0;h<f;h++)c[e+h]=l[h]}},
currentTimeMillis:function(){return(new Date).getTime()},gc:function(){},getProperties:function(){return System.props},getProperty:function(a,b){if(System.props)return System.props.getProperty(a,b);var c=System.$props[a];return c?c:1==arguments.length?null:b?b:a},getSecurityManager:function(){return null},setProperties:function(a){System.props=a},setProperty:function(a,b){if(!System.props)return System.$props[a]=b;System.props.setProperty(a,b)}};System.setProperty("line.separator",0<=navigator.userAgent.indexOf("Windows")?
"\r\n":"\n");System.setProperty("os.name",navigator.userAgent);System.out=new a._O;System.out.__CLASS_NAME__="java.io.PrintStream";System.out.print=function(){};System.out.printf=function(){};System.out.println=function(){};System.out.write=function(){};System.err=new a._O;System.err.__CLASS_NAME__="java.io.PrintStream";System.err.print=function(){};System.err.printf=function(){};System.err.println=function(){};System.err.write=function(){};a.popup=a.assert=a.log=a.error=window.alert;Thread=function(){};
Thread.J2S_THREAD=Thread.prototype.J2S_THREAD=new Thread;Thread.currentThread=Thread.prototype.currentThread=function(){return this.J2S_THREAD};a.declarePackage("java.lang.reflect");a.declarePackage("java.security");a.innerFunctionNames=a.innerFunctionNames.concat("getSuperclass isAssignableFrom getMethods getMethod getDeclaredMethods getDeclaredMethod getConstructor getModifiers newInstance".split(" "));a._innerFunctions.getSuperclass=function(){return this.superClazz};a._innerFunctions.isAssignableFrom=
function(d){return 0<=a.getInheritedLevel(d,this)};a._innerFunctions.getConstructor=function(){return new java.lang.reflect.Constructor(this,[],[],java.lang.reflect.Modifier.PUBLIC)};a._innerFunctions.getDeclaredMethods=a._innerFunctions.getMethods=function(){var a=[],b=this.prototype,c;for(c in b)"function"==typeof b[c]&&!b[c].__CLASS_NAME__&&a.push(new java.lang.reflect.Method(this,c,[],java.lang.Void,[],java.lang.reflect.Modifier.PUBLIC));b=this;for(c in b)"function"==typeof b[c]&&!b[c].__CLASS_NAME__&&
a.push(new java.lang.reflect.Method(this,c,[],java.lang.Void,[],java.lang.reflect.Modifier.PUBLIC|java.lang.reflect.Modifier.STATIC));return a};a._innerFunctions.getDeclaredMethod=a._innerFunctions.getMethod=function(a){var b=this.prototype,c;for(c in b)if(a==c&&"function"==typeof b[c]&&!b[c].__CLASS_NAME__)return new java.lang.reflect.Method(this,c,[],java.lang.Void,[],java.lang.reflect.Modifier.PUBLIC);b=this;for(c in b)if(a==c&&"function"==typeof b[c]&&!b[c].__CLASS_NAME__)return new java.lang.reflect.Method(this,
c,[],java.lang.Void,[],java.lang.reflect.Modifier.PUBLIC|java.lang.reflect.Modifier.STATIC);return null};a._innerFunctions.getModifiers=function(){return java.lang.reflect.Modifier.PUBLIC};a._innerFunctions.newInstance=function(){return new this};h=a.innerFunctionNames;for(f=0;f<h.length;f++)a._O[h[f]]=a._innerFunctions[h[f]],Array[h[f]]=a._innerFunctions[h[f]];a.cleanDelegateMethod=function(a){a&&("function"==typeof a&&a.lastMethod&&a.lastParams&&a.lastClaxxRef)&&(a.lastMethod=null,a.lastParams=
null,a.lastClaxxRef=null)};a.unloadClass=function(d){var b=a.evalType(d);if(b){a.unloadedClasses[d]=b;for(var c=d.split(/\./),e=null,f=0;f<c.length-1;f++)e=e?e[c[f]]:a.allPackage[c[0]];if(e)for(h in e[c[c.length-1]]=null,e)0==h.indexOf(c[c.length-1]+"$")&&(a.unloadClass(e.__PKG_NAME__+"."+h),e[h]=null);else{a.allPackage[c[0]]=null;window[c[0]]=null;for(var h in window)0==h.indexOf(d+"$")&&(a.unloadClass(h),window[h]=null)}if(a.allClasses[d])for(h in a.allClasses[d]=!1,a.allClasses)0==h.indexOf(d+
"$")&&(a.allClasses[h]=!1);for(var l in b)a.cleanDelegateMethod(b[l]);for(l in b.prototype)a.cleanDelegateMethod(b.prototype[l]);a._Loader&&a._Loader.unloadClassExt(d);return!0}return!1}}a._Loader=function(){};a._Node=function(){a._Loader.initNode(this)};(function(a,b,c){b.initNode=function(a){a.parents=[];a.musts=[];a.optionals=[];a.declaration=null;a.name=null;a.path=null;a.requires=null;a.requiresMap=null;a.onRequiredLoaded=null;a.status=0;a.random=0.13412};c.prototype.toString=function(){return this.name||
this.path||"ClazzNode"};c.STATUS_UNKNOWN=0;c.STATUS_KNOWN=1;c.STATUS_CONTENT_LOADED=2;c.STATUS_MUSTS_LOADED=3;c.STATUS_DECLARED=4;c.STATUS_OPTIONALS_LOADED=5;b.loaders=[];b.requireLoaderByBase=function(a){for(var d=0;d<b.loaders.length;d++)if(b.loaders[d].base==a)return b.loaders[d];d=new b;d.base=a;b.loaders.push(d);return d};b.clazzTreeRoot=new c;b.loadedScripts={};b.inLoadingThreads=0;b.maxLoadingThreads=6;b.userAgent=navigator.userAgent.toLowerCase();b.isOpera=-1!=b.userAgent.indexOf("opera");
b.isIE=-1!=b.userAgent.indexOf("msie")&&!b.isOpera;b.isGecko=-1!=b.userAgent.indexOf("gecko");if(b.isOpera){b.maxLoadingThreads=1;var e=b.userAgent.indexOf("opera/");if(-1!=e){var f=9;try{f=parseFloat(b.userAgent.subString(e+6))}catch(h){}9.6<=f&&(b.maxLoadingThreads=6)}}window.Clazz&&a.isClassDefined?b.isClassDefined=a.isClassDefined:(b.definedClasses={},b.isClassDefined=function(a){return!0==b.definedClasses[a]});b.unwrapArray=function(a){if(!a||0==a.length)return[];for(var b=null,d=0;d<a.length;d++)if(a[d]){if("$"==
a[d].charAt(0))if("."==a[d].charAt(1)){if(!b)continue;var c=b.lastIndexOf(".");-1!=c&&(b=b.substring(0,c),a[d]=b+a[d].substring(1))}else a[d]="org.eclipse.s"+a[d].substring(1);b=a[d]}return a};b.classQueue=[];b.classpathMap={};b.loadPackageClasspath=function(a,d,c,e,f,g){var h=b.classpathMap;f||(f=0);e||(e=null);g||(g=0);var j=c&&h["@"+a];if(0==f&&(c&&!h["@java"]&&0!=a.indexOf("java")&&b.needPackage("java"))&&(b.loadPackage("java",e?function(){b.loadPackageClasspath(a,d,c,e,1)}:null),e))return;if(a instanceof
Array)if(b.unwrapArray(a),e)g<a.length?b.loadPackageClasspath(a[g],d,c,function(){b.loadPackageClasspath(a,d,c,e,1,g+1)},1):e();else for(h=0;h<a.length;h++)b.loadPackageClasspath(a[h],d,c,null);else{switch(a){case "java.*":a="java";case "java":d&&(f="@net.sf.j2s.ajax",h[f]||(h[f]=d),f="@net.sf.j2s",h[f]||(h[f]=d));break;case "swt":a="org.eclipse.swt";break;case "ajax":a="net.sf.j2s.ajax";break;case "j2s":a="net.sf.j2s";break;default:a.lastIndexOf(".*")==a.length-2&&(a=a.substring(0,a.length-2))}d&&
(h["@"+a]=d);c&&!j&&!window[a+".registered"]?(b.pkgRefCount++,"java"==a&&(a="core"),b.loadClass(a+".package",function(){0==--b.pkgRefCount&&b.runtimeLoaded()},!0,!0,1)):e&&e()}};b.loadClass=function(e,f,h,j,p){p||(p=0);null==j&&(j=!1);if("boolean"==typeof f)return a.evalType(e);b.needPackage("java")&&b.loadPackage("java");b.needPackage("core")&&b.loadPackage("core");b.keepOnLoading=!0;if(!h&&(b.pkgRefCount&&e.lastIndexOf(".package")!=e.length-8||0!=e.indexOf("java.")&&!b.isClassDefined(b.runtimeKeyClass)))b.queueBe4KeyClazz.push([e,
f]);else if((h=b.isClassDefined(e))||b.isClassExcluded(e)){if(h&&f&&(e=b.findClass(e),!e||e.status>=c.STATUS_OPTIONALS_LOADED))j?window.setTimeout(f,25):f()}else{var k=b.getClasspathFor(e);p=b.loadedScripts[k];j=b.classQueue;if(!p)for(h=j.length;0<=--h;)if(j[h].path==k||j[h].name==e){p=!0;break}if(p){if(f&&(p=b.findClass(e)))if(p.onRequiredLoaded){if(f!=p.onRequiredLoaded){var m=p.onRequiredLoaded;p.onRequiredLoaded=function(){m();f()}}}else p.onRequiredLoaded=f}else{p=a.unloadedClasses[e]&&b.findClass(e)||
new c;p.name=e;p.path=k;p.isPackage=k.lastIndexOf("package.js")==k.length-10;b.mappingPathNameNode(k,e,p);p.onRequiredLoaded=f;p.status=c.STATUS_KNOWN;e=!1;for(h=j.length;0<=--h;)if(j[h].status!=c.STATUS_OPTIONALS_LOADED){e=!0;break}if(p.isPackage){for(h=j.length;0<=--h&&!j[h].isPackage;)j[h+1]=j[h];j[++h]=p}else e&&j.push(p);if(!e){var n=!1;f&&(n=b.isLoadingEntryClass,b.isLoadingEntryClass=!0);b.addChildClassNode(b.clazzTreeRoot,p,!0);b.loadScript(p.path,p.requiredBy,!1,f?function(){b.isLoadingEntryClass=
n;f()}:null)}}}};b.needPackage=function(a){return null!=window[a+".registered"]&&!b.classpathMap["@"+a]};b.loadPackage=function(a,d){d||(d=null);window[a+".registered"]=!1;b.loadPackageClasspath(a,b.J2SLibBase||(b.J2SLibBase=b.getJ2SLibBase()||"j2s/"),!0,d)};b.pkgRefCount=0;b.jarClasspath=function(a,d){d instanceof Array||(d=[classes]);b.unwrapArray(d);for(var c=d.length;0<=--c;)b.classpathMap["#"+d[c]]=a;b.classpathMap["$"+a]=d};b.registerPackages=function(c,e){for(var f=b.getClasspathFor(c+".*",
!0),g=0;g<e.length;g++)window.Clazz&&a.declarePackage(c+"."+e[g]),b.loadPackageClasspath(c+"."+e[g],f)};b.getClasspathFor=function(c,e,f){var g=b.classpathMap["#"+c];if(!g||e||f){var h,j;if(g){if(c=c.replace(/\./g,"/"),0<=(j=g.lastIndexOf(c))||0<=(j=c.lastIndexOf("/"))&&0<=(j=g.lastIndexOf(c.substring(0,j))))h=g.substring(0,j)}else{for(j=c.length+2;0<=(j=c.lastIndexOf(".",j-2))&&!(h=b.classpathMap["@"+c.substring(0,j)]););e||(c=c.replace(/\./g,"/"))}null==h&&(h=window.Clazz&&a.binaryFolders&&a.binaryFolders.length?
a.binaryFolders[0]:b.binaryFolders&&b.binaryFolders.length?b.binaryFolders[0]:"j2s");g=(h.lastIndexOf("/")==h.length-1?h:h+"/")+(e?"":c.lastIndexOf("/*")==c.length-2?c.substring(0,j+1):c+(!f?".js":"."!=f.charAt(0)?"."+f:f))}return g};b.excludeClassMap={};b.ignore=function(){var a=1==arguments.length&&arguments[0]instanceof Array?a=arguments[0]:null,d=a?a.length:arguments.length;if(!a)for(var a=Array(d),c=0;c<d;c++)a[c]=arguments[c];b.unwrapArray(a);for(c=0;c<d;c++)b.excludeClassMap["@"+a[c]]=1};b.isClassExcluded=
function(a){return b.excludeClassMap["@"+a]};b.onScriptLoading=function(){};b.onScriptLoaded=function(){};b.onScriptInitialized=function(){};b.onScriptCompleted=function(){};b.onClassUnloaded=function(){};b.onGlobalLoaded=function(){};b.keepOnLoading=!0;b.mapPath2ClassNode={};b.evaluate=function(c,e){try{eval(e)}catch(f){var g="[Java2Script] Script error: "+f.message+" \n"+c+"\n\n"+e;alert(g);a.alert(g);throw f;}b.onScriptLoaded(c);b.tryToLoadNext(c)};b.failedHandles={};b.generateRemovingFunction=
function(a){return function(){if("interactive"!=a.readyState){try{a.parentNode&&a.parentNode.removeChild(a)}catch(b){}a=null}}};b.removeScriptNode=function(a){window["j2s.script.debugging"]||window.setTimeout(b.generateRemovingFunction(a),1)};a._4Name=function(c,e,f){if(a.isClassDefined(c))return a.evalType(c);e=Jmol._isAsync&&e?e._restoreState(c,f):null;if(1==e)return null;if(b.setLoadingMode(e?b.MODE_SCRIPT:"xhr.sync"))return b.loadClass(c,e,!1,!0,1),null;b.loadClass(c);return a.evalType(c)};b.loadScript=
function(c,e,f,g){a.currentPath=c;!f&&b.loadedScripts[c]?b.tryToLoadNext(c):(b.loadedScripts[c]=!0,a.removeArrayItem(b.classQueue,c),System.out.println("\t"+c+(e?"\n -- required by "+e:"")+" ajax="+b.isUsingXMLHttpRequest+" async="+b.isAsynchronousLoading),b.onScriptLoading(c),b.isUsingXMLHttpRequest&&!b.isAsynchronousLoading?(e=Jmol._getFileData(c),b.evaluate(c,e)):(e={dataType:"script",async:!0,type:"GET",url:c,success:b.W3CScriptOnCallback(c,!1,g),error:function(){b.W3CScriptOnCallback(c,!0,g)}},
b.inLoadingThreads++,Jmol.$ajax(e)))};b.W3CScriptOnCallback=function(c,e,f){return function(){e&&a.__debuggingBH&&a.alert("############ forError="+e+" path="+c+" ####"+(e?"NOT":"")+"LOADED###");b.isGecko&&this.timeoutHandle&&(window.clearTimeout(this.timeoutHandle),this.timeoutHandle=null);0<b.inLoadingThreads&&b.inLoadingThreads--;this.onerror=this.onload=null;e&&alert("There was a problem loading "+c);b.onScriptLoaded(c);var g=this,h=function(){b.removeScriptNode(g);f&&f()};0<=b.loadingTimeLag?
window.setTimeout(function(){b.tryToLoadNext(c,h)},b.loadingTimeLag):b.tryToLoadNext(c,h)}};b.isLoadingEntryClass=!0;b.besidesJavaPackage=!1;b.tryToLoadNext=function(a,d){var e=b.mapPath2ClassNode["@"+a];if(e){var f,h=b.classpathMap["$"+a];if(h)for(var j=0;j<h.length;j++){var k=h[j];if(k!=e.name&&(f=b.findClass(k)))f.status<c.STATUS_CONTENT_LOADED&&(f.status=c.STATUS_CONTENT_LOADED,b.updateNode(f));else{f=new c;f.name=k;var m=b.classpathMap["#"+k];m||(alert(k+" J2S error in tryToLoadNext"),error("Java2Script implementation error! Please report this bug!"));
f.path=m;b.mappingPathNameNode(f.path,k,f);f.status=c.STATUS_CONTENT_LOADED;b.addChildClassNode(b.clazzTreeRoot,f,!1);b.updateNode(f)}}if(e instanceof Array)for(j=0;j<e.length;j++)e[j].status<c.STATUS_CONTENT_LOADED&&(e[j].status=c.STATUS_CONTENT_LOADED,b.updateNode(e[j]));else if(e.status<c.STATUS_CONTENT_LOADED){f=!1;h=document.getElementsByTagName("SCRIPT");for(j=0;j<h.length;j++)if(b.isIE){if(h[j].onreadystatechange&&h[j].onreadystatechange.path==e.path&&"interactive"==h[j].readyState){f=!0;break}}else if(h[j].onload&&
h[j].onload.path==e.path){f=!0;break}f||(e.status=c.STATUS_CONTENT_LOADED,b.updateNode(e))}if(b.keepOnLoading){e=!0;if(f=b.findNextMustClass(c.STATUS_KNOWN))for(b.loadClassNode(f);b.inLoadingThreads<b.maxLoadingThreads&&(f=b.findNextMustClass(c.STATUS_KNOWN));)b.loadClassNode(f);else if(0!=(j=b.classQueue).length)f=j.shift(),!b.loadedScripts[f.path]||0!=j.length||!b.isLoadingEntryClass||f.musts.length||f.optionals.length?(b.addChildClassNode(b.clazzTreeRoot,f,!0),b.loadScript(f.path,f.requiredBy)):
b.isLoadingEntryClass&&(b.isLoadingEntryClass=!1);else if(f=b.findNextRequiredClass(c.STATUS_KNOWN))for(b.loadClassNode(f);b.inLoadingThreads<b.maxLoadingThreads&&(f=b.findNextRequiredClass(c.STATUS_KNOWN));)b.loadClassNode(f);else e=!1;if(!(e||0<b.inLoadingThreads)){e=[b.findNextMustClass,b.findNextRequiredClass];h=null;for(j=0;2>j;j++)for(;f=e[j](c.STATUS_CONTENT_LOADED);)1==j&&h===f&&(f.status=c.STATUS_OPTIONALS_LOADED),b.updateNode(f),h=f;for(;!(b.tracks=[],!b.checkCycle(b.clazzTreeRoot)););for(j=
0;2>j;j++)for(h=null;(f=e[j](c.STATUS_DECLARED))&&h!==f;)b.updateNode(h=f);h=[];for(j=0;2>j;j++)for(;f=e[j](c.STATUS_DECLARED);)h.push(f),f.status=c.STATUS_OPTIONALS_LOADED;if(h.length){for(j=0;j<h.length;j++)b.destroyClassNode(h[j]);for(j=0;j<h.length;j++)if(e=h[j].onRequiredLoaded)h[j].onRequiredLoaded=null,e()}b.onGlobalLoaded();d&&d()}}}};b.tracks=[];b.checkCycle=function(a){for(var d=b.tracks,e=d.length,f=e;0<=--f&&!(d[f]===a&&d[f].status>=c.STATUS_DECLARED););d.push(a);if(0<=f){for(;f<d.length;f++){d[f].status=
c.STATUS_OPTIONALS_LOADED;b.destroyClassNode(d[f]);for(e=0;e<d[f].parents.length;e++)b.updateNode(d[f].parents[e]);d[f].parents=[];if(e=d[f].onRequiredLoaded)d[f].onRequiredLoaded=null,e()}d.length=0;return!0}a=[a.musts,a.optionals];for(var h=0;2>h;h++)for(var j=a[h],f=j.length;0<=--f;)if(j[f].status==c.STATUS_DECLARED&&b.checkCycle(j[f]))return!0;d.length=e;return!1};b.updateNode=function(a){if(!a.name||a.status>=c.STATUS_OPTIONALS_LOADED)b.destroyClassNode(a);else{var d=!0;if(a.musts.length&&a.declaration)for(var e=
a.musts.length,f=e;0<=--f;){var h=a.musts[f];h.requiredBy=a;if(h.status<c.STATUS_DECLARED&&b.isClassDefined(h.name)){var j=[];h.status=c.STATUS_OPTIONALS_LOADED;b.destroyClassNode(h);if(h.declaration&&h.declaration.clazzList){for(var k=0,m=h.declaration.clazzList,n=m.length;k<n;k++){var q=b.findClass(m[k]);q&&(q.status!=c.STATUS_OPTIONALS_LOADED&&q!==h)&&(q.status=h.status,q.declaration=null,b.destroyClassNode(q),q.onRequiredLoaded&&j.push(q))}h.declaration=null}h.onRequiredLoaded&&j.push(h);for(k=
0;k<j.length;k++)if(m=j[k].onRequiredLoaded)j[k].onRequiredLoaded=null,m()}else h.status==c.STATUS_CONTENT_LOADED&&b.updateNode(h),h.status<c.STATUS_DECLARED&&(d=!1);a.musts.length!=e&&(f=e=a.musts.length,d=!0)}if(d){if(a.status<c.STATUS_DECLARED){if(k=a.declaration)k(),k.executed=!0;a.status=c.STATUS_DECLARED;b.definedClasses&&(b.definedClasses[a.name]=!0);b.onScriptInitialized(a.path);if(a.declaration&&a.declaration.clazzList){k=0;m=a.declaration.clazzList;for(n=m.length;k<n;k++)if((q=b.findClass(m[k]))&&
q.status!=c.STATUS_DECLARED&&q!==a)q.status=c.STATUS_DECLARED,b.definedClasses&&(b.definedClasses[q.name]=!0),b.onScriptInitialized(q.path)}}d=c.STATUS_DECLARED;if(0==a.optionals.length&&0==a.musts.length||a.status>c.STATUS_KNOWN&&!a.declaration||b.checkStatusIs(a.musts,c.STATUS_OPTIONALS_LOADED)&&b.checkStatusIs(a.optionals,c.STATUS_OPTIONALS_LOADED)){d=c.STATUS_OPTIONALS_LOADED;if(!b.doneLoading(a,d))return!1;if(a.declaration&&a.declaration.clazzList){k=0;m=a.declaration.clazzList;for(n=m.length;k<
n;k++)if((q=b.findClass(m[k]))&&q.status!=d&&q!==a)if(q.declaration=null,!b.doneLoading(q,d))return!1}}b.updateParents(a,d)}}};b.checkStatusIs=function(a,b){for(var d=a.length;0<=--d;)if(a[d].status<b)return!1;return!0};b.doneLoading=function(a,d){a.status=d;b.onScriptCompleted(a.path);var c=a.onRequiredLoaded;if(c&&(a.onRequiredLoaded=null,c(),!b.keepOnLoading))return!1;b.destroyClassNode(a);return!0};b.updateParents=function(a,d){if(a.parents&&0!=a.parents.length){for(var e=0;e<a.parents.length;e++){var f=
a.parents[e];f.status<d&&b.updateNode(f)}d==c.STATUS_OPTIONALS_LOADED&&(a.parents=[])}};b.usedRandoms={};b.usedRandoms["r0.13412"]=1;b.getRnd=function(){for(;;){var a=Math.random(),d="r"+a;if(!b.usedRandoms[d])return b.usedRandoms[d]=1,b.clazzTreeRoot.random=a}};b.findClass=function(a){b.getRnd();return b.findClassUnderNode(a,b.clazzTreeRoot)};b.findNextRequiredClass=function(a){b.getRnd();return b.findNextRequiredNode(b.clazzTreeRoot,a)};b.findNextMustClass=function(a){return b.findNextMustNode(b.clazzTreeRoot,
a)};b.findClassUnderNode=function(a,d){var c;return d.name==a?d:(c=b.findNodeUnderNode(a,d.musts))||(c=b.findNodeUnderNode(a,d.optionals))?c:null};b.findNodeUnderNode=function(a,d){for(var c=b.clazzTreeRoot.random,e=d.length;0<=--e;){var f=d[e];if(f.name==a||f.random!=c&&(f.random=c,f=b.findClassUnderNode(a,f)))return f}return null};b.checkStatus=function(a,d){return a.status==d&&(d!=c.STATUS_KNOWN||!b.loadedScripts[a.path])&&(d==c.STATUS_DECLARED||!b.isClassDefined(a.name))};b.findNextMustNode=function(a,
d){for(var c=a.musts.length;0<=--c;){var e=a.musts[c];if(b.checkStatus(e,d)||(e=b.findNextMustNode(e,d)))return e}return b.checkStatus(a,d)?a:null};b.findNextRequiredNode=function(a,d){var c;return(c=b.searchClassArray(a.musts,d))||(c=b.searchClassArray(a.optionals,d))||b.checkStatus(c=a,d)?c:null};b.searchClassArray=function(a,d){if(a)for(var c=b.clazzTreeRoot.random,e=0;e<a.length;e++){var f=a[e];if(b.checkStatus(f,d)||f.random!=c&&(f.random=c,f=b.findNextRequiredNode(f,d)))return f}return null};
b.innerLoadedScripts={};b.load=function(a,d,e,f){if(d instanceof Array){b.unwrapArray(d);for(var h=0;h<d.length;h++)b.load(a,d[h],e,f,d)}else{h=b.mapPath2ClassNode["#"+d];h||(h=(h=b.findClass(d))?h:new c,h.name=d,h.path=b.classpathMap["#"+d]||"unknown",b.mappingPathNameNode(h.path,d,h),h.status=c.STATUS_KNOWN,b.addChildClassNode(b.clazzTreeRoot,h,!1));b.processRequired(h,a,!0);5==arguments.length&&f&&(f.status=h.status,f.clazzList=arguments[4]);if(h.declaration=f)h.status=c.STATUS_CONTENT_LOADED;
b.processRequired(h,e,!1)}};b.processRequired=function(a,d,e){if(d&&d.length){b.unwrapArray(d);for(var f=0;f<d.length;f++){var h=d[f];if(h&&!b.isClassDefined(h)&&!b.isClassExcluded(h)){var j=b.findClass(h);j||(j=new c,j.name=h,j.status=c.STATUS_KNOWN);j.requiredBy=a;b.addChildClassNode(a,j,e)}}}};window.Clazz&&(a.load=b.load);b.mappingPathNameNode=function(a,d,c){var e=b.mapPath2ClassNode,f="@"+a;if(a=e[f])if(a instanceof Array){for(var f=!1,g=0;g<a.length;g++)if(a[g].name==d){f=!0;break}f||a.push(c)}else e[f]=
[a,c];else e[f]=c;e["#"+d]=c};b.loadClassNode=function(a){var d=a.name;if(!b.isClassDefined(d)&&!b.isClassExcluded(d)){var c=b.getClasspathFor(d);a.path=c;b.mappingPathNameNode(c,d,a);if(!b.loadedScripts[c])return b.loadScript(c,a.requiredBy),!0}return!1};b.runtimeKeyClass="java.lang.String";b.queueBe4KeyClazz=[];b.getJ2SLibBase=function(){var a=window["j2s.lib"];return a?a.base+("."==a.alias?"":(a.alias?a.alias:a.version?a.version:"1.0.0")+"/"):null};b.isAsynchronousLoading=!0;b.isUsingXMLHttpRequest=
!1;b.loadingTimeLag=-1;b.MODE_SCRIPT=4;b.MODE_XHR=2;b.MODE_SYNC=1;b.setLoadingMode=function(a,d){var c=!0,e=!0;"string"==typeof a?(a=a.toLowerCase(),0<=a.indexOf("script")?e=!1:a.indexOf("async"),c=!1):a&b.MODE_SCRIPT?e=!1:c=!(a&b.MODE_SYNC);b.isUsingXMLHttpRequest=e;b.isAsynchronousLoading=c;b.loadingTimeLag=c&&0<=d?d:-1;return c};b.runtimeLoaded=function(){if(!b.pkgRefCount&&b.isClassDefined(b.runtimeKeyClass)){for(var a=b.queueBe4KeyClazz,d=0;d<a.length;d++)b.loadClass(a[d][0],a[d][1]);b.queueBe4KeyClazz=
[]}};b.loadZJar=function(a,d){var c=null,e=d instanceof Array;e?d=d[d.length-1]:c=d==b.runtimeKeyClass?b.runtimeLoaded:null;b.jarClasspath(a,e?d:[d]);b.loadClass(d,c,!0)};b._nodeMap={};b._allNodes=[];b.addChildClassNode=function(a,d,c){var e=!1;c?(c=a.musts,d.requiredBy||(d.requiredBy=a),a.requires||(a.requires=[],a.requiresMap={}),a.requiresMap[d.name]||(a.requiresMap[d.name]=1,a.requires.push[d])):c=a.optionals;b._nodeMap[d.name]||(b._allNodes.push(d),b._nodeMap[d.name]=d);for(var f=0;f<c.length;f++)if(c[f].name==
d.name){e=!0;break}e||(c.push(d),b.isLoadingEntryClass&&(0!=d.name.indexOf("java")&&0!=d.name.indexOf("net.sf.j2s.ajax"))&&(b.besidesJavaPackage&&(b.isLoadingEntryClass=!1),b.besidesJavaPackage=!0));b.addParentClassNode(d,a)};b.addParentClassNode=function(a,d){if(d.name&&d!=b.clazzTreeRoot&&d!=a)for(var c=0;c<a.parents.length;c++)if(a.parents[c].name==d.name)return;a.parents.push(d)};b.destroyClassNode=function(b){var c=b.parents;if(c)for(var e=c.length;0<=--e;)a.removeArrayItem(c[e].musts,b)||a.removeArrayItem(c[e].optionals,
b)};b.unloadClassExt=function(e){b.definedClasses&&(b.definedClasses[e]=!1);if(b.classpathMap["#"+e]){var f=b.classpathMap["#"+e];b.classpathMap["#"+e]=null;var h=b.classpathMap["$"+f];a.removeArrayItem(h,e)&&(b.classpathMap["$"+f]=h)}if(f=b.findClass(e))f.status=c.STATUS_KNOWN,b.loadedScripts[f.path]=!1;f=b.getClasspathFor(e);b.loadedScripts[f]=!1;b.innerLoadedScripts[f]&&(b.innerLoadedScripts[f]=!1);b.onClassUnloaded(e)};b.assureInnerClass=function(b,c){b=b.__CLASS_NAME__;if(a.unloadedClasses[b]&&
!(0<=b.indexOf("$"))){var e=[],f=b+"$",g;for(g in a.unloadedClasses)a.unloadedClasses[g]&&0==g.indexOf(f)&&e.push(g);if(e.length){c=""+c;var h,j;if(!(0>(h=c.indexOf(f))||0>(j=c.indexOf('"',h+f.length))))if(b=c.substring(h,j),a.unloadedClasses[b]&&0!=(h=c.indexOf("{",j)+1))if(!(0>(j=c.indexOf("("+b+",",h+3))||0>(j=c.lastIndexOf("}",j-1))))eval(c.substring(h,j)),a.unloadedClasses[b]=null}}};a.binaryFolders=b.binaryFolders=[b.getJ2SLibBase()]})(a,a._Loader,a._Node);a._LoaderProgressMonitor=function(){};
var c=a._LoaderProgressMonitor;c.fadeOutTimer=null;c.fadeAlpha=0;c.monitorEl=null;c.lastScrollTop=0;c.bindingParent=null;c.DEFAULT_OPACITY=self.Jmol&&Jmol._j2sLoadMonitorOpacity?Jmol._j2sLoadMonitorOpacity:55;c.clearChildren=function(a){if(a)for(var b=a.childNodes.length;0<=--b;){var c=a.childNodes[b];if(c){c.childNodes&&c.childNodes.length&&this.clearChildren(c);try{a.removeChild(c)}catch(e){}}}};c.setAlpha=function(a){this.fadeOutTimer&&a==this.DEFAULT_OPACITY&&(window.clearTimeout(this.fadeOutTimer),
this.fadeOutTimer=null);this.fadeAlpha=a;navigator.userAgent.toLowerCase();this.monitorEl.style.filter="Alpha(Opacity="+a+")";this.monitorEl.style.opacity=a/100};c.hiddingOnMouseOver=function(){this.style.display="none"};c.attached=!1;c.cleanup=function(){c.monitorEl=null;c.bindingParent=null;c.attached=!1};c.createHandle=function(){var a=document.createElement("DIV");a.id="clazzloader-status";a.style.cssText="position:absolute;bottom:4px;left:4px;padding:2px 8px;z-index:"+(window["j2s.lib"].monitorZIndex||
1E4)+";background-color:#8e0000;color:yellow;font-family:Arial, sans-serif;font-size:10pt;white-space:nowrap;";a.onmouseover=this.hiddingOnMouseOver;this.monitorEl=a;this.bindingParent?this.bindingParent.appendChild(a):document.body.appendChild(a);return a};c.fadeOut=function(){"none"!=this.monitorEl.style.display&&(this.fadeAlpha==this.DEFAULT_OPACITY?(this.fadeOutTimer=window.setTimeout(function(){c.fadeOut()},750),this.fadeAlpha-=5):0<=this.fadeAlpha-10?(this.setAlpha(this.fadeAlpha-10),this.fadeOutTimer=
window.setTimeout(function(){c.fadeOut()},40)):this.monitorEl.style.display="none")};c.getFixedOffsetTop=function(){if(this.bindingParent){var a=this.bindingParent;return a.scrollTop}var b=navigator.userAgent,a=document.body,c=a.parentNode,e=c.clientHeight,a=a.scrollTop+a.offsetTop,f=c.scrollTop+c.offsetTop;return 0>b.indexOf("Opera")&&document.all?0==e?a:f:0>b.indexOf("Gecko")?e==c.offsetHeight&&e==c.scrollHeight?a:f:a};c.showStatus=function(a,b){this.monitorEl||(this.createHandle(),this.attached||
(this.attached=!0));this.clearChildren(this.monitorEl);this.monitorEl.appendChild(document.createTextNode(""+a));"none"==this.monitorEl.style.display&&(this.monitorEl.style.display="");this.setAlpha(this.DEFAULT_OPACITY);var c=this.getFixedOffsetTop();this.lastScrollTop!=c&&(this.lastScrollTop=c,this.monitorEl.style.bottom=this.lastScrollTop+4+"px");b&&this.fadeOut()};window.ClazzLoader&&(ClazzLoader.onScriptLoading=function(a){c.showStatus("Loading "+a+"...")},ClazzLoader.onScriptLoaded=function(a){c.showStatus(a+
" loaded.",!0)},ClazzLoader.onGlobalLoaded=function(){c.showStatus("Application loaded.",!0)},ClazzLoader.onClassUnloaded=function(a){c.showStatus("Class "+a+" is unloaded.",!0)});var j=a.Console,k=System;j.maxTotalLines=1E4;j.setMaxTotalLines=function(a){j.maxTotalLines=0<a?a:999999};j.maxLatency=40;j.setMaxLatency=function(a){j.maxLatency=0<a?a:40};j.pinning=!1;j.enablePinning=function(a){j.pinning=a};j.linesCount=0;j.metLineBreak=!1;j.createConsoleWindow=function(){var a=document.createElement("DIV");
a.style.cssText="font-family:monospace, Arial, sans-serif;";document.body.appendChild(a);return a};j.consoleOutput=function(a,b){var c=window["j2s.lib"];(c=c&&c.console)&&"string"==typeof c&&(c=document.getElementById(c));if(!c)return!1;if(j.linesCount>j.maxTotalLines){for(var e=0;e<j.linesCount-j.maxTotalLines;e++)c&&0<c.childNodes.length&&c.removeChild(c.childNodes[0]);j.linesCount=j.maxTotalLines}var f=!1;a=("undefined"==typeof a?"":null==a?"null":""+a).replace(/\t/g,j.c160);if(0<a.length)switch(a.charAt(a.length-
1)){case "\n":case "\r":a=1<a.length?a.substring(0,a.length-("\r"==a.charAt(a.length-2)?2:1)):"",f=!0}var h=null;a=a.replace(/\t/g,j.c160);for(var h=a.split(/\r\n|\r|\n/g),e=0,k=h.length-1;e<=k;e++){var r=null;if(j.metLineBreak||0==j.linesCount||1>c.childNodes.length)r=document.createElement("DIV"),c.appendChild(r),r.style.whiteSpace="nowrap",j.linesCount++;else try{r=c.childNodes[c.childNodes.length-1]}catch(w){r=document.createElement("DIV"),c.appendChild(r),r.style.whiteSpace="nowrap",j.linesCount++}var u=
document.createElement("SPAN");r.appendChild(u);u.style.whiteSpace="nowrap";b&&(u.style.color=b);r=h[e];0==r.length&&(r=j.c160);u.appendChild(document.createTextNode(r));j.pinning||(c.scrollTop+=100);j.metLineBreak=e!=k||f}e=c.parentNode.className;!j.pinning&&(e&&-1!=e.indexOf("composite"))&&(c.parentNode.scrollTop=c.parentNode.scrollHeight);j.lastOutputTime=(new Date).getTime()};j.clear=function(){try{j.metLineBreak=!0;var a=window["j2s.lib"],b=a&&a.console;if(b&&(b=document.getElementById(b))){for(var c=
b.childNodes,e=c.length;0<=--e;)b.removeChild(c[e]);j.linesCount=0}}catch(f){}};a.alert=function(a){j.consoleOutput(a+"\r\n")};j.c160=String.fromCharCode(160);j.c160+=j.c160+j.c160+j.c160;k.out.print=function(a){j.consoleOutput(a)};k.out.println=function(a){j.consoleOutput("undefined"==typeof a?"\r\n":null==a?"null\r\n":a+"\r\n")};k.out.write=function(a,b,c){k.out.print(String.instantialize(a).substring(b,b+c))};k.err.__CLASS_NAME__="java.io.PrintStream";k.err.print=function(a){j.consoleOutput(a,
"red")};k.err.println=function(a){j.consoleOutput("undefined"==typeof a?"\r\n":null==a?"null\r\n":a+"\r\n","red")};k.err.write=function(a,b,c){k.err.print(String.instantialize(a).substring(b,b+c))}}(Clazz))};Jmol.___JmolDate="$Date: 2015-01-22 21:48:31 -0600 (Thu, 22 Jan 2015) $";Jmol.___fullJmolProperties="src/org/jmol/viewer/Jmol.properties";Jmol.___JmolVersion="14.2.12_2015.01.22";