var log=function(a){if(typeof console!=="undefined"){console.log("PFLog: "+a)}};var pfspace={bodyCache:null,flags:1|2,FLAG_STRIP_UNLIKELYS:1,FLAG_WEIGHT_CLASSES:2,regexps:{unlikelyCandidatesRe:/combx|comment|disqus|foot|header|menu|meta|rss|shoutbox|sidebar|sponsor/i,okMaybeItsACandidateRe:/and|article|body|column|main/i,positiveRe:/article|body|content|entry|hentry|page|pagination|post|text/i,negativeRe:/combx|comment|contact|foot|footer|footnote|link|media|meta|promo|related|scroll|shoutbox|sponsor|tags|widget/i,divToPElementsRe:/<(a|blockquote|dl|div|img|ol|p|pre|table|ul)/i,replaceBrsRe:/(<br[^>]*>[ \n\r\t]*){2,}/gi,replaceFontsRe:/<(\/?)font[^>]*>/gi,trimRe:/^\s+|\s+$/g,normalizeRe:/\s{2,}/g,killBreaksRe:/(<br\s*\/?>(\s|&nbsp;?)*){1,}/g,videoRe:/http:\/\/(www\.)?(youtube|vimeo)\.com/i},initializeNode:function(a){a.pfspace={contentScore:0};switch(a.tagName){case"DIV":a.pfspace.contentScore+=5;break;case"PRE":case"TD":case"BLOCKQUOTE":a.pfspace.contentScore+=3;break;case"ADDRESS":case"OL":case"UL":case"DL":case"DD":case"DT":case"LI":case"FORM":a.pfspace.contentScore-=3;break;case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":case"TH":a.pfspace.contentScore-=5;break}a.pfspace.contentScore+=pfspace.getClassWeight(a)},getCharCount:function(b,a){a=a||",";return pfspace.getInnerText(b).split(a).length-1},getLinkDensity:function(g){var b=g.getElementsByTagName("a");var d=pfspace.getInnerText(g).length;var f=0;for(var c=0,a=b.length;c<a;c++){f+=pfspace.getInnerText(b[c]).length}return f/d},getClassWeight:function(b){if(!pfspace.flagIsActive(pfspace.FLAG_WEIGHT_CLASSES)){return 0}var a=0;if(b.className!=""){if(b.className.search(pfspace.regexps.negativeRe)!==-1){a-=25}if(b.className.search(pfspace.regexps.positiveRe)!==-1){a+=25}}if(typeof(b.id)=="string"&&b.id!=""){if(b.id.search(pfspace.regexps.negativeRe)!==-1){a-=25}if(b.id.search(pfspace.regexps.positiveRe)!==-1){a+=25}}return a},killBreaks:function(b){try{b.innerHTML=b.innerHTML.replace(pfspace.regexps.killBreaksRe,"<br />")}catch(a){log("KillBreaks failed - this is an IE bug. Ignoring.: "+a)}},cleanStyles:function(a){a=a||document;var b=a.firstChild;if(!a){return}while(b!==null){if(b.nodeType==1){if(b.className!="pf-print-area"){b.removeAttribute("style")}pfspace.cleanStyles(b)}b=b.nextSibling}},clean:function(g,a){var h=g.getElementsByTagName(a);var b=(a=="object"||a=="embed");for(var n=h.length-1;n>=0;n--){if(b){var f="";for(var d=0,c=h[n].attributes.length;d<c;d++){f+=h[n].attributes[d].value+"|"}if(f.search(pfspace.regexps.videoRe)!==-1){continue}if(h[n].innerHTML.search(pfspace.regexps.videoRe)!==-1){continue}}h[n].parentNode.removeChild(h[n])}},cleanHeaders:function(c){for(var a=1;a<7;a++){var d=c.getElementsByTagName("h"+a);for(var b=d.length-1;b>=0;b--){if(pfspace.getClassWeight(d[b])<0||pfspace.getLinkDensity(d[b])>0.33){d[b].parentNode.removeChild(d[b])}}}},cleanConditionally:function(w,x){var b=w.getElementsByTagName(x);var r=b.length;for(var v=r-1;v>=0;v--){var n=pfspace.getClassWeight(b[v]);var u=(typeof b[v].pfspace!="undefined")?b[v].pfspace.contentScore:0;if(n+u<0){b[v].parentNode.removeChild(b[v])}else{if(pfspace.getCharCount(b[v],",")<10){var q=b[v].getElementsByTagName("p").length;var y=b[v].getElementsByTagName("img").length;var o=b[v].getElementsByTagName("li").length-100;var g=b[v].getElementsByTagName("input").length;var f=0;var t=b[v].getElementsByTagName("embed");for(var a=0,d=t.length;a<d;a++){if(t[a].src.search(pfspace.regexps.videoRe)==-1){f++}}var h=pfspace.getLinkDensity(b[v]);var c=pfspace.getInnerText(b[v]).length;var s=false;if(y>q){s=true}else{if(o>q&&x!="ul"&&x!="ol"){s=true}else{if(g>Math.floor(q/3)){s=true}else{if(c<25&&(y===0||y>2)){s=true}else{if(n<25&&h>0.2){s=true}else{if(n>=25&&h>0.5){s=true}else{if((f==1&&c<75)||f>1){s=true}}}}}}}if(s){b[v].parentNode.removeChild(b[v])}}}}},prepArticle:function(b){pfspace.cleanStyles(b);pfspace.killBreaks(b);pfspace.clean(b,"form");pfspace.clean(b,"object");pfspace.clean(b,"h1");if(b.getElementsByTagName("h2").length==1){pfspace.clean(b,"h2")}pfspace.clean(b,"iframe");pfspace.cleanHeaders(b);pfspace.cleanConditionally(b,"table");pfspace.cleanConditionally(b,"ul");pfspace.cleanConditionally(b,"div");var g=b.getElementsByTagName("p");for(var d=g.length-1;d>=0;d--){var c=g[d].getElementsByTagName("img").length;var f=g[d].getElementsByTagName("embed").length;var a=g[d].getElementsByTagName("object").length;if(c===0&&f===0&&a===0&&pfspace.getInnerText(g[d],false)==""){g[d].parentNode.removeChild(g[d])}}try{b.innerHTML=b.innerHTML.replace(/<br[^>]*>\s*<p/gi,"<p")}catch(h){log("Cleaning innerHTML of breaks failed. This is an IE strict-block-elements bug. Ignoring.: "+h)}},getInnerText:function(c,a){var b="";a=(typeof a=="undefined")?true:a;if(navigator.appName=="Microsoft Internet Explorer"){b=c.innerText.replace(pfspace.regexps.trimRe,"")}else{b=c.textContent.replace(pfspace.regexps.trimRe,"")}if(a){return b.replace(pfspace.regexps.normalizeRe," ")}else{return b}},flagIsActive:function(a){return(pfspace.flags&a)>0},addFlag:function(a){pfspace.flags=pfspace.flags|a},removeFlag:function(a){pfspace.flags=pfspace.flags&~a}};function getMainContent(){var d=document.getElementById("toolsframe").contentWindow;var x=d.document;var f=x.getElementsByTagName("head")[0];x.body.style.textAlign="center";if(!f){f=x.body.parentNode.appendChild(document.createElement("head"))}var b=document.createElement("DIV");var D=document.createElement("DIV");D.id="pf-print-area";var u=document.createElement("H1");u.innerHTML=document.title;D.appendChild(u);var H=pfspace.flagIsActive(pfspace.FLAG_STRIP_UNLIKELYS);var C=null;var N=[];for(var q=0;(C=pfspace.bodyCache.getElementsByTagName("*")[q]);q++){if(H){var G=C.className+C.id;if(G.search(pfspace.regexps.unlikelyCandidatesRe)!==-1&&G.search(pfspace.regexps.okMaybeItsACandidateRe)==-1&&C.tagName!=="BODY"){C.parentNode.removeChild(C);q--;continue}}if(C.tagName==="P"||C.tagName==="TD"){N[N.length]=C}if(C.tagName==="DIV"){if(C.innerHTML.search(pfspace.regexps.divToPElementsRe)===-1){var n=document.createElement("p");try{n.innerHTML=C.innerHTML;C.parentNode.replaceChild(n,C);q--}catch(R){log("Could not alter div to p, probably an IE restriction, reverting back to div.: "+R)}}else{for(var P=0,A=C.childNodes.length;P<A;P++){var v=C.childNodes[P];if(v.nodeType==3){var M=document.createElement("p");M.innerHTML=v.nodeValue;M.style.display="inline";v.parentNode.replaceChild(M,v)}}}}}var L=[];for(var g=0;g<N.length;g++){var h=N[g].parentNode;var F=h.parentNode;var T=pfspace.getInnerText(N[g]);if(T.length<25){continue}if(typeof h.pfspace=="undefined"){pfspace.initializeNode(h);L.push(h)}if(typeof F.pfspace=="undefined"){pfspace.initializeNode(F);L.push(F)}var S=0;S++;S+=T.split(",").length;S+=Math.min(Math.floor(T.length/100),3);h.pfspace.contentScore+=S;F.pfspace.contentScore+=S/2}var w=null;for(var U=0,y=L.length;U<y;U++){L[U].pfspace.contentScore=L[U].pfspace.contentScore*(1-pfspace.getLinkDensity(L[U]));if(!w||L[U].pfspace.contentScore>w.pfspace.contentScore){w=L[U]}}if(w===null||w.tagName=="BODY"){w=document.createElement("DIV");w.innerHTML=pfspace.bodyCache.innerHTML;pfspace.initializeNode(w)}var O=Math.max(10,w.pfspace.contentScore*0.2);var o=w.parentNode.childNodes;for(var K=0,t=o.length;K<t;K++){var z=o[K];var I=false;if(z===w){I=true}if(typeof z.pfspace!="undefined"&&z.pfspace.contentScore>=O){I=true}if(z.nodeName=="P"){var r=pfspace.getLinkDensity(z);var J=pfspace.getInnerText(z);var a=J.length;if(a>80&&r<0.25){I=true}else{if(a<80&&r===0&&J.search(/\.( |$)/)!==-1){I=true}}}if(I){var B=null;if(z.nodeName!="DIV"&&z.nodeName!="P"){B=document.createElement("div");try{B.id=z.id;B.innerHTML=z.innerHTML}catch(R){B=z;K--;t--}}else{B=z;K--;t--}B.className="";b.appendChild(B)}}pfspace.prepArticle(b);D.appendChild(b);disableStyles();if(/msie/i.test(navigator.userAgent)&&!/opera/i.test(navigator.userAgent)){x.body.innerHTML=D.outerHTML;x.getElementById("pf-print-area").style.width="800px"}else{x.body.insertBefore(D,x.body.firstChild)}var Q=x.getElementById("pfLink");if(Q){Q.parentNode.removeChild(Q)}var E=x.getElementById("printfriendly");if(E){E.parentNode.removeChild(E)}setContentStyles();YAHOO.util.Get.script("http://cdn.printfriendly.com/aloaderv2-min.js",{win:d});return false}function closePFLightbox(){for(var a=0;a<document.styleSheets.length;a++){document.styleSheets[a].disabled=false}closePFAds();document.body.style.overflow="auto";return false}function closePFAds(){var a=document.getElementById("pf-print-popup");a.style.display="none";frames.toolsframe.aardvark.resume();return false}function showPFAds(b){var h=document.getElementById("pf-print-popup");var g=document.createElement("img");var f=document.getElementById("printSpan");var d=document.getElementById("printText");var e=document.getElementById("pdfSpan");var a=document.getElementById("pdfText");if(b=="print"){e.style.display="none";a.style.display="none";f.style.display="block";d.style.display="block";h.style.display="block";g.src="http://www.printfriendly.com/print/lbmark?url="+top.location.href+"&type=print";document.body.appendChild(g)}else{f.style.display="none";d.style.display="none";e.style.display="block";a.style.display="block";h.style.display="block";g.src="http://www.printfriendly.com/print/lbmark?url="+top.location.href+"&type=pdf";document.body.appendChild(g)}var c=YAHOO.util.Dom.getXY("pnLightbox");YAHOO.util.Dom.setXY("pf-print-popup",[c[0]+80,c[1]+60]);return false}function loadPFAds(){var a=document.createElement("div");a.id="pf-print-popup";document.body.appendChild(a);var e=document.createElement("div");YAHOO.util.Dom.addClass(e,"dialog");a.appendChild(e);var p=document.createElement("a");p.href="#";YAHOO.util.Dom.addClass(p,"close");p.onclick=function(){closePFAds()};e.appendChild(p);var b=document.createElement("div");YAHOO.util.Dom.addClass(b,"content");e.appendChild(b);var n=document.createElement("div");YAHOO.util.Dom.addClass(n,"header");b.appendChild(n);var g=document.createElement("img");g.id="printImg";g.src="http://cdn.printfriendly.com/icon-print-32.gif";g.alt="Print Icon";g.style.styleFloat="left";var c=document.createElement("img");c.id="pdfImg";c.src="http://cdn.printfriendly.com/icon-pdf-32.gif";c.alt="Print Icon";c.style.styleFloat="left";var r=document.createElement("span");r.id="printSpan";r.appendChild(g);r.innerHTML+="Printing Your Page";r.style.fontSize="xx-large";r.style.fontWeight="bold";n.appendChild(r);var o=document.createElement("span");o.id="pdfSpan";o.appendChild(c);o.innerHTML+="Generating Your PDF";o.style.fontSize="xx-large";o.style.fontWeight="bold";n.appendChild(o);var s=document.createElement("p");s.id="printText";s.innerHTML="We've sent your page to your printer (<a href='#' onclick='frames.toolsframe.focus();frames.toolsframe.print();return false;'>re-send)";b.appendChild(s);var q=document.createElement("p");q.id="pdfText";q.innerHTML="Just a sec... a window will appear prompting you to open or save your PDF. This usually takes around 5 seconds.";b.appendChild(q);var f=document.createElement("iframe");f.height="260px";f.width="300px";f.name="gaiframe";f.id="gaiframe";f.frameBorder="0";f.src="http://www.printfriendly.com/googads";f.style.overflow="hidden";f.scrolling="no";if(typeof pf_partner!="undefined"){f.src+="?partner="+pf_partner}b.appendChild(f);var h=document.createElement("iframe");h.height="260px";h.width="300px";h.name="aaiframe";h.id="aaiframe";h.frameBorder="0";h.src="http://www.printfriendly.com/amznads";h.style.overflow="hidden";h.scrolling="no";if(typeof pf_partner!="undefined"){h.src+="?partner="+pf_partner}b.appendChild(h);var d=document.createElement("div");YAHOO.util.Dom.addClass(d,"foot");a.appendChild(d);return false}function setContentStyles(){var a=document.getElementById("toolsframe").contentWindow.document.getElementById("pf-print-area");if(navigator.userAgent.indexOf("Firefox")==-1&&navigator.userAgent.indexOf("MSIE")==-1){a.style.overflow="auto";a.style.overflowX="hidden"}a.style.maxWidth="800px";a.style.margin="1em auto";a.style.textAlign="left";a.style.lineHeight="120%";a.style.color="#222";a.style.fontFamily="Times New Roman, Times, serif";for(i=0;(link=a.getElementsByTagName("a")[i]);++i){link.style.color="blue";link.style.textDecoration="underline";if(link.href.indexOf("http")!=0&&link.href.indexOf("javascript")!=0&&link.href.indexOf("mailto")!=0){if(link.href.indexOf("#")!=0){link.href=top.location.protocol+"//"+top.location.host+link.href}else{link.href=top.location.protocol+"//"+top.location.host+top.location.pathname+link.href}}link.onclick=function(){return false}}for(j=0;(elem=a.getElementsByTagName("*")[j]);++j){elem.style.marginBottom="16px";elem.style.background="none";elem.style.cursor="default";elem.style.border="none"}for(k=0;(img=a.getElementsByTagName("img")[k]);++k){img.src=img.src;img.style.styleFloat="right";img.style.cssFloat="right";img.style.marginLeft="12px";img.style.marginBottom="12px";img.style.border="none"}for(l=0;(h1=a.getElementsByTagName("h1")[l]);++l){h1.style.display="block";h1.style.width="100%";h1.style.borderBottom="1px solid #333";h1.style.fontSize="140%";h1.style.lineHeight="110%";h1.style.fontFamily="Georgia, Times New Roman, Times, serif"}for(m=0;(bq=a.getElementsByTagName("blockquote")[m]);++m){bq.style.marginLeft="3em";bq.style.marginRight="3em"}return false}function getPdf(){frames.toolsframe.aardvark.suspend();frames.toolsframe.aardvark.clearBox();var d=document.getElementById("pnpdfform");if(d!=null){d.parentNode.removeChild(d)}var c=document.createElement("form");c.id="pnpdfform";c.method="POST";c.action="http://www.printfriendly.com/print/getpdf";c.type="hidden";document.body.appendChild(c);var b=document.createElement("input");b.name="code";b.id="pdfcode";b.type="hidden";b.value=frames.toolsframe.document.documentElement.innerHTML;c.appendChild(b);var a=document.createElement("input");a.name="hostname";a.id="hostname";a.type="hidden";a.value=top.location.host;c.appendChild(a);c.submit();showPFAds("pdf");return false}function pfPrint(){showPFAds("print");frames.toolsframe.aardvark.suspend();frames.toolsframe.aardvark.clearBox();frames.toolsframe.focus();frames.toolsframe.print();return false}function pfUndo(){frames.toolsframe.aardvark.undo();return false}function disableStyles(){for(var a=0;a<document.styleSheets.length;a++){if(document.styleSheets[a].href!=null){if((document.styleSheets[a].href.lastIndexOf("printfriendly")==-1)&&(document.styleSheets[a].href.substring(7,10)!="yui")){document.styleSheets[a].disabled=true}}}document.body.style.overflow="hidden";return false}function removeImages(){var d=document.getElementById("wri");if(d.checked==true){d.checked=false}else{d.checked=true}var a=frames.toolsframe.document.getElementById("pf-print-area").getElementsByTagName("img");if(d.checked){for(var c=0;c<a.length;++c){a[c].style.display="none"}}else{for(var b=0;b<a.length;++b){a[b].style.display=""}}return false}function insertPNDiv(){var h=document.getElementsByTagName("body")[0];YAHOO.util.Dom.addClass(h,"yui-skin-sam");var y=YAHOO.util.Dom.getLastChild(h);var n=document.createElement("div");n.id="pnLightbox";YAHOO.util.Dom.insertAfter(n,y);var B=document.createElement("div");B.className="hd";B.id="pn-hdr";var d=document.createElement("ul");B.appendChild(d);var e=document.createElement("li");e.id="w-print";var t=document.createElement("a");t.href="#";t.onclick=pfPrint;e.appendChild(t);d.appendChild(e);var a=document.createElement("li");a.id="w-pdf";var s=document.createElement("a");s.href="#";s.onclick=getPdf;a.appendChild(s);d.appendChild(a);var z=document.createElement("li");z.id="w-email";var o=document.createElement("a");o.href="#";o.onclick=sendEmail;z.appendChild(o);d.appendChild(z);var v=document.createElement("li");v.id="w-tweet";var f=document.createElement("a");f.href="#";f.onclick=tweetIt;v.appendChild(f);d.appendChild(v);var u=document.createElement("li");u.id="w-undo";d.appendChild(u);var c=document.createElement("a");c.href="#";c.onclick=pfUndo;u.appendChild(c);var A=document.createElement("li");A.id="w-remove-images";d.appendChild(A);var p=document.createElement("a");p.href="#";p.onclick=function(){removeImages()};A.appendChild(p);var w=document.createElement("input");w.type="checkbox";w.id="wri";w.onclick=function(){removeImages()};p.appendChild(w);var g=document.createElement("div");g.id="pnicer-body";YAHOO.util.Dom.addClass(g,"bd");var b=document.createElement("div");YAHOO.util.Dom.addClass(b,"ft");var C=document.createElement("a");C.href="http://www.printfriendly.com";C.title="PrintFriendly - Save paper and ink, print nicer documents";YAHOO.util.Dom.addClass(C,"f-logo");b.appendChild(C);n.appendChild(B);n.appendChild(g);n.appendChild(b);var x="900px";var r=YAHOO.util.Dom.getViewportHeight()-80+"px";lbox=new YAHOO.widget.Dialog("pnLightbox",{width:x,height:r,visible:false,modal:true,close:true,fixedcenter:true,constraintoviewport:true,autofillheight:"body"});lbox.beforeHideEvent.subscribe(closePFLightbox);var q=document.createElement("iframe");q.height="100%";q.width="100%";q.name="toolsframe";q.id="toolsframe";q.frameBorder="0";q.src="about:blank";q.onload=getMainContent;q.onreadystatechange=function(){if(this.readyState=="complete"){getMainContent()}};lbox.setBody(q);lbox.render();disableStyles();lbox.show();loadPFAds();return false}function sendEmail(){var a='mailto:?subject=Interesting link (via PrintFriendly.com)&body=Hi, %0A%0AThought you would like this print-friendly version of "'+encodeURIComponent(top.document.title)+'": '+pfBitlyUrl+"%0A%0A--%0ABrought to you by PrintFriendly.com";location.href=a}function tweetIt(){var a=encodeURIComponent(top.document.title)+"+-+"+pfBitlyUrl+"+(via @printfriendly)";var b="http://twitter.com/home/?status="+a;window.open(b)}function loadBitly(){BitlyCB.shortenResponse=function(b){var c;for(var a in b.results){c=b.results[a];break}pfBitlyUrl=c.shortUrl};BitlyClient.shorten(pfBitlyUrl,"BitlyCB.shortenResponse")}function loadYUIScripts(){var a=new YAHOO.util.YUILoader({base:"",require:["container","dom","element","event"],loadOptional:false,combine:true,filter:"MIN",allowRollup:true,onSuccess:function(){YAHOO.util.Get.css("http://cdn.printfriendly.com/printfriendly.css",{onSuccess:insertPNDiv});YAHOO.util.Get.script("http://bit.ly/javascript-api.js?version=latest&login=printfriendly&apiKey=R_ff64fbd608722222e07c4af71cbc3ae5",{onSuccess:loadBitly})}});a.insert();return false}function loadYUILoader(){YAHOO.util.Get.script("http://yui.yahooapis.com/2.7.0/build/yuiloader/yuiloader-min.js",{onSuccess:loadYUIScripts});return false}function loadPNYUIGet(){var b="http://yui.yahooapis.com/2.7.0/build/get/get-min.js";var c=document.getElementsByTagName("head");var a=document.createElement("script");a.type="text/javascript";a.onload=loadYUILoader;a.onreadystatechange=function(){var d=this.readyState;if("loaded"===d||"complete"===d){a.onreadystatechange=null;loadYUILoader()}};a.setAttribute("src",b);c[0].appendChild(a);return false}function loadYUIBase(){if(!window.pfLoaded){window.pfLoaded=true;pfspace.bodyCache=document.body.cloneNode(true);var b="http://yui.yahooapis.com/2.7.0/build/yahoo/yahoo-min.js";var c=document.getElementsByTagName("head");var a=document.createElement("script");a.type="text/javascript";a.onload=loadPNYUIGet;a.onreadystatechange=function(){var d=this.readyState;if("loaded"===d||"complete"===d){a.onreadystatechange=null;loadPNYUIGet()}};a.setAttribute("src",b);c[0].appendChild(a)}else{disableStyles();lbox.show()}return false}function insertPFLink(){var a=document.getElementById("pfLink");if(a){a.onclick=function(){window.print();return false}}}var pfBitlyUrl="http://www.printfriendly.com/print?url="+top.location.href;var printFun=window.print;window.print=loadYUIBase;if((typeof pfstyle!="undefined")||(top.location.href.indexOf("pfstyle=wp")!=-1)){window.print()}if(top.location.href.indexOf("pfstyle=wp")!=-1){pfBitlyUrl=top.location.href}window.onload=insertPFLink;