if(window._proxy_require==null){window._proxy_require_loaded=[];window._proxy_require_loading=[];window._proxy_require_callback=[];window._proxy_require_loading_running=false;window._document_loaded=false;window._proxy_host="http://tools.medicine.yale.edu";window._proxy_require=function(d,a){if(a!=null){_proxy_require_callback.push({callback:a,conditions:(typeof d=="string")?[d]:d})}if(typeof d=="string"){d=[d]}var f=true;for(var c=0;c<d.length;c++){var e=false;for(i=0;i<_proxy_require_loading.length;i++){if(_proxy_require_loading[i].library==d[c]){e=true;break}}if(e){f=false;continue}e=false;for(i=0;i<_proxy_require_loaded.length;i++){if(_proxy_require_loaded[i]==d[c]){e=true;break}}if(e==false){var h=window._proxy_host+"/fw/framework/";if(d[c].indexOf("://")>-1){h=""}if(d[c].indexOf(".css")>-1){if(document.createStyleSheet){document.createStyleSheet(h+d[c])}else{var g="@import url('"+h+d[c]+"');";var b=document.createElement("link");b.rel="stylesheet";b.type="text/css";b.href="data:text/css,"+escape(g);document.getElementsByTagName("head")[0].appendChild(b)}_proxy_require_loaded.push(d[c]);_proxy_require_callback_cleanup()}else{if(d[c].indexOf(".js")>-1){var b=document.createElement("script");b.type="text/javascript";b.src=h+((h.indexOf("?")==-1)?d[c]:encodeURIComponent(d[c]));_proxy_require_loading.push({library:d[c],element:b,loaded:false});_proxy_require_loading_load(false)}}f=false}}if(f){_proxy_require_callback_cleanup();return}};window._proxy_require_callback_cleanup=function(){for(var a=0;a<_proxy_require_callback.length;a++){var d=true;for(var b=0;b<_proxy_require_callback[a].conditions.length;b++){var e=false;for(var c=0;c<_proxy_require_loaded.length;c++){if(_proxy_require_loaded[c]==_proxy_require_callback[a].conditions[b]){e=true;break}}if(e==false){d=false;break}}if(d){_proxy_require_callback[a].callback();_proxy_require_callback.splice(a,1);a--}}};window._proxy_require_loading_callback=function(a,b){return function(){if((a.element.readyState==null)?true:((a.element.readyState=="loaded")||(a.element.readyState=="complete"))){a.loaded=true;if(b==true){_proxy_require_loading_load(true)}}}};window._proxy_require_loading_load=function(b){if((window._proxy_require_loading_running==true)&&(b==false)){return}window._proxy_require_loading_running=true;for(i=0;i<_proxy_require_loading.length;i++){var a=_proxy_require_loading[i];if(a.loaded==false){var c=a.loaded;if(a.element.parentNode==null){if(c==false){if(a.element.readyState==null){a.element.onload=_proxy_require_loading_callback(a,true)}else{a.element.onreadystatechange=_proxy_require_loading_callback(a,true)}}document.getElementsByTagName("head")[0].appendChild(a.element)}if(c==true){_proxy_require_loaded.push(a.library);_proxy_require_callback_cleanup();_proxy_require_loading.splice(i,1);i--}else{return}}else{_proxy_require_loaded.push(a.library);_proxy_require_callback_cleanup();_proxy_require_loading.splice(i,1);i--}}window._proxy_require_loading_running=false};window._proxy_parse=function(c){var a=null;if(window.DOMParser){try{a=(new DOMParser()).parseFromString(c,"text/xml")}catch(b){a=null}}else{if(window.ActiveXObject){try{a=new ActiveXObject("Microsoft.XMLDOM");a.async=false;if(!a.loadXML(c)){window.alert(a.parseError.reason+a.parseError.srcText)}}catch(b){a=null}}else{alert("cannot parse xml string!")}}return(a)};window.proxy_fetch=function(c,a){var b=document.createElement("script");b.src=_proxy_host+"/fw/proxy?u="+encodeURIComponent(c)+"&c="+encodeURIComponent(a);b.type="text/javascript";document.getElementsByTagName("head")[0].appendChild(b)}}(function(X,j,F,R,h,q){var x=this;var e=Math.floor(Math.random()*10000);var p=Function.prototype;var Q=/^((http.?:)\/\/([^:\/\s]+)(:\d+)*)/;var O=/[\-\w]+\/\.\.\//;var M=/([^:])\/\//g;var G="";var o={};var a=X.easyXDM;var B="easyXDM_";var z;var V=false;var r;var y;function D(Y,Z){var aa=typeof Y[Z];return aa=="function"||(!!(aa=="object"&&Y[Z]))||aa=="unknown"}function E(Y,Z){return !!(typeof(Y[Z])=="object"&&Y[Z])}function C(Y){return Object.prototype.toString.call(Y)==="[object Array]"}function A(){try{var Y=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");r=Array.prototype.slice.call(Y.GetVariable("$version").match(/(\d+),(\d+),(\d+),(\d+)/),1);y=parseInt(r[0],10)>9&&parseInt(r[1],10)>0;Y=null;return true}catch(Z){return false}}var I,T;if(D(X,"addEventListener")){I=function(Z,aa,Y){Z.addEventListener(aa,Y,false)};T=function(Z,aa,Y){Z.removeEventListener(aa,Y,false)}}else{if(D(X,"attachEvent")){I=function(Z,aa,Y){Z.attachEvent("on"+aa,Y)};T=function(Z,aa,Y){Z.detachEvent("on"+aa,Y)}}else{throw new Error("Browser not supported")}}var l=false,m=[],L;if("readyState" in j){L=j.readyState;l=L=="complete"||(~navigator.userAgent.indexOf("AppleWebKit/")&&(L=="loaded"||L=="interactive"))}else{l=!!j.body}function k(){if(l){return}l=true;for(var Y=0;Y<m.length;Y++){m[Y]()}m.length=0}if(!l){if(D(X,"addEventListener")){I(j,"DOMContentLoaded",k)}else{I(j,"readystatechange",function(){if(j.readyState=="complete"){k()}});if(j.documentElement.doScroll&&X===top){var n=function(){if(l){return}try{j.documentElement.doScroll("left")}catch(Y){R(n,1);return}k()};n()}}I(X,"load",k)}function W(Y,Z){if(l){Y.call(Z);return}m.push(function(){Y.call(Z)})}function v(){var aa=parent;if(G!==""){for(var Y=0,Z=G.split(".");Y<Z.length;Y++){aa=aa[Z[Y]]}}return aa.easyXDM}function H(Y){X.easyXDM=a;G=Y;if(G){B="easyXDM_"+G.replace(".","_")+"_"}return o}function s(Y){return Y.match(Q)[3]}function w(Y){return Y.match(Q)[4]||""}function u(ac){var Z=ac.toLowerCase().match(Q);var ab=Z[2],Y=Z[3],aa=Z[4]||"";if((ab=="http:"&&aa==":80")||(ab=="https:"&&aa==":443")){aa=""}return ab+"//"+Y+aa}function P(Z){Z=Z.replace(M,"$1/");if(!Z.match(/^(http||https):\/\//)){var Y=(Z.substring(0,1)==="/")?"":F.pathname;if(Y.substring(Y.length-1)!=="/"){Y=Y.substring(0,Y.lastIndexOf("/")+1)}Z=F.protocol+"//"+F.host+Y+Z}while(O.test(Z)){Z=Z.replace(O,"")}return Z}function b(ad,ab){var Y="",Z=ad.indexOf("#");if(Z!==-1){Y=ad.substring(Z);ad=ad.substring(0,Z)}var ac=[];for(var aa in ab){if(ab.hasOwnProperty(aa)){ac.push(aa+"="+q(ab[aa]))}}return ad+(V?"#":(ad.indexOf("?")==-1?"?":"&"))+ac.join("&")+Y}var K=(function(aa){aa=aa.substring(1).split("&");var Y={},ab,Z=aa.length;while(Z--){ab=aa[Z].split("=");Y[ab[0]]=h(ab[1])}return Y}(/xdm_e=/.test(F.search)?F.search:F.hash));function U(Y){return typeof Y==="undefined"}var t=function(){var Y={};var aa={a:[1,2,3]},Z='{"a":[1,2,3]}';if(typeof JSON!="undefined"&&typeof JSON.stringify==="function"&&JSON.stringify(aa).replace((/\s/g),"")===Z){return JSON}if(Object.toJSON){if(Object.toJSON(aa).replace((/\s/g),"")===Z){Y.stringify=Object.toJSON}}if(typeof String.prototype.evalJSON==="function"){aa=Z.evalJSON();if(aa.a&&aa.a.length===3&&aa.a[2]===3){Y.parse=function(ab){return ab.evalJSON()}}}if(Y.stringify&&Y.parse){t=function(){return Y};return Y}return null};function c(Y,ac,aa){var Z;for(var ab in ac){if(ac.hasOwnProperty(ab)){if(ab in Y){Z=ac[ab];if(typeof Z==="object"){c(Y[ab],Z,aa)}else{if(!aa){Y[ab]=ac[ab]}}}else{Y[ab]=ac[ab]}}}return Y}function S(){var Y=j.body.appendChild(j.createElement("form")),Z=Y.appendChild(j.createElement("input"));Z.name=B+"TEST"+e;z=Z!==Y.elements[Z.name];j.body.removeChild(Y)}function g(Y){if(U(z)){S()}var Z;if(z){Z=j.createElement('<iframe name="'+Y.props.name+'"/>')}else{Z=j.createElement("IFRAME");Z.name=Y.props.name}Z.id=Z.name=Y.props.name;delete Y.props.name;if(Y.onLoad){I(Z,"load",Y.onLoad)}if(typeof Y.container=="string"){Y.container=j.getElementById(Y.container)}if(!Y.container){c(Z.style,{position:"absolute",top:"-2000px"});Y.container=j.body}var aa=Y.props.src;delete Y.props.src;c(Z,Y.props);Z.border=Z.frameBorder=0;Z.allowTransparency=true;Y.container.appendChild(Z);Z.src=aa;Y.props.src=aa;return Z}function f(Y,Z){if(typeof Y=="string"){Y=[Y]}var ab,aa=Y.length;while(aa--){ab=Y[aa];ab=new RegExp(ab.substr(0,1)=="^"?ab:("^"+ab.replace(/(\*)/g,".$1").replace(/\?/g,".")+"$"));if(ab.test(Z)){return true}}return false}function J(Y){var ae=Y.protocol,af;Y.isHost=Y.isHost||U(K.xdm_p);V=Y.hash||false;if(!Y.props){Y.props={}}if(!Y.isHost){Y.channel=K.xdm_c;Y.secret=K.xdm_s;Y.remote=K.xdm_e;ae=K.xdm_p;if(Y.acl&&!f(Y.acl,Y.remote)){throw new Error("Access denied for "+Y.remote)}}else{Y.remote=P(Y.remote);Y.channel=Y.channel||"default"+e++;Y.secret=Math.random().toString(16).substring(2);if(U(ae)){if(u(F.href)==u(Y.remote)){ae="4"}else{if(D(X,"postMessage")||D(j,"postMessage")){ae="1"}else{if(Y.swf&&D(X,"ActiveXObject")&&A()){ae="6"}else{if(navigator.product==="Gecko"&&"frameElement" in X&&navigator.userAgent.indexOf("WebKit")==-1){ae="5"}else{if(Y.remoteHelper){Y.remoteHelper=P(Y.remoteHelper);ae="2"}else{ae="0"}}}}}}}Y.protocol=ae;switch(ae){case"0":c(Y,{interval:100,delay:2000,useResize:true,useParent:false,usePolling:false},true);if(Y.isHost){if(!Y.local){var Z=F.protocol+"//"+F.host,ac=j.body.getElementsByTagName("img"),ab;var aa=ac.length;while(aa--){ab=ac[aa];if(ab.src.substring(0,Z.length)===Z){Y.local=ab.src;break}}if(!Y.local){Y.local=X}}var ad={xdm_c:Y.channel,xdm_p:0};if(Y.local===X){Y.usePolling=true;Y.useParent=true;Y.local=F.protocol+"//"+F.host+F.pathname+F.search;ad.xdm_e=Y.local;ad.xdm_pa=1}else{ad.xdm_e=P(Y.local)}if(Y.container){Y.useResize=false;ad.xdm_po=1}Y.remote=b(Y.remote,ad)}else{c(Y,{channel:K.xdm_c,remote:K.xdm_e,useParent:!U(K.xdm_pa),usePolling:!U(K.xdm_po),useResize:Y.useParent?false:Y.useResize})}af=[new o.stack.HashTransport(Y),new o.stack.ReliableBehavior({}),new o.stack.QueueBehavior({encode:true,maxLength:4000-Y.remote.length}),new o.stack.VerifyBehavior({initiate:Y.isHost})];break;case"1":af=[new o.stack.PostMessageTransport(Y)];break;case"2":af=[new o.stack.NameTransport(Y),new o.stack.QueueBehavior(),new o.stack.VerifyBehavior({initiate:Y.isHost})];break;case"3":af=[new o.stack.NixTransport(Y)];break;case"4":af=[new o.stack.SameOriginTransport(Y)];break;case"5":af=[new o.stack.FrameElementTransport(Y)];break;case"6":if(!r){A()}af=[new o.stack.FlashTransport(Y)];break}af.push(new o.stack.QueueBehavior({lazy:Y.lazy,remove:true}));return af}function d(ac){var ab,Y={incoming:function(ad,ae){this.up.incoming(ad,ae)},outgoing:function(ad,ae){this.down.outgoing(ad,ae)},callback:function(ad){this.up.callback(ad)},init:function(){this.down.init()},destroy:function(){this.down.destroy()}};for(var Z=0,aa=ac.length;Z<aa;Z++){ab=ac[Z];c(ab,Y,true);if(Z!==0){ab.down=ac[Z-1]}if(Z!==aa-1){ab.up=ac[Z+1]}}return ab}function N(Y){Y.up.down=Y.down;Y.down.up=Y.up;Y.up=Y.down=null}c(o,{version:"2.4.15.118",query:K,stack:{},apply:c,getJSONObject:t,whenReady:W,noConflict:H});o.DomHelper={on:I,un:T,requiresJSON:function(Y){if(!E(X,"JSON")){j.write('<script type="text/javascript" src="'+Y+'"></script>')}}};(function(){var Y={};o.Fn={set:function(aa,Z){Y[aa]=Z},get:function(ab,Z){var aa=Y[ab];if(Z){delete Y[ab]}return aa}}}());o.Socket=function(Y){var aa=d(J(Y).concat([{incoming:function(ab,ac){Y.onMessage(ab,ac)},callback:function(ab){if(Y.onReady){Y.onReady(ab)}}}])),Z=u(Y.remote);this.origin=u(Y.remote);this.destroy=function(){aa.destroy()};this.postMessage=function(ab){aa.outgoing(ab,Z)};aa.init()};o.Rpc=function(Y,Z){if(Z.local){for(var ab in Z.local){if(Z.local.hasOwnProperty(ab)){var aa=Z.local[ab];if(typeof aa==="function"){Z.local[ab]={method:aa}}}}}var ac=d(J(Y).concat([new o.stack.RpcBehavior(this,Z),{callback:function(ad){if(Y.onReady){Y.onReady(ad)}}}]));this.origin=u(Y.remote);this.destroy=function(){ac.destroy()};ac.init()};o.stack.SameOriginTransport=function(Y){var aa,Z,ab,ac;return(aa={outgoing:function(af,ad,ae){ab(af);if(ae){ae()}},destroy:function(){if(Z){Z.parentNode.removeChild(Z);Z=null}},onDOMReady:function(){ac=u(Y.remote);if(Y.isHost){c(Y.props,{src:b(Y.remote,{xdm_e:F.protocol+"//"+F.host+F.pathname,xdm_c:Y.channel,xdm_p:4}),name:B+Y.channel+"_provider"});Z=g(Y);o.Fn.set(Y.channel,function(ad){ab=ad;R(function(){aa.up.callback(true)},0);return function(ae){aa.up.incoming(ae,ac)}})}else{ab=v().Fn.get(Y.channel,true)(function(ad){aa.up.incoming(ad,ac)});R(function(){aa.up.callback(true)},0)}},init:function(){W(aa.onDOMReady,aa)}})};o.stack.FlashTransport=function(Z){var ac,aa,ad,ag,ae,af;function ab(ah,ai){R(function(){ac.up.incoming(ah,ag)},0)}function Y(ah){var ak=Z.swf+"?host="+Z.isHost;var aj="easyXDM_swf_"+Math.floor(Math.random()*10000);o.Fn.set("flash_loaded"+ah.replace(/[\-.]/g,"_"),function(){o.stack.FlashTransport[ah].swf=ae=af.firstChild;var am=o.stack.FlashTransport[ah].queue;for(var al=0;al<am.length;al++){am[al]()}am.length=0});if(Z.swfContainer){af=(typeof Z.swfContainer=="string")?j.getElementById(Z.swfContainer):Z.swfContainer}else{af=j.createElement("div");c(af.style,y&&Z.swfNoThrottle?{height:"20px",width:"20px",position:"fixed",right:0,top:0}:{height:"1px",width:"1px",position:"absolute",overflow:"hidden",right:0,top:0});j.body.appendChild(af)}var ai="callback=flash_loaded"+ah.replace(/[\-.]/g,"_")+"&proto="+x.location.protocol+"&domain="+s(x.location.href)+"&port="+w(x.location.href)+"&ns="+G;af.innerHTML="<object height='20' width='20' type='application/x-shockwave-flash' id='"+aj+"' data='"+ak+"'><param name='allowScriptAccess' value='always'></param><param name='wmode' value='transparent'><param name='movie' value='"+ak+"'></param><param name='flashvars' value='"+ai+"'></param><embed type='application/x-shockwave-flash' FlashVars='"+ai+"' allowScriptAccess='always' wmode='transparent' src='"+ak+"' height='1' width='1'></embed></object>"}return(ac={outgoing:function(aj,ah,ai){ae.postMessage(Z.channel,aj.toString());if(ai){ai()}},destroy:function(){try{ae.destroyChannel(Z.channel)}catch(ah){}ae=null;if(aa){aa.parentNode.removeChild(aa);aa=null}},onDOMReady:function(){ag=Z.remote;o.Fn.set("flash_"+Z.channel+"_init",function(){R(function(){ac.up.callback(true)})});o.Fn.set("flash_"+Z.channel+"_onMessage",ab);Z.swf=P(Z.swf);var ai=s(Z.swf);var ah=function(){o.stack.FlashTransport[ai].init=true;ae=o.stack.FlashTransport[ai].swf;ae.createChannel(Z.channel,Z.secret,u(Z.remote),Z.isHost);if(Z.isHost){if(y&&Z.swfNoThrottle){c(Z.props,{position:"fixed",right:0,top:0,height:"20px",width:"20px"})}c(Z.props,{src:b(Z.remote,{xdm_e:u(F.href),xdm_c:Z.channel,xdm_p:6,xdm_s:Z.secret}),name:B+Z.channel+"_provider"});aa=g(Z)}};if(o.stack.FlashTransport[ai]&&o.stack.FlashTransport[ai].init){ah()}else{if(!o.stack.FlashTransport[ai]){o.stack.FlashTransport[ai]={queue:[ah]};Y(ai)}else{o.stack.FlashTransport[ai].queue.push(ah)}}},init:function(){W(ac.onDOMReady,ac)}})};o.stack.PostMessageTransport=function(ab){var ad,ac,aa,ae;function Y(af){if(af.origin){return u(af.origin)}if(af.uri){return u(af.uri)}if(af.domain){return F.protocol+"//"+af.domain}throw"Unable to retrieve the origin of the event"}function Z(af){var ag=Y(af);if(ag==ae&&af.data.substring(0,ab.channel.length+1)==ab.channel+" "){ad.up.incoming(af.data.substring(ab.channel.length+1),ag)}}return(ad={outgoing:function(ah,af,ag){aa.postMessage(ab.channel+" "+ah,af||ae);if(ag){ag()}},destroy:function(){T(X,"message",Z);if(ac){aa=null;ac.parentNode.removeChild(ac);ac=null}},onDOMReady:function(){ae=u(ab.remote);if(ab.isHost){var af=function(ag){if(ag.data==ab.channel+"-ready"){aa=("postMessage" in ac.contentWindow)?ac.contentWindow:ac.contentWindow.document;T(X,"message",af);I(X,"message",Z);R(function(){ad.up.callback(true)},0)}};I(X,"message",af);c(ab.props,{src:b(ab.remote,{xdm_e:u(F.href),xdm_c:ab.channel,xdm_p:1}),name:B+ab.channel+"_provider"});ac=g(ab)}else{I(X,"message",Z);aa=("postMessage" in X.parent)?X.parent:X.parent.document;aa.postMessage(ab.channel+"-ready",ae);R(function(){ad.up.callback(true)},0)}},init:function(){W(ad.onDOMReady,ad)}})};o.stack.FrameElementTransport=function(Y){var aa,Z,ab,ac;return(aa={outgoing:function(af,ad,ae){ab.call(this,af);if(ae){ae()}},destroy:function(){if(Z){Z.parentNode.removeChild(Z);Z=null}},onDOMReady:function(){ac=u(Y.remote);if(Y.isHost){c(Y.props,{src:b(Y.remote,{xdm_e:u(F.href),xdm_c:Y.channel,xdm_p:5}),name:B+Y.channel+"_provider"});Z=g(Y);Z.fn=function(ad){delete Z.fn;ab=ad;R(function(){aa.up.callback(true)},0);return function(ae){aa.up.incoming(ae,ac)}}}else{if(j.referrer&&u(j.referrer)!=K.xdm_e){X.top.location=K.xdm_e}ab=X.frameElement.fn(function(ad){aa.up.incoming(ad,ac)});aa.up.callback(true)}},init:function(){W(aa.onDOMReady,aa)}})};o.stack.NameTransport=function(ae){var ag;var af,ad,ak,ah,ac,ai,aj;function ab(al){var am=ae.remoteHelper+(af?"#_3":"#_2")+ae.channel;ad.contentWindow.sendMessage(al,am)}function aa(){if(af){if(++ah===2||!af){ag.up.callback(true)}}else{ab("ready");ag.up.callback(true)}}function Z(al){ag.up.incoming(al,ai)}function Y(){if(ac){R(function(){ac(true)},0)}}return(ag={outgoing:function(an,al,am){ac=am;ab(an)},destroy:function(){ad.parentNode.removeChild(ad);ad=null;if(af){ak.parentNode.removeChild(ak);ak=null}},onDOMReady:function(){af=ae.isHost;ah=0;ai=u(ae.remote);ae.local=P(ae.local);if(af){o.Fn.set(ae.channel,function(am){if(af&&am==="ready"){o.Fn.set(ae.channel,Z);aa()}});aj=b(ae.remote,{xdm_e:ae.local,xdm_c:ae.channel,xdm_p:2});c(ae.props,{src:aj+"#"+ae.channel,name:B+ae.channel+"_provider"});ak=g(ae)}else{ae.remoteHelper=ae.remote;o.Fn.set(ae.channel,Z)}ad=g({props:{src:ae.local+"#_4"+ae.channel},onLoad:function al(){var an=ad||this;T(an,"load",al);o.Fn.set(ae.channel+"_load",Y);(function am(){if(typeof an.contentWindow.sendMessage=="function"){aa()}else{R(am,50)}}())}})},init:function(){W(ag.onDOMReady,ag)}})};o.stack.HashTransport=function(ai){var am;var ak=this,aj,ah,al,ab,ad,ac,Z;var an,af;function ag(ao){if(!Z){return}var ap=ai.remote+"#"+(ad++)+"_"+ao;((aj||!an)?Z.contentWindow:Z).location=ap}function aa(ao){ab=ao;am.up.incoming(ab.substring(ab.indexOf("_")+1),af)}function ae(){if(!ac){return}var ap=ac.location.href,ao="",aq=ap.indexOf("#");if(aq!=-1){ao=ap.substring(aq)}if(ao&&ao!=ab){aa(ao)}}function Y(){ah=setInterval(ae,al)}return(am={outgoing:function(ap,ao){ag(ap)},destroy:function(){X.clearInterval(ah);if(aj||!an){Z.parentNode.removeChild(Z)}Z=null},onDOMReady:function(){aj=ai.isHost;al=ai.interval;ab="#"+ai.channel;ad=0;an=ai.useParent;af=u(ai.remote);if(aj){ai.props={src:ai.remote,name:B+ai.channel+"_provider"};if(an){ai.onLoad=function(){ac=X;Y();am.up.callback(true)}}else{var aq=0,ap=ai.delay/50;(function ao(){if(++aq>ap){throw new Error("Unable to reference listenerwindow")}try{ac=Z.contentWindow.frames[B+ai.channel+"_consumer"]}catch(ar){}if(ac){Y();am.up.callback(true)}else{R(ao,50)}}())}Z=g(ai)}else{ac=X;Y();if(an){Z=parent;am.up.callback(true)}else{c(ai,{props:{src:ai.remote+"#"+ai.channel+new Date(),name:B+ai.channel+"_consumer"},onLoad:function(){am.up.callback(true)}});Z=g(ai)}}},init:function(){W(am.onDOMReady,am)}})};o.stack.ReliableBehavior=function(Z){var ad,Y;var ac=0,ab=0,aa="";return(ad={incoming:function(ag,ah){var af=ag.indexOf("_"),ae=ag.substring(0,af).split(",");ag=ag.substring(af+1);if(ae[0]==ac){aa="";if(Y){Y(true)}}if(ag.length>0){ad.down.outgoing(ae[1]+","+ac+"_"+aa,ah);if(ab!=ae[1]){ab=ae[1];ad.up.incoming(ag,ah)}}},outgoing:function(af,ag,ae){aa=af;Y=ae;ad.down.outgoing(ab+","+(++ac)+"_"+af,ag)}})};o.stack.QueueBehavior=function(Y){var af,ag=[],ah=true,ac="",Z,ae=0,ad=false,ab=false;function aa(){if(Y.remove&&ag.length===0){N(af);return}if(ah||ag.length===0||Z){return}ah=true;var ai=ag.shift();af.down.outgoing(ai.data,ai.origin,function(aj){ah=false;if(ai.callback){R(function(){ai.callback(aj)},0)}aa()})}return(af={init:function(){if(U(Y)){Y={}}if(Y.maxLength){ae=Y.maxLength;ab=true}if(Y.lazy){ad=true}else{af.down.init()}},callback:function(ai){ah=false;var aj=af.up;aa();aj.callback(ai)},incoming:function(aj,ak){if(ab){var ai=aj.indexOf("_"),al=parseInt(aj.substring(0,ai),10);ac+=aj.substring(ai+1);if(al===0){if(Y.encode){ac=h(ac)}af.up.incoming(ac,ak);ac=""}}else{af.up.incoming(aj,ak)}},outgoing:function(al,am,ai){if(Y.encode){al=q(al)}var ak=[],aj;if(ab){while(al.length!==0){aj=al.substring(0,ae);al=al.substring(aj.length);ak.push(aj)}while((aj=ak.shift())){ag.push({data:ak.length+"_"+aj,origin:am,callback:ak.length===0?ai:null})}}else{ag.push({data:al,origin:am,callback:ai})}if(ad){af.down.init()}else{aa()}},destroy:function(){Z=true;af.down.destroy()}})};o.stack.VerifyBehavior=function(Y){var aa,Z,ac,ad=false;function ab(){Z=Math.random().toString(16).substring(2);aa.down.outgoing(Z)}return(aa={incoming:function(af,ag){var ae=af.indexOf("_");if(ae===-1){if(af===Z){aa.up.callback(true)}else{if(!ac){ac=af;if(!Y.initiate){ab()}aa.down.outgoing(af)}}}else{if(af.substring(0,ae)===ac){aa.up.incoming(af.substring(ae+1),ag)}}},outgoing:function(af,ag,ae){aa.down.outgoing(Z+"_"+af,ag,ae)},callback:function(ae){if(Y.initiate){ab()}}})};o.stack.RpcBehavior=function(ae,ad){var af,ag=ad.serializer||t();var Y=0,Z={};function ac(ah){ah.jsonrpc="2.0";af.down.outgoing(ag.stringify(ah))}function aa(ah,ai){var aj=Array.prototype.slice;return function(){var al=arguments.length,ak,am={method:ai};if(al>0&&typeof arguments[al-1]==="function"){if(al>1&&typeof arguments[al-2]==="function"){ak={success:arguments[al-2],error:arguments[al-1]};am.params=aj.call(arguments,0,al-2)}else{ak={success:arguments[al-1]};am.params=aj.call(arguments,0,al-1)}Z[""+(++Y)]=ak;am.id=Y}else{am.params=aj.call(arguments,0)}if(ah.namedParams&&am.params.length===1){am.params=am.params[0]}ac(am)}}function ab(al,ak,aj,am){if(!aj){if(ak){ac({id:ak,error:{code:-32601,message:"Procedure not found."}})}return}var ao,ah;if(ak){ao=function(ap){ao=p;ac({id:ak,result:ap})};ah=function(aq,ap){ah=p;var ar={id:ak,error:{code:-32099,message:aq}};if(ap){ar.error.data=ap}ac(ar)}}else{ao=ah=p}if(!C(am)){am=[am]}try{var an=aj.method.apply(aj.scope,am.concat([ao,ah]));if(!U(an)){ao(an)}}catch(ai){ah(ai.message)}}return(af={incoming:function(aj,ak){var ai=ag.parse(aj);if(ai.method){if(ad.handle){ad.handle(ai,ac)}else{ab(ai.method,ai.id,ad.local[ai.method],ai.params)}}else{var ah=Z[ai.id];if(ai.error){if(ah.error){ah.error(ai.error)}}else{if(ah.success){ah.success(ai.result)}}delete Z[ai.id]}},init:function(){if(ad.remote){for(var ah in ad.remote){if(ad.remote.hasOwnProperty(ah)){ae[ah]=aa(ad.remote[ah],ah)}}}af.down.init()},destroy:function(){for(var ah in ad.remote){if(ad.remote.hasOwnProperty(ah)&&ae.hasOwnProperty(ah)){delete ae[ah]}}af.down.destroy()}})};x.easyXDM=o})(window,document,location,window.setTimeout,decodeURIComponent,encodeURIComponent);_proxy_require(['base.js', 'base_safe.css', 'http://tools.medicine.yale.edu/calendar/default.css', 'http://tools.medicine.yale.edu/calendar/default.js'],function() { window['calendar_display_4349d31a1aac4b6aa72a7c9559e426a1'] = function(html) { $('#calendar_embed').html(html); }; proxy_fetch('http://tools.medicine.yale.edu/cancer/calendar/?template=upcoming&div=calendar_embed&output=template-1', 'calendar_display_4349d31a1aac4b6aa72a7c9559e426a1'); });
