'.replace(/ID/g,
f._id+"_localReader")),f._localReader=a.$(f,"localReader"));a.$appEvent(f,"localReader_loadfile","click");a.$appEvent(f,"localReader_loadfile","click",function(){var c=a.$(f,"localReader_files")[0].files[0],d=new FileReader;d.onloadend=function(d){d.target.readyState==FileReader.DONE&&(a.$appStyle(f,"localReader",{display:"none"}),b.setData(c.name,a._toBytes(d.target.result)))};d.readAsArrayBuffer(c)});a.$appEvent(f,"localReader_cancel","click");a.$appEvent(f,"localReader_cancel","click",function(){a.$appStyle(f,
"localReader",{display:"none"});b.setData(null,"#CANCELED#")});a.$appStyle(f,"localReader",{display:"block"})};a._toBytes=function(b){b=new Uint8Array(b);for(var a=Clazz.newByteArray(b.length,0),c=b.length;0<=--c;)a[c]=b[c];return a};a._setConsoleDiv=function(b){self.Clazz&&Clazz.setConsoleDiv(b)};a._setJmolParams=function(b,f,c){for(var d in f)if(0<="'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'".indexOf("'"+
d.toLowerCase()+"'")&&("language"!=d||a.featureDetection.supportsLocalization()))c?b.put(d,!0===f[d]?Boolean.TRUE:!1===f[d]?Boolean.FALSE:f[d]):b[d]=f[d]};a._registerApplet=function(b,f){return window[b]=a._applets[b]=a._applets[f]=f};a._readyCallback=function(b,f,c,d){var e=b.split("_object")[0];a._applets[e]._readyCallback(b,f,c,d)};a._getWrapper=function(b,a){var c=b._height,d=b._width;if("string"!==typeof c||0>c.indexOf("%"))c+="px";if("string"!==typeof d||0>d.indexOf("%"))d+="px";var e="";b._coverImage&&
(e=' onclick="Jmol.coverApplet(ID, false)" title="'+b._coverTitle+'"',e='
"+('")+"
");return(a?
'
').replace(/IMG/,
e).replace(/Hpx/g,c).replace(/Wpx/g,d).replace(/ID/g,b._id)};a._documentWrite=function(b){if(a._document){if(a._isXHTML&&!a._XhtmlElement){var c=document.getElementsByTagName("script");a._XhtmlElement=c.item(c.length-1);a._XhtmlAppendChild=!1}a._XhtmlElement?a._domWrite(b):a._document.write(b);return null}return b};a._domWrite=function(b){for(var c=[0];c[0]
c[0]?-1:0}if(!b||"object"!=typeof b)return[];for(var c=[],d=b.length-1;0<=d;d--)for(var e=0,g=b[d].length;ec.type.indexOf("touch"))return!1;c.preventDefault();var d=a.$offset(b.id),e,g=c.originalEvent;a._mousePageX=c.pageX;a._mousePageY=c.pageY;g.targetTouches&&g.targetTouches[0]?(e=g.targetTouches[0].pageX-d.left,d=g.targetTouches[0].pageY-d.top):g.changedTouches?(e=g.changedTouches[0].pageX-d.left,d=g.changedTouches[0].pageY-d.top):(e=c.pageX-d.left,
d=c.pageY-d.top);return void 0==e?null:[Math.round(e),Math.round(d),a._jsGetMouseModifiers(c)]};a._gestureUpdate=function(b,c){c.stopPropagation();c.preventDefault();var d=c.originalEvent;switch(c.type){case "touchstart":a._touching=!0;break;case "touchend":a._touching=!1}if(!d.touches||2!=d.touches.length)return!1;switch(c.type){case "touchstart":b._touches=[[],[]];break;case "touchmove":var e=a.$offset(b.id),g=b._touches[0],h=b._touches[1];g.push([d.touches[0].pageX-e.left,d.touches[0].pageY-e.top]);
h.push([d.touches[1].pageX-e.left,d.touches[1].pageY-e.top]);d=g.length;3d?-1:1,0,c]);return!1});a.$bind(b,"contextmenu",function(){return!1});a.$bind(b,"mouseout",function(){b.applet._applet&&b.applet._applet.viewer.startHoverWatcher(!1);b.isDragging=!1});a.$bind(b,"mouseenter",function(c){b.applet._applet&&b.applet._applet.viewer.startHoverWatcher(!0);if(0===c.buttons||0===c.which){b.isDragging=
!1;c=a._jsGetXY(b,c);if(!c)return!1;b.applet._processEvent(502,c)}});b.applet._is2D&&a.$resize(function(){b.applet&&b.applet._resize()});a.$bind("body","mouseup touchend",function(){b.applet&&(b.isDragging=!1)})};a._jsUnsetMouse=function(b){b.applet=null;a.$bind(b,"mousedown touchstart mousemove touchmove mouseup touchend DOMMouseScroll mousewheel contextmenu mouseout mouseenter",null)};a._setDraggable=function(b){b=b.prototype;b.setContainer=function(b){this.container=b;this.ignoreMouse=this.isDragging=
!1;var c=this;b.bind("mousedown touchstart",function(b){if(c.ignoreMouse)return c.ignoreMouse=!1,!0;c.isDragging=!0;c.pageX=b.pageX;c.pageY=b.pageY;return!1});b.bind("mousemove touchmove",function(b){if(c.isDragging)return c.mouseMove(b),!1});b.bind("mouseup touchend",function(b){c.mouseUp(b)})};b.mouseUp=function(b){if(this.isDragging)return this.pageX0+=b.pageX-this.pageX,this.pageY0+=b.pageY-this.pageY,this.isDragging=!1};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&&this.container.css({top:this.pageY0+(b.pageY-this.pageY)+"px",left:this.pageX0+(b.pageX-this.pageX)+"px"})};b.dragBind=function(b){this.container.unbind("mousemoveoutjsmol");this.container.unbind("touchmoveoutjsmol");this.container.unbind("mouseupoutjsmol");
this.container.unbind("touchendoutjsmol");if(b){var c=this;this.container.bind("mousemoveoutjsmol touchmoveoutjsmol",function(b,a,d){c.mouseMove(d)});this.container.bind("mouseupoutjsmol touchendoutjsmol",function(b,a,d){c.mouseUp(d)})}}}})(Jmol,jQuery);Jmol._grabberOptions=[["$","NCI(small molecules)"],[":","PubChem(small molecules)"]];Jmol.say=function(a){alert(a)};
Jmol._TMApplet=function(a,g,c){this._syncId=(""+Math.random()).substring(3);this._id=a;this._is2D=!0;this._isJava=!1;this._ready=!0;this._mouseDown=!1;this._jmolType="Jmol._Canvas2D (TwirlyMol)";if(c)return this;this._createCanvas(a,g);return this};
Jmol._TMApplet._getApplet=function(a,g,c){if(!Jmol.featureDetection.allowHTML5)return null;c||(c=!1);g||(g={});Jmol._addDefaultInfo(g,{color:"#FFFFFF",width:300,height:300,addSelectionOptions:!1,serverURL:"http://chemapps.stolaf.edu/jmol/jsmol/jsmol.php",defaultModel:"",readyFunction:null,use:"HTML5",bondWidth:5,shadeAtoms:!1,zoomScaling:1.5,pinchScaling:2,mouseDragFactor:0.5,touchDragFactor:0.15,multipleBondSpacing:4,spinRateX:0,spinRateY:0.5,spinFPS:20,spin:!1,noscript:!0,debug:!1});g=new Jmol._TMApplet(a,
g,c);return c?g:Jmol._registerApplet(a,g)};Jmol.getTMApplet=Jmol._TMApplet._getApplet;
(function(a){a._CPK="#FF1493 #FFFFFF #D9FFFF #CC80FF #C2FF00 #FFB5B5 #909090 #3050F8 #FF0D0D #90E050 #B3E3F5 #AB5CF2 #8AFF00 #BFA6A6 #F0C8A0 #FF8000 #FFFF30 #1FF01F #80D1E3 #8F40D4 #3DFF00 #E6E6E6 #BFC2C7 #A6A6AB #8A99C7 #9C7AC7 #E06633 #F090A0 #50D050 #C88033 #7D80B0 #C28F8F #668F8F #BD80E3 #FFA100 #A62929 #5CB8D1 #702EB0 #00FF00 #94FFFF #94E0E0 #73C2C9 #54B5B5 #3B9E9E #248F8F #0A7D8C #006985 #C0C0C0 #FFD98F #A67573 #668080 #9E63B5 #D47A00 #940094 #429EB0 #57178F #00C900".split(" ");a._elem="X H He Li Be B C N O F Ne Na Mg Al Si P S Cl Ar K Ca Sc Ti V Cr Mn Fe Co Ni Cu Zn Ga Ge As Se Br Kr Rb Sr Y Zr Nb Mo Tc Ru Rh Pd Ag Cd In Sn Sb Te I Xe Cs Ba La Ce Pr Nd Pm Sm Eu Gd Tb Dy Ho Er Tm Yb Lu Hf Ta W Re Os Ir Pt Au Hg Tl Pb Bi Po At Rn Fr Ra Ac Th Pa U Np Pu Am Cm Bk Cf Es".split(" ");
a._elemNo={};var g=a.prototype;g.spin=function(c){this.__Info.spin=c;this._spin(c)};g._spin=function(c){this._spinThread&&clearTimeout(this._spinThread);if(0==this.spinFPS||0==this.spinRateX&&0==this.spinRateY)c=!1;if(c){var a=this;c=1E3/this.spinFPS;this._mouseDown||(this._rotate(this.spinRateY,this.spinRateX),this._draw());this._spinThread=setTimeout(function(){a._spin(!0)},c)}};g._initParams=function(){this.zoom=this.__Info.defaultZoom||100;this.doSpin=this.__Info.spin||!1;this.center2D=[this._canvas.width/
2,this._canvas.height/2,0];this._getCenterAndRadius();this.rotation=new a.M3;this.shadeAtoms=!1;this._setParams()};g._setParams=function(){this.bondWidth=this.__Info.bondWidth||5;this.zoomScaling=this.__Info.zoomScaling||1.5;this.pinchScaling=this.__Info.pinchScaling||1;this.mouseDragFactor=this.__Info.mouseDragFactor||0.5;this.touchDragFactor=this.__Info.touchDragFactor||0.15;this.multipleBondSpacing=this.__Info.multipleBondSpacing||4;this.spinRateX=this.__Info.spinRateX||0;this.spinRateY=this.__Info.spinRateY||
0;this.spinFPS=this.__Info.spinFPS||0;var c=this.shadeAtoms;(this.shadeAtoms=this.__Info.shadeAtoms||!1)&&!c&&this._setAtomShades()};g._setAtomShades=function(){if(this.atoms)for(var c=this.atoms.length;0<=--c;)this.atoms[c].color50=this._getColor(this.atoms[c].color,0.5)};g._createCanvas=function(c,a){Jmol._setObject(this,c,a);this._color=this._color.replace(/0x/,"#");var e=Jmol._getWrapper(this,!0);Jmol._document?(Jmol._documentWrite(e),this._createCanvas2d(!1),e=""):e+='