function setup_wmd(a){var b=b||{};a=a||top.wmd_options||{};b.wmdBase=function(){var o=b;var f=top.document;var n=top.RegExp;var d=top.navigator;o.Util={};o.Position={};o.Command={};o.Global={};o.buttons={};o.showdown=top.Attacklab&&top.Attacklab.showdown;var l=o.Util;var r=o.Position;var e=o.Command;var c=o.Global;c.isIE=/msie/.test(d.userAgent.toLowerCase());c.isIE_5or6=/msie 6/.test(d.userAgent.toLowerCase())||/msie 5/.test(d.userAgent.toLowerCase());c.isIE_7plus=c.isIE&&!c.isIE_5or6;c.isOpera=/opera/.test(d.userAgent.toLowerCase());c.isKonqueror=/konqueror/.test(d.userAgent.toLowerCase());var k=a.imageDialogText||"<p style='margin-top: 0px'><b>Enter the image URL.</b></p><p>You can also add a title, which will be displayed as a tool tip.</p><p>Example:<br />http://wmd-editor.com/images/cloud1.jpg   \"Optional title\"</p>";var s=a.linkDialogText||"<p style='margin-top: 0px'><b>Enter the web address.</b></p><p>You can also add a title, which will be displayed as a tool tip.</p><p>Example:<br />http://wmd-editor.com/   \"Optional title\"</p>";var g="http://";var m="http://";var p="images/";var j=500;var h=100;var i=a.helpLink||"http://wmd-editor.com/";var q=a.helpHoverTitle||"WMD website";var t=a.helpTarget||"_blank";o.PanelCollection=function(){this.buttonBar=f.getElementById(a.button_bar||"wmd-button-bar");this.preview=f.getElementById(a.preview||"wmd-preview");this.output=f.getElementById(a.output||"wmd-output");this.input=f.getElementById(a.input||"wmd-input")};o.panels=undefined;o.ieCachedRange=null;o.ieRetardedClick=false;l.isVisible=function(u){if(window.getComputedStyle){return window.getComputedStyle(u,null).getPropertyValue("display")!=="none"}else{if(u.currentStyle){return u.currentStyle.display!=="none"}}};l.addEvent=function(w,v,u){if(w.attachEvent){w.attachEvent("on"+v,u)}else{w.addEventListener(v,u,false)}};l.removeEvent=function(w,v,u){if(w.detachEvent){w.detachEvent("on"+v,u)}else{w.removeEventListener(v,u,false)}};l.fixEolChars=function(u){u=u.replace(/\r\n/g,"\n");u=u.replace(/\r/g,"\n");return u};l.extendRegExp=function(z,w,x){if(w===null||w===undefined){w=""}if(x===null||x===undefined){x=""}var u=z.toString();var v="";var y=u.match(/\/([gim]*)$/);if(y===null){v=y[0]}else{v=""}u=u.replace(/(^\/|\/[gim]*$)/g,"");u=w+u+x;return new RegExp(u,v)};l.createImage=function(v){var u=p+v;var w=f.createElement("img");w.className="wmd-button";w.src=u;return w};l.prompt=function(D,A,x){var z;var B;var y;if(A===undefined){A=""}var w=function(E){var F=(E.charCode||E.keyCode);if(F===27){u(true)}};var u=function(E){l.removeEvent(f.body,"keydown",w);var F=y.value;if(E){F=null}else{F=F.replace("http://http://","http://");F=F.replace("http://https://","https://");F=F.replace("http://ftp://","ftp://");if(F.indexOf("http://")===-1&&F.indexOf("ftp://")===-1&&F.indexOf("https://")===-1){F="http://"+F}}z.parentNode.removeChild(z);B.parentNode.removeChild(B);x(F);return false};var C=function(){B=f.createElement("div");B.className="wmd-prompt-background";style=B.style;style.position="absolute";style.top="0";style.zIndex="1000";if(c.isKonqueror){style.backgroundColor="transparent"}else{if(c.isIE){style.filter="alpha(opacity=50)"}else{style.opacity="0.5"}}var E=r.getPageSize();style.height=E[1]+"px";if(c.isIE){style.left=f.documentElement.scrollLeft;style.width=f.documentElement.clientWidth}else{style.left="0";style.width="100%"}f.body.appendChild(B)};var v=function(){z=f.createElement("div");z.className="wmd-prompt-dialog";z.style.padding="10px;";z.style.position="fixed";z.style.width="400px";z.style.zIndex="1001";var G=f.createElement("div");G.innerHTML=D;G.style.padding="5px";z.appendChild(G);var E=f.createElement("form");E.onsubmit=function(){return u(false)};style=E.style;style.padding="0";style.margin="0";style.cssFloat="left";style.width="100%";style.textAlign="center";style.position="relative";z.appendChild(E);y=f.createElement("input");y.type="text";y.value=A;style=y.style;style.display="block";style.width="80%";style.marginLeft=style.marginRight="auto";E.appendChild(y);var H=f.createElement("input");H.type="button";H.onclick=function(){return u(false)};H.value="OK";style=H.style;style.margin="10px";style.display="inline";style.width="7em";var F=f.createElement("input");F.type="button";F.onclick=function(){return u(true)};F.value="Cancel";style=F.style;style.margin="10px";style.display="inline";style.width="7em";if(/mac/.test(d.platform.toLowerCase())){E.appendChild(F);E.appendChild(H)}else{E.appendChild(H);E.appendChild(F)}l.addEvent(f.body,"keydown",w);z.style.top="50%";z.style.left="50%";z.style.display="block";if(c.isIE_5or6){z.style.position="absolute";z.style.top=f.documentElement.scrollTop+200+"px";z.style.left="50%"}f.body.appendChild(z);z.style.marginTop=-(r.getHeight(z)/2)+"px";z.style.marginLeft=-(r.getWidth(z)/2)+"px"};C();top.setTimeout(function(){v();var F=A.length;if(y.selectionStart!==undefined){y.selectionStart=0;y.selectionEnd=F}else{if(y.createTextRange){var E=y.createTextRange();E.collapse(false);E.moveStart("character",-F);E.moveEnd("character",F);E.select()}}y.focus()},0)};r.getTop=function(v,w){var u=v.offsetTop;if(!w){while(v=v.offsetParent){u+=v.offsetTop}}return u};r.getHeight=function(u){return u.offsetHeight||u.scrollHeight};r.getWidth=function(u){return u.offsetWidth||u.scrollWidth};r.getPageSize=function(){var w,x;var y,u;if(self.innerHeight&&self.scrollMaxY){w=f.body.scrollWidth;x=self.innerHeight+self.scrollMaxY}else{if(f.body.scrollHeight>f.body.offsetHeight){w=f.body.scrollWidth;x=f.body.scrollHeight}else{w=f.body.offsetWidth;x=f.body.offsetHeight}}if(self.innerHeight){y=self.innerWidth;u=self.innerHeight}else{if(f.documentElement&&f.documentElement.clientHeight){y=f.documentElement.clientWidth;u=f.documentElement.clientHeight}else{if(f.body){y=f.body.clientWidth;u=f.body.clientHeight}}}var z=Math.max(w,y);var v=Math.max(x,u);return[z,v,y,u]};o.inputPoller=function(w,D){var u=this;var A=o.panels.input;var B;var C;var y;var z;this.tick=function(){if(!l.isVisible(A)){return}if(A.selectionStart||A.selectionStart===0){var F=A.selectionStart;var E=A.selectionEnd;if(F!=B||E!=C){B=F;C=E;if(y!=A.value){y=A.value;return true}}}return false};var x=function(){if(!l.isVisible(A)){return}if(u.tick()){w()}};var v=function(){z=top.setInterval(x,D)};this.destroy=function(){top.clearInterval(z)};v()};o.undoManager=function(x){var w=this;var A=[];var B=0;var u="none";var E;var C;var H;var F;var I=function(L,K){if(u!=L){u=L;if(!K){G()}}if(!c.isIE||u!="moving"){H=top.setTimeout(J,1)}else{F=null}};var J=function(){F=new o.TextareaState();C.tick();H=undefined};this.setCommandMode=function(){u="command";G();H=top.setTimeout(J,0)};this.canUndo=function(){return B>1};this.canRedo=function(){if(A[B+1]){return true}return false};this.undo=function(){if(w.canUndo()){if(E){E.restore();E=null}else{A[B]=new o.TextareaState();A[--B].restore();if(x){x()}}}u="none";o.panels.input.focus();J()};this.redo=function(){if(w.canRedo()){A[++B].restore();if(x){x()}}u="none";o.panels.input.focus();J()};var G=function(){var K=F||new o.TextareaState();if(!K){return false}if(u=="moving"){if(!E){E=K}return}if(E){if(A[B-1].text!=E.text){A[B++]=E}E=null}A[B++]=K;A[B+1]=null;if(x){x()}};var y=function(L){var N=false;if(L.ctrlKey||L.metaKey){var M=L.charCode||L.keyCode;var K=String.fromCharCode(M);switch(K){case"y":w.redo();N=true;break;case"z":if(!L.shiftKey){w.undo()}else{w.redo()}N=true;break}}if(N){if(L.preventDefault){L.preventDefault()}if(top.event){top.event.returnValue=false}return}};var v=function(L){if(!L.ctrlKey&&!L.metaKey){var K=L.keyCode;if((K>=33&&K<=40)||(K>=63232&&K<=63235)){I("moving")}else{if(K==8||K==46||K==127){I("deleting")}else{if(K==13){I("newlines")}else{if(K==27){I("escape")}else{if((K<16||K>20)&&K!=91){I("typing")}}}}}}};var D=function(){l.addEvent(o.panels.input,"keypress",function(L){if((L.ctrlKey||L.metaKey)&&(L.keyCode==89||L.keyCode==90)){L.preventDefault()}});var K=function(){if(c.isIE||(F&&F.text!=o.panels.input.value)){if(H==undefined){u="paste";G();J()}}};C=new o.inputPoller(K,h);l.addEvent(o.panels.input,"keydown",y);l.addEvent(o.panels.input,"keydown",v);l.addEvent(o.panels.input,"mousedown",function(){I("moving")});o.panels.input.onpaste=K;o.panels.input.ondrop=K};var z=function(){D();J();G()};this.destroy=function(){if(C){C.destroy()}};z()};o.editor=function(G){if(!G){G=function(){}}var y=o.panels.input;var B=0;var w=this;var H;var F;var v;var A;var D;var x=function(L){y.focus();if(L.textOp){if(D){D.setCommandMode()}var N=new o.TextareaState();if(!N){return}var O=N.getChunks();var M=function(){y.focus();if(O){N.setChunks(O)}N.restore();G()};var P=true;var K=L.textOp(O,M,P);if(!K){M()}}if(L.execute){L.execute(w)}};var J=function(){if(D){u(o.buttons["wmd-undo-button"],D.canUndo());u(o.buttons["wmd-redo-button"],D.canRedo())}};var u=function(K,M){var O="0px";var N="-20px";var L="-40px";if(M){K.style.backgroundPosition=K.XShift+" "+O;K.onmouseover=function(){this.style.backgroundPosition=this.XShift+" "+L};K.onmouseout=function(){this.style.backgroundPosition=this.XShift+" "+O};if(c.isIE){K.onmousedown=function(){o.ieRetardedClick=true;o.ieCachedRange=document.selection.createRange()}}if(!K.isHelp){K.onclick=function(){if(this.onmouseout){this.onmouseout()}x(this);return false}}}else{K.style.backgroundPosition=K.XShift+" "+N;K.onmouseover=K.onmouseout=K.onclick=function(){}}};var z=function(){var L=document.getElementById(a.button_bar||"wmd-button-bar");var N="0px";var ak="-20px";var T="-40px";var K=document.createElement("ul");K.className="wmd-button-row";K=L.appendChild(K);var ac=0;function V(an,ao,am){var al=document.createElement("li");o.buttons[an]=al;al.className="wmd-button "+an;al.XShift=ac+"px";ac-=20;if(ao){al.title=ao}if(am){al.textOp=am}return al}function S(an,ao,am){var al=V(an,ao,am);u(al,true);K.appendChild(al);return al}function aa(){var al=document.createElement("li");al.className="wmd-spacer";K.appendChild(al);return al}var ag=S("wmd-bold-button","Strong <strong> Ctrl+B",e.doBold);var R=S("wmd-italic-button","Emphasis <em> Ctrl+I",e.doItalic);var Q=aa();var ad=S("wmd-link-button","Hyperlink <a> Ctrl+L",function(an,am,al){return e.doLinkOrImage(an,am,false)});var Z=S("wmd-quote-button","Blockquote <blockquote> Ctrl+Q",e.doBlockquote);var O=S("wmd-code-button","Code Sample <pre><code> Ctrl+K",e.doCode);var P=S("wmd-image-button","Image <img> Ctrl+G",function(an,am,al){return e.doLinkOrImage(an,am,true)});var Y=aa();var M=S("wmd-olist-button","Numbered List <ol> Ctrl+O",function(an,am,al){e.doList(an,am,true,al)});var af=S("wmd-ulist-button","Bulleted List <ul> Ctrl+U",function(an,am,al){e.doList(an,am,false,al)});var ae=S("wmd-heading-button","Heading <h1>/<h2> Ctrl+H",e.doHeading);var ah=S("wmd-hr-button","Horizontal Rule <hr> Ctrl+R",e.doHorizontalRule);var X=aa();var ai=S("wmd-undo-button","Undo - Ctrl+Z");ai.execute=function(al){al.undo()};var W=null;var ab=S("wmd-redo-button","Redo - Ctrl+Y");if(/win/.test(d.platform.toLowerCase())){ab.title="Redo - Ctrl+Y"}else{ab.title="Redo - Ctrl+Shift+Z"}ab.execute=function(al){al.redo()};var U=V("wmd-help-button");U.isHelp=true;u(U,true);K.appendChild(U);var aj=document.createElement("a");aj.href=i;aj.target=t;aj.title=q;U.appendChild(aj);J()};var I=function(){if(/\?noundo/.test(f.location.href)){o.nativeUndo=true}if(!o.nativeUndo){D=new o.undoManager(function(){G();J()})}z();var K="keydown";if(c.isOpera){K="keypress"}l.addEvent(y,K,function(O){if(O.ctrlKey||O.metaKey){var N=O.charCode||O.keyCode;var M=String.fromCharCode(N).toLowerCase();switch(M){case"b":x(o.buttons["wmd-bold-button"]);break;case"i":x(o.buttons["wmd-italic-button"]);break;case"l":x(o.buttons["wmd-link-button"]);break;case"q":x(o.buttons["wmd-quote-button"]);break;case"k":x(o.buttons["wmd-code-button"]);break;case"g":x(o.buttons["wmd-image-button"]);break;case"o":x(o.buttons["wmd-olist-button"]);break;case"u":x(o.buttons["wmd-ulist-button"]);break;case"h":x(o.buttons["wmd-heading-button"]);break;case"r":x(o.buttons["wmd-hr-button"]);break;case"y":x(o.buttons["wmd-redo-button"]);break;case"z":if(O.shiftKey){x(o.buttons["wmd-redo-button"])}else{x(o.buttons["wmd-undo-button"])}break;default:return}if(O.preventDefault){O.preventDefault()}if(top.event){top.event.returnValue=false}}});l.addEvent(y,"keyup",function(M){if(!M.shiftKey&&!M.ctrlKey&&!M.metaKey){var N=M.charCode||M.keyCode;if(N===13){fakeButton={};fakeButton.textOp=e.doAutoindent;x(fakeButton)}}});if(c.isIE){l.addEvent(y,"keydown",function(M){var N=M.keyCode;if(N===27){return false}})}if(y.form){var L=y.form.onsubmit;y.form.onsubmit=function(){E();if(L){return L.apply(this,arguments)}}}};var E=function(){if(o.showdown){var K=new o.showdown.converter()}var M=y.value;var L=function(){y.value=M};if(!/markdown/.test(o.wmd_env.output_format.toLowerCase())){if(K){y.value=K.makeHtml(M);top.setTimeout(L,0)}}return true};this.undo=function(){if(D){D.undo()}};this.redo=function(){if(D){D.redo()}};var C=function(){I()};this.destroy=function(){if(D){D.destroy()}if(v.parentNode){v.parentNode.removeChild(v)}if(y){y.style.marginTop=""}top.clearInterval(A)};C()};o.TextareaState=function(){var v=this;var u=o.panels.input;this.init=function(){if(!l.isVisible(u)){return}this.setInputAreaSelectionStartEnd();this.scrollTop=u.scrollTop;if(!this.text&&u.selectionStart||u.selectionStart===0){this.text=u.value}};this.setInputAreaSelection=function(){if(!l.isVisible(u)){return}if(u.selectionStart!==undefined&&!c.isOpera){u.focus();u.selectionStart=v.start;u.selectionEnd=v.end;u.scrollTop=v.scrollTop}else{if(f.selection){if(f.activeElement&&f.activeElement!==u){return}u.focus();var w=u.createTextRange();w.moveStart("character",-u.value.length);w.moveEnd("character",-u.value.length);w.moveEnd("character",v.end);w.moveStart("character",v.start);w.select()}}};this.setInputAreaSelectionStartEnd=function(){if(u.selectionStart||u.selectionStart===0){v.start=u.selectionStart;v.end=u.selectionEnd}else{if(f.selection){v.text=l.fixEolChars(u.value);var x;if(o.ieRetardedClick&&o.ieCachedRange){x=o.ieCachedRange;o.ieRetardedClick=false}else{x=f.selection.createRange()}var w=l.fixEolChars(x.text);var z="\x07";var A=z+w+z;x.text=A;var B=l.fixEolChars(u.value);x.moveStart("character",-A.length);x.text=w;v.start=B.indexOf(z);v.end=B.lastIndexOf(z)-z.length;var y=v.text.length-l.fixEolChars(u.value).length;if(y){x.moveStart("character",-w.length);while(y--){w+="\n";v.end+=1}x.text=w}this.setInputAreaSelection()}}};this.restore=function(){if(v.text!=undefined&&v.text!=u.value){u.value=v.text}this.setInputAreaSelection();u.scrollTop=v.scrollTop};this.getChunks=function(){var w=new o.Chunks();w.before=l.fixEolChars(v.text.substring(0,v.start));w.startTag="";w.selection=l.fixEolChars(v.text.substring(v.start,v.end));w.endTag="";w.after=l.fixEolChars(v.text.substring(v.end));w.scrollTop=v.scrollTop;return w};this.setChunks=function(w){w.before=w.before+w.startTag;w.after=w.endTag+w.after;if(c.isOpera){w.before=w.before.replace(/\n/g,"\r\n");w.selection=w.selection.replace(/\n/g,"\r\n");w.after=w.after.replace(/\n/g,"\r\n")}this.start=w.before.length;this.end=w.before.length+w.selection.length;this.text=w.before+w.selection+w.after;this.scrollTop=w.scrollTop};this.init()};o.Chunks=function(){};o.Chunks.prototype.findTags=function(w,u){var v=this;var x;if(w){x=l.extendRegExp(w,"","$");this.before=this.before.replace(x,function(y){v.startTag=v.startTag+y;return""});x=l.extendRegExp(w,"^","");this.selection=this.selection.replace(x,function(y){v.startTag=v.startTag+y;return""})}if(u){x=l.extendRegExp(u,"","$");this.selection=this.selection.replace(x,function(y){v.endTag=y+v.endTag;return""});x=l.extendRegExp(u,"^","");this.after=this.after.replace(x,function(y){v.endTag=y+v.endTag;return""})}};o.Chunks.prototype.trimWhitespace=function(u){this.selection=this.selection.replace(/^(\s*)/,"");if(!u){this.before+=n.$1}this.selection=this.selection.replace(/(\s*)$/,"");if(!u){this.after=n.$1+this.after}};o.Chunks.prototype.addBlankLines=function(u,v,y){if(u===undefined){u=1}if(v===undefined){v=1}u++;v++;var x;var w;this.selection=this.selection.replace(/(^\n*)/,"");this.startTag=this.startTag+n.$1;this.selection=this.selection.replace(/(\n*$)/,"");this.endTag=this.endTag+n.$1;this.startTag=this.startTag.replace(/(^\n*)/,"");this.before=this.before+n.$1;this.endTag=this.endTag.replace(/(\n*$)/,"");this.after=this.after+n.$1;if(this.before){x=w="";while(u--){x+="\\n?";w+="\n"}if(y){x="\\n*"}this.before=this.before.replace(new n(x+"$",""),w)}if(this.after){x=w="";while(v--){x+="\\n?";w+="\n"}if(y){x="\\n*"}this.after=this.after.replace(new n(x,""),w)}};e.prefixes="(?:\\s{4,}|\\s*>|\\s*-\\s+|\\s*\\d+\\.|=|\\+|-|_|\\*|#|\\s*\\[[^\n]]+\\]:)";e.unwrap=function(v){var u=new n("([^\\n])\\n(?!(\\n|"+e.prefixes+"))","g");v.selection=v.selection.replace(u,"$1 $2")};e.wrap=function(w,v){e.unwrap(w);var u=new n("(.{1,"+v+"})( +|$\\n?)","gm");w.selection=w.selection.replace(u,function(y,x){if(new n("^"+e.prefixes,"").test(y)){return y}return x+"\n"});w.selection=w.selection.replace(/\s+$/,"")};e.doBold=function(w,v,u){return e.doBorI(w,2,"strong text")};e.doItalic=function(w,v,u){return e.doBorI(w,1,"emphasized text")};e.doBorI=function(y,x,B){y.trimWhitespace();y.selection=y.selection.replace(/\n{2,}/g,"\n");y.before.search(/(\**$)/);var v=n.$1;y.after.search(/(^\**)/);var u=n.$1;var w=Math.min(v.length,u.length);if((w>=x)&&(w!=2||x!=1)){y.before=y.before.replace(n("[*]{"+x+"}$",""),"");y.after=y.after.replace(n("^[*]{"+x+"}",""),"")}else{if(!y.selection&&u){y.after=y.after.replace(/^([*_]*)/,"");y.before=y.before.replace(/(\s?)$/,"");var A=n.$1;y.before=y.before+u+A}else{if(!y.selection&&!u){y.selection=B}var z=x<=1?"*":"**";y.before=y.before+z;y.after=z+y.after}}return};e.stripLinkDefs=function(u,v){u=u.replace(/^[ ]{0,3}\[(\d+)\]:[ \t]*\n?[ \t]*<?(\S+?)>?[ \t]*\n?[ \t]*(?:(\n*)["(](.+?)[")][ \t]*)?(?:\n+|$)/gm,function(w,x,y,z,A){v[x]=w.replace(/\s*$/,"");if(z){v[x]=w.replace(/["(](.+?)[")]$/,"");return z+A}return""});return u};e.addLinkDef=function(z,w){var v=0;var C={};z.before=e.stripLinkDefs(z.before,C);z.selection=e.stripLinkDefs(z.selection,C);z.after=e.stripLinkDefs(z.after,C);var u="";var x=/(\[(?:\[[^\]]*\]|[^\[\]])*\][ ]?(?:\n[ ]*)?\[)(\d+)(\])/g;var y=function(D){v++;D=D.replace(/^[ ]{0,3}\[(\d+)\]:/,"  ["+v+"]:");u+="\n"+D};var B=function(F,G,E,D){if(C[E]){y(C[E]);return G+v+D}return F};z.before=z.before.replace(x,B);if(w){y(w)}else{z.selection=z.selection.replace(x,B)}var A=v;z.after=z.after.replace(x,B);if(z.after){z.after=z.after.replace(/\n*$/,"")}if(!z.after){z.selection=z.selection.replace(/\n*$/,"")}z.after+="\n\n"+u;return A};e.doLinkOrImage=function(w,v,u){w.trimWhitespace();w.findTags(/\s*!?\[/,/\][ ]?(?:\n[ ]*)?(\[.*?\])?/);if(w.endTag.length>1){w.startTag=w.startTag.replace(/!?\[/,"");w.endTag="";e.addLinkDef(w,null)}else{if(/\n\n/.test(w.selection)){e.addLinkDef(w,null);return}var x=function(z){if(z!==null){w.startTag=w.endTag="";var A=" [999]: "+z;var y=e.addLinkDef(w,A);w.startTag=u?"![":"[";w.endTag="]["+y+"]";if(!w.selection){if(u){w.selection="alt text"}else{w.selection="link text"}}}v()};if(u){l.prompt(k,g,x)}else{l.prompt(s,m,x)}return true}};l.makeAPI=function(){o.wmd={};o.wmd.editor=o.editor;o.wmd.previewManager=o.previewManager};l.startEditor=function(){if(o.wmd_env.autostart===false){l.makeAPI();return}var v;var u;var w=function(){o.panels=new o.PanelCollection();u=new o.previewManager();var x=u.refresh;v=new o.editor(x);u.refresh(true)};l.addEvent(top,"load",w)};o.previewManager=function(){var L=this;var A;var D;var E;var B;var u;var x;var w=3000;var J="delayed";var H=function(M,N){l.addEvent(M,"input",N);M.onpaste=N;M.ondrop=N;l.addEvent(M,"keypress",N);l.addEvent(M,"keydown",N);D=new o.inputPoller(N,j)};var y=function(){var M=0;if(top.innerHeight){M=top.pageYOffset}else{if(f.documentElement&&f.documentElement.scrollTop){M=f.documentElement.scrollTop}else{if(f.body){M=f.body.scrollTop}}}return M};var F=function(){if(!o.panels.preview&&!o.panels.output){return}var O=o.panels.input.value;if(O&&O==u){return}else{u=O}var N=new Date().getTime();if(!A&&o.showdown){A=new o.showdown.converter()}if(A){O=A.makeHtml(O)}var M=new Date().getTime();B=M-N;v(O);x=O};var K=function(){if(E){top.clearTimeout(E);E=undefined}if(J!=="manual"){var M=0;if(J==="delayed"){M=B}if(M>w){M=w}E=top.setTimeout(F,M)}};var I=function(M){if(M.scrollHeight<=M.clientHeight){return 1}return M.scrollTop/(M.scrollHeight-M.clientHeight)};var z=function(){if(o.panels.preview){o.panels.preview.scrollTop=(o.panels.preview.scrollHeight-o.panels.preview.clientHeight)*I(o.panels.preview)}if(o.panels.output){o.panels.output.scrollTop=(o.panels.output.scrollHeight-o.panels.output.clientHeight)*I(o.panels.output)}};this.refresh=function(M){if(M){u="";F()}else{K()}};this.processingTime=function(){return B};this.output=function(){return x};this.setUpdateMode=function(M){J=M;L.refresh()};var C=true;var v=function(P){var M=r.getTop(o.panels.input)-y();if(o.panels.output){if(o.panels.output.value!==undefined){o.panels.output.value=P;o.panels.output.readOnly=true}else{var O=P.replace(/&/g,"&amp;");O=O.replace(/</g,"&lt;");o.panels.output.innerHTML="<pre><code>"+O+"</code></pre>"}}if(o.panels.preview){o.panels.preview.innerHTML=P}z();if(C){C=false;return}var N=r.getTop(o.panels.input)-y();if(c.isIE){top.setTimeout(function(){top.scrollBy(0,N-M)},0)}else{top.scrollBy(0,N-M)}};var G=function(){H(o.panels.input,K);F();if(o.panels.preview){o.panels.preview.scrollTop=0}if(o.panels.output){o.panels.output.scrollTop=0}};this.destroy=function(){if(D){D.destroy()}};G()};e.doAutoindent=function(w,v,u){w.before=w.before.replace(/(\n|^)[ ]{0,3}([*+-]|\d+[.])[ \t]*\n$/,"\n\n");w.before=w.before.replace(/(\n|^)[ ]{0,3}>[ \t]*\n$/,"\n\n");w.before=w.before.replace(/(\n|^)[ \t]+\n$/,"\n\n");u=false;if(/(\n|^)[ ]{0,3}([*+-])[ \t]+.*\n$/.test(w.before)){if(e.doList){e.doList(w,v,false,true)}}if(/(\n|^)[ ]{0,3}(\d+[.])[ \t]+.*\n$/.test(w.before)){if(e.doList){e.doList(w,v,true,true)}}if(/(\n|^)[ ]{0,3}>[ \t]+.*\n$/.test(w.before)){if(e.doBlockquote){e.doBlockquote(w,v,u)}}if(/(\n|^)(\t|[ ]{4,}).*\n$/.test(w.before)){if(e.doCode){e.doCode(w,v,u)}}};e.doBlockquote=function(y,x,v){y.selection=y.selection.replace(/^(\n*)([^\r]+?)(\n*)$/,function(C,z,A,B){y.before+=z;y.after=B+y.after;return A});y.before=y.before.replace(/(>[ \t]*)$/,function(z,A){y.selection=A+y.selection;return""});var u=v?"Blockquote":"";y.selection=y.selection.replace(/^(\s|>)+$/,"");y.selection=y.selection||u;if(y.before){y.before=y.before.replace(/\n?$/,"\n")}if(y.after){y.after=y.after.replace(/^\n?/,"\n")}y.before=y.before.replace(/(((\n|^)(\n[ \t]*)*>(.+\n)*.*)+(\n[ \t]*)*$)/,function(z){y.startTag=z;return""});y.after=y.after.replace(/^(((\n|^)(\n[ \t]*)*>(.+\n)*.*)+(\n[ \t]*)*)/,function(z){y.endTag=z;return""});var w=function(A){var z=A?"> ":"";if(y.startTag){y.startTag=y.startTag.replace(/\n((>|\s)*)\n$/,function(B,C){return"\n"+C.replace(/^[ ]{0,3}>?[ \t]*$/gm,z)+"\n"})}if(y.endTag){y.endTag=y.endTag.replace(/^\n((>|\s)*)\n/,function(B,C){return"\n"+C.replace(/^[ ]{0,3}>?[ \t]*$/gm,z)+"\n"})}};if(/^(?![ ]{0,3}>)/m.test(y.selection)){e.wrap(y,o.wmd_env.lineLength-2);y.selection=y.selection.replace(/^/gm,"> ");w(true);y.addBlankLines()}else{y.selection=y.selection.replace(/^[ ]{0,3}> ?/gm,"");e.unwrap(y);w(false);if(!/^(\n|^)[ ]{0,3}>/.test(y.selection)&&y.startTag){y.startTag=y.startTag.replace(/\n{0,2}$/,"\n\n")}if(!/(\n|^)[ ]{0,3}>.*$/.test(y.selection)&&y.endTag){y.endTag=y.endTag.replace(/^\n{0,2}/,"\n\n")}}if(!/\n/.test(y.selection)){y.selection=y.selection.replace(/^(> *)/,function(A,z){y.startTag+=z;return""})}};e.doCode=function(z,y,x){var w=/\S[ ]*$/.test(z.before);var v=/^[ ]*\S/.test(z.after);if((!v&&!w)||/\n/.test(z.selection)){z.before=z.before.replace(/[ ]{4}$/,function(B){z.selection=B+z.selection;return""});var A=1;var u=1;if(/\n(\t|[ ]{4,}).*\n$/.test(z.before)||z.after===""){A=0}if(/^\n(\t|[ ]{4,})/.test(z.after)){u=0}z.addBlankLines(A,u);if(!z.selection){z.startTag="    ";z.selection=x?"enter code here":""}else{if(/^[ ]{0,3}\S/m.test(z.selection)){z.selection=z.selection.replace(/^/gm,"    ")}else{z.selection=z.selection.replace(/^[ ]{4}/gm,"")}}}else{z.trimWhitespace();z.findTags(/`/,/`/);if(!z.startTag&&!z.endTag){z.startTag=z.endTag="`";if(!z.selection){z.selection=x?"enter code here":""}}else{if(z.endTag&&!z.startTag){z.before+=z.endTag;z.endTag=""}else{z.startTag=z.endTag=""}}}};e.doList=function(I,B,y,z){var H=/(\n|^)(([ ]{0,3}([*+-]|\d+[.])[ \t]+.*)(\n.+|\n{2,}([*+-].*|\d+[.])[ \t]+.*|\n{2,}[ \t]+\S.*)*)\n*$/;var E=/^\n*(([ ]{0,3}([*+-]|\d+[.])[ \t]+.*)(\n.+|\n{2,}([*+-].*|\d+[.])[ \t]+.*|\n{2,}[ \t]+\S.*)*)\n*/;var v="-";var u=1;var C=function(){var J;if(y){J=" "+u+". ";u++}else{J=" "+v+" "}return J};var F=function(J){if(y===undefined){y=/^\s*\d/.test(J)}J=J.replace(/^[ ]{0,3}([*+-]|\d+[.])\s/gm,function(K){return C()});return J};I.findTags(/(\n|^)*[ ]{0,3}([*+-]|\d+[.])\s+/,null);if(I.before&&!/\n$/.test(I.before)&&!/^\n/.test(I.startTag)){I.before+=I.startTag;I.startTag=""}if(I.startTag){var G=/\d+[.]/.test(I.startTag);I.startTag="";I.selection=I.selection.replace(/\n[ ]{4}/g,"\n");e.unwrap(I);I.addBlankLines();if(G){I.after=I.after.replace(E,F)}if(y==G){return}}var D=1;I.before=I.before.replace(H,function(J){if(/^\s*([*+-])/.test(J)){v=n.$1}D=/[^\n]\n\n[^\n]/.test(J)?1:0;return F(J)});if(!I.selection){I.selection=z?"List item":" "}var w=C();var A=1;I.after=I.after.replace(E,function(J){A=/[^\n]\n\n[^\n]/.test(J)?1:0;return F(J)});I.trimWhitespace(true);I.addBlankLines(D,A,true);I.startTag=w;var x=w.replace(/./g," ");e.wrap(I,o.wmd_env.lineLength-x.length);I.selection=I.selection.replace(/\n/g,"\n"+x)};e.doHeading=function(y,x,w){y.selection=y.selection.replace(/\s+/g," ");y.selection=y.selection.replace(/(^\s+|\s+$)/g,"");if(!y.selection){y.startTag="## ";y.selection="Heading";y.endTag=" ##";return}var z=0;y.findTags(/#+[ ]*/,/[ ]*#+/);if(/#+/.test(y.startTag)){z=n.lastMatch.length}y.startTag=y.endTag="";y.findTags(null,/\s?(-+|=+)/);if(/=+/.test(y.endTag)){z=1}if(/-+/.test(y.endTag)){z=2}y.startTag=y.endTag="";y.addBlankLines(1,1);var u=z==0?2:z-1;if(u>0){var v=u>=2?"-":"=";var A=y.selection.length;if(A>o.wmd_env.lineLength){A=o.wmd_env.lineLength}y.endTag="\n";while(A--){y.endTag+=v}}};e.doHorizontalRule=function(w,v,u){w.startTag="----------\n";w.selection="";w.addBlankLines(2,1,true)}};b.wmd_env={};b.account_options={};b.wmd_defaults={version:2,output_format:"markdown",lineLength:40,delayLoad:false};if(!b.wmd){b.wmd=function(){b.loadEnv=function(){var d=function(f){if(!f){return}for(var e in f){b.wmd_env[e]=f[e]}};d(b.wmd_defaults);d(b.account_options);d(a);b.full=true;var c="bold italic link blockquote code image ol ul heading hr";b.wmd_env.buttons=b.wmd_env.buttons||c};b.loadEnv()};b.wmd();b.wmdBase();b.Util.startEditor()}};var Attacklab=Attacklab||{};Attacklab.showdown=Attacklab.showdown||{};Attacklab.showdown.converter=function(){var f;var E;var g;var y=0;this.makeHtml=function(H){f=new Array();E=new Array();g=new Array();H=H.replace(/~/g,"~T");H=H.replace(/\$/g,"~D");H=H.replace(/\r\n/g,"\n");H=H.replace(/\r/g,"\n");H="\n\n"+H+"\n\n";H=q(H);H=H.replace(/^[ \t]+$/mg,"");H=e(H);H=m(H);H=G(H);H=C(H);H=H.replace(/~D/g,"$$");H=H.replace(/~T/g,"~");return H};var m=function(H){var H=H.replace(/^[ ]{0,3}\[(.+)\]:[ \t]*\n?[ \t]*<?(\S+?)>?[ \t]*\n?[ \t]*(?:(\n*)["(](.+?)[")][ \t]*)?(?:\n+)/gm,function(J,L,M,I,K){L=L.toLowerCase();f[L]=k(M);if(I){return I+K}else{if(K){E[L]=K.replace(/"/g,"&quot;")}}return""});return H};var e=function(J){J=J.replace(/\n/g,"\n\n");var H="p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del";var I="p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math";J=J.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del)\b[^\r]*?\n<\/\2>[ \t]*(?=\n+))/gm,l);J=J.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math)\b[^\r]*?.*<\/\2>[ \t]*(?=\n+)\n)/gm,l);J=J.replace(/(\n[ ]{0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,l);J=J.replace(/(\n\n[ ]{0,3}<!(--[^\r]*?--\s*)+>[ \t]*(?=\n{2,}))/g,l);J=J.replace(/(?:\n\n)([ ]{0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,l);J=J.replace(/\n\n/g,"\n");return J};var l=function(H,J){var I=J;I=I.replace(/\n\n/g,"\n");I=I.replace(/^\n/,"");I=I.replace(/\n+$/g,"");I="\n\n~K"+(g.push(I)-1)+"K\n\n";return I};var G=function(I){I=B(I);var H=d("<hr />");I=I.replace(/^[ ]{0,2}([ ]?\*[ ]?){3,}[ \t]*$/gm,H);I=I.replace(/^[ ]{0,2}([ ]?-[ ]?){3,}[ \t]*$/gm,H);I=I.replace(/^[ ]{0,2}([ ]?_[ ]?){3,}[ \t]*$/gm,H);I=a(I);I=c(I);I=i(I);I=e(I);I=o(I);return I};var t=function(H){H=A(H);H=x(H);H=w(H);H=s(H);H=v(H);H=p(H);H=k(H);H=j(H);H=H.replace(/  +\n/g," <br />\n");return H};var x=function(H){var I=/(<[a-z\/!$]("[^"]*"|'[^']*'|[^'">])*>|<!(--.*?--\s*)+>)/gi;H=H.replace(I,function(J){var K=J.replace(/(.)<\/?code>(?=.)/g,"$1`");K=h(K,"\\`*_");return K});return H};var v=function(H){H=H.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,z);H=H.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\]\([ \t]*()<?(.*?)>?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,z);H=H.replace(/(\[([^\[\]]+)\])()()()()()/g,z);return H};var z=function(R,Q,U,J,L,P,T,I){if(I==undefined){I=""}var K=Q;var M=U;var N=J.toLowerCase();var O=L;var H=I;if(O==""){if(N==""){N=M.toLowerCase().replace(/ ?\n/g," ")}O="#"+N;if(f[N]!=undefined){O=f[N];if(E[N]!=undefined){H=E[N]}}else{if(K.search(/\(\s*\)$/m)>-1){O=""}else{return K}}}O=h(O,"*_");var S='<a href="'+O+'"';if(H!=""){H=H.replace(/"/g,"&quot;");H=h(H,"*_");S+=' title="'+H+'"'}S+=">"+M+"</a>";return S};var s=function(H){H=H.replace(/(!\[(.*?)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,r);H=H.replace(/(!\[(.*?)\]\s?\([ \t]*()<?(\S+?)>?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,r);return H};var r=function(Q,P,U,S,L,O,T,I){var K=P;var J=U;var M=S.toLowerCase();var N=L;var H=I;if(!H){H=""}if(N==""){if(M==""){M=J.toLowerCase().replace(/ ?\n/g," ")}N="#"+M;if(f[M]!=undefined){N=f[M];if(E[M]!=undefined){H=E[M]}}else{return K}}J=J.replace(/"/g,"&quot;");N=h(N,"*_");var R='<img src="'+N+'" alt="'+J+'"';H=H.replace(/"/g,"&quot;");H=h(H,"*_");R+=' title="'+H+'"';R+=" />";return R};var B=function(H){H=H.replace(/^(.+)[ \t]*\n=+[ \t]*\n+/gm,function(I,J){return d("<h1>"+t(J)+"</h1>")});H=H.replace(/^(.+)[ \t]*\n-+[ \t]*\n+/gm,function(I,J){return d("<h2>"+t(J)+"</h2>")});H=H.replace(/^(\#{1,6})[ \t]*(.+?)[ \t]*\#*\n+/gm,function(I,J,L){var K=J.length;return d("<h"+K+">"+t(L)+"</h"+K+">")});return H};var F;var a=function(I){I+="~0";var H=/^(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm;if(y){I=I.replace(H,function(J,K,L){var N=K;var M=(L.search(/[*+-]/g)>-1)?"ul":"ol";N=N.replace(/\n{2,}/g,"\n\n\n");var O=F(N);O=O.replace(/\s+$/,"");O="<"+M+">"+O+"</"+M+">\n";return O})}else{H=/(\n\n|^\n?)(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/g;I=I.replace(H,function(J,K,L,M){var O=K;var P=L;var N=(M.search(/[*+-]/g)>-1)?"ul":"ol";var P=P.replace(/\n{2,}/g,"\n\n\n");var Q=F(P);Q=O+"<"+N+">\n"+Q+"</"+N+">\n";return Q})}I=I.replace(/~0/,"");return I};F=function(H){y++;H=H.replace(/\n{2,}$/,"\n");H+="~0";H=H.replace(/(\n)?(^[ \t]*)([*+-]|\d+[.])[ \t]+([^\r]+?(\n{1,2}))(?=\n*(~0|\2([*+-]|\d+[.])[ \t]+))/gm,function(J,K,L,M,N){var P=N;var I=K;var O=L;if(I||(P.search(/\n{2,}/)>-1)){P=G(n(P))}else{P=a(n(P));P=P.replace(/\n$/,"");P=t(P)}return"<li>"+P+"</li>\n"});H=H.replace(/~0/g,"");y--;return H};var c=function(H){H+="~0";H=H.replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=~0))/g,function(J,K,M){var I=K;var L=M;I=u(n(I));I=q(I);I=I.replace(/^\n+/g,"");I=I.replace(/\n+$/g,"");I="<pre><code>"+I+"\n</code></pre>";return d(I)+L});H=H.replace(/~0/,"");return H};var d=function(H){H=H.replace(/(^\n+|\n+$)/g,"");return"\n\n~K"+(g.push(H)-1)+"K\n\n"};var A=function(H){H=H.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,function(I,J,K,L,M){var N=L;N=N.replace(/^([ \t]*)/g,"");N=N.replace(/[ \t]*$/g,"");N=u(N);return J+"<code>"+N+"</code>"});return H};var u=function(H){H=H.replace(/&/g,"&amp;");H=H.replace(/</g,"&lt;");H=H.replace(/>/g,"&gt;");H=h(H,"*_{}[]\\",false);return H};var j=function(H){H=H.replace(/(\*\*|__)(?=\S)([^\r]*?\S[\*_]*)\1/g,"<strong>$2</strong>");H=H.replace(/(\*|_)(?=\S)([^\r]*?\S)\1/g,"<em>$2</em>");return H};var i=function(H){H=H.replace(/((^[ \t]*>[ \t]?.+\n(.+\n)*\n*)+)/gm,function(J,K){var I=K;I=I.replace(/^[ \t]*>[ \t]?/gm,"~0");I=I.replace(/~0/g,"");I=I.replace(/^[ \t]+$/gm,"");I=G(I);I=I.replace(/(^|\n)/g,"$1  ");I=I.replace(/(\s*<pre>[^\r]+?<\/pre>)/gm,function(L,M){var N=M;N=N.replace(/^  /mg,"~0");N=N.replace(/~0/g,"");return N});return d("<blockquote>\n"+I+"\n</blockquote>")});return H};var o=function(N){N=N.replace(/^\n+/g,"");N=N.replace(/\n+$/g,"");var K=N.split(/\n{2,}/g);var M=new Array();var H=K.length;for(var I=0;I<H;I++){var L=K[I];if(L.search(/~K(\d+)K/g)>=0){M.push(L)}else{if(L.search(/\S/)>=0){L=t(L);L=L.replace(/^([ \t]*)/g,"<p>");L+="</p>";M.push(L)}}}H=M.length;for(var I=0;I<H;I++){while(M[I].search(/~K(\d+)K/)>=0){var J=g[RegExp.$1];J=J.replace(/\$/g,"$$$$");M[I]=M[I].replace(/~K\d+K/,J)}}return M.join("\n\n")};var k=function(H){H=H.replace(/&(?!#?[xX]?(?:[0-9a-fA-F]+|\w+);)/g,"&amp;");H=H.replace(/<(?![a-z\/?\$!])/gi,"&lt;");return H};var w=function(H){H=H.replace(/\\(\\)/g,b);H=H.replace(/\\([`*_{}\[\]()>#+-.!])/g,b);return H};var p=function(H){H=H.replace(/<((https?|ftp|dict):[^'">\s]+)>/gi,'<a href="$1">$1</a>');H=H.replace(/<(?:mailto:)?([-.\w]+\@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,function(I,J){return D(C(J))});return H};var D=function(J){function H(L){var K="0123456789ABCDEF";var M=L.charCodeAt(0);return(K.charAt(M>>4)+K.charAt(M&15))}var I=[function(K){return"&#"+K.charCodeAt(0)+";"},function(K){return"&#x"+H(K)+";"},function(K){return K}];J="mailto:"+J;J=J.replace(/./g,function(L){if(L=="@"){L=I[Math.floor(Math.random()*2)](L)}else{if(L!=":"){var K=Math.random();L=(K>0.9?I[2](L):K>0.45?I[1](L):I[0](L))}}return L});J='<a href="'+J+'">'+J+"</a>";J=J.replace(/">.+:/g,'">');return J};var C=function(H){H=H.replace(/~E(\d+)E/g,function(I,K){var J=parseInt(K);return String.fromCharCode(J)});return H};var n=function(H){H=H.replace(/^(\t|[ ]{1,4})/gm,"~0");H=H.replace(/~0/g,"");return H};var q=function(H){H=H.replace(/\t(?=\t)/g,"    ");H=H.replace(/\t/g,"~A~B");H=H.replace(/~B(.+?)~A/g,function(J,K,L){var M=K;var N=4-M.length%4;for(var I=0;I<N;I++){M+=" "}return M});H=H.replace(/~A/g,"    ");H=H.replace(/~B/g,"");return H};var h=function(L,J,I){var H="(["+J.replace(/([\[\]\\])/g,"\\$1")+"])";if(I){H="\\\\"+H}var K=new RegExp(H,"g");L=L.replace(K,b);return L};var b=function(H,I){var J=I.charCodeAt(0);return"~E"+J+"E"}};var Showdown=Attacklab.showdown;if(Attacklab.fileLoaded){Attacklab.fileLoaded("showdown.js")};var MD5=function(q){function Y(a,b){return(a<<b)|(a>>>(32-b))}function N(d,c){var k,x,b,F,a;b=(d&2147483648);F=(c&2147483648);k=(d&1073741824);x=(c&1073741824);a=(d&1073741823)+(c&1073741823);if(k&x){return(a^2147483648^b^F)}if(k|x){if(a&1073741824){return(a^3221225472^b^F)}else{return(a^1073741824^b^F)}}else{return(a^b^F)}}function i(b,c,a){return(b&c)|((~b)&a)}function j(b,c,a){return(b&a)|(c&(~a))}function V(b,c,a){return(b^c^a)}function m(b,c,a){return(c^(b|(~a)))}function r(F,G,H,I,k,Z,aa){F=N(F,N(N(i(G,H,I),k),aa));return N(Y(F,Z),G)}function K(F,G,H,I,k,Z,aa){F=N(F,N(N(j(G,H,I),k),aa));return N(Y(F,Z),G)}function f(F,G,H,I,k,Z,aa){F=N(F,N(N(V(G,H,I),k),aa));return N(Y(F,Z),G)}function e(F,G,H,I,k,Z,aa){F=N(F,N(N(m(G,H,I),k),aa));return N(Y(F,Z),G)}function S(k){var x;var b=k.length;var d=b+8;var F=(d-(d%64))/64;var c=(F+1)*16;var a=Array(c-1);var H=0;var G=0;while(G<b){x=(G-(G%4))/4;H=(G%4)*8;a[x]=(a[x]|(k.charCodeAt(G)<<H));G++}x=(G-(G%4))/4;H=(G%4)*8;a[x]=a[x]|(128<<H);a[c-2]=b<<3;a[c-1]=b>>>29;return a}function t(k){var b="",a="",d,c;for(c=0;c<=3;c++){d=(k>>>(c*8))&255;a="0"+d.toString(16);b=b+a.substr(a.length-2,2)}return b}function W(b){b=b.replace(/\r\n/g,"\n");var d="";for(var k=0;k<b.length;k++){var a=b.charCodeAt(k);if(a<128){d+=String.fromCharCode(a)}else{if((a>127)&&(a<2048)){d+=String.fromCharCode((a>>6)|192);d+=String.fromCharCode((a&63)|128)}else{d+=String.fromCharCode((a>>12)|224);d+=String.fromCharCode(((a>>6)&63)|128);d+=String.fromCharCode((a&63)|128)}}}return d}var l=Array();var D,v,O,M,C,w,y,z,A;var h=7,p=12,T=17,U=22;var P=5,B=9,u=14,s=20;var Q=4,R=11,E=16,g=23;var n=6,o=10,L=15,X=21;q=W(q);l=S(q);w=1732584193;y=4023233417;z=2562383102;A=271733878;for(D=0;D<l.length;D+=16){v=w;O=y;M=z;C=A;w=r(w,y,z,A,l[D+0],h,3614090360);A=r(A,w,y,z,l[D+1],p,3905402710);z=r(z,A,w,y,l[D+2],T,606105819);y=r(y,z,A,w,l[D+3],U,3250441966);w=r(w,y,z,A,l[D+4],h,4118548399);A=r(A,w,y,z,l[D+5],p,1200080426);z=r(z,A,w,y,l[D+6],T,2821735955);y=r(y,z,A,w,l[D+7],U,4249261313);w=r(w,y,z,A,l[D+8],h,1770035416);A=r(A,w,y,z,l[D+9],p,2336552879);z=r(z,A,w,y,l[D+10],T,4294925233);y=r(y,z,A,w,l[D+11],U,2304563134);w=r(w,y,z,A,l[D+12],h,1804603682);A=r(A,w,y,z,l[D+13],p,4254626195);z=r(z,A,w,y,l[D+14],T,2792965006);y=r(y,z,A,w,l[D+15],U,1236535329);w=K(w,y,z,A,l[D+1],P,4129170786);A=K(A,w,y,z,l[D+6],B,3225465664);z=K(z,A,w,y,l[D+11],u,643717713);y=K(y,z,A,w,l[D+0],s,3921069994);w=K(w,y,z,A,l[D+5],P,3593408605);A=K(A,w,y,z,l[D+10],B,38016083);z=K(z,A,w,y,l[D+15],u,3634488961);y=K(y,z,A,w,l[D+4],s,3889429448);w=K(w,y,z,A,l[D+9],P,568446438);A=K(A,w,y,z,l[D+14],B,3275163606);z=K(z,A,w,y,l[D+3],u,4107603335);y=K(y,z,A,w,l[D+8],s,1163531501);w=K(w,y,z,A,l[D+13],P,2850285829);A=K(A,w,y,z,l[D+2],B,4243563512);z=K(z,A,w,y,l[D+7],u,1735328473);y=K(y,z,A,w,l[D+12],s,2368359562);w=f(w,y,z,A,l[D+5],Q,4294588738);A=f(A,w,y,z,l[D+8],R,2272392833);z=f(z,A,w,y,l[D+11],E,1839030562);y=f(y,z,A,w,l[D+14],g,4259657740);w=f(w,y,z,A,l[D+1],Q,2763975236);A=f(A,w,y,z,l[D+4],R,1272893353);z=f(z,A,w,y,l[D+7],E,4139469664);y=f(y,z,A,w,l[D+10],g,3200236656);w=f(w,y,z,A,l[D+13],Q,681279174);A=f(A,w,y,z,l[D+0],R,3936430074);z=f(z,A,w,y,l[D+3],E,3572445317);y=f(y,z,A,w,l[D+6],g,76029189);w=f(w,y,z,A,l[D+9],Q,3654602809);A=f(A,w,y,z,l[D+12],R,3873151461);z=f(z,A,w,y,l[D+15],E,530742520);y=f(y,z,A,w,l[D+2],g,3299628645);w=e(w,y,z,A,l[D+0],n,4096336452);A=e(A,w,y,z,l[D+7],o,1126891415);z=e(z,A,w,y,l[D+14],L,2878612391);y=e(y,z,A,w,l[D+5],X,4237533241);w=e(w,y,z,A,l[D+12],n,1700485571);A=e(A,w,y,z,l[D+3],o,2399980690);z=e(z,A,w,y,l[D+10],L,4293915773);y=e(y,z,A,w,l[D+1],X,2240044497);w=e(w,y,z,A,l[D+8],n,1873313359);A=e(A,w,y,z,l[D+15],o,4264355552);z=e(z,A,w,y,l[D+6],L,2734768916);y=e(y,z,A,w,l[D+13],X,1309151649);w=e(w,y,z,A,l[D+4],n,4149444226);A=e(A,w,y,z,l[D+11],o,3174756917);z=e(z,A,w,y,l[D+2],L,718787259);y=e(y,z,A,w,l[D+9],X,3951481745);w=N(w,v);y=N(y,O);z=N(z,M);A=N(A,C)}var J=t(w)+t(y)+t(z)+t(A);return J.toLowerCase()};
