(function(a){function j(a){try{return a?new window.ActiveXObject("Microsoft.XMLHTTP"):new window.XMLHttpRequest}catch(d){}}a.ajaxSettings.xhr=void 0===window.ActiveXObject?j:function(){return(this.url==document.location||0==this.url.indexOf("http")||!this.isLocal)&&/^(get|post|head|put|delete|options)$/i.test(this.type)&&j()||j(1)};a.ajaxTransport("+script",function(a){var d,b=document.head||jQuery("head")[0]||document.documentElement;return{send:function(c,k){d=document.createElement("script");a.scriptCharset&& (d.charset=a.scriptCharset);d.src=a.url;d.onload=d.onreadystatechange=function(a,b){if(b||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,d.parentNode&&d.parentNode.removeChild(d),d=null,b||k(200,"success")};b.insertBefore(d,b.firstChild)},abort:function(){if(d)d.onload(void 0,!0)}}});a.extend(a.support,{iecors:!!window.XDomainRequest});a.support.iecors?a.ajaxTransport(function(a){return{send:function(d,b){var c=new window.XDomainRequest;c.onload=function(){b(200, "OK",{text:c.responseText},{"Content-Type":c.contentType})};a.xhrFields&&(c.onerror=a.xhrFields.error,c.ontimeout=a.xhrFields.timeout);c.open(a.type,a.url);c.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 d;return{send:function(b,c){var k=a.xhr();console.log("xhr.open binary async="+a.async+" url="+a.url);k.open(a.type,a.url,a.async); var j=!1;try{k.hasOwnProperty("responseType")&&(k.responseType="arraybuffer",j=!0)}catch(l){}try{!j&&k.overrideMimeType&&k.overrideMimeType("text/plain; charset=x-user-defined")}catch(e){}!a.crossDomain&&!b["X-Requested-With"]&&(b["X-Requested-With"]="XMLHttpRequest");try{for(var f in b)k.setRequestHeader(f,b[f])}catch(h){}k.send(a.hasContent&&a.data||null);d=function(){var e=k.status,f="",h=k.getAllResponseHeaders(),b={};try{if(d&&4===k.readyState){d=void 0;try{b.text="string"===typeof k.responseText? k.responseText:null}catch(j){}try{b.binary=k.response}catch(m){}try{f=k.statusText}catch(l){f=""}!e&&a.isLocal&&!a.crossDomain?e=b.text?200:404:1223===e&&(e=204);c(e,f,b,h)}}catch(u){alert(u),c(-1,u)}};a.async?4===k.readyState?setTimeout(d):k.onreadystatechange=d:d()},abort:function(){}}}))})(jQuery); (function(a,j,g,d){function b(b,g){function m(e){a(l).each(function(){self.Jmol&&(0<=g.indexOf("mouseup")||0<=g.indexOf("touchend"))&&Jmol._setMouseOwner(null);var h=a(this);this!==e.target&&!h.has(e.target).length&&h.triggerHandler(g,[e.target,e])})}g=g||b+d;var l=a(),e=b+"."+g+"-special-event";a.event.special[g]={setup:function(){l=l.add(this);1===l.length&&a(j).bind(e,m)},teardown:function(){self.Jmol&&Jmol._setMouseOwner(null);l=l.not(this);0===l.length&&a(j).unbind(e)},add:function(a){var e= a.handler;a.handler=function(a,f){a.target=f;e.apply(this,arguments)}}}}a.map(g.split(" "),function(a){b(a)});b("focusin","focus"+d);b("focusout","blur"+d)})(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 j=function(a){return{rear:a++,header:a++,main:a++,image:a++,front:a++,fileOpener:a++,coverImage:a++,dialog:a++,menu:a+9E4,console:a+91E3,consoleImage:a+91001,monitorZIndex:a+99999}},j={_version:"$Date: 2018-01-28 23:38:52 -0600 (Sun, 28 Jan 2018) $",_alertNoBinary:!0,_allowedJmolSize:[25,2048,300],_appletCssClass:"",_appletCssText:"",_fileCache:null,_jarFile:null,_j2sPath:null,_use:null,_j2sLoadMonitorOpacity:90,_applets:{},_asynchronous:!0,_ajaxQueue:[],_persistentMenu:!1, _getZOrders:j,_z:j(Jmol.z||9E3),_debugCode:!0,_debugCore:!1,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":null,".x3dna.org":null,"rruff.geo.arizona.edu":null,".rcsb.org":null, "ftp.wwpdb.org":null,"pdbe.org":null,"materialsproject.org":null,".ebi.ac.uk":null,"pubchem.ncbi.nlm.nih.gov":null,"www.nmrdb.org/tools/jmol/predict.php":null,$:"https://cactus.nci.nih.gov/chemical/structure/%FILENCI/file?format=sdf&get3d=True",$$:"https://cactus.nci.nih.gov/chemical/structure/%FILENCI/file?format=sdf","=":"https://files.rcsb.org/download/%FILE.pdb","*":"https://www.ebi.ac.uk/pdbe/entry-files/download/%FILE.cif","==":"https://files.rcsb.org/ligands/download/%FILE.cif",":":"https://pubchem.ncbi.nlm.nih.gov/rest/pug/compound/%FILE/SDF?record_type=3d"}, _restQueryUrl:"http://www.rcsb.org/pdb/rest/search",_restQueryXml:"org.pdb.query.simple.AdvancedKeywordQueryText SearchQUERY",_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:"https://your.server.here/jsmol.php",_syncId:(""+Math.random()).substring(3), _touching:!1,_XhtmlElement:null,_XhtmlAppendChild:!1};a=a.location.href.toLowerCase();j._debugCore=0<=a.indexOf("j2sdebugcore");j._httpProto=0==a.indexOf("https")?"https://":"http://";j._isFile=0==a.indexOf("file:");j._isFile&&$.ajaxSetup({mimeType:"text/plain"});j._ajaxTestSite=j._httpProto+"google.com";a=j._isFile||0==a.indexOf("http://localhost")||0==a.indexOf("http://127.");j._tracker=!a&&"https://chemapps.stolaf.edu/jmol/JmolTracker.php?id=UA-45940799-1";j._isChrome=0<=navigator.userAgent.toLowerCase().indexOf("chrome"); j._isSafari=!j._isChrome&&0<=navigator.userAgent.toLowerCase().indexOf("safari");j._isMsie=void 0!==window.ActiveXObject;j._isEdge=0<=navigator.userAgent.indexOf("Edge/");j._useDataURI=!j._isSafari&&!j._isMsie&&!j._isEdge;window.requestAnimationFrame||(window.requestAnimationFrame=window.setTimeout);for(var g in Jmol)j[g]=Jmol[g];return j}(document,Jmol)); (function(a,j){a.__$=j;j(document).ready(function(){a._document=null});a.$=function(a,f){null==a&&alert(f+arguments.callee.caller.toString());return j(f?"#"+a._id+"_"+f:a)};a._$=function(a){return"string"==typeof a?j("#"+a):a};a.$ajax=function(e){a._ajaxCall=e.url;e.cache="NO"!=e.cache;e.url=a._fixProtocol(e.url);return j.ajax(e)};a._fixProtocol=function(e){0<=e.indexOf("get3d=True")&&(e=e.replace(/get3d\=True/,"get3d=true"));return 0==e.indexOf("http://www.rcsb.org/pdb/files/")&&0>e.indexOf("/ligand/")? "http://files.rcsb.org/view/"+e.substring(30).replace(/\.gz/,""):0==e.indexOf("http://")&&("https://"==a._httpProto||0f?h[0].scrollHeight:f)}; a.$setEnabled=function(e,f){return a._$(e).attr("disabled",f?null:"disabled")};a.$getSize=function(e){e=a._$(e);return[e.width(),e.height()]};a.$setSize=function(e,f,h){return a._$(e).width(f).height(h)};a.$is=function(e,f){return a._$(e).is(f)};a.$setVisible=function(e,f){var h=a._$(e);return f?h.show():h.hide()};a.$submit=function(e){return a._$(e).submit()};a.$val=function(e,f){var h=a._$(e);return 1==arguments.length?h.val():h.val(f)};a._clearVars=function(){delete jQuery;delete j;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 g=document,d=window,b={};b.ua=navigator.userAgent.toLowerCase();var c;a:{c=["linux","unix","mac","win"];for(var k=c.length;k--;)if(-1!=b.ua.indexOf(c[k])){c=c[k];break a}c="unknown"}b.os=c;b.browser=function(){for(var a=b.ua,f="konqueror webkit omniweb opera webtv icab msie mozilla".split(" "),h=0;hnavigator.appVersion.indexOf("MSIE 8");b.getDefaultLanguage=function(){return navigator.language||navigator.userLanguage||"en-US"};b._webGLtest=0;b.supportsWebGL=function(){if(!a.featureDetection._webGLtest){var e;a.featureDetection._webGLtest=d.WebGLRenderingContext&& ((e=g.createElement("canvas")).getContext("webgl")||e.getContext("experimental-webgl"))?1:-1}return 0=b.browserVersion&&"mac"==f||"webkit"==b.browserName&&125.12>b.browserVersion||"msie"==b.browserName&&"mac"==f||"konqueror"==b.browserName&&3.3>=b.browserVersion)a=!1;return a};b.isFullyCompliant=function(){return b.compliantBrowser()&&b.supportsJava()};b.useIEObject="win"==b.os&&"msie"==b.browserName&&5.5<=b.browserVersion;b.useHtml4Object="mozilla"==b.browserName&& 5<=b.browserVersion||"opera"==b.browserName&&8<=b.browserVersion||"webkit"==b.browserName;b.hasFileReader=d.File&&d.FileReader;a.featureDetection=b;a._ajax=function(e){if(!e.async)return a.$ajax(e).responseText;a._ajaxQueue.push(e);1==a._ajaxQueue.length&&a._ajaxDone()};a._ajaxDone=function(){var e=a._ajaxQueue.shift();e&&a.$ajax(e)};a._grabberOptions=[["$","NCI(small molecules)"],[":","PubChem(small molecules)"],["=","RCSB(macromolecules)"],["*","PDBe(macromolecules)"]];a._getGrabberOptions=function(e){if(0== a._grabberOptions.length)return"";var f='',h='';1==a._grabberOptions.length?(f=""+f+'',h=""+h):f+="
";for(var f=f+'"+h).replace(/ID/g,e._id);return"
"+f};a._getScriptForDatabase=function(e){return"$"==e?a.db._nciLoadScript:":"==e?a.db._pubChemLoadScript:a.db._fileLoadScript};a._setInfo=function(a,f,h){var b=[],c="";if(0==h.indexOf("ERROR"))c=h;else switch(f){case "=":f=h.split("");b=[""];for(h=1;h"),b.push("");b.push("
"+f[h].substring(0,4)+""+f[h].split("Title>")[1].split("
");c=f.length-1+" matches";break;case "$":case ":":break;default:return}a._infoHeader=c;a._info=b.join("");a._showInfo(!0)};a._loadSuccess=function(e,f){f&&(a._ajaxDone(),f(e))};a._loadError=function(e){a._ajaxDone();a.say("Error connecting to server: "+a._ajaxCall);null!=e&&e()};a._isDatabaseCall=function(e){return 0<=a.db._databasePrefixes.indexOf(e.substring(0, 1))};a._getDirectDatabaseCall=function(e,f){if(f&&!a.featureDetection.supportsXhr2())return e;var h=2,b=e.substring(0,h),c=a.db._DirectDatabaseCalls[b]||a.db._DirectDatabaseCalls[b=e.substring(0,--h)];c&&(":"==b?(b=e.toLowerCase(),isNaN(parseInt(e.substring(1)))?0==b.indexOf(":smiles:")?(c+="?POST?smiles="+e.substring(8),e="smiles"):0==b.indexOf(":cid:")?e="cid/"+e.substring(5):(0==b.indexOf(":name:")?e=e.substring(5):0==b.indexOf(":cas:")&&(e=e.substring(4)),e="name/"+encodeURIComponent(e.substring(h))): e="cid/"+e.substring(1)):e=encodeURIComponent(e.substring(h)),0<=e.indexOf(".mmtf")?e="https://mmtf.rcsb.org/v1.0/full/"+e.replace(/\.mmtf/,""):0<=c.indexOf("FILENCI")?(e=e.replace(/\%2F/g,"/"),e=c.replace(/\%FILENCI/,e)):e=c.replace(/\%FILE/,e));return e};a._getRawDataFromServer=function(e,f,h,b,c,d){e="?call=getRawDataFromDatabase&database="+e+(0<=f.indexOf("?POST?")?"?POST?":"")+"&query="+encodeURIComponent(f)+(c?"&encoding=base64":"")+(d?"":"&script="+encodeURIComponent(a._getScriptForDatabase(e))); return a._contactServer(e,h,b)};a._checkFileName=function(e,f,h){a._isDatabaseCall(f)&&(h&&a._setQueryTerm(e,f),f=a._getDirectDatabaseCall(f,!0),a._isDatabaseCall(f)&&(f=a._getDirectDatabaseCall(f,!1),h&&(h[0]=!0)));return f};a._checkCache=function(e,f,h){if(e._cacheFiles&&a._fileCache&&!f.endsWith(".js")){if(e=a._fileCache[f])return System.out.println("using "+e.length+" bytes of cached data for "+f),h(e),null;h=function(e,f){h(a._fileCache[e]=f)}}return h};a.playAudio=function(e){a._playAudio(null, e)};a._playAudio=function(a,f){var h=f.get?function(a){return f.get(a)}:null,b=f.put?function(a,e){return f.put(a,e)}:null,c=h?h("audioFile"):f,d=h&&h("audioPlayer"),g=document.createElement("audio");b&&b("audioElement",g);var k=null;d&&(k=function(a){d.processUpdate(a)},d.myClip={open:function(){k("open")},start:function(){g.play();k("start")},loop:function(a){g.loop=0!=a},stop:function(){g.pause()},close:function(){k("close")},setMicrosecondPosition:function(a){g.currentTime=a/1E6}});g.controls= "true";g.src=c;h&&h("loop")&&(g.loop="true");k&&(g.addEventListener("pause",function(){k("pause")}),g.addEventListener("play",function(){k("play")}),g.addEventListener("playing",function(){k("playing")}),g.addEventListener("ended",function(){k("ended")}),k("open"))};a._loadFileData=function(e,f,h,b){var c=[];f=a._checkFileName(e,f,c);h=a._checkCache(e,f,h);c[0]?a._getRawDataFromServer("_",f,h,b):(e={type:"GET",dataType:"text",url:f,async:a._asynchronous,success:function(e){a._loadSuccess(e,h)},error:function(){a._loadError(b)}}, a._checkAjaxPost(e),a._ajax(e))};a._getInfoFromDatabase=function(e,f,h){if("===="==f){var b=a.db._restQueryXml.replace(/QUERY/,h),b={dataType:"text",type:"POST",contentType:"application/x-www-form-urlencoded",url:a.db._restQueryUrl,data:encodeURIComponent(b)+"&req=browser",success:function(b){a._ajaxDone();a._extractInfoFromRCSB(e,f,h,b)},error:function(){a._loadError(null)},async:a._asynchronous};return a._ajax(b)}h="?call=getInfoFromDatabase&database="+f+"&query="+encodeURIComponent(h);return a._contactServer(h, function(h){a._setInfo(e,f,h)})};a._extractInfoFromRCSB=function(e,f,h,b){var c=b.length/5;if(0!=c&&4==h.length&&1!=c){h=h.toUpperCase();var d=b.indexOf(h);0d.indexOf("?")&&d==e._thisJmolModel)){e._thisJmolModel=d;var g;b&&null!=e._viewSet&&null!=(g=a.View.__findView(e._viewSet,{chemID:d}))?a.View.__setView(g,e,!1):("$"==c||":"==c?e._jmolFileType="MOL":"="==c&&(e._jmolFileType="PDB"),e._searchDatabase(f,c,h))}};a._searchDatabase=function(e,f,h,b){e._showInfo(!1);return 0<=f.indexOf("?")?(a._getInfoFromDatabase(e,h,f.split("?")[0]),!0):a.db._DirectDatabaseCalls[h]?(e._loadFile(h+f,b),!0):!1};a._syncBinaryOK= "?";a._canSyncBinary=function(e){if(a._isAsync)return!0;if(self.VBArray)return a._syncBinaryOK=!1;if("?"!=a._syncBinaryOK)return a._syncBinaryOK;a._syncBinaryOK=!0;try{var f=new window.XMLHttpRequest;f.open("text",a._ajaxTestSite,!1);f.hasOwnProperty("responseType")?f.responseType="arraybuffer":f.overrideMimeType&&f.overrideMimeType("text/plain; charset=x-user-defined")}catch(h){return System.out.println("JSmolCore.js: synchronous binary file transfer is requested but not available"),a._alertNoBinary&& !e&&alert("JSmolCore.js: synchronous binary file transfer is requested but not available"),a._syncBinaryOK=!1}return!0};a._binaryTypes="mmtf .gz .bz2 .jpg .gif .png .zip .jmol .bin .smol .spartan .pmb .mrc .map .ccp4 .dn6 .delphi .omap .pse .dcd .uk/pdbe/densities/".split(" ");a._isBinaryUrl=function(e){for(var f=a._binaryTypes.length;0<=--f;)if(0<=e.indexOf(a._binaryTypes[f]))return!0;return!1};a._getFileData=function(e,f,h){var b=a._isBinaryUrl(e),c=0<=e.indexOf(".gz")&&0<=e.indexOf("rcsb.org"); c&&(e=e.replace(/\.gz/,""),b=!1);var c=b&&!f&&!a._canSyncBinary(c),d=0<=e.indexOf("?POST?");0==e.indexOf("file:/")&&0!=e.indexOf("file:///")&&(e="file://"+e.substring(5));var g=0>e.indexOf("://")||0==e.indexOf(document.location.protocol)&&0<=e.indexOf(document.location.host),k="https://"==a._httpProto&&0==e.indexOf("http://"),j=a._isDirectCall(e);!j&&0<=e.indexOf("?ALLOWSORIGIN?")&&(j=!0,e=e.replace(/\?ALLOWSORIGIN\?/,""));var m=!g&&a.$supportsIECrossDomainScripting(),l=null;if(k||c||!g&&!j||!f&& m)l=a._getRawDataFromServer("_",e,f,f,c,!0);else{e=e.replace(/file:\/\/\/\//,"file://");var q={dataType:b?"binary":"text",async:!!f};d?(q.type="POST",q.url=e.split("?POST?")[0],q.data=e.split("?POST?")[1]):(q.type="GET",q.url=e);f&&(q.success=function(){f(a._xhrReturn(q.xhr))},q.error=function(){f(q.xhr.statusText)});q.xhr=a.$ajax(q);f||(l=a._xhrReturn(q.xhr))}if(!h)return l;null==l&&(l="",b=!1);b&&(b=a._canSyncBinary(!0));return b?a._strToBytes(l):JU.SB.newS(l)};a._xhrReturn=function(a){return!a.responseText|| self.Clazz&&Clazz.instanceOf(a.response,self.ArrayBuffer)?a.response||a.statusText:a.responseText};a._isDirectCall=function(e){if(0<=e.indexOf("?ALLOWSORIGIN?"))return!0;for(var f in a.db._DirectDatabaseCalls)if(0<=f.indexOf(".")&&0<=e.indexOf(f))return!0;return!1};a._cleanFileData=function(a){return 0<=a.indexOf("\r")&&0<=a.indexOf("\n")?a.replace(/\r\n/g,"\n"):0<=a.indexOf("\r")?a.replace(/\r/g,"\n"):a};a._getFileType=function(a){var f=a.substring(0,1);if("$"==f||":"==f)return"MOL";if("="==f)return"="== a.substring(1,2)?"LCIF":"PDB";a=a.split(".").pop().toUpperCase();return a.substring(0,Math.min(a.length,3))};a._getZ=function(e,f){return e&&e._z&&e._z[f]||a._z[f]};a._incrZ=function(e,f){return e&&e._z&&++e._z[f]||++a._z[f]};a._hideLocalFileReader=function(e){e._localReader&&a.$setVisible(e._localReader,!1);e._readingLocal=!1;a._setCursor(e,0)};a.loadFileFromDialog=function(e){a._loadFileAsynchronously(null,e,null,null)};a._loadFileAsynchronously=function(e,f,h,b){if(h&&0!=h.indexOf("?")){var c= h;h=a._checkFileName(f,h);var d=function(d){a._setData(e,h,c,d,b,f)},d=a._checkCache(f,h,d);0<=h.indexOf("|")&&(h=h.split("|")[0]);return null==d?null:a._getFileData(h,d)}if(!a.featureDetection.hasFileReader)return e?e.setData("Local file reading is not enabled in your browser",null,null,b,f):alert("Local file reading is not enabled in your browser");f._localReader||(d='
', a.$after("#"+f._id+"_appletdiv",d.replace(/ID/g,f._id+"_localReader")),f._localReader=a.$(f,"localReader"));a.$appEvent(f,"localReader_loadurl","click");a.$appEvent(f,"localReader_loadurl","click",function(){var e=prompt("Enter a URL");e&&(a._hideLocalFileReader(f,0),a._setData(null,e,e,null,b,f))});a.$appEvent(f,"localReader_loadfile","click");a.$appEvent(f,"localReader_loadfile","click",function(){var h=a.$(f,"localReader_files")[0].files[0],c=new FileReader;c.onloadend=function(c){c.target.readyState== FileReader.DONE&&(a._hideLocalFileReader(f,0),a._setData(e,h.name,h.name,c.target.result,b,f))};try{c.readAsArrayBuffer(h)}catch(d){alert("You must select a file first.")}});a.$appEvent(f,"localReader_cancel","click");a.$appEvent(f,"localReader_cancel","click",function(){a._hideLocalFileReader(f);e&&e.setData("#CANCELED#",null,null,b,f)});a.$setVisible(f._localReader,!0);f._readingLocal=!0};a._setData=function(e,f,h,b,c,d){b&&(b=a._strToBytes(b));null!=b&&(null==e||0<=f.indexOf(".jdx"))&&a.Cache.put("cache://"+ f,b);null==e?d._applet.openFileAsyncSpecial(null==b?f:"cache://"+f,1):e.setData(f,h,b,c)};a._doAjax=function(e,f,h){e=e.toString();if(null!=h)return a._saveFile(e,h);f&&(e+="?POST?"+f);return a._getFileData(e,null,!0)};a._saveFile=function(e,f,h,b){if(a._localFileSaveFunction&&a._localFileSaveFunction(e,f))return"OK";e=e.substring(e.lastIndexOf("/")+1);h||(h=0<=e.indexOf(".pdf")?"application/pdf":0<=e.indexOf(".png")?"image/png":0<=e.indexOf(".gif")?"image/gif":0<=e.indexOf(".jpg")?"image/jpg":""); f=(JU?JU:J.util).Base64.getBase64("string"==typeof f?f.getBytes("UTF-8"):f).toString();b||(b="base64");var c=a._serverUrl;c&&0<=c.indexOf("your.server")&&(c="");a._useDataURI||!c?(b=document.createElement("a"),b.href="data:"+h+";base64,"+f,b.type=h||"text/plain;charset=utf-8",b.download=e,b.target="_blank",j("body").append(b),b.click(),b.remove()):(a._formdiv||(a.$after("body",''), a._formdiv="__jsmolform__"),a.$attr(a._formdiv,"action",c+"?"+(new Date).getMilliseconds()),a.$val("__jsmoldata__",f),a.$val("__jsmolfilename__",e),a.$val("__jsmolmimetype__",h),a.$val("__jsmolencoding__",b),a.$submit("__jsmolform__"),a.$val("__jsmoldata__",""),a.$val("__jsmolfilename__",""));return"OK"};a._strToBytes=function(a){if(Clazz.instanceOf(a,self.ArrayBuffer))return Clazz.newByteArray(-1,a);for(var f=Clazz.newByteArray(a.length,0),h=a.length;0<=--h;)f[h]=a.charCodeAt(h)&255;return f};a._setConsoleDiv= function(a){self.Clazz&&Clazz.setConsoleDiv(a)};a._registerApplet=function(e,f){return window[e]=a._applets[e]=a._applets[e+"__"+a._syncId+"__"]=f};a._readyCallback=function(e,f,h,b,c){e=e.split("_object")[0];var d=a._applets[e];if(h=h.booleanValue?h.booleanValue():h)d._appletPanel=c||b,d._applet=b;a._track(d)._readyCallback(e,f,h)};a._getWrapper=function(e,f){var h;if(f){var b="";if(e._coverImage)var b=' onclick="Jmol.coverApplet(ID, false)" title="'+e._coverTitle+'"',c='",b='
"+c+"
";c=e._isJava?"":'';h=a._appletCssText.replace(/\'/g,'"');var d=e._getSpinner&&e._getSpinner();e._spinner=d=!d||"none"==d?"":"background-image:url("+d+"); background-repeat:no-repeat; background-position:center;";h=d+(0<=h.indexOf('style="')?h.split('style="')[1]:'" '+h);h='...
IMG WAIT......
";var d=e._height,g=e._width;if("string"!==typeof d||0>d.indexOf("%"))d+="px";if("string"!==typeof g||0>g.indexOf("%"))g+="px";h=h.replace(/IMG/,b).replace(/WAIT/,c).replace(/Hpx/g,d).replace(/Wpx/g,g)}else h='......
............
..................
......
...
'; return h.replace(/\.\.\./g,"").replace(/[\n\r]/g,"").replace(/ID/g,e._id)};a._hideLoadingSpinner=function(e){e._spinner&&a.$css(a.$(e,"appletdiv"),{"background-image":""})};a._documentWrite=function(e){if(a._document){if(a._isXHTML&&!a._XhtmlElement){var f=document.getElementsByTagName("script");a._XhtmlElement=f.item(f.length-1);a._XhtmlAppendChild=!1}a._XhtmlElement?a._domWrite(e):a._document.write(e)}return e};a._domWrite=function(e){for(var f=[0];f[0]e.jarFile.indexOf("Signed")&&(e.jarFile=e.jarFile.replace(/Applet/,"AppletSigned")),e.use= e.use.replace(/SIGNED/,"JAVA"),e.isSigned=!0)};a._syncedApplets=[];a._syncedCommands=[];a._syncedReady=[];a._syncReady=!1;a._isJmolJSVSync=!1;a._setReady=function(e){a._syncedReady[e]=1;for(var f=0,b=0;be[0]?-1:0}if(!a||"object"!=typeof a)return[];for(var b=[],c=a.length-1;0<=c;c--)for(var d=0,g=a[c].length;db.type.indexOf("touch"))return!1;var h=a.$offset(e.id),c,d=b.originalEvent;b.pageX||(b.pageX=d.pageX);b.pageY||(b.pageY=d.pageY);a._mousePageX=b.pageX;a._mousePageY=b.pageY;d.targetTouches&&d.targetTouches[0]?(c=d.targetTouches[0].pageX-h.left,h=d.targetTouches[0].pageY-h.top):d.changedTouches?(c=d.changedTouches[0].pageX-h.left,h=d.changedTouches[0].pageY-h.top):(c=b.pageX-h.left,h=b.pageY-h.top);return void 0== c?null:[Math.round(c),Math.round(h),a._jsGetMouseModifiers(b)]};a._setCursor=function(e,b){if(!e._isJava&&!e._readingLocal){var h;switch(b){case 1:h="crosshair";break;case 3:h="wait";a.$setVisible(a.$(e,"waitimage"),!0);break;case 8:h="ns-resize";break;case 12:h="grab";break;case 13:h="move";break;default:a.$setVisible(a.$(e,"waitimage"),!1),h="default"}e._canvas.style.cursor=h}};a._gestureUpdate=function(e,b){b.stopPropagation();b.preventDefault();var h=b.originalEvent;switch(b.type){case "touchstart":a._touching= !0;break;case "touchend":a._touching=!1}if(!h.touches||2!=h.touches.length)return!1;switch(b.type){case "touchstart":e._touches=[[],[]];break;case "touchmove":var c=a.$offset(e.id),d=e._touches[0],g=e._touches[1];d.push([h.touches[0].pageX-c.left,h.touches[0].pageY-c.top]);g.push([h.touches[1].pageX-c.left,h.touches[1].pageY-c.top]);h=d.length;3c? -1:1,0,h]);return!1});a.$bind(b,"contextmenu",function(){return!1});a.$bind(b,"mouseout",function(h){if(f(h))return!0;a._mouseOwner&&!a._mouseOwner.mouseMove&&a._setMouseOwner(null);b.applet._appletPanel&&b.applet._appletPanel.startHoverWatcher(!1);a._jsGetXY(b,h);return!1});a.$bind(b,"mouseenter",function(h){if(f(h))return!0;b.applet._appletPanel&&b.applet._appletPanel.startHoverWatcher(!0);if(0===h.buttons||0===h.which){b.isDragging=!1;h=a._jsGetXY(b,h);if(!h)return!1;b.applet._processEvent(504, h);b.applet._processEvent(502,h);return!1}});a.$bind(b,"mousemoveoutjsmol",function(h,c,d){if(f(d))return!0;if(b==a._mouseOwner&&b.isDragging)return a._drag(b,d)});b.applet._is2D&&a.$resize(function(){b.applet&&b.applet._resize()});a.$bind("body","mouseup touchend",function(h){if(f(h))return!0;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 m=a.Swing;SwingController=m;m.setDraggable=function(b){b=b.prototype;b.setContainer||(b.setContainer=function(b){this.container=b;b.obj=this;this.ignoreMouse=this.isDragging=!1;var e=this;b.bind("mousedown touchstart",function(b){if(e.ignoreMouse)return e.ignoreMouse=!1,!0;a._setMouseOwner(e,!0);e.isDragging=!0;e.pageX=b.pageX;e.pageY=b.pageY;return!1});b.bind("mousemove touchmove",function(b){if(e.isDragging&& a._mouseOwner==e)return e.mouseMove(b),!1});b.bind("mouseup touchend",function(b){e.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){if(this.isDragging&&a._mouseOwner==this){this.timestamp=System.currentTimeMillis();var e=this.pageX0+(b.pageX-this.pageX);b=this.pageY0+(b.pageY-this.pageY);a._mousePageX=e;a._mousePageY=b;this.container.css({top:b+"px",left:e+"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 e=this;this.container.bind("mousemoveoutjsmol touchmoveoutjsmol",function(a,b,f){e.mouseMove(f)});this.container.bind("mouseupoutjsmol touchendoutjsmol",function(a,b,f){e.mouseUp(f)})}})};m.JSDialog=function(){};m.setDraggable(m.JSDialog);m.getScreenDimensions=function(a){a.width=j(window).width();a.height=j(window).height()};m.dispose=function(b){a.$remove(b.id+"_mover");delete m.htDialogs[b.id];b.container.obj.dragBind(!1)}; m.register=function(a,b){a.id=b+ ++m.count;m.htDialogs[a.id]=a};m.setDialog=function(b){a._setMouseOwner(null);a.$remove(b.id);var f=b.id+"_mover",h=a._$(f),c;h[0]?(h.html(b.html),c=h[0].jd):(a.$after("body","
"+b.html+"
"),c=new m.JSDialog,h=a._$(f),b.container=h,c.applet=b.manager.vwr.html5Applet,c.setContainer(h),c.dialog=b,c.setPosition(),c.dragBind(!0),h[0].jd=c);a.$bind("#"+b.id+" .JButton","mousedown touchstart",function(){c.ignoreMouse= !0});a.$bind("#"+b.id+" .JComboBox","mousedown touchstart",function(){c.ignoreMouse=!0});a.$bind("#"+b.id+" .JCheckBox","mousedown touchstart",function(){c.ignoreMouse=!0});a.$bind("#"+b.id+" .JTextField","mousedown touchstart",function(){c.ignoreMouse=!0});a.$bind("#"+b.id+" .JTable","mousedown touchstart",function(){c.ignoreMouse=!0});a.$bind("#"+b.id+" .JScrollPane","mousedown touchstart",function(){c.ignoreMouse=!0});a.$bind("#"+b.id+" .JEditorPane","mousedown touchstart",function(){c.ignoreMouse= !0})};m.setSelected=function(b){a.$prop(b.id,"checked",!!b.selected)};m.setSelectedIndex=function(b){a.$prop(b.id,"selectedIndex",b.selectedIndex)};m.setText=function(b){a.$prop(b.id,"value",b.text)};m.setVisible=function(b){a.$setVisible(b.id,b._visible)};m.setEnabled=function(b){a.$setEnabled(b.id,b.enabled)};m.click=function(b,f){var c=m.htDialogs[b.id];if(c){var d=c.toString();if(0<=d.indexOf("JCheck"))c.selected=b.checked;else if(0<=d.indexOf("JCombo"))c.selectedIndex=b.selectedIndex;else if(null!= c.text&&(c.text=b.value,f&&13!=(f.charCode||f.keyCode)))return}d=m.htDialogs[a.$getAncestorDiv(b.id,"JDialog").id];d.manager.actionPerformed(c?c.name:d.registryKey+"/"+b.id)};m.setFront=function(b){var f=b.manager.vwr.html5Applet;b.zIndex!=a._getZ(f,"dialog")&&(b.zIndex=a._incrZ(f,"dialog"));b.container&&((b.container[0]||b.container).style.zIndex=b.zIndex)};m.hideMenus=function(a){if(a=a._menus)for(var b in a)a[b]._visible&&m.hideMenu(a[b])};m.windowClosing=function(b){b=m.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 f='';a.$after("body",f)}catch(c){}delete a._tracker}return b};var l;a.getProfile=function(a){if(self.Clazz&&self.JSON)return l||Clazz._startProfiling(l= 0==arguments.length||a),Clazz.getProfile()};a._getInChIKey=function(a,b){0<=b.indexOf("MOL=")&&b.split("MOL=")[1].split('"')};a._getAttr=function(a,b){var c=a.indexOf(b+"=");return 0<=c&&0<=(c=a.indexOf('"',c))?a.substring(c+1,a.indexOf('"',c+1)):null};a.User={viewUpdatedCallback:null};a.View={count:0,applets:{},sets:{}};(function(b){b.resetView=function(b,e){debugger;if(e){if(e._viewSet){var c=a.View.applets[e._viewSet];for(b in c)b!=e&&a.View.resetView(b)}}else b&&(b._reset(),a.View.updateView(b))}; b.updateView=function(f,c){if(null!=f._viewSet){c||(c={});c.chemID||(f._searchQuery=null);c.data||(c.data="N/A");c.type=f._viewType;if(null==(f._currentView=b.__findView(f._viewSet,c)))f._currentView=b.__createViewSet(f._viewSet,c.chemID,c.viewID||c.chemID);f._currentView[c.type].data=c.data;f._currentView[c.type].smiles=f._getSmiles();a.User.viewUpdatedCallback&&a.User.viewUpdatedCallback(f,"updateView");b.__setView(f._currentView,f,!1)}};b.updateFromSync=function(f,c){f._updateMsg=c;var d=a._getAttr(c, "sourceID")||a._getAttr(c,"file");if(d){var g=b.__findView(f._viewSet,{viewID:d});if(null==g)return a.updateView(f,c);g!=f._currentView&&b.__setView(g,f,!0);var k=(d=a._getAttr(c,"atoms"))&&0<=c.indexOf("selectionhalos ON")?eval("["+d+"]"):[];setTimeout(function(){f._currentView==g&&b.updateAtomPick(f,k)},10);a.User.viewUpdatedCallback&&a.User.viewUpdatedCallback(f,"updateFromSync")}};b.updateAtomPick=function(b,e){var c=b._currentView;if(null!=c){for(var d in c)"info"!=d&&c[d].applet!=b&&c[d].applet._updateAtomPick(e); a.User.viewUpdatedCallback&&a.User.viewUpdatedCallback(b,"updateAtomPick")}};b.dumpViews=function(a){var c=b.sets[a];if(c){var d="View set "+a+":\n";a=b.applets[a];for(var g in a)d+="\napplet "+a[g]._id+" currentView="+(a[g]._currentView?a[g]._currentView.info.viewID:null);for(g=c.length;0<=--g;){a=c[g];var d=d+("\n\nview="+g+" viewID="+a.info.viewID+" chemID="+a.info.chemID+"\n"),k,j;for(j in a)"info"!=j&&(d+="\nview="+g+" type="+j+" applet="+((k=a[j]).applet?k.applet._id:null)+" SMILES="+ k.smiles+"\n atomMap="+JSON.stringify(k.atomMap)+"\n data=\n"+k.data+"\n")}return d}};b.__init=function(a){var c=a._viewSet,d=b.applets;d[c]||(d[c]={});d[c][a._viewType]=a};b.__findView=function(a,c){var d=b.sets[a];null==d&&(d=b.sets[a]=[]);for(var g=d.length;0<=--g;){var k=d[g];if(c.viewID){if(k.info.viewID==c.viewID)return k}else{if(null!=c.chemID&&c.chemID==k.info.chemID)return k;for(var j in k)if("info"!=j&&(null!=c.data&&null!=k[j].data?c.data==k[j].data:c.type==j))return k}}return null};b.__createViewSet= function(f,c,d){b.count++;c={info:{chemID:c,viewID:d||"model_"+b.count}};for(var g in a._applets)d=a._applets[g],d._viewSet==f&&(c[d._viewType]={applet:d,data:null});b.sets[f].push(c);return c};b.__setView=function(a,b,e){for(var c in a)if("info"!=c){var d=a[c],g=d.applet,k=e||null!=g&&""==g._molData;if(!(null==g||g==b&&!k)){var j=null==d.data,m=null!=g._currentView;g._currentView=a;if(!m||!(a[c].data==d.data&&!j&!k))if(g._loadModelFromView(a),j)break}}}})(a.View);a.Cache={fileCache:{}}; a.Cache.get=function(b){return a.Cache.fileCache[b]};a.Cache.put=function(b,f){a.Cache.fileCache[b]=f};a.Cache.setDragDrop=function(b){a.$appEvent(b,"appletdiv","dragover",function(a){a=a.originalEvent;a.stopPropagation();a.preventDefault();a.dataTransfer.dropEffect="copy"});a.$appEvent(b,"appletdiv","drop",function(f){var c=f.originalEvent;c.stopPropagation();c.preventDefault();var d=c.dataTransfer.files[0];if(null==d)try{d=""+c.dataTransfer.getData("text"),(0==d.indexOf("file:/")||0==d.indexOf("http:/")|| 0==d.indexOf("https:/"))&&b._scriptLoad(d)}catch(g){}else c=new FileReader,c.onloadend=function(c){if(c.target.readyState==FileReader.DONE){var h="cache://DROP_"+d.name;c=Clazz.newByteArray(-1,c.target.result);h.endsWith(".spt")||b._appletPanel.cacheFileByName("cache://DROP_*",!1);"JSV"==b._viewType||h.endsWith(".jdx")?a.Cache.put(h,c):b._appletPanel.cachePut(h,c);(c=a._jsGetXY(b._canvas,f))&&(!b._appletPanel.setStatusDragDropped||b._appletPanel.setStatusDragDropped(0,c[0],c[1],h))&&b._appletPanel.openFileAsyncSpecial(h, 1)}},c.readAsArrayBuffer(d)})}})(Jmol,jQuery);Jmol._debugCode=!1; (function(a){a._isAsync=!1;a._asyncCallbacks={};a._coreFiles=[];var j=!1,g=[],d=[],b=0,c=[],k=[],m=function(c){arguments.length||(c=!0);delete b;for(var e;0k.join("").indexOf(d[b])&&k.push(e+"/core/core"+d[b]+".z.js");for(b=0;b'+b+"._cover(false)\x3c/script>"));e+=a._getWrapper(this,!1);c.addSelectionOptions&&(e+= a._getGrabberOptions(this));a._debugAlert&&!a._document&&alert(e);this._code=a._documentWrite(e)};c._newCanvas=function(a){this._is2D?this._createCanvas2d(a):this._GLmol.create()};c._getHtml5Canvas=function(){return this._canvas};c._getWidth=function(){return this._canvas.width};c._getHeight=function(){return this._canvas.height};c._getContentLayer=function(){return a.$(this,"contentLayer")[0]};c._repaintNow=function(){a._repaint(this,!1)};c._createCanvas2d=function(){var b=a.$(this,"appletdiv"); try{b[0].removeChild(this._canvas),this._canvas.frontLayer&&b[0].removeChild(this._canvas.frontLayer),this._canvas.rearLayer&&b[0].removeChild(this._canvas.rearLayer),this._canvas.contentLayer&&b[0].removeChild(this._canvas.contentLayer),a._jsUnsetMouse(this._mouseInterface)}catch(c){}var e=Math.round(b.width()),f=Math.round(b.height()),d=document.createElement("canvas");d.applet=this;this._canvas=d;d.style.width="100%";d.style.height="100%";d.width=e;d.height=f;d.id=this._id+"_canvas2d";b.append(d); a._$(d.id).css({"z-index":a._getZ(this,"main")});if(this._isLayered){var g=document.createElement("div");d.contentLayer=g;g.id=this._id+"_contentLayer";b.append(g);a._$(g.id).css({zIndex:a._getZ(this,"image"),position:"absolute",left:"0px",top:"0px",width:(this._isSwing?e:0)+"px",height:(this._isSwing?f:0)+"px",overflow:"hidden"});this._isSwing?(b=document.createElement("div"),b.id=this._id+"_swingdiv",a._$(this._id+"_appletinfotablediv").append(b),a._$(b.id).css({zIndex:a._getZ(this,"rear"),position:"absolute", left:"0px",top:"0px",width:e+"px",height:f+"px",overflow:"hidden"}),this._mouseInterface=d.contentLayer,d.contentLayer.applet=this):this._mouseInterface=this._getLayer("front",b,e,f,!1)}else this._mouseInterface=d;a._jsSetMouse(this._mouseInterface)};c._getLayer=function(b,c,e,f,d){var g=document.createElement("canvas");this._canvas[b+"Layer"]=g;g.style.width="100%";g.style.height="100%";g.id=this._id+"_"+b+"Layer";g.width=e;g.height=f;c.append(g);g.applet=this;a._$(g.id).css({background:d?"rgb(0,0,0,1)": "rgb(0,0,0,0.001)","z-index":a._getZ(this,b),position:"absolute",left:"0px",top:"0px",overflow:"hidden"});return g};c._setupJS=function(){window["j2s.lib"]={base:this._j2sPath+"/",alias:".",console:this._console,monitorZIndex:a._getZ(this,"monitorZIndex")};0==d.length&&a._addExec([this,l,null,"loadClazz"]);this._addCoreFiles();a._addExec([this,this.__startAppletJS,null,"start applet"]);this._isSigned=!0;this._ready=!1;this._applet=null;this._canScript=function(){return!0};this._savedOrientations= [];b&&clearTimeout(b);b=setTimeout(m,100)};c.__startAppletJS=function(b){0==a._version.indexOf("$Date: ")&&(a._version=(a._version.substring(7)+" -").split(" -")[0]+" (JSmol/j2s)");var c=Clazz._4Name("java.util.Hashtable").newInstance();a._setAppletParams(b._availableParams,c,b.__Info,!0);c.put("appletReadyCallback","Jmol._readyCallback");c.put("applet",!0);c.put("name",b._id);c.put("syncId",a._syncId);a._isAsync&&c.put("async",!0);b._color&&c.put("bgcolor",b._color);b._startupScript&&c.put("script", b._startupScript);a._syncedApplets.length&&c.put("synccallback","Jmol._mySyncCallback");c.put("signedApplet","true");c.put("platform",b._platform);b._is2D&&c.put("display",b._id+"_canvas2d");c.put("documentBase",document.location.href);var e=b._j2sPath+"/";if(0>e.indexOf("://")){var f=document.location.href.split("#")[0].split("?")[0].split("/");0==e.indexOf("/")?f=[f[0],e.substring(1)]:f[f.length-1]=e;e=f.join("/")}c.put("codePath",e);a._registerApplet(b._id,b);try{b._newApplet(c)}catch(d){System.out.println((a._isAsync? "normal async abort from ":"")+d);return}b._jsSetScreenDimensions();m()};c._restoreState||(c._restoreState=function(){});c._jsSetScreenDimensions=function(){if(this._appletPanel){var b=a._getElement(this,this._is2D?"canvas2d":"canvas");this._appletPanel.setScreenDimension(b.width,b.height)}};c._show=function(b){a.$setVisible(a.$(this,"appletdiv"),b);b&&a._repaint(this,!0)};c._canScript=function(){return!0};c.equals=function(a){return this==a};c.clone=function(){return this};c.hashCode=function(){return parseInt(this._uniqueId)}; c._processGesture=function(a){return this._appletPanel.processTwoPointGesture(a)};c._processEvent=function(a,b){this._appletPanel.processMouseEvent(a,b[0],b[1],b[2],System.currentTimeMillis())};c._resize=function(){var b="__resizeTimeout_"+this._id;a[b]&&clearTimeout(a[b]);var c=this;a[b]=setTimeout(function(){a._repaint(c,!0);a[b]=null},100)};return c};a._repaint=function(b,c){if(b&&b._appletPanel){var e=a.$(b,"appletdiv"),d=Math.round(e.width()),e=Math.round(e.height());if(b._is2D&&(b._canvas.width!= d||b._canvas.height!=e))b._newCanvas(!0),b._appletPanel.setDisplay(b._canvas);b._appletPanel.setScreenDimension(d,e);d=function(){b._appletPanel.paint?b._appletPanel.paint(null):b._appletPanel.update(null)};c?requestAnimationFrame(d):d()}};a._loadImage=function(b,c,e,d,g,k){var j="echo_"+c+e+(d?"_"+d.length:""),m=a._getHiddenCanvas(b.vwr.html5Applet,j,0,0,!1,!0);if(null==m){if(null==k){k=new Image;if(null==d)return k.onload=function(){a._loadImage(b,c,e,null,g,k)},k.src=e,null;System.out.println("Jsmol.js Jmol._loadImage using data URI for "+ j);k.src="string"==typeof d?d:"data:"+JU.Rdr.guessMimeTypeForBytes(d)+";base64,"+JU.Base64.getBase64(d)}var l=k.width,u=k.height;"webgl"==c&&(l/=2,u/=2);m=a._getHiddenCanvas(b.vwr.html5Applet,j,l,u,!0,!1);m.imageWidth=l;m.imageHeight=u;m.id=j;m.image=k;a._setCanvasImage(m,l,u)}else System.out.println("Jsmol.js Jmol._loadImage reading cached image for "+j);return null==d?g(m,e):m};a._canvasCache={};a._getHiddenCanvas=function(b,c,e,d,g,k){c=b._id+"_"+c;b=a._canvasCache[c];if(k)return b;if(g||!b||b.width!= e||b.height!=d)b=document.createElement("canvas"),b.width=b.style.width=e,b.height=b.style.height=d,b.id=c,a._canvasCache[c]=b;return b};a._setCanvasImage=function(a,b,c){a.buf32=null;a.width=b;a.height=c;a.getContext("2d").drawImage(a.image,0,0,a.image.width,a.image.height,0,0,b,c)};a._apply=function(a,b){return a(b)}})(Jmol); (function(a,j){a._Applet=function(b,c,d){window[b]=this;this._jmolType="Jmol._Applet"+(c.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(d)return this;this._isSigned=c.isSigned;this._readyFunction=c.readyFunction;this._ready=!1;this._isJava=!0;this._isInfoVisible=!1;this._applet=null;this._memoryLimit=c.memoryLimit||512;this._canScript=function(){return!0};this._savedOrientations=[];this._initialize=function(b,d){var e=!1;a._jarFile&&(d=a._jarFile);if(this._jarFile){var f=this._jarFile;0<=f.indexOf("/")?(alert("This web page URL is requesting that the applet used be "+f+". 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 "+f+"? ","yes or no")?(b=f.substring(0,f.lastIndexOf("/")),d=f.substring(f.lastIndexOf("/")+1)):e=!0):d=f;this_isSigned=c.isSigned=0<=d.indexOf("Signed")}this._jarPath=c.jarPath=b||".";this._jarFile=c.jarFile="string"==typeof d?d:(d?"JmolAppletSigned":"JmolApplet")+"0.jar";e&&alert("The web page URL was ignored. Continuing using "+this._jarFile+' in directory "'+this._jarPath+'"');void 0==a.controls||a.controls._onloadResetForms()};this._create(b,c);return this}; var g=a._Applet,d=a._Applet.prototype;g._get=function(b,c,d){d||(d=!1);c||(c={});a._addDefaultInfo(c,{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,makeLiveImage:null,coverTitle:"",coverCommand:"",deferApplet:!1,deferUncover:!1,disableJ2SLoadMonitor:!1,disableInitialConsole:!0,debug:!1});a._debugAlert= c.debug;c.serverURL&&(a._serverUrl=c.serverURL);for(var j=!1,l=null,e=c.use.toUpperCase().split("#")[0].split(" "),f=0;fd.codePath.indexOf("://")){var f=j.location.href.split("#")[0].split("?")[0].split("/");f[f.length-1]=d.codePath;d.codePath=f.join("/")}d.archive=m;d.mayscript="true";d.java_arguments="-Xmx"+Math.round(c.memoryLimit||b._memoryLimit)+"m";d.permissions=b._isSigned?"all-permissions":"sandbox";d.documentLocation=j.location.href;d.documentBase=j.location.href.split("#")[0].split("?")[0];d.jarPath=c.jarPath;a._syncedApplets.length&&(d.synccallback="Jmol._mySyncCallback"); b._startupScript&&(d.script=b._startupScript);var f="\n",h;for(h in d)d[h]&&(f+=" \n");f=a.featureDetection.useIEObject||a.featureDetection.useHtml4Object?"":" type='application/x-java-applet'>")+f+"

\n"+ g._noJavaMsg+"

\n":"\n"+f+"
\n"+g._noJavaMsg+"
\n";b._deferApplet&&(b._javaCode=f,f="");f=a._getWrapper(b,!0)+f+a._getWrapper(b,!1)+(c.addSelectionOptions?a._getGrabberOptions(b):"");a._debugAlert&&alert(f);b._code=a._documentWrite(f)};d._newApplet=function(a){this._is2D||a.put("script",(a.get("script")|| "")+";set multipleBondSpacing 0.35;");this._viewerOptions=a;return new J.appletjs.Jmol(a)};d._addCoreFiles=function(){a._addCoreFile("jmol",this._j2sPath,this.__Info.preloadCore);this._is2D||a._addExec([this,null,"J.export.JSExporter","load JSExporter"]);a._debugCode&&a._addExec([this,null,"J.appletjs.Jmol","load Jmol"])};d._create=function(b,c){a._setObject(this,b,c);var d={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,d,c);var j;c.inlineModel?(j=c.inlineModel,j=j.replace(/\r|\n|\r\n/g,0<=j.indexOf("|")?"\\/n":"|").replace(/'/g,"'"),a._debugAlert&&alert("inline model:\n"+j)):j="";d.loadInline=j;d.appletReadyCallback="Jmol._readyCallback";a._syncedApplets.length&&(d.synccallback="Jmol._mySyncCallback");d.java_arguments="-Xmx"+Math.round(c.memoryLimit||this._memoryLimit)+"m";this._initialize(c.jarPath, c.jarFile);g._createApplet(this,c,d)};d._restoreState=function(b,c){System.out.println("\n\nasynchronous restore state for "+b+" "+c);var d=this,g=d._applet&&d._applet.viewer;switch(c){case "setOptions":return function(){d.__startAppletJS(d)};case "render":return function(){setTimeout(function(){g.refresh(2)},10)};default:switch(b){case "J.shape.Balls":case "J.shape.Sticks":case "J.shape.Frank":return null}if(g&&g.isScriptExecuting&&g.isScriptExecuting()){if(a._asyncCallbacks[b])return System.out.println("...ignored"), 1;var j=g.getEvalContextAndHoldQueue(g.eval),e=j.pc-1;j.asyncID=b;a._asyncCallbacks[b]=function(a){j.pc=a;System.out.println("sc.asyncID="+j.asyncID+" sc.pc = "+j.pc);g.eval.resumeEval(j)};g.eval.pc=g.eval.pcEnd;System.out.println("setting resume for pc="+j.pc+" "+b+" to "+a._asyncCallbacks[b]+"//");return function(){System.out.println("resuming "+b+" "+a._asyncCallbacks[b]);a._asyncCallbacks[b](e)}}System.out.println(b+"?????????????????????"+c);return function(){setTimeout(function(){g.refresh(2)}, 10)}}};d._notifyAudioEnded=function(a){this._applet.notifyAudioEnded(a)};d._readyCallback=function(b,c,d){if(d){a._setDestroy(this);this._ready=!0;b=this._readyScript;this._defaultModel?a._search(this,this._defaultModel,b?";"+b:""):b?this._script(b):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);if((b=this._2dapplet)&&b._isEmbedded&&b._ready&&b.__Info.visible)this._show2d(!0), this._show2d(!1),this._show2d(!0);a._hideLoadingSpinner(this)}};d._showInfo=function(b){b&&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!=!b){this._isInfoVisible=b;if(this._isJava){var c=b?2:"100%";a.$setSize(a.$(this,"appletdiv"),c,c)}a.$setVisible(a.$(this,"infotablediv"),b);a.$setVisible(a.$(this,"infoheaderdiv"),b);this._show(!b)}};d._show2d=function(a){this._2dapplet._show2d(a); this._2dapplet._isEmbedded&&(this._showInfo(!1),this._show(!a),this._2dapplet.__showContainer(!0,!0))};d._getSpinner=function(){return this.__Info.appletLoadingImage||this._j2sPath+"/img/JSmol_spinner.gif"};d._getAtomCorrelation=function(a){this._loadMolData(a,"atommap = compare({1.1} {2.1} 'MAP' 'H'); zap 2.1",!0);a=this._evaluate("atommap");for(var c=this._evaluate("{*}.count"),d=[],g=[],j=0;jarguments.length&&(c=1);var d=this._savedOrientations[a];return!d||""==d?d.replace(/1\.0/,c):this._scriptWait(d)};d._resizeApplet=function(b){function c(b,c){var e=""+b;return 0==e.length?c?"":a._allowedJmolSize[2]:e.indexOf("%")==e.length-1?e:1>=(b=parseFloat(b))&&0a._allowedJmolSize[1]?a._allowedJmolSize[1]:b)+(c?c:"")}var d;"object"==typeof b&&null!=b?(d=b[0]||b.width,b=b[1]||b.height):d=b;d=[c(d,"px"),c(b,"px")];b=a._getElement(this,"appletinfotablediv");b.style.width=d[0];b.style.height=d[1];this._containerWidth=d[0];this._containerHeight=d[1];this._is2D&&a._repaint(this,!0)};d._search=function(b,c){a._search(this,b,c)};d._searchDatabase=function(b,c,d){if(this._2dapplet&&this._2dapplet._isEmbedded&&!a.$(this,"appletdiv:visible")[0])return this._2dapplet._searchDatabase(b, c,d);this._showInfo(!1);0<=b.indexOf("?")?a._getInfoFromDatabase(this,c,b.split("?")[0]):(d||(d=a._getScriptForDatabase(c)),b=c+b,this._currentView=null,this._searchQuery=b,this._loadFile(b,d,b))};d._loadFile=function(b,c,d){this._showInfo(!1);c||(c="");this._thisJmolModel=""+Math.random();this._fileName=b;if(!this._scriptLoad(b,c)){var g=this;a._loadFileData(this,b,function(a){g.__loadModel(a,c,d)},function(){g.__loadModel(null)})}};d._scriptLoad=function(a,c){c||(c="");var d=this._isJava||!this._noscript; d&&this._script("zap;set echo middle center;echo Retrieving data...");if(!this._isSigned||null!=this._viewSet)return!1;d?this._script('load async "'+a+'";'+c):this._applet.openFile(a);this._checkDeferred("");return!0};d.__loadModel=function(b,c,d){null!=b&&(null!=this._viewSet&&(c||(c=""),c+=";if ({*}.molecule.max > 1 || {*}.modelindex.max > 0){ delete molecule > 1 or modelindex > 0;x = getProperty('extractModel',{*});load inline @x};"),!c&&this._noscript?this._applet.loadInlineString(b,"",!1):this._loadMolData(b, c,!1),null!=this._viewSet&&a.View.updateView(this,{chemID:d,data:b}))};d._loadMolData=function(a,c,d){c||(c="");d=d?"append":"model";this._applet.scriptWait('load DATA "'+d+'"'+a+'\nEND "'+d+'" ;'+c)};d._loadModelFromView=function(b){this._currentView=b;var c=b.Jmol;null!=c.data?this.__loadModel(c.data,null,b.info.chemID):null!=b.info.chemID?a._searchMol(this,b.info.chemID,null,!1):(c=b.JME)&&c.applet._show2d(!1,this)};d._reset=function(){this._scriptWait("zap",!0)};d._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}")}))};d._atomPickedCallback=function(b,c){if(!(0>c)){var d=[c+1];a.View.updateAtomPick(this,d);this._updateAtomPick(d)}};d._updateAtomPick=function(a){this._script(0==a.length?"select none":"select on visible and (@"+ a.join(",@")+")")};d._isDeferred=function(){return!this._canvas&&this._cover&&this._isCovered&&this._deferApplet};d._checkDeferred=function(a){return this._isDeferred()?(this._coverScript=a,this._cover(!1),!0):!1};d._cover=function(b){b||!this._deferApplet?this._displayCoverImage(b):(b=this._coverScript?this._coverScript:"",this._coverScript="",this._deferUncover&&(b+=";refresh;javascript "+this._id+"._displayCoverImage(false)"),this._script(b,!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())};d._displayCoverImage=function(b){this._coverImage&&this._isCovered!=b&&(this._isCovered=b,a._getElement(this,"coverdiv").style.display=b?"block":"none")};d._getSmiles=function(){return this._evaluate("{visible}.find('SMILES')")}; d._getMol=function(){return this._evaluate("getProperty('ExtractModel',{visible})")};d._getMol2D=function(){return this._evaluate("script('select visible;show chemical sdf')")};a.jmolSmiles=function(a){return a._getSmiles()}})(Jmol,document); (function(a){var j=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:""}; j._addScript=function(a,d){var b=j._scripts.length;j._scripts[b]=[a,d];return b};j._getIdForControl=function(a,d){return"string"==typeof a?a:!d||!a._canScript||a._canScript(d)?a._id:null};j._radio=function(a,d,b,c,k,m,l,e){var f=j._getIdForControl(a,d);if(null==f)return null;++j._radioCount;void 0!=m&&null!=m||(m="jmolRadioGroup"+(j._radioGroupCount-1));if(!d)return"";void 0!=l&&null!=l||(l="jmolRadio"+(j._radioCount-1));void 0!=b&&null!=b||(b=d.substring(0,32));k||(k="");a="";j._actions[l]= j._addScript(f,d);d='";0<=b.toLowerCase().indexOf("")&&(d+=a,a="");return d+('"+a+k)};j._scriptExecute=function(g,d){var b=a._applets[d[0]],c=d[1];if("object"==typeof c)c[0](g,c, b);else"function"==typeof c?c(b):a.script(b,c)};j.__checkScript=function(a,d){var b=0<=d.value.indexOf("JSCONSOLE ")||""===a._scriptCheck(d.value);d.style.color=b?"black":"red";return b};j.__getCmd=function(a,d){if(d._cmds&&d._cmds.length){var b=d._cmds[d._cmdpt=(d._cmdpt+d._cmds.length+a)%d._cmds.length];setTimeout(function(){d.value=b},10);d._cmdadd=1;d._cmddir=a}};j._commandKeyPress=function(g,d,b){g=13==g?13:window.event?window.event.keyCode:g?g.keyCode||g.which:0;var c=document.getElementById(d), k=a._applets[b];switch(g){case 13:return d=c.value,j._scriptExecute(c,[b,d]),c._cmds||(c._cmds=[],c._cmddir=0,c._cmdpt=-1,c._cmdadd=0),d&&0==c._cmdadd?(++c._cmdpt,c._cmds.splice(c._cmdpt,0,d),c._cmdadd=0,c._cmddir=0):c._cmdadd=0,c.value="",!1;case 27:return setTimeout(function(){c.value=""},20),!1;case 38:j.__getCmd(-1,c);break;case 40:j.__getCmd(1,c);break;default:c._cmdadd=0}setTimeout(function(){j.__checkScript(k,c)},20);return!0};j._click=function(a,d){j._element=a;1==arguments.length&&(d=j._actions[a.id]); j._scriptExecute(a,j._scripts[d])};j._menuSelected=function(a){var d=a.value;if(void 0!=d)j._scriptExecute(a,j._scripts[d]);else{d=a.length;if("number"==typeof d)for(var b=0;b";a._debugAlert&&alert(d);return a._documentWrite(d)};j._getCheckbox=function(g,d,b,c,k,m,l){var e=j._getIdForControl(g,d);null!=e&&(e=j._getIdForControl(g,b));if(null==e)return"";void 0!=m&&null!=m||(m="jmolCheckbox"+j._checkboxCount);++j._checkboxCount;if(void 0==d||null==d||void 0==b||null==b)alert("jmolCheckbox requires two scripts");else if(void 0==c||null==c)alert("jmolCheckbox requires a label");else return j._actions[m]=[j._addScript(e,d),j._addScript(e,b)],g="", k='",0<=c.toLowerCase().indexOf("")&&(k+=g,g=""),k+='"+g,a._debugAlert&&alert(k),a._documentWrite(k)};j._getCommandInput=function(g,d,b,c,k,m){g=j._getIdForControl(g,"x");if(null==g)return""; void 0!=c&&null!=c||(c="jmolCmd"+j._cmdCount);void 0!=d&&null!=d||(d="Execute");void 0!=b&&!isNaN(b)||(b=60);void 0!=m||(m="help");++j._cmdCount;d='";a._debugAlert&&alert(d);return a._documentWrite(d)}; j._getLink=function(g,d,b,c,k){g=j._getIdForControl(g,d);if(null==g)return"";void 0!=c&&null!=c||(c="jmolLink"+j._linkCount);void 0!=b&&null!=b||(b=d.substring(0,32));++j._linkCount;d=j._addScript(g,d);b='"+b+"";a._debugAlert&&alert(b);return a._documentWrite(b)}; j._getMenu=function(g,d,b,c,k){var m=j._getIdForControl(g,null);void 0!=c&&null!=c||(c="jmolMenu"+j._menuCount);++j._menuCount;m=typeof d;if(null!=m&&"object"==m&&d.length){var l=d.length;"number"!=typeof b||1==b?b=null:0>b&&(b=l);b='";a._debugAlert&&alert(b);return a._documentWrite(b)}};j._getRadio=function(g,d,b,c,k,m,l,e){0==j._radioGroupCount&&++j._radioGroupCount;m||(m="jmolRadioGroup"+(j._radioGroupCount-1));g=j._radio(g,d,b,c,k,m,l?l:m+"_"+j._radioCount,e?e:0);if(null== g)return"";a._debugAlert&&alert(g);return a._documentWrite(g)};j._getRadioGroup=function(g,d,b,c,k,m){var l=typeof d;if("object"!=l||null==l||!d.length)alert("invalid arrayOfRadioButtons");else{void 0!=b&&null!=b||(b="  ");var e=d.length;++j._radioGroupCount;c||(c="jmolRadioGroup"+(j._radioGroupCount-1));for(var f="",h=0;h";a._debugAlert&&alert(f);return a._documentWrite(f)}}})(Jmol); (function(a){var j=function(a){a="&"+a+"=";return decodeURI(("&"+document.location.search.substring(1)+a).split(a)[1].split("&")[0])};a._j2sPath=j("_J2S");a._jarFile=j("_JAR");a._use=j("_USE");a.getVersion=function(){return a._jmolInfo.version};a.getApplet=function(g,d,b){return a._Applet._get(g,d,b)};a.getJMEApplet=function(g,d,b,c){return a._JMEApplet._get(g,d,b,c)};a.getJSVApplet=function(g,d,b){return a._JSVApplet._get(g,d,b)};a.loadFile=function(a,d,b){a._loadFile(d,b)};a.script=function(a,d){a._checkDeferred(d)|| a._script(d)};a.scriptCheck=function(a,d){return a&&a._scriptCheck&&a._ready&&a._scriptCheck(d)};a.scriptWait=function(a,d){return a._scriptWait(d)};a.scriptEcho=function(a,d){return a._scriptEcho(d)};a.scriptMessage=function(a,d){return a._scriptMessage(d)};a.scriptWaitOutput=function(a,d){return a._scriptWait(d)};a.scriptWaitAsArray=function(a,d){return a._scriptWaitAsArray(d)};a.search=function(a,d,b){a._search(d,b)};a.evaluateVar=function(a,d){return a._evaluate(d)};a.evaluate=function(a,d){return a._evaluateDEPRECATED(d)}; a.getAppletHtml=function(g,d){if(d){var b=a._document;a._document=null;g=a.getApplet(g,d);a._document=b}return g._code};a.getPropertyAsArray=function(a,d,b){return a._getPropertyAsArray(d,b)};a.getPropertyAsJavaObject=function(a,d,b){return a._getPropertyAsJavaObject(d,b)};a.getPropertyAsJSON=function(a,d,b){return a._getPropertyAsJSON(d,b)};a.getPropertyAsString=function(a,d,b){return a._getPropertyAsString(d,b)};a.getStatus=function(a,d){return a._getStatus(d)};a.resizeApplet=function(a,d){return a._resizeApplet(d)}; a.restoreOrientation=function(a,d){return a._restoreOrientation(d)};a.restoreOrientationDelayed=function(a,d,b){return a._restoreOrientationDelayed(d,b)};a.saveOrientation=function(a,d){return a._saveOrientation(d)};a.say=function(a){alert(a)};a.clearConsole=function(a){a._clearConsole()};a.getInfo=function(a){return a._info};a.setInfo=function(a,d,b){a._info=d;2")}; a.jmolButton=function(g,d,b,c,j){return a.controls._getButton(g,d,b,c,j)};a.jmolCheckbox=function(g,d,b,c,j,m,l){return a.controls._getCheckbox(g,d,b,c,j,m,l)};a.jmolCommandInput=function(g,d,b,c,j,m){return a.controls._getCommandInput(g,d,b,c,j,m)};a.jmolHtml=function(g){return a._documentWrite(g)};a.jmolLink=function(g,d,b,c,j){return a.controls._getLink(g,d,b,c,j)};a.jmolMenu=function(g,d,b,c,j){return a.controls._getMenu(g,d,b,c,j)};a.jmolRadio=function(g,d,b,c,j,m,l,e){return a.controls._getRadio(g, d,b,c,j,m,l,e)};a.jmolRadioGroup=function(g,d,b,c,j,m){return a.controls._getRadioGroup(g,d,b,c,j,m)};a.setCheckboxGroup=function(g,d){a.controls._cbSetCheckboxGroup(g,d,arguments)};a.setDocument=function(g){a._document=g};a.setXHTML=function(g){a._isXHTML=!0;a._XhtmlElement=null;a._XhtmlAppendChild=!1;g&&(a._XhtmlElement=document.getElementById(g),a._XhtmlAppendChild=!0)};a.setAppletCss=function(g,d){null!=g&&(a._appletCssClass=g);a._appletCssText=d?d+" ":g?'class="'+g+'" ':""};a.setButtonCss=function(g, d){null!=g&&(a.controls._buttonCssClass=g);a.controls._buttonCssText=d?d+" ":g?'class="'+g+'" ':""};a.setCheckboxCss=function(g,d){null!=g&&(a.controls._checkboxCssClass=g);a.controls._checkboxCssText=d?d+" ":g?'class="'+g+'" ':""};a.setRadioCss=function(g,d){null!=g&&(a.controls._radioCssClass=g);a.controls._radioCssText=d?d+" ":g?'class="'+g+'" ':""};a.setLinkCss=function(g,d){null!=g&&(a.controls._linkCssClass=g);a.controls._linkCssText=d?d+" ":g?'class="'+g+'" ':""};a.setMenuCss=function(g,d){null!= g&&(a.controls._menuCssClass=g);a.controls._menuCssText=d?d+" ":g?'class="'+g+'" ':""};a.setAppletSync=function(g,d,b){a._syncedApplets=g;a._syncedCommands=d;a._syncedReady={};a._isJmolJSVSync=b};a.setGrabberOptions=function(g){a._grabberOptions=g};a.setAppletHtml=function(g,d){g._code&&(a.$html(d,g._code),g._init&&!g._deferApplet&&g._init())};a.coverApplet=function(a,d){a._cover&&a._cover(d)};a.setFileCaching=function(g,d){g?g._cacheFiles=d:a.fileCache=d?{}:null};a.resetView=function(g,d){a.View.resetView(g, d)};a.updateView=function(a,d,b){a._updateView(d,b)};a.getChemicalInfo=function(g,d,b){d||(d="name");"string"!=typeof g&&(g=g._getSmiles());return a._getNCIInfo(g,d,b)};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(){c$=null;window["j2s.clazzloaded"]||(window["j2s.clazzloaded"]=!1);window["j2s.clazzloaded"]||(window["j2s.clazzloaded"]=!0,window["j2s.object.native"]=!0,Clazz={_isQuiet:!1,_debugging:!1},function(a,j){try{a._debugging=0<=document.location.href.indexOf("j2sdebug")}catch(g){}var d=["j2s.clazzloaded","j2s.object.native"];a.setGlobal=function(a,b){d.push(a);window[a]=b};a.getGlobals=function(){return d.sort().join("\n")};a.setConsoleDiv=function(a){window["j2s.lib"]&&(window["j2s.lib"].console= a)};var b=null;a._startProfiling=function(a){b=a&&self.JSON?{}:null};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._hashCode=0;var c=a._O.prototype;c.equals=function(a){return this==a};c.hashCode=function(){return this._$hashcode||(this._$hashcode=++a._hashCode)};c.getClass=function(){return a.getClass(this)}; c.clone=function(){return a.clone(this)};a.clone=function(a){var b=a instanceof Array?Array(a.length):new a.constructor,c;for(c in a)b[c]=a[c];return b};c.finalize=function(){};c.notify=function(){};c.notifyAll=function(){};c.wait=function(){};c.to$tring=Object.prototype.toString;c.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(b,c){c&&(b.__CLASS_NAME__=b.prototype.__CLASS_NAME__=c);if(a._supportsNativeObject)for(var d=0;de)return"["==d.charAt(0)?a.extractClassName(d):d.replace(/[^a-zA-Z0-9]/g,"");var e=e+8,f=d.indexOf("(",e);if(0>f)break;d=d.substring(e,f);if(0<=d.indexOf("Array"))return"Array";d=d.replace(/^\s+/,"").replace(/\s+$/,"");return"anonymous"==d||""==d?"Function":d;case "object":if(b.__CLASS_NAME__)return b.__CLASS_NAME__;if(!b.constructor)break; if(!b.constructor.__CLASS_NAME__){if(b instanceof Number)return"Number";if(b instanceof Boolean)return"Boolean";if(b instanceof Array||b.BYTES_PER_ELEMENT)return"Array";d=b.toString();if("["==d.charAt(0))return a.extractClassName(d)}return a.getClassName(b.constructor,!0)}return"Object"};a.getClass=function(b){if(!b)return a._O;if("function"==typeof b)return b;if(b instanceof a.CastedNull)b=b.clazzName;else switch(typeof b){case "string":return String;case "object":if(!b.__CLASS_NAME__)return b.constructor|| a._O;b=b.__CLASS_NAME__;break;default:return b.constructor}return a.evalType(b,!0)};var k=function(b,c){for(var d=0;dd;){if(e.implementz)for(var f=e.implementz,g=0;g(""+b).indexOf("Error"))return!1;System.out.println(a.getStackTrace());return!0}return c==Exception||c==Throwable||c==NullPointerException&&f(b)};a.getStackTrace=function(a){a|| (a=25);var b="\n",c=arguments.callee,d=0>a;d&&(a=-a);for(var e=0;e",b=b+(e+" "+(c.exName?(c.claxxOwner?c.claxxOwner.__CLASS_NAME__+".":"")+c.exName+f.replace(/function /,""):f)+"\n");if(c==c.caller){b+="\n";break}if(d)for(var f=c.arguments,g=0;gu.indexOf(g)&&(u+=g+"\n");b[g]||(b[g]=0);b[g]++}if(fx.lastParams==U.typeString&&fx.lastClaxxRef===d){if(U.hasCastedNull){d=[];for(f=0;fp[q]){sa=!1;break}sa&&(p[l.length]=E,B.push(p))}if(0==B.length)m=null;else{n=B[0];for(E=1;ES(m,c)&&m.push(c);k&&(k.claxxOwner===c?(j[k.funParams]=k,k.claxxOwner=null,k.funParams=null):k.claxxOwner||(j["\\unknown"]=k));f.exClazz=c;j[g]=f;return j};duplicatedMethods={};var R=function(b,c,d){var e=b.prototype[c];if(e&&(e.claxxOwner||e.claxxReference)===b)key=b.__CLASS_NAME__+"."+c+d,(b=duplicatedMethods[key])?(c= "Warning! Duplicate method found for "+key,System.out.println(c),a.alert(c),duplicatedMethods[key]=b+1):duplicatedMethods[key]=1};a.showDuplicates=function(a){var b="",c=duplicatedMethods,d=0,e;for(e in c)1c.length)break;if(c.indexOf(g)==c.length-g.length){c=c.substring(0,c.length-g.length+ 1);break}}else c=a._Loader.getClasspathFor(d,!0);else(e=a.binaryFolders)&&e.length&&(c=e[0]);c||(c="j2s/");c=c.replace(/\\/g,"/");e=c.length;e=c.charAt(e-1);"/"!=e&&(c+="/");this.base?d=c+b:(e=d.lastIndexOf("."),d=-1==e||this.base?c+b:c+d.substring(0,e).replace(/\./g,"/")+"/"+b)}c=null;try{if(0>d.indexOf(":/")){var k=document.location.href.split("?")[0].split("/");k[k.length-1]=d;d=k.join("/")}c=new java.net.URL(d)}catch(m){}k=null==c?null:j._getFileData(d.toString());if(!k||"error"==k||0==k.indexOf("[Exception"))return null; k=(new java.lang.String(k)).getBytes();k=new java.io.BufferedInputStream(new java.io.ByteArrayInputStream(k));k.url=c;return k},defineMethod:function(b,c,d){a.defineMethod(this,b,c,d)},defineStaticMethod:function(b,c,d){a.defineMethod(this,b,c,d);this[b]=this.prototype[b]},makeConstructor:function(b,c){a.makeConstructor(this,b,c)}};var Y=[];a.pu$h=function(a){a||(a=self.c$);a&&Y.push(a)};a.p0p=function(){return Y.pop()};a.decorateAsClass=function(b,c,d,e,f,g){var h=null;c&&(h=c.__PKG_NAME__,h||(h= c.__CLASS_NAME__));var j=(h?h+".":"")+d;a._Loader._classPending[j]&&(delete a._Loader._classPending[j],a._Loader._classCountOK++,a._Loader._classCountPending--);a._Loader&&a._Loader._checkLoad&&System.out.println("decorating class "+h+"."+d);(h=a.unloadedClasses[j])&&(b=h);Z(b,c,d);g?a.inheritClass(b,e,g):e&&a.inheritClass(b,e);f&&a.implementOf(b,f);return b};var Z=function(b,c,d){var e;c?c.__PKG_NAME__?(e=c.__PKG_NAME__+"."+d,c[d]=b,c===java.lang&&a.setGlobal(d,b)):(e=c.__CLASS_NAME__+"."+d,c[d]= b):(e=d,a.setGlobal(d,b));a.extendJO(b,e);c=a.innerFunctionNames;for(d=0;da?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;var aa=function(a,b){a||(a=0);if("object"==typeof a)var c=a;else for(var c=Array(a),d=0;d>3;c._fake=!0;return c},O=function(a,b){a||(a=0);b||(b=this.length);if(this._fake){var c=new this.constructor(b-a);System.arraycopy(this,a,c,0,b-a);return c}return new this.constructor(this.buffer.slice(a* this.BYTES_PER_ELEMENT,b*this.BYTES_PER_ELEMENT))};!0==(a.haveInt32=!!(self.Int32Array&&self.Int32Array!=Array))?Int32Array.prototype.sort||(Int32Array.prototype.sort=Array.prototype.sort):(Int32Array=function(a){return aa(a,32)},Int32Array.prototype.sort=Array.prototype.sort,Int32Array.prototype.toString=function(){return"[object Int32Array]"});Int32Array.prototype.slice||(Int32Array.prototype.slice=function(){return O.apply(this,arguments)});Int32Array.prototype.clone=function(){var a=this.slice(); a.BYTES_PER_ELEMENT=4;return a};!0==(a.haveFloat64=!!(self.Float64Array&&self.Float64Array!=Array))?Float64Array.prototype.sort||(Float64Array.prototype.sort=Array.prototype.sort):(Float64Array=function(a){return aa(a,64)},Float64Array.prototype.sort=Array.prototype.sort,Float64Array.prototype.toString=function(){return"[object Float64Array]"});Float64Array.prototype.slice||(Float64Array.prototype.slice=function(){return O.apply(this,arguments)});Float64Array.prototype.clone=function(){return this.slice()}; a.newArray=function(a,b,c,d){if(-1!=a||2==arguments.length)return I(arguments,0);a=b.slice(c,d);a.BYTES_PER_ELEMENT=b.BYTES_PER_ELEMENT;return a};var I=function(a,b){var c=a[0];"string"==typeof c&&(c=c.charCodeAt(0));var d=a.length-1,e=a[d];if(1c&&(c=e);switch(b){case 8:return d=new Int8Array(c),d.BYTES_PER_ELEMENT=1,d;case 32:return d=new Int32Array(c),d.BYTES_PER_ELEMENT=4,d;case 64:return d=new Float64Array(c), d.BYTES_PER_ELEMENT=8,d;default:d=0>c?e:Array(c);d.BYTES_PER_ELEMENT=0;if(0d)for(;0<=--e;)c[d++]=a[b++];else{d+=e;for(b+=e;0<=--e;)a[--d]=a[--b]}},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];if("undefined"!=typeof c)return c;if(0=n.STATUS_LOAD_COMPLETE))h?window.setTimeout(f,25):f()}else{var k= b.getClasspathFor(c);j=e[k];if(!j)for(h=x.length;0<=--h;)if(x[h].path==k||x[h].name==c){j=!0;break}if(j){if(f&&(j=C(c)))if(j.onLoaded){if(f!=j.onLoaded){var m=j.onLoaded,l=f;j.onLoaded=function(){m();l()}}}else j.onLoaded=f}else{j=a.unloadedClasses[c]&&C(c)||new n;j.name=c;j.path=k;j.isPackage=k.lastIndexOf("package.js")==k.length-10;ga(k,c,j);j.onLoaded=f;j.status=n.STATUS_KNOWN;c=!1;for(h=x.length;0<=--h;)if(x[h].status!=n.STATUS_LOAD_COMPLETE){c=!0;break}if(j.isPackage){for(h=x.length;0<=--h&& !x[h].isPackage;)x[h+1]=x[h];x[++h]=j}else c&&x.push(j);if(!c){var t=!1;f&&(t=H,H=!0);g&&(f=null);ca(d,j,!0);F(j,j.path,j.requiredBy,!1,f?function(){H=t;f()}:null)}}}};b.loadPackage=function(a,c){c||(c=null);window[a+".registered"]=!1;b.loadPackageClasspath(a,b.J2SLibBase||(b.J2SLibBase=b.getJ2SLibBase()||"j2s/"),!0,c)};b.jarClasspath=function(a,b){b instanceof Array||(b=[b]);v(b);j._debugCore&&(a=a.replace(/\.z\./,"."));for(var c=b.length;0<=--c;)w["#"+b[c]]=a;w["$"+a]=b};b.registerPackages=function(c, d){for(var e=b.getClasspathFor(c+".*",!0),f=0;f>");h=e[d];e[d]=!0;la(x,d);ha=!0;ia=!1;b._checkLoad&&System.out.println("\t"+d+(g?"\n -- required by "+g:"")+" ajax="+ha+" async="+ia);g=d;a._debugging&&(d=d.replace(/\.z\.js/,".js"));h||System.out.println("loadScript "+d);b.onScriptLoading(d);if(ha&&!ia){var m=j._getFileData(d);try{K(d,g,m,h)}catch(l){alert(l+" loading file "+d+" "+c.name+" "+a.getStackTrace())}k&&k()}else c={dataType:"script",async:!0,type:"GET",url:d,success:M(d, !1,k),error:M(d,!0,k)},f++,h?setTimeout(c.success,0):j.$ajax(c)},M=function(c,d,e){a.getStackTrace();return function(){l&&this.timeoutHandle&&(window.clearTimeout(this.timeoutHandle),this.timeoutHandle=null);0l;l++)for(;k=j[l](n.STATUS_CONTENT_LOADED);)1==l&&s===k&&(k.status=n.STATUS_LOAD_COMPLETE),updateNode(k),s=k;for(;!(O=[],!Q(d,c)););for(l=0;2>l;l++)for(s=null;(k=j[l](n.STATUS_DECLARED))&&s!==k;)updateNode(s=k);s=[];for(l=0;2>l;l++)for(;k=j[l](n.STATUS_DECLARED);)s.push(k),k.status=n.STATUS_LOAD_COMPLETE; if(s.length){for(l=0;l=n.STATUS_DECLARED););if(0<= f){if(b._checkLoad){var g;System.out.println("cycle found loading "+c+" for "+a)}for(;fg;g++){j=h[g];for(f=j.length;0<=--f;)if(j[f].status==n.STATUS_DECLARED&& Q(j[f],c))return!0}d.length=e;return!1};b._classCountPending=0;b._classCountOK=0;b._classPending={};b.showPending=function(){var a=[],c;for(c in b._classPending){var d=C(c);d?(a.push(d),System.out.println(R("","",d,"",0))):alert("No node for "+c)}return a};var R=function(a,b,c,d,e){b+="--"+c.name;a+=b+"\n";if(5=n.STATUS_LOAD_COMPLETE)P(a);else{var c=!0;if(a.musts.length&&a.declaration)for(var d=a.musts.length,e=d;0<=--e;){var f=a.musts[e];f.requiredBy=a;if(f.statusn.STATUS_KNOWN&&!a.declaration||S(a.musts,n.STATUS_LOAD_COMPLETE)&&S(a.optionals,n.STATUS_LOAD_COMPLETE)){c=n.STATUS_LOAD_COMPLETE;if(!T(a,c))return!1;if(a.declaration&& a.declaration.clazzList){h=0;j=a.declaration.clazzList;for(k=j.length;hc.indexOf("Opera")&&document.all?0==f?d:g:0>c.indexOf("Gecko")?f==e.offsetHeight&&f==e.scrollHeight?d:g:d;Q!=c&&(Q=c,v.style.bottom=Q+4+"px");b&&M()}};var ea=function(a){if(a)for(var b=a.childNodes.length;0<=--b;){var c=a.childNodes[b];if(c){c.childNodes&&c.childNodes.length&&ea(c);try{a.removeChild(c)}catch(d){}}}},fa=function(a){F&&a==y.DEFAULT_OPACITY&&(window.clearTimeout(F),F=null);K=a;navigator.userAgent.toLowerCase();v.style.filter= "Alpha(Opacity="+a+")";v.style.opacity=a/100},ra=function(){y.hideMonitor()},da=!1,M=function(){"none"!=v.style.display&&(K==y.DEFAULT_OPACITY?(F=window.setTimeout(function(){M()},750),K-=5):0<=K-10?(fa(K-10),F=window.setTimeout(function(){M()},40)):v.style.display="none")},p=a.Console,z=System;p.maxTotalLines=1E4;p.setMaxTotalLines=function(a){p.maxTotalLines=0p.maxTotalLines){for(var d=0;dc.childNodes.length)h=document.createElement("DIV"),c.appendChild(h),h.style.whiteSpace="nowrap",p.linesCount++;else try{h= c.childNodes[c.childNodes.length-1]}catch(j){h=document.createElement("DIV"),c.appendChild(h),h.style.whiteSpace="nowrap",p.linesCount++}var k=document.createElement("SPAN");h.appendChild(k);k.style.whiteSpace="nowrap";b&&(k.style.color=b);h=f[d];0==h.length&&(h=A);k.appendChild(document.createTextNode(h));p.pinning||(c.scrollTop+=100);p.metLineBreak=d!=g||e}d=c.parentNode.className;!p.pinning&&(d&&-1!=d.indexOf("composite"))&&(c.parentNode.scrollTop=c.parentNode.scrollHeight);p.lastOutputTime=(new Date).getTime()}; p.clear=function(){try{p.metLineBreak=!0;var a=window["j2s.lib"],b=a&&a.console;if(b&&(b=document.getElementById(b))){for(var c=b.childNodes,d=c.length;0<=--d;)b.removeChild(c[d]);p.linesCount=0}}catch(e){}};a.alert=function(a){p.consoleOutput(a+"\r\n")};z.out.print=function(a){p.consoleOutput(a)};z.out.println=function(a){p.consoleOutput("undefined"==typeof a?"\r\n":null==a?"null\r\n":a+"\r\n")};z.out.write=function(a,b,c){z.out.print(String.instantialize(a).substring(b,b+c))};z.err.__CLASS_NAME__= "java.io.PrintStream";z.err.print=function(a){p.consoleOutput(a,"red")};z.err.println=function(a){p.consoleOutput("undefined"==typeof a?"\r\n":null==a?"null\r\n":a+"\r\n","red")};z.err.write=function(a,b,c){z.err.print(String.instantialize(a).substring(b,b+c))}}(Clazz,Jmol))};Jmol.___JmolDate="$Date: 2018-02-07 23:40:37 -0600 (Wed, 07 Feb 2018) $";Jmol.___fullJmolProperties="src/org/jmol/viewer/Jmol.properties";Jmol.___JmolVersion="14.29.4";