jQuery(document).ready(function($){$('#iconbar li').each(function(i){$(this).hover(function(){$('span.s1',this).stop().animate({'left':'-40px'},{queue:false,duration:500});$('span.s2',this).stop().animate({'top':'-40px'},{queue:false,duration:500});$('span.s3',this).stop().animate({'right':'-40px'},{queue:false,duration:500});$('span.s4',this).stop().animate({'bottom':'-40px'},{queue:false,duration:500})},function(){$('span.s1',this).animate({'left':'-20px'},{queue:false,duration:500});$('span.s2',this).animate({'top':'-20px'},{queue:false,duration:500});$('span.s3',this).animate({'right':'-20px'},{queue:false,duration:500});$('span.s4',this).animate({'bottom':'-20px'},{queue:false,duration:500})})});var i=0;$('.sb_about_title').click(function(){if(i==0){$(this).removeClass('sb_about_title').addClass('sb_about_title_active');$('#sb_about_content').slideDown('slow');i=1}else if(i==1){$(this).removeClass('sb_about_title_active').addClass('sb_about_title');$('#sb_about_content').slideUp('slow');i=0}});var a=$('code.block');a.length&&prettyPrint();$('#ek_img').hover(function(){$(this).stop().fadeTo('slow',0)},function(){$(this).stop().fadeTo('slow',1)});var b=$('li.flickr_thumb');b.append('<span></span>');b.find('span').css('opacity','0.3');b.each(function(){$(this).hover(function(){$('span',this).get(0).style.display='none';$(this).siblings().find('span').animate({opacity:'0.8'},{queue:false})},function(){$('span',this).get(0).style.display='block';$(this).siblings().find('span').animate({opacity:'0.3'},{queue:false})})});$('[rel=lightbox]').fancybox({'speedIn':600,'speedOut':200,'cyclic':true,'overlayOpacity':0.8,'overlayColor':'#000','titleShow':true});$('#s').bind({focus:function(){this.value=this.value===this.defaultValue?'':this.value},blur:function(){this.value=this.value===''?this.defaultValue:this.value}})});window['PR_SHOULD_USE_CONTINUATION']=true;window['PR_TAB_WIDTH']=8;window['PR_normalizedHtml']=window['PR']=window['prettyPrintOne']=window['prettyPrint']=void 0;window['_pr_isIE6']=function(){var a=navigator&&navigator.userAgent&&navigator.userAgent.match(/\bMSIE ([678])\./);a=a?+a[1]:false;window['_pr_isIE6']=function(){return a};return a};(function(){var B="break continue do else for if return while ";var C=B+"auto case char const default "+"double enum extern float goto int long register short signed sizeof "+"static struct switch typedef union unsigned void volatile ";var D=C+"catch class delete false import "+"new operator private protected public this throw true try typeof ";var E=D+"alignof align_union asm axiom bool "+"concept concept_map const_cast constexpr decltype "+"dynamic_cast explicit export friend inline late_check "+"mutable namespace nullptr reinterpret_cast static_assert static_cast "+"template typeid typename using virtual wchar_t where ";var F=D+"abstract boolean byte extends final finally implements import "+"instanceof null native package strictfp super synchronized throws "+"transient ";var G=F+"as base by checked decimal delegate descending dynamic event "+"fixed foreach from group implicit in interface internal into is lock "+"object out override orderby params partial readonly ref sbyte sealed "+"stackalloc string select uint ulong unchecked unsafe ushort var ";var H="all and by catch class else extends false finally "+"for if in is isnt loop new no not null of off on or return super then "+"true try unless until when while yes ";var I=D+"debugger eval export function get null set undefined var with "+"Infinity NaN ";var J="caller delete die do dump elsif eval exit foreach for "+"goto if import last local my next no our print package redo require "+"sub undef unless until use wantarray while BEGIN END ";var K=B+"and as assert class def del "+"elif except exec finally from global import in is lambda "+"nonlocal not or pass print raise try with yield "+"False True None ";var L=B+"alias and begin case class def"+" defined elsif end ensure false in module next nil not or redo rescue "+"retry self super then true undef unless until when yield BEGIN END ";var M=B+"case done elif esac eval fi "+"function in local set then until ";var N=(E+G+I+J+K+L+M);var O='str';var P='kwd';var Q='com';var R='typ';var S='lit';var T='pun';var U='pln';var V='tag';var W='dec';var X='src';var Y='atn';var Z='atv';var ba='nocode';var bb=function(){var a=["!","!=","!==","#","%","%=","&","&&","&&=","&=","(","*","*=","+=",",","-=","->","/","/=",":","::",";","<","<<","<<=","<=","=","==","===",">",">=",">>",">>=",">>>",">>>=","?","@","[","^","^=","^^","^^=","{","|","|=","||","||=","~","break","case","continue","delete","do","else","finally","instanceof","return","throw","try","typeof"];var b='(?:^^|[+-]';for(var i=0;i<a.length;++i){b+='|'+a[i].replace(/([^=<>:&a-z])/g,'\\$1')}b+=')\\s*';return b}();var bc=/&/g;var bd=/</g;var be=/>/g;var bf=/\"/g;function attribToHtml(a){return a.replace(bc,'&amp;').replace(bd,'&lt;').replace(be,'&gt;').replace(bf,'&quot;')}function textToHtml(a){return a.replace(bc,'&amp;').replace(bd,'&lt;').replace(be,'&gt;')}var bg=/&lt;/g;var bh=/&gt;/g;var bi=/&apos;/g;var bj=/&quot;/g;var bk=/&amp;/g;var bl=/&nbsp;/g;function htmlToText(a){var b=a.indexOf('&');if(b<0){return a}for(--b;(b=a.indexOf('&#',b+1))>=0;){var c=a.indexOf(';',b);if(c>=0){var d=a.substring(b+3,c);var e=10;if(d&&d.charAt(0)==='x'){d=d.substring(1);e=16}var f=parseInt(d,e);if(!isNaN(f)){a=(a.substring(0,b)+String.fromCharCode(f)+a.substring(c+1))}}}return a.replace(bg,'<').replace(bh,'>').replace(bi,"'").replace(bj,'"').replace(bl,' ').replace(bk,'&')}function isRawContent(a){return'XMP'===a.tagName}var bm=/[\r\n]/g;function isPreformatted(a,b){if('PRE'===a.tagName){return true}if(!bm.test(b)){return true}var c='';if(a.currentStyle){c=a.currentStyle.whiteSpace}else if(window.getComputedStyle){c=window.getComputedStyle(a,null).whiteSpace}return!c||c==='pre'}function normalizedHtml(c,d,e){switch(c.nodeType){case 1:var f=c.tagName.toLowerCase();d.push('<',f);var g=c.attributes;var n=g.length;if(n){if(e){var h=[];for(var i=n;--i>=0;){h[i]=g[i]}h.sort(function(a,b){return(a.name<b.name)?-1:a.name===b.name?0:1});g=h}for(var i=0;i<n;++i){var j=g[i];if(!j.specified){continue}d.push(' ',j.name.toLowerCase(),'="',attribToHtml(j.value),'"')}}d.push('>');for(var k=c.firstChild;k;k=k.nextSibling){normalizedHtml(k,d,e)}if(c.firstChild||!/^(?:br|link|img)$/.test(f)){d.push('<\/',f,'>')}break;case 3:case 4:d.push(textToHtml(c.nodeValue));break}}function combinePrefixPatterns(q){var r=0;var s=false;var t=false;for(var i=0,n=q.length;i<n;++i){var u=q[i];if(u.ignoreCase){t=true}else if(/[a-z]/i.test(u.source.replace(/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi,''))){s=true;t=false;break}}function decodeEscape(a){if(a.charAt(0)!=='\\'){return a.charCodeAt(0)}switch(a.charAt(1)){case'b':return 8;case't':return 9;case'n':return 0xa;case'v':return 0xb;case'f':return 0xc;case'r':return 0xd;case'u':case'x':return parseInt(a.substring(2),16)||a.charCodeAt(1);case'0':case'1':case'2':case'3':case'4':case'5':case'6':case'7':return parseInt(a.substring(1),8);default:return a.charCodeAt(1)}}function encodeEscape(a){if(a<0x20){return(a<0x10?'\\x0':'\\x')+a.toString(16)}var b=String.fromCharCode(a);if(b==='\\'||b==='-'||b==='['||b===']'){b='\\'+b}return b}function caseFoldCharset(c){var d=c.substring(1,c.length-1).match(new RegExp('\\\\u[0-9A-Fa-f]{4}'+'|\\\\x[0-9A-Fa-f]{2}'+'|\\\\[0-3][0-7]{0,2}'+'|\\\\[0-7]{1,2}'+'|\\\\[\\s\\S]'+'|-'+'|[^-\\\\]','g'));var e=[];var f=[];var g=d[0]==='^';for(var i=g?1:0,n=d.length;i<n;++i){var p=d[i];switch(p){case'\\B':case'\\b':case'\\D':case'\\d':case'\\S':case'\\s':case'\\W':case'\\w':e.push(p);continue}var h=decodeEscape(p);var j;if(i+2<n&&'-'===d[i+1]){j=decodeEscape(d[i+2]);i+=2}else{j=h}f.push([h,j]);if(!(j<65||h>122)){if(!(j<65||h>90)){f.push([Math.max(65,h)|32,Math.min(j,90)|32])}if(!(j<97||h>122)){f.push([Math.max(97,h)&~32,Math.min(j,122)&~32])}}}f.sort(function(a,b){return(a[0]-b[0])||(b[1]-a[1])});var k=[];var l=[NaN,NaN];for(var i=0;i<f.length;++i){var m=f[i];if(m[0]<=l[1]+1){l[1]=Math.max(l[1],m[1])}else{k.push(l=m)}}var o=['['];if(g){o.push('^')}o.push.apply(o,e);for(var i=0;i<k.length;++i){var m=k[i];o.push(encodeEscape(m[0]));if(m[1]>m[0]){if(m[1]+1>m[0]){o.push('-')}o.push(encodeEscape(m[1]))}}o.push(']');return o.join('')}function allowAnywhereFoldCaseAndRenumberGroups(c){var d=c.source.match(new RegExp('(?:'+'\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]'+'|\\\\u[A-Fa-f0-9]{4}'+'|\\\\x[A-Fa-f0-9]{2}'+'|\\\\[0-9]+'+'|\\\\[^ux0-9]'+'|\\(\\?[:!=]'+'|[\\(\\)\\^]'+'|[^\\x5B\\x5C\\(\\)\\^]+'+')','g'));var n=d.length;var e=[];for(var i=0,groupIndex=0;i<n;++i){var p=d[i];if(p==='('){++groupIndex}else if('\\'===p.charAt(0)){var f=+p.substring(1);if(f&&f<=groupIndex){e[f]=-1}}}for(var i=1;i<e.length;++i){if(-1===e[i]){e[i]=++r}}for(var i=0,groupIndex=0;i<n;++i){var p=d[i];if(p==='('){++groupIndex;if(e[groupIndex]===undefined){d[i]='(?:'}}else if('\\'===p.charAt(0)){var f=+p.substring(1);if(f&&f<=groupIndex){d[i]='\\'+e[groupIndex]}}}for(var i=0,groupIndex=0;i<n;++i){if('^'===d[i]&&'^'!==d[i+1]){d[i]=''}}if(c.ignoreCase&&s){for(var i=0;i<n;++i){var p=d[i];var g=p.charAt(0);if(p.length>=2&&g==='['){d[i]=caseFoldCharset(p)}else if(g!=='\\'){d[i]=p.replace(/[a-zA-Z]/g,function(a){var b=a.charCodeAt(0);return'['+String.fromCharCode(b&~32,b|32)+']'})}}}return d.join('')}var v=[];for(var i=0,n=q.length;i<n;++i){var u=q[i];if(u.global||u.multiline){throw new Error(''+u);}v.push('(?:'+allowAnywhereFoldCaseAndRenumberGroups(u)+')')}return new RegExp(v.join('|'),t?'gi':'g')}var bn=null;function getInnerHtml(a){if(null===bn){var b=document.createElement('PRE');b.appendChild(document.createTextNode('<!DOCTYPE foo PUBLIC "foo bar">\n<foo />'));bn=!/</.test(b.innerHTML)}if(bn){var c=a.innerHTML;if(isRawContent(a)){c=textToHtml(c)}else if(!isPreformatted(a,c)){c=c.replace(/(<br\s*\/?>)[\r\n]+/g,'$1').replace(/(?:[\r\n]+[ \t]*)+/g,' ')}return c}var d=[];for(var e=a.firstChild;e;e=e.nextSibling){normalizedHtml(e,d)}return d.join('')}function makeTabExpander(f){var g='                ';var h=0;return function(a){var b=null;var c=0;for(var i=0,n=a.length;i<n;++i){var d=a.charAt(i);switch(d){case'\t':if(!b){b=[]}b.push(a.substring(c,i));var e=f-(h%f);h+=e;for(;e>=0;e-=g.length){b.push(g.substring(0,e))}c=i+1;break;case'\n':h=0;break;default:++h}}if(!b){return a}b.push(a.substring(c));return b.join('')}}var bo=new RegExp('[^<]+'+'|<\!--[\\s\\S]*?--\>'+'|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>'+'|<\/?[a-zA-Z](?:[^>\"\']|\'[^\']*\'|\"[^\"]*\")*>'+'|<','g');var bp=/^<\!--/;var bq=/^<!\[CDATA\[/;var br=/^<br\b/i;var bs=/^<(\/?)([a-zA-Z][a-zA-Z0-9]*)/;function extractTags(s){var a=s.match(bo);var b=[];var c=0;var d=[];if(a){for(var i=0,n=a.length;i<n;++i){var e=a[i];if(e.length>1&&e.charAt(0)==='<'){if(bp.test(e)){continue}if(bq.test(e)){b.push(e.substring(9,e.length-3));c+=e.length-12}else if(br.test(e)){b.push('\n');++c}else{if(e.indexOf(ba)>=0&&isNoCodeTag(e)){var f=e.match(bs)[2];var g=1;var j;end_tag_loop:for(j=i+1;j<n;++j){var h=a[j].match(bs);if(h&&h[2]===f){if(h[1]==='/'){if(--g===0){break end_tag_loop}}else{++g}}}if(j<n){d.push(c,a.slice(i,j+1).join(''));i=j}else{d.push(c,e)}}else{d.push(c,e)}}}else{var k=htmlToText(e);b.push(k);c+=k.length}}}return{source:b.join(''),tags:d}}function isNoCodeTag(a){return!!a.replace(/\s(\w+)\s*=\s*(?:\"([^\"]*)\"|'([^\']*)'|(\S+))/g,' $1="$2$3$4"').match(/[cC][lL][aA][sS][sS]=\"[^\"]*\bnocode\b/)}function appendDecorations(a,b,c,d){if(!b){return}var e={source:b,basePos:a};c(e);d.push.apply(d,e.decorations)}function createSimpleLexer(s,t){var u={};var v;(function(){var a=s.concat(t);var b=[];var d={};for(var i=0,n=a.length;i<n;++i){var e=a[i];var f=e[3];if(f){for(var c=f.length;--c>=0;){u[f.charAt(c)]=e}}var g=e[1];var k=''+g;if(!d.hasOwnProperty(k)){b.push(g);d[k]=null}}b.push(/[\0-\uffff]/);v=combinePrefixPatterns(b)})();var w=t.length;var x=/\S/;var y=function(a){var b=a.source,basePos=a.basePos;var c=[basePos,U];var d=0;var e=b.match(v)||[];var f={};for(var g=0,nTokens=e.length;g<nTokens;++g){var h=e[g];var j=f[h];var k=void 0;var l;if(typeof j==='string'){l=false}else{var m=u[h.charAt(0)];if(m){k=h.match(m[1]);j=m[0]}else{for(var i=0;i<w;++i){m=t[i];k=h.match(m[1]);if(k){j=m[0];break}}if(!k){j=U}}l=j.length>=5&&'lang-'===j.substring(0,5);if(l&&!(k&&typeof k[1]==='string')){l=false;j=X}if(!l){f[h]=j}}var n=d;d+=h.length;if(!l){c.push(basePos+n,j)}else{var o=k[1];var p=h.indexOf(o);var q=p+o.length;if(k[2]){q=h.length-k[2].length;p=q-o.length}var r=j.substring(5);appendDecorations(basePos+n,h.substring(0,p),y,c);appendDecorations(basePos+n+p,o,langHandlerForExtension(r,o),c);appendDecorations(basePos+n+q,h.substring(q),y,c)}}a.decorations=c};return y}function sourceDecorator(a){var b=[],fallthroughStylePatterns=[];if(a['tripleQuotedStrings']){b.push([O,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,'\'"'])}else if(a['multiLineStrings']){b.push([O,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,'\'"`'])}else{b.push([O,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,'"\''])}if(a['verbatimStrings']){fallthroughStylePatterns.push([O,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null])}var c=a['hashComments'];if(c){if(a['cStyleComments']){if(c>1){b.push([Q,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,'#'])}else{b.push([Q,/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,'#'])}fallthroughStylePatterns.push([O,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null])}else{b.push([Q,/^#[^\r\n]*/,null,'#'])}}if(a['cStyleComments']){fallthroughStylePatterns.push([Q,/^\/\/[^\r\n]*/,null]);fallthroughStylePatterns.push([Q,/^\/\*[\s\S]*?(?:\*\/|$)/,null])}if(a['regexLiterals']){var d=('/(?=[^/*])'+'(?:[^/\\x5B\\x5C]'+'|\\x5C[\\s\\S]'+'|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+'+'/');fallthroughStylePatterns.push(['lang-regex',new RegExp('^'+bb+'('+d+')')])}var e=a['keywords'].replace(/^\s+|\s+$/g,'');if(e.length){fallthroughStylePatterns.push([P,new RegExp('^(?:'+e.replace(/\s+/g,'|')+')\\b'),null])}b.push([U,/^\s+/,null,' \r\n\t\xA0']);fallthroughStylePatterns.push([S,/^@[a-z_$][a-z_$@0-9]*/i,null],[R,/^@?[A-Z]+[a-z][A-Za-z_$@0-9]*/,null],[U,/^[a-z_$][a-z_$@0-9]*/i,null],[S,new RegExp('^(?:'+'0x[a-f0-9]+'+'|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)'+'(?:e[+\\-]?\\d+)?'+')'+'[a-z]*','i'),null,'0123456789'],[T,/^.[^\s\w\.$@\'\"\`\/\#]*/,null]);return createSimpleLexer(b,fallthroughStylePatterns)}var bt=sourceDecorator({'keywords':N,'hashComments':true,'cStyleComments':true,'multiLineStrings':true,'regexLiterals':true});function recombineTagsAndDecorations(c){var d=c.source;var e=c.extractedTags;var f=c.decorations;var g=c.numberLines;var h=c.sourceNode;var j=[];var k=0;var l=null;var m=null;var n=0;var o=0;var p=makeTabExpander(window['PR_TAB_WIDTH']);var q=/([\r\n ]) /g;var r=/(^| ) /gm;var s=/\r\n?|\n/g;var t=/[ \r\n]$/;var u=true;var v=window['_pr_isIE6']();var w=(v?(h&&h.tagName==='PRE'?(v===6?'&#160;\r\n':v===7?'&#160;<br />\r':v===8?'&#160;<br />':'&#160;\r'):'&#160;<br />'):'<br />');var x;if(g){var y=[];for(var i=0;i<10;++i){y[i]=w+'</li><li class="L'+i+'">'}var z=typeof g==='number'?g-1:0;j.push('<ol class="linenums"><li class="L',(z)%10,'"');if(z){j.push(' value="',z+1,'"')}j.push('>');x=function(){var a=y[++z%10];return l?('</span>'+a+'<span class="'+l+'">'):a}}else{x=w}function emitTextUpTo(a){if(a>k){if(l&&l!==m){j.push('</span>');l=null}if(!l&&m){l=m;j.push('<span class="',l,'">')}var b=textToHtml(p(d.substring(k,a))).replace(u?r:q,'$1&#160;');u=t.test(b);j.push(b.replace(s,x));k=a}}while(true){var A;if(n<e.length){if(o<f.length){A=e[n]<=f[o]}else{A=true}}else{A=false}if(A){emitTextUpTo(e[n]);if(l){j.push('</span>');l=null}j.push(e[n+1]);n+=2}else if(o<f.length){emitTextUpTo(f[o]);m=f[o+1];o+=2}else{break}}emitTextUpTo(d.length);if(l){j.push('</span>')}if(g){j.push('</li></ol>')}c.prettyPrintedHtml=j.join('')}var bu={};function registerLangHandler(a,b){for(var i=b.length;--i>=0;){var c=b[i];if(!bu.hasOwnProperty(c)){bu[c]=a}else if('console'in window){console['warn']('cannot override language handler %s',c)}}}function langHandlerForExtension(a,b){if(!(a&&bu.hasOwnProperty(a))){a=/^\s*</.test(b)?'default-markup':'default-code'}return bu[a]}registerLangHandler(bt,['default-code']);registerLangHandler(createSimpleLexer([],[[U,/^[^<?]+/],[W,/^<!\w[^>]*(?:>|$)/],[Q,/^<\!--[\s\S]*?(?:-\->|$)/],['lang-',/^<\?([\s\S]+?)(?:\?>|$)/],['lang-',/^<%([\s\S]+?)(?:%>|$)/],[T,/^(?:<[%?]|[%?]>)/],['lang-',/^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],['lang-js',/^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],['lang-css',/^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],['lang-in.tag',/^(<\/?[a-z][^<>]*>)/i]]),['default-markup','htm','html','mxml','xhtml','xml','xsl']);registerLangHandler(createSimpleLexer([[U,/^[\s]+/,null,' \t\r\n'],[Z,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,'\"\'']],[[V,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[Y,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],['lang-uq.val',/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[T,/^[=<>\/]+/],['lang-js',/^on\w+\s*=\s*\"([^\"]+)\"/i],['lang-js',/^on\w+\s*=\s*\'([^\']+)\'/i],['lang-js',/^on\w+\s*=\s*([^\"\'>\s]+)/i],['lang-css',/^style\s*=\s*\"([^\"]+)\"/i],['lang-css',/^style\s*=\s*\'([^\']+)\'/i],['lang-css',/^style\s*=\s*([^\"\'>\s]+)/i]]),['in.tag']);registerLangHandler(createSimpleLexer([],[[Z,/^[\s\S]+/]]),['uq.val']);registerLangHandler(sourceDecorator({'keywords':E,'hashComments':true,'cStyleComments':true}),['c','cc','cpp','cxx','cyc','m']);registerLangHandler(sourceDecorator({'keywords':'null true false'}),['json']);registerLangHandler(sourceDecorator({'keywords':G,'hashComments':true,'cStyleComments':true,'verbatimStrings':true}),['cs']);registerLangHandler(sourceDecorator({'keywords':F,'cStyleComments':true}),['java']);registerLangHandler(sourceDecorator({'keywords':M,'hashComments':true,'multiLineStrings':true}),['bsh','csh','sh']);registerLangHandler(sourceDecorator({'keywords':K,'hashComments':true,'multiLineStrings':true,'tripleQuotedStrings':true}),['cv','py']);registerLangHandler(sourceDecorator({'keywords':J,'hashComments':true,'multiLineStrings':true,'regexLiterals':true}),['perl','pl','pm']);registerLangHandler(sourceDecorator({'keywords':L,'hashComments':true,'multiLineStrings':true,'regexLiterals':true}),['rb']);registerLangHandler(sourceDecorator({'keywords':I,'cStyleComments':true,'regexLiterals':true}),['js']);registerLangHandler(sourceDecorator({'keywords':H,'hashComments':3,'cStyleComments':true,'multilineStrings':true,'tripleQuotedStrings':true,'regexLiterals':true}),['coffee']);registerLangHandler(createSimpleLexer([],[[O,/^[\s\S]+/]]),['regex']);function applyDecorator(a){var b=a.sourceCodeHtml;var c=a.langExtension;a.prettyPrintedHtml=b;try{var d=extractTags(b);var f=d.source;a.source=f;a.basePos=0;a.extractedTags=d.tags;langHandlerForExtension(c,f)(a);recombineTagsAndDecorations(a)}catch(e){if('console'in window){console['log'](e&&e['stack']?e['stack']:e)}}}function prettyPrintOne(a,b,c){var d={sourceCodeHtml:a,langExtension:b,numberLines:c};applyDecorator(d);return d.prettyPrintedHtml}function prettyPrint(g){function byTagName(a){return document.getElementsByTagName(a)}var h=[byTagName('pre'),byTagName('code'),byTagName('xmp')];var l=[];for(var i=0;i<h.length;++i){for(var j=0,n=h[i].length;j<n;++j){l.push(h[i][j])}}h=null;var m=Date;if(!m['now']){m={'now':function(){return(new Date).getTime()}}}var k=0;var o;function doWork(){var a=(window['PR_SHOULD_USE_CONTINUATION']?m.now()+250:Infinity);for(;k<l.length&&m.now()<a;k++){var b=l[k];if(b.className&&b.className.indexOf('prettyprint')>=0){var c=b.className.match(/\blang-(\w+)\b/);if(c){c=c[1]}var d=false;for(var p=b.parentNode;p;p=p.parentNode){if((p.tagName==='pre'||p.tagName==='code'||p.tagName==='xmp')&&p.className&&p.className.indexOf('prettyprint')>=0){d=true;break}}if(!d){var e=getInnerHtml(b);e=e.replace(/(?:\r\n?|\n)$/,'');var f=b.className.match(/\blinenums\b(?::(\d+))?/);o={sourceCodeHtml:e,langExtension:c,sourceNode:b,numberLines:f?f[1]&&f[1].length?+f[1]:true:false};applyDecorator(o);replaceWithPrettyPrintedHtml()}}}if(k<l.length){setTimeout(doWork,250)}else if(g){g()}}function replaceWithPrettyPrintedHtml(){var b=o.prettyPrintedHtml;if(!b){return}var c=o.sourceNode;if(!isRawContent(c)){c.innerHTML=b}else{var d=document.createElement('PRE');for(var i=0;i<c.attributes.length;++i){var a=c.attributes[i];if(a.specified){var e=a.name.toLowerCase();if(e==='class'){d.className=a.value}else{d.setAttribute(a.name,a.value)}}}d.innerHTML=b;c.parentNode.replaceChild(d,c);c=d}}doWork()}window['PR_normalizedHtml']=normalizedHtml;window['prettyPrintOne']=prettyPrintOne;window['prettyPrint']=prettyPrint;window['PR']={'combinePrefixPatterns':combinePrefixPatterns,'createSimpleLexer':createSimpleLexer,'registerLangHandler':registerLangHandler,'sourceDecorator':sourceDecorator,'PR_ATTRIB_NAME':Y,'PR_ATTRIB_VALUE':Z,'PR_COMMENT':Q,'PR_DECLARATION':W,'PR_KEYWORD':P,'PR_LITERAL':S,'PR_NOCODE':ba,'PR_PLAIN':U,'PR_PUNCTUATION':T,'PR_SOURCE':X,'PR_STRING':O,'PR_TAG':V,'PR_TYPE':R}})();
