var zen_textarea=function(){function U(b,c,a){var c=String(c||b.getSyntax()),a=String(a||b.getProfileName()),d=b.getSelectionRange().end,e,f="";e=b.getSelectionRange();f=String(b.getContent());if(e.start!=e.end)e=f.substring(e.start,e.end);else{var g=b.getCurrentLineRange();e=i.extractAbbreviation(f.substring(g.start,e.start))}return e&&(f=i.expandAbbreviation(e,c,a,ca(b)))?(b.replaceContent(f,d-e.length,d),!0):!1}function N(b,c,a){var c=String((c||"out").toLowerCase()),a=String(a||b.getProfileName()),
d=b.getSelectionRange(),e=d.end,f=d.start,g=d.end,d=String(b.getContent()),h=i.html_matcher.last_match.opening_tag,j=i.html_matcher.last_match.closing_tag;if(c=="in"&&h&&f!=g)if(j)h.start==f?d.charAt(h.end)=="<"?(c=i.html_matcher.find(d,h.end+1,a),d=c[0]==h.end&&c[1]==j.start?i.html_matcher(d,h.end+1,a):[h.end,j.start]):d=[h.end,j.start]:(c=d.substring(0,j.start).indexOf("<",h.end),d=i.html_matcher(d,c!=-1?c+1:h.end,a));else return!1;else d=i.html_matcher(d,e,a);return d!==null&&d[0]!=-1?(b.createSelection(d[0],
d[1]),!0):!1}function O(b,c,a){function d(a){return e.test(a)}for(var e=/\s|\n|\r/;c<a;){if(!d(b.charAt(c)))break;c++}for(;a>c;)if(a--,!d(b.charAt(a))){a++;break}return[c,a]}function P(b,c){for(var a=i.splitByLines(b),d=0;d<a.length;d++)a[d].search(c)==0&&(a[d]=a[d].substr(c.length));return a.join(i.getNewline())}function F(b){return(b.match(/^(\s+)/)||[""])[0]}function Q(b,c,a){function d(a){for(var b=a;b>=0;){var h=e.charAt(b);if(h=="\n"||h=="\r")break;b--}return e.substring(b,a)}for(var c=c||1,
a=b.getCaretPos()+(a||0),e=String(b.getContent()),b=e.length,f=-1,g=/^\s+$/;a<b&&a>0;){a+=c;var h=e.charAt(a),j=e.charAt(a+1),n=e.charAt(a-1);switch(h){case '"':case "'":j==h&&n=="="&&(f=a+1);break;case ">":j=="<"&&(f=a+1);break;case "\n":case "\r":g.test(d(a-1))&&(f=a)}if(f!=-1)break}return f}function V(b){var c=b.getCaretPos(),a=String(b.getContent()),d=i.getNewline(),e=i.getVariable("indentation"),f=String(b.getSyntax());if(f=="html"){if(a=i.html_matcher.getTags(a,c,String(b.getProfileName())),
a[0]&&a[1]&&a[0].type=="tag"&&a[0].end==c&&a[1].start==c)return b.replaceContent(d+e+i.getCaretPlaceholder()+d,c),!0}else if(f=="css"&&c&&a.charAt(c-1)=="{"){for(var f=c,g=a.length,h;f<g;f++){h=a.charAt(f);if(h=="}")return!1;if(h=="{")break}d=d+e+i.getCaretPlaceholder()+d;a=c<a.length&&a.charAt(c)=="}";(e=i.getVariable("close_css_brace"))?d+=i.replaceVariables(e):a||(d+="}");b.replaceContent(d,c,c+(a?1:0));return!0}return!1}function da(b,c,a,d){for(var e=a.charAt(0),f=d.charAt(0),g=-1,h=-1;c--;)if(b.charAt(c)==
e&&b.substr(c,a.length)==a){g=c;break}if(g!=-1){c=g;for(a=b.length;a>=c++;)if(b.charAt(c)==f&&b.substr(c,d.length)==d){h=c+d.length;break}}return g!=-1&&h!=-1?[g,h]:null}function H(b){return b.replace(RegExp("[.*+?|()\\[\\]{}\\\\]","g"),"\\$&")}function W(b,c,a,d,e){function f(b){return b.replace(RegExp("^"+H(c)+"\\s*"),function(a){h-=a.length;return""}).replace(RegExp("\\s*"+H(a)+"$"),"")}var g=String(b.getContent()),h=b.getCaretPos(),j=null;(j=da(g,h,c,a))&&j[0]<=d&&j[1]>=e?(d=j[0],e=j[1],j=f(g.substring(d,
e))):(j=c+" "+g.substring(d,e).replace(RegExp(H(c)+"\\s*|\\s*"+H(a),"g"),"")+" "+a,h+=c.length+1);return j!==null?(b.setCaretPos(d),b.replaceContent(P(j,F(b.getCurrentLine())),d,e),b.setCaretPos(h),!0):!1}function I(b,c,a){a=a||0;return c.charAt(a)==b.charAt(0)&&c.substr(a,b.length)==b}function R(b,c){return b.toFixed(typeof c=="undefined"?2:c).replace(/\.?0+$/,"")}function X(b,c){for(var a=String(b.getContent()),d=a.length,e=b.getCaretPos()-1,f=e+1;e>=0&&c(a.charAt(e),e,a);)e--;for(;f<d&&c(a.charAt(f),
f,a);)f++;return f>e?[++e,f]:null}function B(b,c){var a=String(b.getContent()),d=!1,e=!1,f=X(b,function(a){return i.isNumeric(a)?!0:a=="."?e?!1:e=!0:a=="-"?d?!1:d=!0:!1});return f&&(a=parseFloat(a.substring(f[0],f[1])),!isNaN(a))?(a=R(a+c),b.replaceContent(a,f[0],f[1]),b.createSelection(f[0],f[0]+a.length),!0):!1}function ca(b){if(String(b.getSyntax())in{html:1,xml:1,xsl:1}){var c=i.html_matcher.getTags(String(b.getContent()),b.getCaretPos(),String(b.getProfileName()));if(c&&c[0]){var b=/([\w\-:]+)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|([^>\s]+)))?/g,
a=c[0],c=a.full_tag.replace(/^<[\w\-\:]+/,""),d=new J.TreeNode;for(d.name=a.name;a=b.exec(c);)d.attributes.push({name:a[1],value:a[2]});return d}}return null}function Y(b,c){if(c){var a=b.getSelectionRange();b.replaceContent(c.data,c.start,c.end,!0);b.createSelection(c.caret,c.caret+a.end-a.start);return!0}return!1}function ea(b,c){for(var a,d=-1,e=!1,f=c,g=b.length;f<g;f++){var h=b[f];if(h.type=="value"){a=h;d=f;b[f+1]&&b[f+1].type==";"?(a=b[f+1],d+=1):e=!0;break}}return{token:a,ix:d,need_col:e}}
function fa(b){var c=b.getCaretPos(),a=String(b.getContent()),d=z.extractCSSRule(a,c,!0);if(d){var e=z.parseCSS(a.substring(d[0],d[1]),d[0]),d=Z(e,c,"identifier"),f=K(e,d+1);if(!f)return!1;var g=ea(e,d);if(f=/url\((["']?)(.+?)\1\)/i.exec(f.content))if(f=$(b,f[2])){for(var h={width:null,height:null},j=[],n=ga(e,d),b=0,d=e.length;b<d;b++)e[b].type=="identifier"&&e[b].content in h&&(h[e[b].content]=b);b=function(a,b){var c;h[a]!==null&&(c=K(e,h[a]+1))?j.push([c.start,c.end,b+"px"]):j.push([g.token.end,
g.token.end,n(a,b+"px")])};b("width",f.width);b("height",f.height);if(j.length){j.sort(function(a,b){return a[0]-b[0]});a=a.substring(j[0][0],j[j.length-1][1]);d=j[0][0];for(b=j.length-1;b>=0;b--)f=j[b],a=a.substring(0,f[0]-d)+f[2]+a.substring(f[1]-d),f[0]<c&&(c+=f[2].length-f[1]+f[0]);g.need_col&&(a=a.substring(0,g.token.end-d)+";"+a.substring(g.token.end-d));return{data:a,start:d,end:j[j.length-1][1],caret:c}}}}return!1}function ga(b,c){var a="",d="",e,f,c=b[c].ref_start_ix,b=b.__original;for(e=
c-1;e>=0;e--)if(b[e].type=="white")a=b[e].content+a;else{b[e].type=="line"&&(a=b[e].content+a);break}e=c+1;for(f=b.length;e<f;e++)if(b[e].type=="white"||b[e].type==":")d+=b[e].content;else break;d.indexOf(":")==-1&&(d=":");return function(b,h){return a+b+d+h+";"}}function $(b,c){var a;if(c){if(I("data:",c))a=L.decode(c.replace(/^data\:.+?;.+?,/,""));else{a=zen_file.locateFile(b.getFilePath(),c);if(a===null)throw"Can't find "+c+" file";a=String(zen_file.read(a))}return i.getImageSize(a)}}function aa(b,
c,a){return b.toLowerCase().indexOf(c)!=-1?b.replace(RegExp(c+"=(['\"])(.*?)(['\"])","i"),function(b,e){return c+"="+e+a+e}):b.replace(/\s*(\/?>)$/," "+c+'="'+a+'" $1')}function ba(b){var c=String(b.getContent()),b=b.getCaretPos(),a=z.extractCSSRule(c,b),d;if(!a||b<a[0]||b>a[1])return!1;var e=z.parseCSS(c.substring(a[0],a[1]),a[0]);d=Z(e,b,"identifier");if(d!=-1){var a=e[d].content,f=K(e,d+1);d=M(a);var g=RegExp("^(?:\\-\\w+\\-)?"+d+"$"),g=ha(d),h=[];if(!f)return!1;for(var j=0,n,m=e.length;j<m;j++)n=
e[j],n.type=="identifier"&&g.test(n.content)&&n.content!=a&&(d=K(e,j+1))&&h.push({name:n,value:d});if(h.length){c=c.substring(h[0].value.start,h[h.length-1].value.end);e=h[0].value.start;f=f.content;for(j=h.length-1;j>=0;j--){d=h[j].value;n=a;var m=f,k=h[j].name.content,g=d.content;n=M(n);k=M(k);g=n=="opacity"&&k=="filter"?g.replace(/opacity=[^)]*/i,"opacity="+Math.floor(parseFloat(m)*100)):n=="filter"&&k=="opacity"?(n=m.match(/opacity=([^)]*)/i))?R(parseInt(n[1])/100):g:m;c=c.substring(0,d.start-
e)+g+c.substring(d.end-e);d.start<b&&(b+=g.length-d.content.length)}return{data:c,start:e,end:h[h.length-1].value.end,caret:b}}}}function M(b){return b.replace(/^\s*\-\w+\-/,"")}function ha(b){var b=M(b),c;if(b=="opacity"||b=="filter")return/^(?:\-\w+\-)?(?:opacity|filter)$/;else if(c=b.match(/^border-radius-(top|bottom)(left|right)/))return RegExp("^(?:\\-\\w+\\-)?(?:"+b+"|border-"+c[1]+"-"+c[2]+"-radius)$");else if(c=b.match(/^border-(top|bottom)-(left|right)-radius/))return RegExp("^(?:\\-\\w+\\-)?(?:"+
b+"|border-radius-"+c[1]+c[2]+")$");return RegExp("^(?:\\-\\w+\\-)?"+b+"$")}function K(b,c){for(var a=c,d=b.length;a<d;a++){var e=b[a];if(e.type=="value")return e;else if(e.type=="identifier"||e.type==";")break}return null}function Z(b,c,a){for(var d=-1,e=0,f=b.length;e<f;e++){var g=b[e];if(g.start<=c&&g.end>=c){d=e;break}}if(d!=-1)for(;d>=0;){if(b[d].type==a)return d;d--}return-1}var ia={variables:{lang:"en",locale:"en-US",charset:"UTF-8",indentation:"\t",newline:"\n",nl:"\n"},css:{filters:"html,css",
snippets:{"@i":"@import url(|);","@m":"@media print {\n\t|\n}","@f":"@font-face {\n\tfont-family:|;\n\tsrc:url(|);\n}","!":"!important",pos:"position:|;","pos:s":"position:static;","pos:a":"position:absolute;","pos:r":"position:relative;","pos:f":"position:fixed;",t:"top:|;","t:a":"top:auto;",r:"right:|;","r:a":"right:auto;",b:"bottom:|;","b:a":"bottom:auto;",brad:"-webkit-border-radius: ${1:radius};\n-moz-border-radius: $1;\n-ms-border-radius: $1;\nborder-radius: $1;",bsha:"-webkit-box-shadow: ${1:hoff} ${2:voff} ${3:blur} ${4:rgba(0,0,0,0.5)};\n-moz-box-shadow: $1 $2 $3 $4;\n-ms-box-shadow: $1 $2 $3 $4;\nbox-shadow: $1 $2 $3 $4;",
l:"left:|;","l:a":"left:auto;",z:"z-index:|;","z:a":"z-index:auto;",fl:"float:|;","fl:n":"float:none;","fl:l":"float:left;","fl:r":"float:right;",cl:"clear:|;","cl:n":"clear:none;","cl:l":"clear:left;","cl:r":"clear:right;","cl:b":"clear:both;",d:"display:|;","d:n":"display:none;","d:b":"display:block;","d:i":"display:inline;","d:ib":"display:inline-block;","d:li":"display:list-item;","d:ri":"display:run-in;","d:cp":"display:compact;","d:tb":"display:table;","d:itb":"display:inline-table;","d:tbcp":"display:table-caption;",
"d:tbcl":"display:table-column;","d:tbclg":"display:table-column-group;","d:tbhg":"display:table-header-group;","d:tbfg":"display:table-footer-group;","d:tbr":"display:table-row;","d:tbrg":"display:table-row-group;","d:tbc":"display:table-cell;","d:rb":"display:ruby;","d:rbb":"display:ruby-base;","d:rbbg":"display:ruby-base-group;","d:rbt":"display:ruby-text;","d:rbtg":"display:ruby-text-group;",v:"visibility:|;","v:v":"visibility:visible;","v:h":"visibility:hidden;","v:c":"visibility:collapse;",
ov:"overflow:|;","ov:v":"overflow:visible;","ov:h":"overflow:hidden;","ov:s":"overflow:scroll;","ov:a":"overflow:auto;",ovx:"overflow-x:|;","ovx:v":"overflow-x:visible;","ovx:h":"overflow-x:hidden;","ovx:s":"overflow-x:scroll;","ovx:a":"overflow-x:auto;",ovy:"overflow-y:|;","ovy:v":"overflow-y:visible;","ovy:h":"overflow-y:hidden;","ovy:s":"overflow-y:scroll;","ovy:a":"overflow-y:auto;",ovs:"overflow-style:|;","ovs:a":"overflow-style:auto;","ovs:s":"overflow-style:scrollbar;","ovs:p":"overflow-style:panner;",
"ovs:m":"overflow-style:move;","ovs:mq":"overflow-style:marquee;",zoo:"zoom:1;",cp:"clip:|;","cp:a":"clip:auto;","cp:r":"clip:rect(|);",bxz:"box-sizing:|;","bxz:cb":"box-sizing:content-box;","bxz:bb":"box-sizing:border-box;",bxsh:"box-shadow:|;","bxsh:n":"box-shadow:none;","bxsh:w":"-webkit-box-shadow:0 0 0 #000;","bxsh:m":"-moz-box-shadow:0 0 0 0 #000;",m:"margin:|;","m:a":"margin:auto;","m:0":"margin:0;","m:2":"margin:0 0;","m:3":"margin:0 0 0;","m:4":"margin:0 0 0 0;",mt:"margin-top:|;","mt:a":"margin-top:auto;",
mr:"margin-right:|;","mr:a":"margin-right:auto;",mb:"margin-bottom:|;","mb:a":"margin-bottom:auto;",ml:"margin-left:|;","ml:a":"margin-left:auto;",p:"padding:|;","p:0":"padding:0;","p:2":"padding:0 0;","p:3":"padding:0 0 0;","p:4":"padding:0 0 0 0;",pt:"padding-top:|;",pr:"padding-right:|;",pb:"padding-bottom:|;",pl:"padding-left:|;",w:"width:|;","w:a":"width:auto;",h:"height:|;","h:a":"height:auto;",maw:"max-width:|;","maw:n":"max-width:none;",mah:"max-height:|;","mah:n":"max-height:none;",miw:"min-width:|;",
mih:"min-height:|;",o:"outline:|;","o:n":"outline:none;",oo:"outline-offset:|;",ow:"outline-width:|;",os:"outline-style:|;",oc:"outline-color:#000;","oc:i":"outline-color:invert;",bd:"border:|;","bd+":"border:1px solid #000;","bd:n":"border:none;",bdbk:"border-break:|;","bdbk:c":"border-break:close;",bdcl:"border-collapse:|;","bdcl:c":"border-collapse:collapse;","bdcl:s":"border-collapse:separate;",bdc:"border-color:#000;",bdi:"border-image:url(|);","bdi:n":"border-image:none;","bdi:w":"-webkit-border-image:url(|) 0 0 0 0 stretch stretch;",
"bdi:m":"-moz-border-image:url(|) 0 0 0 0 stretch stretch;",bdti:"border-top-image:url(|);","bdti:n":"border-top-image:none;",bdri:"border-right-image:url(|);","bdri:n":"border-right-image:none;",bdbi:"border-bottom-image:url(|);","bdbi:n":"border-bottom-image:none;",bdli:"border-left-image:url(|);","bdli:n":"border-left-image:none;",bdci:"border-corner-image:url(|);","bdci:n":"border-corner-image:none;","bdci:c":"border-corner-image:continue;",bdtli:"border-top-left-image:url(|);","bdtli:n":"border-top-left-image:none;",
"bdtli:c":"border-top-left-image:continue;",bdtri:"border-top-right-image:url(|);","bdtri:n":"border-top-right-image:none;","bdtri:c":"border-top-right-image:continue;",bdbri:"border-bottom-right-image:url(|);","bdbri:n":"border-bottom-right-image:none;","bdbri:c":"border-bottom-right-image:continue;",bdbli:"border-bottom-left-image:url(|);","bdbli:n":"border-bottom-left-image:none;","bdbli:c":"border-bottom-left-image:continue;",bdf:"border-fit:|;","bdf:c":"border-fit:clip;","bdf:r":"border-fit:repeat;",
"bdf:sc":"border-fit:scale;","bdf:st":"border-fit:stretch;","bdf:ow":"border-fit:overwrite;","bdf:of":"border-fit:overflow;","bdf:sp":"border-fit:space;",bdl:"border-length:|;","bdl:a":"border-length:auto;",bdsp:"border-spacing:|;",bds:"border-style:|;","bds:n":"border-style:none;","bds:h":"border-style:hidden;","bds:dt":"border-style:dotted;","bds:ds":"border-style:dashed;","bds:s":"border-style:solid;","bds:db":"border-style:double;","bds:dtds":"border-style:dot-dash;","bds:dtdtds":"border-style:dot-dot-dash;",
"bds:w":"border-style:wave;","bds:g":"border-style:groove;","bds:r":"border-style:ridge;","bds:i":"border-style:inset;","bds:o":"border-style:outset;",bdw:"border-width:|;",bdt:"border-top:|;","bdt+":"border-top:1px solid #000;","bdt:n":"border-top:none;",bdtw:"border-top-width:|;",bdts:"border-top-style:|;","bdts:n":"border-top-style:none;",bdtc:"border-top-color:#000;",bdr:"border-right:|;","bdr+":"border-right:1px solid #000;","bdr:n":"border-right:none;",bdrw:"border-right-width:|;",bdrs:"border-right-style:|;",
"bdrs:n":"border-right-style:none;",bdrc:"border-right-color:#000;",bdb:"border-bottom:|;","bdb+":"border-bottom:1px solid #000;","bdb:n":"border-bottom:none;",bdbw:"border-bottom-width:|;",bdbs:"border-bottom-style:|;","bdbs:n":"border-bottom-style:none;",bdbc:"border-bottom-color:#000;",bdl:"border-left:|;","bdl+":"border-left:1px solid #000;","bdl:n":"border-left:none;",bdlw:"border-left-width:|;",bdls:"border-left-style:|;","bdls:n":"border-left-style:none;",bdlc:"border-left-color:#000;",bdrs:"border-radius:|;",
bdtrrs:"border-top-right-radius:|;",bdtlrs:"border-top-left-radius:|;",bdbrrs:"border-bottom-right-radius:|;",bdblrs:"border-bottom-left-radius:|;",bg:"background:|;","bg+":"background:#FFF url(|) 0 0 no-repeat;","bg:n":"background:none;","bg:ie":"filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='${1:x}.png',sizingMethod='${2:crop}');",bgc:"background-color:#FFF;",bgi:"background-image:url(|);","bgi:n":"background-image:none;",bgr:"background-repeat:|;","bgr:n":"background-repeat:no-repeat;",
"bgr:x":"background-repeat:repeat-x;","bgr:y":"background-repeat:repeat-y;",bga:"background-attachment:|;","bga:f":"background-attachment:fixed;","bga:s":"background-attachment:scroll;",bgp:"background-position:0 0;",bgpx:"background-position-x:|;",bgpy:"background-position-y:|;",bgbk:"background-break:|;","bgbk:bb":"background-break:bounding-box;","bgbk:eb":"background-break:each-box;","bgbk:c":"background-break:continuous;",bgcp:"background-clip:|;","bgcp:bb":"background-clip:border-box;","bgcp:pb":"background-clip:padding-box;",
"bgcp:cb":"background-clip:content-box;","bgcp:nc":"background-clip:no-clip;",bgo:"background-origin:|;","bgo:pb":"background-origin:padding-box;","bgo:bb":"background-origin:border-box;","bgo:cb":"background-origin:content-box;",bgz:"background-size:|;","bgz:a":"background-size:auto;","bgz:ct":"background-size:contain;","bgz:cv":"background-size:cover;",c:"color:#000;",tbl:"table-layout:|;","tbl:a":"table-layout:auto;","tbl:f":"table-layout:fixed;",cps:"caption-side:|;","cps:t":"caption-side:top;",
"cps:b":"caption-side:bottom;",ec:"empty-cells:|;","ec:s":"empty-cells:show;","ec:h":"empty-cells:hide;",lis:"list-style:|;","lis:n":"list-style:none;",lisp:"list-style-position:|;","lisp:i":"list-style-position:inside;","lisp:o":"list-style-position:outside;",list:"list-style-type:|;","list:n":"list-style-type:none;","list:d":"list-style-type:disc;","list:c":"list-style-type:circle;","list:s":"list-style-type:square;","list:dc":"list-style-type:decimal;","list:dclz":"list-style-type:decimal-leading-zero;",
"list:lr":"list-style-type:lower-roman;","list:ur":"list-style-type:upper-roman;",lisi:"list-style-image:|;","lisi:n":"list-style-image:none;",q:"quotes:|;","q:n":"quotes:none;","q:ru":"quotes:'\000AB' '\000BB' '\u0081E' '\u0081C';","q:en":"quotes:'\u0081C' '\u0081D' '\u00818' '\u00819';",ct:"content:|;","ct:n":"content:normal;","ct:oq":"content:open-quote;","ct:noq":"content:no-open-quote;","ct:cq":"content:close-quote;","ct:ncq":"content:no-close-quote;","ct:a":"content:attr(|);","ct:c":"content:counter(|);",
"ct:cs":"content:counters(|);",coi:"counter-increment:|;",cor:"counter-reset:|;",va:"vertical-align:|;","va:sup":"vertical-align:super;","va:t":"vertical-align:top;","va:tt":"vertical-align:text-top;","va:m":"vertical-align:middle;","va:bl":"vertical-align:baseline;","va:b":"vertical-align:bottom;","va:tb":"vertical-align:text-bottom;","va:sub":"vertical-align:sub;",ta:"text-align:|;","ta:l":"text-align:left;","ta:c":"text-align:center;","ta:r":"text-align:right;",tal:"text-align-last:|;","tal:a":"text-align-last:auto;",
"tal:l":"text-align-last:left;","tal:c":"text-align-last:center;","tal:r":"text-align-last:right;",td:"text-decoration:|;","td:n":"text-decoration:none;","td:u":"text-decoration:underline;","td:o":"text-decoration:overline;","td:l":"text-decoration:line-through;",te:"text-emphasis:|;","te:n":"text-emphasis:none;","te:ac":"text-emphasis:accent;","te:dt":"text-emphasis:dot;","te:c":"text-emphasis:circle;","te:ds":"text-emphasis:disc;","te:b":"text-emphasis:before;","te:a":"text-emphasis:after;",th:"text-height:|;",
"th:a":"text-height:auto;","th:f":"text-height:font-size;","th:t":"text-height:text-size;","th:m":"text-height:max-size;",ti:"text-indent:|;","ti:-":"text-indent:-9999px;",tj:"text-justify:|;","tj:a":"text-justify:auto;","tj:iw":"text-justify:inter-word;","tj:ii":"text-justify:inter-ideograph;","tj:ic":"text-justify:inter-cluster;","tj:d":"text-justify:distribute;","tj:k":"text-justify:kashida;","tj:t":"text-justify:tibetan;",to:"text-outline:|;","to+":"text-outline:0 0 #000;","to:n":"text-outline:none;",
tr:"text-replace:|;","tr:n":"text-replace:none;",tt:"text-transform:|;","tt:n":"text-transform:none;","tt:c":"text-transform:capitalize;","tt:u":"text-transform:uppercase;","tt:l":"text-transform:lowercase;",tw:"text-wrap:|;","tw:n":"text-wrap:normal;","tw:no":"text-wrap:none;","tw:u":"text-wrap:unrestricted;","tw:s":"text-wrap:suppress;",tsh:"text-shadow:|;","tsh+":"text-shadow:0 0 0 #000;","tsh:n":"text-shadow:none;",lh:"line-height:|;",whs:"white-space:|;","whs:n":"white-space:normal;","whs:p":"white-space:pre;",
"whs:nw":"white-space:nowrap;","whs:pw":"white-space:pre-wrap;","whs:pl":"white-space:pre-line;",whsc:"white-space-collapse:|;","whsc:n":"white-space-collapse:normal;","whsc:k":"white-space-collapse:keep-all;","whsc:l":"white-space-collapse:loose;","whsc:bs":"white-space-collapse:break-strict;","whsc:ba":"white-space-collapse:break-all;",wob:"word-break:|;","wob:n":"word-break:normal;","wob:k":"word-break:keep-all;","wob:l":"word-break:loose;","wob:bs":"word-break:break-strict;","wob:ba":"word-break:break-all;",
wos:"word-spacing:|;",wow:"word-wrap:|;","wow:nm":"word-wrap:normal;","wow:n":"word-wrap:none;","wow:u":"word-wrap:unrestricted;","wow:s":"word-wrap:suppress;",lts:"letter-spacing:|;",f:"font:|;","f+":"font:1em Arial,sans-serif;",fw:"font-weight:|;","fw:n":"font-weight:normal;","fw:b":"font-weight:bold;","fw:br":"font-weight:bolder;","fw:lr":"font-weight:lighter;",fs:"font-style:|;","fs:n":"font-style:normal;","fs:i":"font-style:italic;","fs:o":"font-style:oblique;",fv:"font-variant:|;","fv:n":"font-variant:normal;",
"fv:sc":"font-variant:small-caps;",fz:"font-size:|;",fza:"font-size-adjust:|;","fza:n":"font-size-adjust:none;",ff:"font-family:|;","ff:s":"font-family:serif;","ff:ss":"font-family:sans-serif;","ff:c":"font-family:cursive;","ff:f":"font-family:fantasy;","ff:m":"font-family:monospace;",fef:"font-effect:|;","fef:n":"font-effect:none;","fef:eg":"font-effect:engrave;","fef:eb":"font-effect:emboss;","fef:o":"font-effect:outline;",fem:"font-emphasize:|;",femp:"font-emphasize-position:|;","femp:b":"font-emphasize-position:before;",
"femp:a":"font-emphasize-position:after;",fems:"font-emphasize-style:|;","fems:n":"font-emphasize-style:none;","fems:ac":"font-emphasize-style:accent;","fems:dt":"font-emphasize-style:dot;","fems:c":"font-emphasize-style:circle;","fems:ds":"font-emphasize-style:disc;",fsm:"font-smooth:|;","fsm:a":"font-smooth:auto;","fsm:n":"font-smooth:never;","fsm:aw":"font-smooth:always;",fst:"font-stretch:|;","fst:n":"font-stretch:normal;","fst:uc":"font-stretch:ultra-condensed;","fst:ec":"font-stretch:extra-condensed;",
"fst:c":"font-stretch:condensed;","fst:sc":"font-stretch:semi-condensed;","fst:se":"font-stretch:semi-expanded;","fst:e":"font-stretch:expanded;","fst:ee":"font-stretch:extra-expanded;","fst:ue":"font-stretch:ultra-expanded;",op:"opacity:|;","op:ie":"filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);","op:ms":"-ms-filter:'progid:DXImageTransform.Microsoft.Alpha(Opacity=100)';",rz:"resize:|;","rz:n":"resize:none;","rz:b":"resize:both;","rz:h":"resize:horizontal;","rz:v":"resize:vertical;",
cur:"cursor:|;","cur:a":"cursor:auto;","cur:d":"cursor:default;","cur:c":"cursor:crosshair;","cur:ha":"cursor:hand;","cur:he":"cursor:help;","cur:m":"cursor:move;","cur:p":"cursor:pointer;","cur:t":"cursor:text;",pgbb:"page-break-before:|;","pgbb:au":"page-break-before:auto;","pgbb:al":"page-break-before:always;","pgbb:l":"page-break-before:left;","pgbb:r":"page-break-before:right;",pgbi:"page-break-inside:|;","pgbi:au":"page-break-inside:auto;","pgbi:av":"page-break-inside:avoid;",pgba:"page-break-after:|;",
"pgba:au":"page-break-after:auto;","pgba:al":"page-break-after:always;","pgba:l":"page-break-after:left;","pgba:r":"page-break-after:right;",orp:"orphans:|;",wid:"widows:|;"}},html:{filters:"html",snippets:{"cc:ie6":"<\!--[if lte IE 6]>\n\t${child}|\n<![endif]--\>","cc:ie":"<\!--[if IE]>\n\t${child}|\n<![endif]--\>","cc:noie":"<\!--[if !IE]><\!--\>\n\t${child}|\n<\!--<![endif]--\>","html:4t":'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">\n<html lang="${lang}">\n<head>\n\t<meta http-equiv="Content-Type" content="text/html;charset=${charset}">\n\t<title></title>\n</head>\n<body>\n\t${child}|\n</body>\n</html>',
"html:4s":'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">\n<html lang="${lang}">\n<head>\n\t<meta http-equiv="Content-Type" content="text/html;charset=${charset}">\n\t<title></title>\n</head>\n<body>\n\t${child}|\n</body>\n</html>',"html:xt":'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\n<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="${lang}">\n<head>\n\t<meta http-equiv="Content-Type" content="text/html;charset=${charset}" />\n\t<title></title>\n</head>\n<body>\n\t${child}|\n</body>\n</html>',
"html:xs":'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\n<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="${lang}">\n<head>\n\t<meta http-equiv="Content-Type" content="text/html;charset=${charset}" />\n\t<title></title>\n</head>\n<body>\n\t${child}|\n</body>\n</html>',"html:xxs":'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\n<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="${lang}">\n<head>\n\t<meta http-equiv="Content-Type" content="text/html;charset=${charset}" />\n\t<title></title>\n</head>\n<body>\n\t${child}|\n</body>\n</html>',
"html:5":'<!DOCTYPE HTML>\n<html lang="${locale}">\n<head>\n\t<meta charset="${charset}">\n\t<title></title>\n</head>\n<body>\n\t${child}|\n</body>\n</html>'},abbreviations:{a:'<a href="">',"a:link":'<a href="http://|">',"a:mail":'<a href="mailto:|">',abbr:'<abbr title="">',acronym:'<acronym title="">',base:'<base href="" />',bdo:'<bdo dir="">',"bdo:r":'<bdo dir="rtl">',"bdo:l":'<bdo dir="ltr">',"link:css":'<link rel="stylesheet" type="text/css" href="${1:style}.css" media="all" />',"link:print":'<link rel="stylesheet" type="text/css" href="|print.css" media="print" />',
"link:favicon":'<link rel="shortcut icon" type="image/x-icon" href="|favicon.ico" />',"link:touch":'<link rel="apple-touch-icon" href="|favicon.png" />',"link:rss":'<link rel="alternate" type="application/rss+xml" title="RSS" href="|rss.xml" />',"link:atom":'<link rel="alternate" type="application/atom+xml" title="Atom" href="atom.xml" />',"meta:utf":'<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />',"meta:win":'<meta http-equiv="Content-Type" content="text/html;charset=windows-1251" />',
"meta:compat":'<meta http-equiv="X-UA-Compatible" content="IE=7" />',style:'<style type="text/css">',script:'<script type="text/javascript">',"script:src":'<script type="text/javascript" src="">',img:'<img src="" alt="" />',iframe:'<iframe src="" frameborder="0">',embed:'<embed src="" type="" />',object:'<object data="" type="">',param:'<param name="" value="" />',map:'<map name="">',area:'<area shape="" coords="" href="" alt="" />',"area:d":'<area shape="default" href="" alt="" />',"area:c":'<area shape="circle" coords="" href="" alt="" />',
"area:r":'<area shape="rect" coords="" href="" alt="" />',"area:p":'<area shape="poly" coords="" href="" alt="" />',link:'<link rel="stylesheet" href="" />',form:'<form action="">',"form:get":'<form action="" method="get">',"form:post":'<form action="" method="post">',label:'<label for="">',input:'<input type="" />',"input:hidden":'<input type="hidden" name="" />',"input:h":'<input type="hidden" name="" />',"input:text":'<input type="text" name="" id="" />',"input:t":'<input type="text" name="" id="" />',
"input:search":'<input type="search" name="" id="" />',"input:email":'<input type="email" name="" id="" />',"input:url":'<input type="url" name="" id="" />',"input:password":'<input type="password" name="" id="" />',"input:p":'<input type="password" name="" id="" />',"input:datetime":'<input type="datetime" name="" id="" />',"input:date":'<input type="date" name="" id="" />',"input:datetime-local":'<input type="datetime-local" name="" id="" />',"input:month":'<input type="month" name="" id="" />',
"input:week":'<input type="week" name="" id="" />',"input:time":'<input type="time" name="" id="" />',"input:number":'<input type="number" name="" id="" />',"input:color":'<input type="color" name="" id="" />',"input:checkbox":'<input type="checkbox" name="" id="" />',"input:c":'<input type="checkbox" name="" id="" />',"input:radio":'<input type="radio" name="" id="" />',"input:r":'<input type="radio" name="" id="" />',"input:range":'<input type="range" name="" id="" />',"input:file":'<input type="file" name="" id="" />',
"input:f":'<input type="file" name="" id="" />',"input:submit":'<input type="submit" value="" />',"input:s":'<input type="submit" value="" />',"input:image":'<input type="image" src="" alt="" />',"input:i":'<input type="image" src="" alt="" />',"input:reset":'<input type="reset" value="" />',"input:button":'<input type="button" value="" />',"input:b":'<input type="button" value="" />',select:'<select name="" id=""></select>',option:'<option value=""></option>',textarea:'<textarea name="" id="" cols="30" rows="10">',
"menu:context":'<menu type="context">',"menu:c":'<menu type="context">',"menu:toolbar":'<menu type="toolbar">',"menu:t":'<menu type="toolbar">',video:'<video src="">',audio:'<audio src="">',"html:xml":'<html xmlns="http://www.w3.org/1999/xhtml">',bq:"<blockquote>",acr:"<acronym>",fig:"<figure>",ifr:"<iframe>",emb:"<embed>",obj:"<object>",src:"<source>",cap:"<caption>",colg:"<colgroup>",fst:"<fieldset>",btn:"<button>",optg:"<optgroup>",opt:"<option>",tarea:"<textarea>",leg:"<legend>",sect:"<section>",
art:"<article>",hdr:"<header>",ftr:"<footer>",adr:"<address>",dlg:"<dialog>",str:"<strong>",prog:"<progress>",fset:"<fieldset>",datag:"<datagrid>",datal:"<datalist>",kg:"<keygen>",out:"<output>",det:"<details>",cmd:"<command>","ol+":"ol>li","ul+":"ul>li","dl+":"dl>dt+dd","map+":"map>area","table+":"table>tr>td","colgroup+":"colgroup>col","colg+":"colgroup>col","tr+":"tr>td","select+":"select>option","optgroup+":"optgroup>option","optg+":"optgroup>option"},element_types:{empty:"area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed,keygen,command",
block_level:"address,applet,blockquote,button,center,dd,del,dir,div,dl,dt,fieldset,form,frameset,hr,iframe,ins,isindex,li,link,map,menu,noframes,noscript,object,ol,p,pre,script,table,tbody,td,tfoot,th,thead,tr,ul,h1,h2,h3,h4,h5,h6",inline_level:"a,abbr,acronym,applet,b,basefont,bdo,big,br,button,cite,code,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,select,small,span,strike,strong,sub,sup,textarea,tt,u,var"}},xml:{"extends":"html",filters:"html"},xsl:{"extends":"html",filters:"html, xsl",
abbreviations:{tm:'<xsl:template match="" mode="">',tmatch:"tm",tn:'<xsl:template name="">',tname:"tn","xsl:when":'<xsl:when test="">',wh:"xsl:when","var":'<xsl:variable name="">',vare:'<xsl:variable name="" select=""/>',"if":'<xsl:if test="">',call:'<xsl:call-template name=""/>',attr:'<xsl:attribute name="">',wp:'<xsl:with-param name="" select=""/>',par:'<xsl:param name="" select=""/>',val:'<xsl:value-of select=""/>',co:'<xsl:copy-of select=""/>',each:'<xsl:for-each select="">',"for":"each",ap:'<xsl:apply-templates select="" mode=""/>',
"choose+":"xsl:choose>xsl:when+xsl:otherwise"}},haml:{filters:"haml","extends":"html"}},u=function(){function b(a){return a==g?m:k}function c(a,c,g){var d=b(a),e=[],k;d&&c in d&&(k=d[c],g in k&&e.push(k[g]));var j;k&&"extends"in k?j=k:a==h&&c in m&&"extends"in m[c]&&(j=m[c]);if(j){if(!j["extends"]||!j["extends"].__zen_parsed__){c=j["extends"].split(",");for(a=0;a<c.length;a++)c[a]=(c[a]||"").replace(/^\s+|\s+$/g,"");j["extends"]=c;j["extends"].__zen_parsed__=!0}for(a=0;a<j["extends"].length;a++)c=
j["extends"][a],d[c]&&d[c][g]&&e.push(d[c][g])}return e}function a(a,b,h,g){for(var b=c(a,b,h),k=null,r=0,m=b.length;r<m;r++)if(a=b[r],g in a){if(h=="abbreviations"&&(!a[g]||!a[g].__zen_parsed__)){var h=a[g],b=a,m=k=g,x=h,m=(m||"").replace(/^\s+|\s+$/g,""),r=void 0;if(m.substr(-1)=="+")r={type:e,key:m,value:x};else if(r=j.exec(x)){x=r[2];r={name:r[1],is_empty:r[4]=="/"};if(x){var i=void 0;for(r.attributes=[];i=n.exec(x);)r.attributes.push({name:i[1],value:i[3]})}r={type:d,key:m,value:r}}else r={type:f,
key:m,value:x};b[k]=r;a[g].__ref=h;a[g].__zen_parsed__=!0}k=a[g];break}return k}var d="zen-tag",e="zen-expando",f="zen-reference",g="system",h="user",j=/^<(\w+\:?[\w\-]*)((?:\s+[\w\:\-]+\s*=\s*(['"]).*?\3)*)\s*(\/?)>/,n=/([\w\-]+)\s*=\s*(['"])(.*?)\2/g,m={},k={};return{setVocabulary:function(a,b){b==g?m=a:k=a},getVocabulary:b,getResource:function(b,c,d){return a(h,b,c,d)||a(g,b,c,d)},getAbbreviation:function(a,b){return this.getResource(a,"abbreviations",b)||this.getResource(a,"abbreviations",b.replace(/\-/g,
":"))},getSnippet:function(a,b){return this.getResource(a,"snippets",b)||this.getResource(a,"snippets",b.replace(/\-/g,":"))},getVariable:function(a){return c(h,"variables",a)[0]||c(g,"variables",a)[0]},getSubset:function(a,b){return c(h,a,b)[0]||c(g,a,b)[0]},isItemInCollection:function(a,c,d){return d in this.getElementsCollection(b(h)[a],c)||d in this.getElementsCollection(b(g)[a],c)},getElementsCollection:function(a,b){if(a&&a.element_types){var c=a.element_types;if(!c||!c.__zen_parsed__){for(var h in c){for(var g=
c,d=h,k={},e=c[h].split(","),j=0;j<e.length;j++)k[e[j]]=!0;g[d]=k}c.__zen_parsed__=!0}return c[b]||{}}else return{}},hasSyntax:function(a){return a in b(h)||a in b(g)}}}();try{u.setVocabulary(ia,"system"),u.setVocabulary(my_zen_settings,"user")}catch(la){}var J=function(){function b(){this.abbreviation="";this.parent=null;this.children=[];this.count=1;this.text=this.name=null;this.attributes=[];this.has_implict_name=this.is_repeating=!1}function c(a){typeof a=="string"&&(a=a.charCodeAt(0));return a&&
a>47&&a<58}function a(a){return(a||"").replace(/^\s+|\s+$/g,"")}function d(a,b){var c=b.substring(a).match(/^[\w\-:\$]+/);return c?c[0]:""}function e(a){for(;a.hasEmptyChildren();)for(var b=a,c=b.children.length-1;c>=0;c--){var d=b.children[c];if(d.isEmpty()){for(var f=[c,1],k=0,l=d.children.length;k<l;k++)f.push(d.children[k]);Array.prototype.splice.apply(b.children,f)}}b=0;for(c=a.children.length;b<c;b++)e(a.children[b]);return a}var f=/^[\w\d\-_\$\:@!]+\+?$/i;b.prototype={addChild:function(a){a=
a||new b;a.parent=this;this.children.push(a);return a},replace:function(a){if(this.parent)for(var b=this.parent.children,c=0,d=b.length;c<d;c++)if(b[c]===this){b[c]=a;this.parent=null;break}},setAbbreviation:function(b){this.abbreviation=b;var c=b.match(/\*(\d+)?$/);if(c)this.count=parseInt(c[1]||1,10),this.is_repeating=!c[1],b=b.substr(0,b.length-c[0].length);if(b){a:{if(b.indexOf("{")!=-1)for(var e=c=0,n=[],m=0,k=b.length,l;m<k;){l=b.charAt(m);switch(l){case "[":e||c++;break;case "]":e||c--;break;
case "{":c||(e++,n.push(m));break;case "}":if(!c&&(e--,l=n.pop(),e===0)){c=[b.substring(0,l),b.substring(l+1,m)];break a}}m++}c=[b]}b=c[0];if(c.length==2)this.text=c[1];if(b){var o,c=[],e="",p=!0,n={"#":"id",".":"class"};l=0;for(m=b.length;l<m;)switch(k=b.charAt(l),k){case "#":p=d(l,b.substring(1));c.push({name:n[k],value:p});l+=p.length+1;p=!1;break;case ".":p=d(l,b.substring(1));o||(o={name:n[k],value:""},c.push(o));o.value+=(o.value?" ":"")+p;l+=p.length+1;p=!1;break;case "[":k=b.indexOf("]",l);
if(k==-1)l=b.length;else{l=b.substring(l+1,k);l=a(l);for(var p=100,q=/^(["'])((?:(?!\1)[^\\]|\\.)*)\1/,s=[],r=void 0;l&&p--;){var w=d(0,l);if(w)switch(r={name:w,value:""},l.charAt(w.length)){case "=":var x=l.charAt(w.length+1);x=='"'||x=="'"?(x=l.substring(w.length+1).match(q))?(r.value=x[2],l=a(l.substring(w.length+x[0].length+1))):l="":(x=l.substring(w.length+1).match(/(.+?)(\s|$)/))?(r.value=x[1],l=a(l.substring(w.length+x[1].length+1))):l="";break;default:l=a(l.substring(w.length))}else break;
r&&s.push(r)}l=s;p=0;for(q=l.length;p<q;p++)c.push(l[p]);l=k}p=!1;break;default:p&&(e+=k),l++}o=[e,c];this.name=o[0]||"div";this.has_implict_name=!o[0];this.attributes=o[1]}}if(this.name&&!f.test(this.name))throw Error("InvalidAbbreviation");},getAbbreviation:function(){return this.expr},toString:function(a){var a=a||0,b="(empty)";if(this.abbreviation){b="";if(this.name)b=this.name;this.text!==null&&(b+=(b?" ":"")+'{text: "'+this.text+'"}');if(this.attributes.length){for(var c=[],d=0,e=this.attributes.length;d<
e;d++)c.push(this.attributes[d].name+'="'+this.attributes[d].value+'"');b+=" ["+c.join(", ")+"]"}}b=i.repeatString("-",a)+b+"\n";d=0;for(e=this.children.length;d<e;d++)b+=this.children[d].toString(a+1);return b},hasEmptyChildren:function(){for(var a=0,b=this.children.length;a<b;a++)if(this.children[a].isEmpty())return!0;return!1},isEmpty:function(){return!this.abbreviation},isTextNode:function(){return!this.name&&this.text}};return{parse:function(a){var d=new b,j=d.addChild(),f=0,m=a.length,k=0,l=
0,o=[d],p,q,s="";o.last=function(){return this[this.length-1]};for(var r=function(){s&&j.setAbbreviation(s);s=""};f<m;){p=a.charAt(f);q=f?a.charAt(f-1):"";switch(p){case "{":l||k++;s+=p;break;case "}":l||k--;s+=p;break;case "[":k||l++;s+=p;break;case "]":k||l--;s+=p;break;case "(":!k&&!l?(r(),q!="+"&&q!=">"&&(j=j.parent.addChild()),o.push(j),j=j.addChild()):s+=p;break;case ")":if(!k&&!l){if(r(),j=o.pop(),f<m-1&&a.charAt(f+1)=="*"){p="";for(var w=f+2;w<m;w++)if(q=a.charAt(w),c(q))p+=q;else break;f+=
p.length+1;for(p=parseInt(p||1,10);1<p--;)j.parent.addChild(j)}}else s+=p;break;case "+":!k&&!l&&f!=m-1?(r(),j=j.parent.addChild()):s+=p;break;case ">":!k&&!l?(r(),j=j.addChild()):s+=p;break;default:s+=p}f++}r();return e(d)},TreeNode:b,optimizeTree:e}}(),i=function(){function b(a){typeof a=="string"&&(a=a.charCodeAt(0));return a&&a>47&&a<58}function c(){return typeof D!="string"?D():D}function a(a,b){var c=i.getNewline(),c=(a||"").replace(/\r\n/g,"\n").replace(/\n\r/g,"\n").replace(/\r/g,"\n").replace(/\n/g,
c).split(c);if(b)for(var e=c.length;e>=0;e--)d(c[e])||c.splice(e,1);return c}function d(a){return(a||"").replace(/^\s+|\s+$/g,"")}function e(a,b){var c=y,d=a.toLowerCase(),e=b||{},k={},h;for(h in t)k[h]=h in e?e[h]:t[h];c[d]=k}function f(a,b){for(var c="",d=0;d<b;d++)c+=a;return c}function g(a,b){return a.replace(/\$\{([\w\-]+)\}/g,typeof b=="function"?b:b?function(a,c){return c in b?b[c]:a}:function(a,b){var c=k(b);return c!==null&&typeof c!="undefined"?c:a})}function h(a){return(a||"").replace(/(.+)\!$/,
"$1")}function j(a){for(var b=0,c=a.length;b<c;b++){var d=a.charAt(b);if(d=="\\")b++;else if(d=="$"&&a.charAt(b+1)=="#")return!0}return!1}function n(a,b){var b=b||"html",c=null;if(a.name&&(c=h(a.name),(c=u.getAbbreviation(b,c))&&c.type=="zen-reference"))c=h(c.value),c=u.getAbbreviation(b,c);this.name=c?c.value.name:a.name;this.real_name=a.name;this.count=a.count||1;this._abbr=c;this.syntax=b;this._paste_content=this._content="";this.repeat_by_lines=a.is_repeating;this.is_repeating=a&&a.count>1;this.parent=
null;this.has_implicit_name=a.has_implict_name;this.setContent(a.text);this._abbr&&this.copyAttributes(this._abbr.value);this.copyAttributes(a)}function m(a,b){this.name=h(a.name);this.real_name=a.name;this.count=a.count;this.children=[];this._content=a.text||"";this.repeat_by_lines=a.is_repeating;this.is_repeating=a&&a.count>1;this.attributes=[];this.value=w(u.getSnippet(b,this.name),"|",c());this.parent=null;this.syntax=b;this.addAttribute("id",c());this.addAttribute("class",c());this.copyAttributes(a)}
function k(a){return u.getVariable(a)}function l(a){this.type=a instanceof m?"snippet":"tag";this.name=a.name;this.real_name=a.real_name;this.children=[];this.counter=1;this.is_repeating=a.is_repeating;this.repeat_by_lines=a.repeat_by_lines;this.has_implicit_name=this.type=="tag"&&a.has_implicit_name;this.attributes=[];if(a.attributes)for(var b=0,c=a.attributes.length;b<c;b++){var d=a.attributes[b];this.attributes.push({name:d.name,value:d.value})}this.source=a;this.previousSibling=this.nextSibling=
this.parent=null;this.end=this.start="";this.content=a.getContent()||"";this.padding=""}function o(b,c){var c=c||new l(b),e=1,k="";if(b.children)for(var h=0,g=b.children.length;h<g;h++){var f=b.children[h],e=f.count;f.repeat_by_lines?(k=a(f.getPasteContent(),!0),e=Math.max(k.length,1)):k=f.getPasteContent();for(var j=0;j<e;j++){var r=new l(f);c.addChild(r);r.counter=j+1;f.children&&f.children.length&&o(f,r);k&&r.pasteContent(d(typeof k=="string"?k:k[j]||""))}}return c}function p(a,b,c){b=x(b);typeof c==
"string"&&(c=c.split(/[\|,]/g));for(var e=0,k=c.length;e<k;e++){var h=d(c[e].toLowerCase());h&&h in C&&(a=C[h](a,b))}return a}function q(a,b,c){var d;d=b||"html";if(a.isEmpty())d=null;else{var e=d,k=h(a.name);d=u.getSnippet(e,k)?new m(a,d):new n(a,d)}for(c.addChild(d);c.parent;)c=c.parent;c.last=d;if(d.repeat_by_lines)c.multiply_elem=d;c=0;for(e=a.children.length;c<e;c++)q(a.children[c],b,d)}function s(a,b){for(var c=0,d=a.children.length;c<d;c++){var e=a.children[c];!e.isEmpty()&&!e.isTextNode()&&
e.name.indexOf("+")!=-1&&(e=u.getAbbreviation(b,e.name))&&(a.children[c]=J.parse(e.value));s(a.children[c],b)}}function r(a,b){s(a,b);return J.optimizeTree(a)}function w(a,b,c){for(var d=0,e=a.length,k=b.length,h=0;d<e;)if(a.charAt(d)=="\\")d+=k+1;else if(a.substr(d,k)==b){var g=k;h++;var f=c;if(typeof c!=="string")(f=c(a,b,d,h))?(g=f[0].length,f=f[1]):f=!1;f===!1?d++:(a=a.substring(0,d)+f+a.substring(d+g),e=a.length,d+=f.length)}else d++;return a}function x(a){var b=a;typeof a=="string"&&a in y&&
(b=y[a]);b||(b=y.plain);return b}var G=/<\/?[\w:\-]+(?:\s+[\w\-:]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*\s*(\/?)>$/,D="{%::zen-caret::%}",E="\n",C={},y={},t={tag_case:"lower",attr_case:"lower",attr_quotes:"double",tag_nl:"decide",place_cursor:!0,indent:!0,inline_break:3,self_closing_tag:"xhtml",filters:""};n.prototype={addChild:function(a){if(!this.children)this.children=[];a.parent=this;this.children.push(a)},addAttribute:function(a,b){if(!this.attributes)this.attributes=[];if(!this._attr_hash)this._attr_hash=
{};var b=w(b,"|",c()),d;a in this._attr_hash?(d=this._attr_hash[a],a=="class"?d.value+=(d.value?" ":"")+b:d.value=b):(d={name:a,value:b},this._attr_hash[a]=d,this.attributes.push(d))},copyAttributes:function(a){if(a&&a.attributes)for(var b=0,c=a.attributes.length;b<c;b++){var d=a.attributes[b];this.addAttribute(d.name,d.value)}},hasTagsInContent:function(){return this.getContent()&&G.test(this.getContent())},setContent:function(a){this._content=w(a||"","|",c())},getContent:function(){return this._content||
""},setPasteContent:function(a){this._paste_content=i.escapeText(a)},getPasteContent:function(){return this._paste_content},findDeepestChild:function(){if(!this.children||!this.children.length)return null;for(var a=this;;)if(a=a.children[a.children.length-1],!a.children||!a.children.length)break;return a}};(function(a,b){var c=function(){};c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.baseConstructor=b;a.superClass=b.prototype})(m,n);l.prototype={addChild:function(a){a.parent=
this;if(a.has_implicit_name&&this.isInline())a.name="span";var b=this.children[this.children.length-1];if(b)a.previousSibling=b,b.nextSibling=a;this.children.push(a)},_getAttr:function(a){for(var a=a.toLowerCase(),b=0,c=this.attributes.length;b<c;b++)if(this.attributes[b].name.toLowerCase()==a)return this.attributes[b];return null},getAttribute:function(a){return(a=this._getAttr(a))&&a.value},setAttribute:function(a,b){var c=this._getAttr(a);if(c)c.value=b},isUnary:function(){return this.type=="snippet"?
!1:this.source._abbr&&this.source._abbr.value.is_empty||u.isItemInCollection(this.source.syntax,"empty",this.name)},isInline:function(){return this.type=="text"||u.isItemInCollection(this.source.syntax,"inline_level",this.name)},isBlock:function(){return this.type=="snippet"||!this.isInline()},hasTagsInContent:function(){return this.content&&G.test(this.content)},hasChildren:function(){return!!this.children.length},hasBlockChildren:function(){if(this.hasTagsInContent()&&this.isBlock())return!0;for(var a=
0;a<this.children.length;a++)if(this.children[a].isBlock())return!0;return!1},findDeepestChild:function(){if(!this.children.length)return null;for(var a=this;;)if(a=a.children[a.children.length-1],!a.children.length)break;return a},toString:function(){for(var a="",b=0,c=this.children.length;b<c;b++)a+=this.children[b].toString();return this.start+this.content+a+this.end},hasOutputPlaceholder:function(){if(j(this.content))return!0;else for(var a=0,b=this.attributes.length;a<b;a++)if(j(this.attributes[a].value))return!0;
return!1},findElementsWithOutputPlaceholder:function(a){for(var a=a||[],b=0,c=this.children.length;b<c;b++)this.children[b].hasOutputPlaceholder()&&a.push(this.children[b]),this.children[b].findElementsWithOutputPlaceholder(a);return a},pasteContent:function(a){var b=["$#",a],c=function(){return b},d=[];this.hasOutputPlaceholder()&&d.push(this);d=d.concat(this.findElementsWithOutputPlaceholder());if(d.length)for(var a=0,e=d.length;a<e;a++){var k=d[a];k.content=w(k.content,"$#",c);for(var h=0,g=k.attributes.length;h<
g;h++){var f=k.attributes[h];f.value=w(f.value,"$#",c)}}else(this.findDeepestChild()||this).content+=a}};e("xhtml");e("html",{self_closing_tag:!1});e("xml",{self_closing_tag:!0,tag_nl:!0});e("plain",{tag_nl:!1,indent:!1,place_cursor:!1});return{actions:{},registerAction:function(a,b){this.actions[a.toLowerCase()]=b},runAction:function(a,b){b instanceof Array||(b=Array.prototype.slice.call(arguments,1));a=a.toLowerCase();if(a in this.actions)return this.actions[a].apply(this,b)},expandAbbreviation:function(a,
b,c,d){b=b||"html";return(a=this.parseIntoTree(a,b,d))?(d=o(a),this.applyFilters(d,b,c,a.filters),g(d.toString())):""},extractAbbreviation:function(a){for(var c=a.length,d=-1,e=0,k=0,h=0;;){c--;if(c<0){d=0;break}var g=a.charAt(c);if(g=="]")k++;else if(g=="["){if(!k){d=c+1;break}k--}else if(g=="}")h++;else if(g=="{"){if(!h){d=c+1;break}h--}else if(g==")")e++;else if(g=="("){if(!e){d=c+1;break}e--}else if(!k&&!h){var f;f=g;f=String(f);var j=f.charCodeAt(0);if(!(f=!(j>64&&j<91||j>96&&j<123||b(f)||"#.>+*:$-_!@[]()|".indexOf(f)!=
-1))){if(g=g==">")g=a.substring(0,c+1),g=G.test(g);f=g}if(f){d=c+1;break}}}return d!=-1&&!h&&!k&&!e?a.substring(d):""},parseIntoTree:function(a,b,c){var b=b||"html",d="",a=a.replace(/\|([\w\|\-]+)$/,function(a,b){d=b;return""});try{var e=J.parse(a),k=new n(c||{},b),e=r(e,b)}catch(h){if(h.message=="InvalidAbbreviation")return null}a=0;for(c=e.children.length;a<c;a++)q(e.children[a],b,k);k.filters=d;return k},padString:function(b,c){var d=typeof c=="number"?f(k("indentation"),c):c,e="",h=a(b),g=i.getNewline();
e+=h[0];for(var j=1;j<h.length;j++)e+=g+d+h[j];return e},setupProfile:e,getNewline:function(){return E},setNewline:function(a){E=a;this.setVariable("newline",a);this.setVariable("nl",a)},wrapWithAbbreviation:function(a,b,c,d){var c=c||"html",a=this.parseIntoTree(a,c),e=!1;if(a){if(a.multiply_elem)a.multiply_elem.setPasteContent(b),a.multiply_elem.repeat_by_lines=e=!0;var k=o(a);e||k.pasteContent(b);this.applyFilters(k,c,d,a.filters);return g(k.toString())}return null},splitByLines:a,isInsideTag:function(a,
b){for(var c=/^<\/?\w[\w\:\-]*.*?>/,d=b;d>-1;){if(a.charAt(d)=="<")break;d--}return d!=-1&&(c=c.exec(a.substring(d)))&&b>d&&b<d+c[0].length?!0:!1},getCaretPlaceholder:c,setCaretPlaceholder:function(a){D=a},rolloutTree:o,registerFilter:function(a,b){C[a]=b},nodeFactory:function(a,b){return new l({name:a,attributes:b||[]})},applyFilters:function(a,b,c,d){var c=x(c),e=c.filters;e||(e=u.getSubset(b,"filters")||"html");d&&(e+="|"+(typeof d=="string"?d:d.join("|")));e||(e="html");return p(a,c,e)},runFilters:p,
repeatString:f,getVariable:k,setVariable:function(a,b){var c=u.getVocabulary("user")||{};if(!("varaibles"in c))c.variables={};c.variables[a]=b;u.setVocabulary(c,"user")},replaceVariables:g,escapeText:function(a){return a.replace(/([\$\|\\])/g,"\\$1")},unescapeText:function(a){return a.replace(/\\(.)/g,"$1")},replaceCounter:function(a,c){c=String(c);return w(a,"$",function(a,d,e){if(a.charAt(e+1)=="{"||b(a.charAt(e+1)))return!1;for(d=e+1;a.charAt(d)=="$"&&a.charAt(d+1)!="{";)d++;for(var a=a.substring(e,
d),k="",h=c.length;d-e>h++;)k+="0";return[a,k+c]})},isNumeric:b,upgradeTabstops:function(a,b){for(var c=0,d=["start","end","content"],e=function(a){return"\\"+a},k=function(a,d,e){d=parseInt(d);d>c&&(c=d);return e?"${"+(d+b)+":"+e+"}":"$"+(d+b)},h=0,g=d.length;h<g;h++)a[d[h]]=this.processTextBeforePaste(a[d[h]],e,k);return c},getProfile:function(a){return a in y?y[a]:y.plain},getImageSize:function(a){var b=function(){return a.charCodeAt(c++)};if(a.substr(0,8)==="\u0089PNG\r\n\u001a\n"){var c=a.indexOf("IHDR")+
4;return{width:b()<<24|b()<<16|b()<<8|b(),height:b()<<24|b()<<16|b()<<8|b()}}else if(a.substr(0,4)==="GIF8")return c=6,{width:b()|b()<<8,height:b()|b()<<8};else if(a.substr(0,2)==="\u00ff\u00d8")for(var c=2,d=a.length;c<d;){if(b()!=255)break;var e=b();if(e==218)break;var k=b()<<8|b();if(e>=192&&e<=207&&!(e&4)&&!(e&8))return c+=1,{height:b()<<8|b(),width:b()<<8|b()};else c+=k-2}},getCounterForNode:function(a){var b=a.counter;if(!a.is_repeating&&!a.repeat_by_lines)for(;a=a.parent;)if(a.is_repeating||
a.repeat_by_lines)return a.counter;return b},processTextBeforePaste:function(a,b,c){for(var d=0,e=a.length,k,h,g=[],f=function(b,c){for(;b<e;)if(!c(a.charAt(b++)))break;return b-1};d<e;){var j=a.charAt(d);if(j=="\\"&&d+1<e)g.push(b(a.charAt(d+1))),d+=2;else{if(j=="$"){k=a.charAt(d+1)||"";h=d;if(this.isNumeric(k)){if(k=d+1,d=f(k,this.isNumeric),k<d){g.push(c(h,a.substring(k,d)));continue}}else if(k=="{"){var r=1;k=d+2;d=f(k,this.isNumeric);if(d>k)if(a.charAt(d)=="}"){g.push(c(h,a.substring(k,d)));
d++;continue}else if(a.charAt(d)==":"){j=d+2;d=f(j,function(a){a=="{"?r++:a=="}"&&r--;return!!r});g.push(c(h,a.substring(k,j-2),a.substring(j-1,d)));d++;continue}}d=h}g.push(j);d++}}return g.join("")},trim:d}}();i.registerAction("expand_abbreviation",U);i.registerAction("expand_abbreviation_with_tab",function(b,c,a){c=String(c||b.getSyntax());a=String(a||b.getProfileName());U(b,c,a)||b.replaceContent(i.getVariable("indentation"),b.getCaretPos())});i.registerAction("match_pair",N);i.registerAction("match_pair_inward",
function(b){N(b,"in")});i.registerAction("match_pair_outward",function(b){N(b,"out")});i.registerAction("wrap_with_abbreviation",function(b,c,a,d){var a=String(a||b.getSyntax()),d=String(d||b.getProfileName()),c=c||b.prompt("Enter abbreviation"),e=b.getSelectionRange(),f=e.start,e=e.end,g=String(b.getContent());if(!c||typeof c=="undefined")return null;c=String(c);if(f==e){e=i.html_matcher(g,f,d);if(!e||e[0]==-1)return null;e=O(g,e[0],e[1]);f=e[0];e=e[1]}g=i.escapeText(g.substring(f,e));if(c=i.wrapWithAbbreviation(c,
P(g,F(b.getCurrentLine())),a,d))b.setCaretPos(e),b.replaceContent(c,f,e)});i.registerAction("prev_edit_point",function(b){var c=b.getCaretPos(),a=Q(b,-1);a==c&&(a=Q(b,-1,-2));a!=-1&&b.setCaretPos(a)});i.registerAction("next_edit_point",function(b){var c=Q(b,1);c!=-1&&b.setCaretPos(c)});i.registerAction("insert_formatted_line_break",function(b){if(!V(b)){for(var c=F(b.getCurrentLine()),a=String(b.getContent()),d=b.getCaretPos(),e=a.length,f=i.getNewline(),g="",h=b.getCurrentLineRange().end+1,j;h<e;h++)if(j=
a.charAt(h),j==" "||j=="\t")g+=j;else break;g.length>c.length?b.replaceContent(f+g,d,d,!0):b.replaceContent(f,d)}});i.registerAction("insert_formatted_line_break_only",V);i.registerAction("select_line",function(b){var c=b.getCurrentLineRange();b.createSelection(c.start,c.end)});i.registerAction("matching_pair",function(b){var c=String(b.getContent()),a=b.getCaretPos();c.charAt(a)=="<"&&a++;var d=i.html_matcher.getTags(c,a,String(b.getProfileName()));d&&d[0]&&(c=d[0],(d=d[1])&&(c.start<=a&&c.end>=
a?b.setCaretPos(d.start):d.start<=a&&d.end>=a&&b.setCaretPos(c.start)))});i.registerAction("merge_lines",function(b){var c=b.getSelectionRange();if(c.start==c.end){var a=i.html_matcher(String(b.getContent()),b.getCaretPos(),String(b.getProfileName()));if(a)c.start=a[0],c.end=a[1]}if(c.start!=c.end){for(var a=String(b.getContent()).substring(c.start,c.end),a=i.splitByLines(a),d=1;d<a.length;d++)a[d]=a[d].replace(/^\s+/,"");a=a.join("").replace(/\s{2,}/," ");b.replaceContent(a,c.start,c.end);b.createSelection(c.start,
c.start+a.length)}});i.registerAction("toggle_comment",function(b){var c=String(b.getSyntax());if(c=="css"){var a=b.getCaretPos(),d=i.html_matcher.getTags(String(b.getContent()),a);d&&d[0]&&d[0].type=="tag"&&d[0].start<=a&&d[0].end>=a&&(c="html")}switch(c){case "css":c=b.getSelectionRange();if(c.start==c.end)c=b.getCurrentLineRange(),a=O(String(b.getContent()),c.start,c.end),c.start=a[0],c.end=a[1];return W(b,"/*","*/",c.start,c.end);default:c=b.getSelectionRange();a=String(b.getContent());if(c.start==
c.end&&(a=i.html_matcher.getTags(a,b.getCaretPos(),String(b.getProfileName())))&&a[0])c.start=a[0].start,c.end=a[1]?a[1].end:a[0].end;return W(b,"<\!--","--\>",c.start,c.end)}});i.registerAction("split_join_tag",function(b,c){var a=b.getCaretPos(),d=i.getProfile(String(c||b.getProfileName())),e=i.getCaretPlaceholder(),f=i.html_matcher.getTags(String(b.getContent()),a,String(b.getProfileName()));if(f&&f[0]){var g=f[0].full_tag;if(f[1]){var h=" /";d.self_closing_tag===!0&&(h="/");g=g.replace(/\s*>$/,
h+">");g.length+f[0].start<a?g+=e:(d=a-f[0].start,g=g.substring(0,d)+e+g.substring(d));b.replaceContent(g,f[0].start,f[1].end)}else a=i.getNewline(),h=i.getVariable("indentation"),e=d.tag_nl===!0?a+h+e+a:e,g=g.replace(/\s*\/>$/,">")+e+"</"+f[0].name+">",b.replaceContent(g,f[0].start,f[0].end);return!0}else return!1});i.registerAction("remove_tag",function(b){var c=b.getCaretPos(),a=String(b.getContent());if((c=i.html_matcher.getTags(a,c,String(b.getProfileName())))&&c[0]){if(c[1]){var d=O(a,c[0].end,
c[1].start),e,f=d[0];e=a.length;for(var g=0,h=e-1,j=f-1;j>0;j--){var n=a.charAt(j);if(n=="\n"||n=="\r"){g=j+1;break}}for(;f<e;f++)if(n=a.charAt(f),n=="\n"||n=="\r"){h=f;break}e={start:g,end:h};e=F(a.substring(e.start,e.end));a=a.substring(d[0],d[1]);a=P(a,e);b.replaceContent(i.getCaretPlaceholder()+a,c[0].start,c[1].end)}else b.replaceContent(i.getCaretPlaceholder(),c[0].start,c[0].end);return!0}else return!1});i.registerAction("encode_decode_data_url",function(b){var c=String(b.getSelection()),a=
b.getCaretPos();if(!c)for(var d=String(b.getContent());a-- >=0;)if(I("src=",d,a)){if(d=d.substr(a).match(/^(src=(["'])?)([^'"<>\s]+)\1?/))c=d[3],a+=d[1].length;break}else if(I("url(",d,a)){if(d=d.substr(a).match(/^(url\((['"])?)([^'"\)\s]+)\1?/))c=d[3],a+=d[1].length;break}if(c)if(I("data:",c))if(d=String(b.prompt("Enter path to file (absolute or relative)"))){var e=zen_file.createPath(b.getFilePath(),d);if(!e)throw"Can't save file";zen_file.save(e,L.decode(c.replace(/^data\:.+?;.+?,/,"")));b.replaceContent("$0"+
d,a,a+c.length);b=!0}else b=!1;else{d=b.getFilePath();if(d===null)throw"You should save your file before using this action";d=zen_file.locateFile(d,c);if(d===null)throw"Can't find "+c+" file";e=L.encode(String(zen_file.read(d)));if(!e)throw"Can't encode file content to base64";e="data:"+(L.mime_types[String(zen_file.getExt(d))]||"application/octet-stream")+";base64,"+e;b.replaceContent("$0"+e,a,a+c.length);b=!0}else b=!1;return b});i.registerAction("increment_number_by_1",function(b){return B(b,1)});
i.registerAction("decrement_number_by_1",function(b){return B(b,-1)});i.registerAction("increment_number_by_10",function(b){return B(b,10)});i.registerAction("decrement_number_by_10",function(b){return B(b,-10)});i.registerAction("increment_number_by_01",function(b){return B(b,0.1)});i.registerAction("decrement_number_by_01",function(b){return B(b,-0.1)});i.registerAction("evaluate_math_expression",function(b){var c=String(b.getContent()),a=X(b,function(a){return i.isNumeric(a)||".+-*/\\".indexOf(a)!=
-1});if(a){c=c.substring(a[0],a[1]);c=c.replace(/([\d\.\-]+)\\([\d\.\-]+)/g,"Math.round($1/$2)");try{var d=(new Function("return "+c))(),d=R(d);b.replaceContent(d,a[0],a[1]);b.setCaretPos(a[0]+d.length);return!0}catch(e){}}return!1});(function(){function b(a){if(!a||a!="html")a="xhtml";k=a}function c(a,b){var c=a[1].toLowerCase();return{name:c,full_tag:a[0],start:b,end:b+a[0].length,unary:Boolean(a[3])||c in n&&k=="html",has_close:Boolean(a[3]),type:"tag",close_self:c in m&&k=="html"}}function a(a,
b){return{start:a,end:b,type:"comment"}}function d(a){for(var b={},a=a.split(","),c=0;c<a.length;c++)b[a[c]]=!0;return b}function e(a,b,c){var c=c||0,d=-1,e=-1;if(a&&!b)d=a.start,e=a.end;else if(a&&b)a.start<c&&a.end>c||b.start<=c&&b.end>c?(d=a.start,e=b.end):(d=a.end,e=b.start);return[d,e]}function f(a,b,c){l.opening_tag=a;l.closing_tag=b;a=e(a,b,c||0);l.start_ix=a[0];l.end_ix=a[1];return l.start_ix!=-1?[l.start_ix,l.end_ix]:null}function g(d,k,g,f){function l(a,b){arguments.length==1&&(b=v);return d.substr(b,
a.length)==a}function n(a){for(;a--;)if(d.charAt(a)=="<"&&l("<\!--",a))break;return a}f=f||e;b(g);var g=[],m=[],p=null,o=null,i=d.length,t,v;g.last=m.last=function(){return this[this.length-1]};for(v=k;v--&&v>=0;)if(t=d.charAt(v),t=="<"){var u=d.substring(v,i);if(t=u.match(j))t=c(t,v),t.start<k&&t.end>k?o=t:m.push(t);else if(t=u.match(h))if(t=c(t,v),t.unary){if(t.start<k&&t.end>k)return f(t,null,k)}else if(m.last()&&m.last().name==t.name)m.pop();else{p=t;break}else if(u.indexOf("<\!--")==0&&(t=u.search("--\>")+
v+3,v<k&&t>=k))return f(a(v,t))}else t=="-"&&l("--\>")&&(v=n(v));if(!p)return f(null);if(!o)for(v=k;v<i;v++)if(t=d.charAt(v),t=="<")if(u=d.substring(v,i),t=u.match(h))t=c(t,v),t.unary||g.push(t);else if(t=u.match(j))if(t=c(t,v),g.last()&&g.last().name==t.name)g.pop();else{o=t;break}else l("<\!--")&&(v+=u.search("--\>")+2);else if(t=="-"&&l("--\>")&&(!g.last()||g.last().type!="comment"))return t=v+3,f(a(n(v),t));return f(p,o,k)}var h=/^<([\w\:\-]+)((?:\s+[\w\-:]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/,
j=/^<\/([\w\:\-]+)[^>]*>/,n=d("area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed");d("address,applet,blockquote,button,center,dd,dir,div,dl,dt,fieldset,form,frameset,hr,iframe,isindex,li,map,menu,noframes,noscript,object,ol,p,pre,script,table,tbody,td,tfoot,th,thead,tr,ul");d("a,abbr,acronym,applet,b,basefont,bdo,big,br,button,cite,code,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,select,small,span,strike,strong,sub,sup,textarea,tt,u,var");var m=d("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr"),
k="xhtml",l={opening_tag:null,closing_tag:null,start_ix:-1,end_ix:-1},o=function(a,b,c){return g(a,b,c,f)};o.start_tag=h;o.end_tag=j;o.find=function(a,b,c){return g(a,b,c)};o.getTags=function(a,b,c){return g(a,b,c,function(a,b){return[a,b]})};o.last_match=l;try{i.html_matcher=o}catch(p){}})();var L={chars:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",mime_types:{gif:"image/gif",png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",svg:"image/svg+xml",html:"text/html",htm:"text/html"},
encode:function(b){for(var c=[],a,d,e,f,g,h,j=0,n=b.length,m=this.chars;j<n;)f=b.charCodeAt(j++),g=b.charCodeAt(j++),h=b.charCodeAt(j++),a=f&255,d=g&255,e=h&255,f=a>>2,a=(a&3)<<4|d>>4,d=(d&15)<<2|e>>6,e&=63,isNaN(g)?d=e=64:isNaN(h)&&(e=64),c.push(m.charAt(f)+m.charAt(a)+m.charAt(d)+m.charAt(e));return c.join("")},decode:function(b){var c,a,d,e,f,g=0,h=0,j=[],n=this.chars,m=b.length;if(!b)return b;b+="";do c=n.indexOf(b.charAt(g++)),a=n.indexOf(b.charAt(g++)),e=n.indexOf(b.charAt(g++)),f=n.indexOf(b.charAt(g++)),
d=c<<18|a<<12|e<<6|f,c=d>>16&255,a=d>>8&255,d&=255,e==64?j[h++]=String.fromCharCode(c):f==64?j[h++]=String.fromCharCode(c,a):j[h++]=String.fromCharCode(c,a,d);while(g<m);return j.join("")}},ja=function(){function b(b,c){function d(a){return a!="\n"&&/^[\s\u00a0]*$/.test(a)}var e={state:c,take:function(a){typeof a=="string"&&(a={style:a,type:a});a.content=(a.content||"")+b.get();/\n$/.test(a.content)||b.nextWhile(d);a.value=a.content+b.get();return a},next:function(){if(!b.more())throw a;var c;if(b.equals("\n"))return b.next(),
this.take("whitespace");if(b.applies(d))c="whitespace";else for(;!c;)c=this.state(b,function(a){e.state=a});return this.take(c)}};return e}function c(a){function b(a){for(var c=a.length-1;c>=0;c--)t.push(a[c])}function c(){b(arguments);B=!0}function d(){b(arguments);B=!1}function k(){y.style+=" xml-error"}function l(a){return function(b,d){d==a?c():(k(),c(arguments.callee))}}function o(a,b){var c=e.doNotIndent.hasOwnProperty(a)||A&&A.noIndent;A={prev:A,name:a,indent:u,startOfLine:b,noIndent:c}}function p(a){return function(b,
c){var d=a;if(d&&d.noIndent)return c;if(f&&/<!\[CDATA\[/.test(b))return 0;if(d&&/^<\//.test(b))d=d.prev;for(;d&&!d.startOfLine;)d=d.prev;return d?d.indent+indentUnit:0}}function q(){return d(i,q)}function i(a,b){if(b=="<")c(r,G,x(v==1));else if(b=="</")c(w,l(">"));else{if(a=="xml-cdata"){if((!A||A.name!="!cdata")&&o("!cdata"),/\]\]>$/.test(b))A=A.prev}else F.hasOwnProperty(a)||k();c()}}function r(a,b){a=="xml-name"?(z=b.toLowerCase(),y.style="xml-tagname",c()):(z=null,d())}function w(a,b){if(a=="xml-name")y.style=
"xml-tagname",A&&b.toLowerCase()==A.name?A=A.prev:k();c()}function x(a){return function(b,d){d=="/>"||d==">"&&e.autoSelfClosers.hasOwnProperty(z)?c():d==">"?(o(z,a),c()):(k(),c(arguments.callee))}}function G(a){a=="xml-name"?(y.style="xml-attname",c(D,G)):d()}function D(a,b){b=="="?c(E):b==">"||b=="/>"?d(x):d()}function E(a){a=="xml-attribute"?c(E):d()}var C=g(a),y,t=[q],v=0,u=0,z=null,A=null,B,F={"xml-text":!0,"xml-entity":!0,"xml-comment":!0,"xml-processing":!0,"xml-doctype":!0};return{indentation:function(){return u},
next:function(){y=C.next();y.style=="whitespace"&&v==0?u=y.value.length:v++;if(y.content=="\n")u=v=0,y.indentation=p(A);if(y.style=="whitespace"||y.type=="xml-comment")return y;for(;;)if(B=!1,t.pop()(y.style,y.content),B)return y},copy:function(){var a=t.concat([]),b=C.state,c=A,d=this;return function(e){t=a.concat([]);v=u=0;A=c;C=g(e,b);return d}}}}var a={toString:function(){return"StopIteration"}},d=function(b){function c(){for(;e==d.length;){k+=d;d="";e=0;try{d=b.next()}catch(g){if(g!=a)throw g;
else return!1}}return!0}var d="",e=0,k="";if(typeof b=="string")var g=b,f=!1,b={next:function(){if(f)throw a;else return f=!0,g}};return{peek:function(){return!c()?null:d.charAt(e)},next:function(){if(!c())if(k.length>0)throw"End of stringstream reached without emptying buffer ('"+k+"').";else throw a;return d.charAt(e++)},get:function(){var a=k;k="";e>0&&(a+=d.slice(0,e),d=d.slice(e),e=0);return a},push:function(a){d=d.slice(0,e)+a+d.slice(e)},lookAhead:function(c,g,f,j){function l(a){return j?a.toLowerCase():
a}var c=l(c),o=!1,i=k,D=e;for(f&&this.nextWhileMatches(/[\s\u00a0]/);;){var f=e+c.length,E=d.length-e;if(f<=d.length){o=c==l(d.slice(e,f));e=f;break}else if(c.slice(0,E)==l(d.slice(e))){k+=d;d="";try{d=b.next()}catch(C){if(C!=a)throw C;break}e=0;c=c.slice(E)}else break}if(!o||!g)d=k.slice(i.length)+d,e=D,k=i;return o},lookAheadRegex:function(c,k){if(c.source.charAt(0)!="^")throw Error("Regexps passed to lookAheadRegex must start with ^");for(;d.indexOf("\n",e)==-1;)try{d+=b.next()}catch(g){if(g!=
a)throw g;break}var f=d.slice(e).match(c);f&&k&&(e+=f[0].length);return f},more:function(){return this.peek()!==null},applies:function(a){var b=this.peek();return b!==null&&a(b)},nextWhile:function(a){for(var b;(b=this.peek())!==null&&a(b);)this.next()},matches:function(a){var b=this.peek();return b!==null&&a.test(b)},nextWhileMatches:function(a){for(var b;(b=this.peek())!==null&&a.test(b);)this.next()},equals:function(a){return a===this.peek()},endOfLine:function(){var a=this.peek();return a==null||
a=="\n"}}},e={autoSelfClosers:{br:!0,img:!0,hr:!0,link:!0,input:!0,meta:!0,col:!0,frame:!0,base:!0,area:!0},doNotIndent:{pre:!0,"!cdata":!0}},f=!1,g=function(){function a(b,d){var g=b.next();if(g=="<")return b.equals("!")?(b.next(),b.equals("[")?b.lookAhead("[CDATA[",!0)?(d(e("xml-cdata","]]\>")),null):"xml-text":b.lookAhead("--",!0)?(d(e("xml-comment","--\>")),null):b.lookAhead("DOCTYPE",!0)?(b.nextWhileMatches(/[\w\._\-]/),d(e("xml-doctype",">")),"xml-doctype"):"xml-text"):b.equals("?")?(b.next(),
b.nextWhileMatches(/[\w\._\-]/),d(e("xml-processing","?>")),"xml-processing"):(b.equals("/")&&b.next(),d(c),"xml-punctuation");else if(g=="&"){for(;!b.endOfLine();)if(b.next()==";")break;return"xml-entity"}else return b.nextWhileMatches(/[^&<\n]/),"xml-text"}function c(b,e){var g=b.next();return g==">"?(e(a),"xml-punctuation"):/[?\/]/.test(g)&&b.equals(">")?(b.next(),e(a),"xml-punctuation"):g=="="?"xml-punctuation":/[\'\"]/.test(g)?(e(d(g)),null):(b.nextWhileMatches(/[^\s\u00a0=<>\"\'\/?]/),"xml-name")}
function d(a){return function(b,d){for(;!b.endOfLine();)if(b.next()==a){d(c);break}return"xml-attribute"}}function e(b,c){return function(d,e){for(;!d.endOfLine();){if(d.lookAhead(c,!0)){e(a);break}d.next()}return b}}return function(c,d){return b(c,d||a)}}();return{make:function(a){typeof a=="string"&&(a=d(a));return c(a)}}}(),ka=function(){function b(a){return typeof a!=="undefined"}function c(){return{"char":g.chnum,line:g.linenum}}function a(a,c,d){var e=g,d=d||{};h.push({charstart:b(d["char"])?
d["char"]:e.chnum,charend:b(d.charend)?d.charend:e.chnum,linestart:b(d.line)?d.line:e.linenum,lineend:b(d.lineend)?d.lineend:e.linenum,value:a,type:c||a})}function d(a,c){var d=g,e=c||{},f=b(e["char"])?e["char"]:d.chnum,e=b(e.line)?e.line:d.linenum;return{name:"ParseError",message:a+" at line "+(e+1)+" char "+(f+1),walker:d,tokens:h}}function e(b){var d=g,e=d.ch,h=c(),f=b?b+e:e,e=d.nextChar();for(b&&(h["char"]-=b.length);n(e)||m(e);)f+=e,e=d.nextChar();a(f,"identifier",h)}function f(){var b=g.ch;
if(b===" "||b==="\t"){for(var h=g.ch,f="",i=c();h===" "||h==="\t";)f+=h,h=g.nextChar();a(f,"white",i)}else{if(b==="/"){var h=g,b=i=h.ch,q,s=c();q=h.nextChar();if(q!=="*")s.charend=s["char"],s.lineend=s.line,f=a(b,b,s);else{for(;!(i==="*"&&q==="/");)b+=q,i=q,q=h.nextChar();b+=q;h.nextChar();a(b,"comment",s)}return f}if(b==='"'||b==="'"){h=g;b=i=f=h.ch;s=c();for(f=h.nextChar();f!==i;){if(f==="\n")if(q=h.nextChar(),q==="\\")b+=f+q;else throw d("Unterminated string",s);else b+=f==="\\"?f+h.nextChar():
f;f=h.nextChar()}b+=f;h.nextChar();a(b,"string",s)}else if(b==="("){h=g;f=h.ch;i=0;b=f;q=c();for(f=h.nextChar();f!==")"&&!i;){if(f==="(")i++;else if(f===")")i--;else if(f===!1)throw d("Unterminated brace",q);b+=f;f=h.nextChar()}b+=f;h.nextChar();a(b,"brace",q)}else{if(b==="-"||b==="."||m(b)){f=g;i=f.ch;b=c();q=i;var s=q===".",r,i=f.nextChar();r=!m(i);if(s&&r)b.charend=b["char"],b.lineend=b.line,h=a(q,".",b);else if(q==="-"&&r)h=e("-");else{for(;i!==!1&&(m(i)||!s&&i===".");)i==="."&&(s=!0),q+=i,i=
f.nextChar();a(q,"number",b)}return h}if(n(b))return e();if(j(b))return h=g,b=h.ch,f=c(),q=h.nextChar(),q==="="&&j(b,!0)?(b+=q,a(b,"match",f),h.nextChar(),i=void 0):(f.charend=f["char"]+1,f.lineend=f.line,a(b,b,f)),i;if(b==="\n")a("line"),g.nextChar();else throw d("Unrecognized character");}}}var g,h=[],j,n,m;g={lines:null,total_lines:0,linenum:-1,line:"",ch:"",chnum:-1,init:function(a){var b=g;b.lines=a.replace(/\r\n/g,"\n").replace(/\r/g,"\n").split("\n");b.total_lines=b.lines.length;b.chnum=-1;
b.linenum=-1;b.ch="";b.line="";b.nextLine();b.nextChar()},nextLine:function(){this.linenum+=1;this.line=this.total_lines<=this.linenum?!1:this.lines[this.linenum];if(this.chnum!==-1)this.chnum=0;return this.line},nextChar:function(){for(this.chnum+=1;this.line.charAt(this.chnum)==="";){if(this.nextLine()===!1)return this.ch=!1;this.chnum=-1;return this.ch="\n"}return this.ch=this.line.charAt(this.chnum)},peek:function(){return this.line.charAt(this.chnum+1)}};n=function(a){return a==="_"||a==="-"||
a>="a"&&a<="z"||a>="A"&&a<="Z"};m=function(a){return a!==!1&&a>="0"&&a<="9"};j=function(){for(var a="{}[]()+*=.,;:>~|\\%$#@^!".split(""),b="*^|$~".split(""),c={},d={},e=0;e<a.length;e+=1)c[a[e]]=!0;for(e=0;e<b.length;e+=1)d[b[e]]=!0;return function(a,b){return b?!!d[a]:!!c[a]}}();return{lex:function(a){g.init(a);for(h=[];g.ch!==!1;)f();return h},toSource:function(a){for(var b=0,c=a.length,d,e="";b<c;b+=1)d=a[b],e+=d.type==="line"?"\n":d.value;return e}}}(),z=function(){function b(a,b){for(var c,f,
g=0,h=a.length;g<h;g++)if(c=a[g],c.type=="value"){c.children=[];f=null;for(var j=c.ref_start_ix;j<=c.ref_end_ix;){var n=b[j];n.type!="white"?f?f[1]=n.end:f=[n.start,n.end]:f&&(c.children.push(f),f=null);j++}f&&c.children.push(f)}return a}function c(a,b,c,f){b=b||"";return{type:a||"",content:b,start:c,end:c+b.length,ref_start_ix:f,ref_end_ix:f}}return{parseCSS:function(a,b){return this.optimizeCSS(ka.lex(a),b||0,a)},parseHTML:function(a,b){var e=ja.make(a),f=[],g,h=0;try{for(;g=e.next();)f.push(c(g.style,
g.content,b+h,0)),h+=g.value.length}catch(j){if(j!="StopIteration")throw j;}return f},optimizeCSS:function(a,d,e){function f(a,b){b&&b in q?q[b]?(q[b].content+=a.value,q[b].end+=a.value.length,q[b].ref_end_ix=j):(q[b]=c(b,a.value,d+o+a.charstart,j),g.push(q[b])):g.push(c(a.type,a.value,d+o+a.charstart,j))}var d=d||0,g=[],h,j,n,i=0,k=!1,l=!1,o=0,p,q={selector:null,value:null},s=[];j=0;for(n=a.length;j<n;j++)if(h=a[j],p=null,h.type=="line")o+=i,i=e?e.charAt(o)=="\r"&&e.charAt(o+1)=="\n"?2:1:1,p=i==
1?"\n":"\r\n",s.push(c(h.type,p,d+o)),g.push(c(h.type,p,d+o,j)),o+=i,i=0;else if(s.push(c(h.type,h.value,d+o+h.charstart)),i=h.charstart+h.value.length,h.type!="white"){if(h.type=="{")k=!0,q.selector=null;else if(k)if(h.type==":")l=!0;else if(h.type==";")l=!1,q.value=null;else if(h.type=="}")l=k=!1,q.value=null;else{if(l||q.value)p="value"}else if(q.selector||!k&&"{};:".indexOf(h.type)==-1)p="selector";f(h,p)}else if(!(j<n-1&&"{};:".indexOf(a[j+1].type)!=-1)&&(q.selector||q.value))f(h,q.selector?
"selector":"value");g.__original=s;return b(g,s)},extractCSSRule:function(a,b,c){for(var f="",g=a.length,h=-1,j;b>=0;){j=a.charAt(b);if(j=="{"){h=b;break}else if(j=="}"&&!c){b++;break}b--}for(;b<g;){j=a.charAt(b);if(j=="{")h=b;else if(j=="}"){h!=-1&&(f=a.substring(h,b+1));break}b++}if(f){b=h-1;for(c="";b>=0;){j=a.charAt(b);if("{}/\\<>".indexOf(j)!=-1)break;b--}c=a.substring(b+1,h).replace(/^[\s\n\r]+/m,"");return[h-c.length,h+f.length]}return null},token:c}}();i.actions.doCSSReflection=ba;i.registerAction("reflect_css_value",
function(b){return b.getSyntax()!="css"?!1:Y(b,ba(b))});i.registerAction("update_image_size",function(b){var c;if(String(b.getSyntax())=="css")c=fa(b);else a:{c=b.getCaretPos();var a;b:{a=b.getCaretPos();var d=String(b.getContent()),e=d.length,f=-1,g=-1;do{if(a<0)break;if(d.charAt(a)=="<")if(d.substring(a,a+4).toLowerCase()=="<img"){f=a;break}else{a=null;break b}}while(a--);a=b.getCaretPos();do{if(a>=e)break;if(d.charAt(a)==">"){g=a+1;break}}while(a++);a=f!=-1&&g!=-1?{start:f,end:g,tag:d.substring(f,
g)}:null}if(a){var h;if(d=/\bsrc=(["'])(.+?)\1/i.exec(a.tag))h=d[2];if(h&&(h=$(b,h))){d=aa(a.tag,"width",h.width);d=aa(d,"height",h.height);c={data:d,start:a.start,end:a.end,caret:c};break a}}c=null}return Y(b,c)});(function(){function b(a){var b=!0;return f(a,!1,function(a,c){if(b){b=!1;var e;a:{e=c;for(var f;e>=0;){if(f=d(a,e)){e=f;break a}e--}e=null}return e}else return d(a,c)},c)}function c(a,b,c,d){for(var a=z.parseHTML(a,b),f=[],b=0,h=a.length;b<h;b++){var g=a[b];if(g.type in o&&(f=g.start>=
c,g.type=="xml-attribute"&&e(g.content.charAt(0))&&(f=g.start+1>=c&&g.end-1!=d),f||c==d&&g.end>c))if(g.type=="xml-attname"){if(f=n(a,b,d<=g.end?g.start:-1))return f}else if(g.end>d&&(f=[g.start,g.end],g.type=="xml-attribute"&&(f=m(g.content,f)),!(c==f[0]&&d==f[1])))return f}return null}function a(a,b,c){for(var a=z.parseHTML(a,b),d,b=a.length-1;b>=0;b--){var f=a[b];if(f.type in o&&(d=f.start<c,f.type=="xml-attribute"&&e(f.content.charAt(0))&&(d=f.start+1<c),d))if(f.type=="xml-attname"){if(d=n(a,b,
f.start))return d}else return d=[f.start,f.end],f.type=="xml-attribute"&&(d=m(f.content,d)),d}return null}function d(a,b){var c;if(a.charAt(b)=="<"&&(c=a.substring(b,a.length).match(l)))return[b,b+c[0].length]}function e(a){return a=='"'||a=="'"}function f(a,b,c,d){var e=String(a.getContent()),f=e.length,h,g,j=1E5,k=[-1,-1];h=a.getSelectionRange();var n=Math.min(h.start,h.end),i=Math.max(h.start,h.end);for(g=n;g>=0&&g<f&&j>0;){j--;if(h=c(e,g,b)){if(k[0]==h[0]&&k[1]==h[1])break;k[0]=h[0];k[1]=h[1];
g=e.substring(h[0],h[1]);if(g=d(g,h[0],n,i))return a.createSelection(g[0],g[1]),!0;else g=b?h[0]:h[1]-1}g+=b?-1:1}return!1}function g(a,b,c,d){for(var e=z.parseCSS(a,b),f,h=[],g=0,n=e.length;g<n;g++){var i=e[g];if(i.type in p&&(c==d?f=i.end>c:(f=i.start>=c,i.type=="value"&&(f=f||c>=i.start&&i.end>=d)),f))if(i.type=="identifier"){if(h=j(e,g,d<=i.end?i.start:-1))return h}else if(i.type=="value"&&d>i.start&&i.children){f=i.children;for(var i=0,l=f.length;i<l;i++)if(f[i][0]>=c||c==d&&f[i][1]>c){h=[f[i][0],
f[i][1]];if(h[0]==c&&h[1]==d&&(h=k(a,h[0],h[1],b),h[0]==c&&h[1]==d))continue;return h}}else if(i.end>d)return[i.start,i.end]}return null}function h(a,b,c,d){for(var e=z.parseCSS(a,b),f=[],h=e.length-1;h>=0;h--){var f=e[h],g;if(f.type in p&&(g=f.start<c,f.type=="value"&&f.ref_start_ix!=f.ref_end_ix&&(g=f.start<=c),g))if(f.type=="identifier"){if(g=j(e,h,f.start))return g}else if(f.type=="value"&&f.ref_start_ix!=f.ref_end_ix){g=f.children;for(var i=g.length-1;i>=0;i--)if(g[i][0]<c)return f=[g[i][0],
g[i][1]],g=k(a,f[0],f[1],b),!(g[0]==c&&g[1]==d)?g:f;f=[f.start,f.end];if(!(f[0]==c&&f[1]==d))return f}else return[f.start,f.end]}return null}function j(a,b,c){b+=1;for(var d=a.length;b<d;b++){var e=a[b];if(e.type=="value"&&c==-1||e.type=="identifier")return[e.start,e.end];else if(e.type==";")return[c==-1?e.start:c,e.end];else if(e.type=="}")return[c==-1?e.start:c,e.start-1]}return null}function n(a,b,c){for(var d=b+1,e=a.length;d<e;d++){var f=a[d];if(f.type=="xml-attribute")return c==-1?m(f.content,
[f.start,f.end]):[c,f.end];else if(f.type=="xml-attname")return[f.start,a[b].end]}return null}function m(a,b){e(a.charAt(0))&&b[0]++;e(a.charAt(a.length-1))&&b[1]--;return b}function k(a,b,c,d){a=a.substring(b-d,c-d);if(d=a.match(/^[\w\-]+\(['"]?/))if(b+=d[0].length,d=a.match(/['"]?\)$/))c-=d[0].length;return[b,c]}var l=/^<([\w\:\-]+)((?:\s+[\w\-:]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/,o={"xml-tagname":1,"xml-attname":1,"xml-attribute":1},p={selector:1,identifier:1,value:1};
i.registerAction("select_next_item",function(a){return a.getSyntax()=="css"?f(a,!1,z.extractCSSRule,g):b(a)});i.registerAction("select_previous_item",function(b){return b.getSyntax()=="css"?f(b,!0,z.extractCSSRule,h):f(b,!0,d,a)})})();i.registerFilter("bem",function(){function b(b){if(b.type!="tag")return b;b.__bem={block:"",element:"",modifier:""};var d=c(b.getAttribute("class")).split(" "),e=[],f,g,j;f=0;for(g=d.length;f<g;f++)e.push(a(d[f],b));d=[];f=0;for(g=e.length;f<g;f++)if(j=e[f],h(j))for(var i=
0,s=j.length;i<s;i++)d.push(j[i]);else d.push(j);e=[];f=0;for(g=d.length;f<g;f++){j=d[f];var i=e,s=j,r=-1;if(i.indexOf)r=i.indexOf(s);else for(var w=0,x=i.length;w<x;w++)if(i[w]===s){r=w;break}r!=-1||e.push(j)}d=e;b.setAttribute("class",d.join(" "));if(!b.__bem.block){j=/^[a-z]\-/i;f=0;for(g=d.length;f<g;f++)if(j.test(d[f])){b.__bem.block=d[f];break}if(!b.__bem.block)b.__bem.block=d[0]}return b}function c(a){a=(" "+(a||"")+" ").replace(/\s+/g," ").replace(/\s(\-+)/g,function(a,b){return" "+i.repeatString(f.element,
b.length)});return i.trim(a)}function a(a,b){var a=d(a,b,"element"),a=d(a,b,"modifier"),c,e="",g="",h="";~a.indexOf(f.element)?(e=a.split(f.element),c=e[1].split(f.modifier),e=e[0],g=c.shift(),h=c.join(f.modifier)):~a.indexOf(f.modifier)&&(c=a.split(f.modifier),e=c.shift(),h=c.join(f.modifier));if(e){var j=e;c=[];g&&(j+=f.element+g);c.push(j);h&&c.push(j+f.modifier+h);b.__bem.block=e;b.__bem.element=g;b.__bem.modifier=h;return c}return a}function d(a,b,c){var d=RegExp("^("+f[c]+")+","g");if(d.test(a)){for(var e=
0,d=a.replace(d,function(a){e=a.length/f[c].length;return""}),g=b;g.parent&&e--;)g=g.parent;if(!g||!g.__bem)g=b;if(g&&g.__bem)return a=g.__bem.block,c=="modifier"&&g.__bem.element&&(a+=f.element+g.__bem.element),a+f[c]+d}return a}function e(a,c){a.name&&b(a);for(var d=0,f=a.children.length;d<f;d++){var g=a.children[d];e(b(g),c);g.type=="tag"&&g.start&&(j=!0)}return a}var f={element:"__",modifier:"_"},g=Object.prototype.toString,h=Array.isArray||function(a){return g.call(a)=="[object Array]"},j=!1;
return function(a,b,c){j=!1;a=e(a,b,c);j&&(a=i.runFilters(a,b,"html"));return a}}());(function(){function b(c,a){if(a.tag_nl===!1)return c;for(var d=0,e=c.children.length;d<e;d++){var f=c.children[d];if(f.isBlock()){var g=f,h=g.getAttribute("id"),j=g.getAttribute("class"),n=i.getNewline();if(h||j){var m="",k=g.parent?g.parent.padding:"";h&&(m+="#"+h);j&&(m+="."+j);g.start=g.start.replace(/</,"<\!-- "+m+" --\>"+n+k+"<");g.end=g.end.replace(/>/,">"+n+k+"<\!-- /"+m+" --\>");h=i.getCounterForNode(g);
g.start=i.replaceCounter(g.start,h);g.end=i.replaceCounter(g.end,h)}}b(f,a)}return c}i.registerFilter("c",b)})();(function(){function b(a,d){for(var e=0,f=a.children.length;e<f;e++){var g=a.children[e];if(g.type=="snippet"&&c.test(g.real_name))g.start=g.start.replace(/(;?)$/," !important$1");b(g,d)}return a}var c=/(.+)\!$/;i.registerFilter("css",b)})();(function(){function b(b){return b.replace(/([<>&])/g,function(b,c){return a[c]})}function c(a){for(var e=0,f=a.children.length;e<f;e++){var g=a.children[e];
g.start=b(g.start);g.end=b(g.end);c(g)}return a}var a={"<":"&lt;",">":"&gt;","&":"&amp;"};i.registerFilter("e",c)})();(function(){function b(c,a){for(var d=0,e=c.children.length;d<e;d++){var f=c.children[d];if(f.type=="snippet")f.start=f.start.replace(/([\w\-]+\s*:)(?!:)\s*/,"$1 ");b(f,a)}return c}i.registerFilter("fc",b)})();(function(){function b(){return u.getVariable("indentation")}function c(a){return a.parent&&!a.parent.parent&&!a.previousSibling}function a(a,b){if(!b.inline_break)return!1;
for(;a.previousSibling&&a.previousSibling.isInline();)a=a.previousSibling;if(!a.isInline())return!1;for(var c=1;a=a.nextSibling;)a.type=="text"||!a.isInline()?c=0:a.isInline()&&c++;return c>=b.inline_break}function d(d,e,f){if(!d.name)return d;d.start=d.end=g;var m=d.isUnary()&&!d.children.length;if(e.tag_nl!==!1){var f=d.parent?d.parent.padding:i.repeatString(b(),f),k=e.tag_nl===!0,l=a(d,e);if(d.type!="text"){if((d.isBlock()||l)&&d.parent||k){if(!d.parent||d.parent.type!="snippet"&&!c(d))d.start=
i.getNewline()+f+d.start;if(d.hasBlockChildren()||d.children.length&&a(d.children[0],e)||k&&!m)d.end=i.getNewline()+f+d.end;if(d.hasTagsInContent()||k&&!d.hasChildren()&&!m)d.start+=i.getNewline()+f+b()}else if(d.isInline()&&d.parent&&d.parent.hasBlockChildren()&&!c(d))d.start=i.getNewline()+f+d.start;else if(d.isInline()&&d.hasBlockChildren())d.end=i.getNewline()+f+d.end;d.padding=f+b()}}return d}function e(a,j,n){for(var n=n||0,m=0,k=a.children.length;m<k;m++){var l=a.children[m];if(l.type=="tag")l=
d(l,j,n);else{var o=n,p=l.source.value;if(p){l.start=l.end=g;o=l.parent?l.parent.padding:i.repeatString(b(),o);if(!c(l))l.start=i.getNewline()+o+l.start;var p=p.split(f),q=i.splitByLines(p[0]||""),p=b();q.length>1&&(q=q[q.length-1].match(/^(\s+)/))&&(p=q[1]);l.padding=o+p}else l=d(l,j,o)}if(l.content)l.content=i.padString(l.content,l.padding);e(l,j,n+1)}return a}var f="${child}",g="%s";i.registerFilter("_format",e)})();(function(){function b(a,b,g){var h=a.source.value;if(!h)return c(a,b,g);b=h.split(d);
g=b[1]||"";h=a.parent?a.parent.padding:"";a.start=a.start.replace("%s",i.padString(b[0]||"",h));a.end=a.end.replace("%s",i.padString(g,h));b=function(b,c){return c=="id"||c=="class"?a.getAttribute(c):b};a.start=i.replaceVariables(a.start,b);a.end=i.replaceVariables(a.end,b);return a}function c(a,b){if(!a.name)return a;var c,d="",j=b.attr_quotes=="single"?"'":'"';c=b.place_cursor?i.getCaretPlaceholder():"";var n,m,k;for(m=0;m<a.attributes.length;m++)switch(k=a.attributes[m],k.name.toLowerCase()){case "id":d+=
"#"+(k.value||c);break;case "class":d+="."+(k.value||c)}var l=[];for(m=0;m<a.attributes.length;m++)k=a.attributes[m],n=k.name.toLowerCase(),n!="id"&&n!="class"&&(n=b.attr_case=="upper"?k.name.toUpperCase():n,l.push(":"+n+" => "+j+(k.value||c)+j));l.length&&(d+="{"+l.join(", ")+"}");c=d;d=b.place_cursor?i.getCaretPlaceholder():"";m="";j=a.isUnary()&&!a.children.length;k="";b.self_closing_tag&&j&&(m="/");k="%"+(b.tag_case=="upper"?a.name.toUpperCase():a.name.toLowerCase());k.toLowerCase()=="%div"&&
c&&c.indexOf("{")==-1&&(k="");a.end="";k=k+c+m;c=a.start.indexOf("%s");a.start=a.start.substring(0,c)+k+a.start.substring(c+2);!a.children.length&&!j&&(a.start+=d);return a}function a(d,f,g){g=g||0;g==0&&(d=i.runFilters(d,f,"_format"));for(var h=0,j=d.children.length;h<j;h++){var n=d.children[h],n=n.type=="tag"?c(n,f,g):b(n,f,g),m=i.getCounterForNode(n);n.start=i.unescapeText(i.replaceCounter(n.start,m));n.end=i.unescapeText(i.replaceCounter(n.end,m));a(n,f,g+1)}return d}var d="${child}";i.registerFilter("haml",
a)})();(function(){function b(a,b){switch(String(b||"").toLowerCase()){case "lower":return a.toLowerCase();case "upper":return a.toUpperCase()}return a}function c(b,c,d){var f=b.source.value;if(!f)return a(b,c,d);c=f.split(e);d=c[1]||"";f=b.parent?b.parent.padding:"";b.start=b.start.replace("%s",i.padString(c[0]||"",f));b.end=b.end.replace("%s",i.padString(d,f));c=function(a,c){return c=="id"||c=="class"?b.getAttribute(c):a};b.start=i.replaceVariables(b.start,c);b.end=i.replaceVariables(b.end,c);
return b}function a(a,c){if(!a.name)return a;var d,e="",f=c.attr_quotes=="single"?"'":'"',k=c.place_cursor?i.getCaretPlaceholder():"",l;for(d=0;d<a.attributes.length;d++){var o=a.attributes[d];l=b(o.name,c.attr_case);e+=" "+l+"="+f+(o.value||k)+f}d=e;e=c.place_cursor?i.getCaretPlaceholder():"";o="";f=a.isUnary()&&!a.children.length;l=k="";c.self_closing_tag=="xhtml"?o=" /":c.self_closing_tag===!0&&(o="/");if(a.type!="text"){var p=b(a.name,c.tag_case);f?(k="<"+p+d+o+">",a.end=""):(k="<"+p+d+">",l=
"</"+p+">")}d=a.start.indexOf("%s");a.start=a.start.substring(0,d)+k+a.start.substring(d+2);d=a.end.indexOf("%s");a.end=a.end.substring(0,d)+l+a.end.substring(d+2);!a.children.length&&!f&&a.content.indexOf(e)==-1&&(a.start+=e);return a}function d(b,e,j){j=j||0;j==0&&(b=i.runFilters(b,e,"_format"),f=0);for(var n=0,m=b.children.length;n<m;n++){var k=b.children[n],k=k.type=="tag"?a(k,e,j):c(k,e,j),l=i.getCounterForNode(k);k.start=i.unescapeText(i.replaceCounter(k.start,l));k.end=i.unescapeText(i.replaceCounter(k.end,
l));k.content=i.unescapeText(i.replaceCounter(k.content,l));f+=i.upgradeTabstops(k,f)+1;d(k,e,j+1)}return b}var e="${child}",f=0;i.registerFilter("html",d)})();(function(){function b(c){for(var a=0,d=c.children.length;a<d;a++){var e=c.children[a];if(e.type=="tag"){var f=/^\s+/;e.start=e.start.replace(f,"");e.end=e.end.replace(f,"")}f=/[\n\r]/g;e.start=e.start.replace(f,"");e.end=e.end.replace(f,"");e.content=e.content.replace(f,"");b(e)}return c}i.registerFilter("s",b)})();(function(){function b(c){for(var a=
0,d=c.children.length;a<d;a++){var e=c.children[a];if(e.content)e.content=e.content.replace(/^([\s|\u00a0])?[\d|#|\-|\*|\u2022]+\.?\s*/,"$1");b(e)}return c}i.registerFilter("t",b)})();(function(){function b(a){for(var d=0,e=a.children.length;d<e;d++){var f=a.children[d];if(f.type=="tag"&&f.name.toLowerCase()in c&&f.children.length)f.start=f.start.replace(/\s+select\s*=\s*(['"]).*?\1/,"");b(f)}}var c={"xsl:variable":1,"xsl:with-param":1};i.registerFilter("xsl",b)})();var S=function(){var b=!!window.opera,
c=/mac\s+os/i.test(navigator.userAgent),a={"`":"~",1:"!",2:"@",3:"#",4:"$",5:"%",6:"^",7:"&",8:"*",9:"(",0:")","-":"_","=":"+",";":":","'":'"',",":"<",".":">","/":"?","\\":"|"},d={esc:27,escape:27,tab:9,space:32,"return":13,enter:13,backspace:8,scrolllock:145,scroll_lock:145,scroll:145,capslock:20,caps_lock:20,caps:20,numlock:144,num_lock:144,num:144,pause:19,"break":19,insert:45,home:36,"delete":46,end:35,pageup:33,page_up:33,pu:33,pagedown:34,page_down:34,pd:34,plus:187,minus:189,left:37,up:38,
right:39,down:40,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123},e={ctrl:"\u2303",control:"\u2303",meta:"\u2318",shift:"\u21e7",alt:"\u2325",enter:"\u23ce",tab:"\u21e5",left:"\u2190",right:"\u2192",up:"\u2191",down:"\u2193"},f={meta:"Ctrl",control:"Ctrl",left:"\u2190",right:"\u2192",up:"\u2191",down:"\u2193"},g={SHIFT:1,CTRL:2,ALT:4,META:8};return{compile:function(a){if(typeof a!="string")return a;for(var d=0,a=a.toLowerCase().split("+"),e,f,i=0,l=a.length;i<
l;i++)f=a[i],c&&b?f=="ctrl"||f=="control"?f="meta":f=="meta"&&(f="ctrl"):!c&&f=="meta"&&(f="ctrl"),f=="ctrl"||f=="control"?d|=g.CTRL:f=="shift"?d|=g.SHIFT:f=="alt"?d|=g.ALT:f=="meta"?d|=g.META:e=f;return{mask:d,key:e}},test:function(b,c){var e=0,f=this.compile(b);c.ctrlKey&&(e|=g.CTRL);c.shiftKey&&(e|=g.SHIFT);c.altKey&&(e|=g.ALT);c.metaKey&&(e|=g.META);var i=c.keyCode?c.keyCode:c.which,l=String.fromCharCode(i).toLowerCase();if(e!==f.mask)return!1;if(f.key.length>1)return d[f.key]==i;else{i==188&&
(l=",");i==190&&(l=".");i==191&&(l="/");if(l==f.key)return!0;if(c.shiftKey&&a[l])return a[l]==f.key}return!1},format:function(a){for(var b=c?e:f,d=c?"":"+",a=a.toLowerCase().split("+"),g=[],i,l=0;l<a.length;l++)i=a[l],g.push(i in b?b[i]:i.charAt().toUpperCase()+i.substring(1));return g.join(d)}}}(),T=function(){function b(){return m.value||""}function c(){if("selectionStart"in m)return{start:m.selectionStart,end:m.selectionEnd};else if(document.selection){m.focus();var a=document.selection.createRange();
if(a===null)return{start:0,end:b().length};var c=m.createTextRange(),d=c.duplicate();c.moveToBookmark(a.getBookmark());d.setEndPoint("EndToStart",c);return{start:d.text.length,end:d.text.length+a.text.length}}else return null}function a(a,c){typeof c=="undefined"&&(c=a);if("setSelectionRange"in m)m.setSelectionRange(a,c);else if("createTextRange"in m){var d=m.createTextRange();d.collapse(!0);var e=i.splitByLines(b().substring(0,a)).length-1;c-=e+i.splitByLines(b().substring(a,c)).length-1;a-=e;d.moveStart("character",
a);d.moveEnd("character",c-a);d.select()}}function d(){var a=c();return a?a.start:null}function e(a){return(a.match(/^(\s+)/)||[""])[0]}function f(a){for(var b=m.className||"",c=/\bzc\-(\w+)\-(\w+)/g,d,e=g(p);d=c.exec(b);){var f=d[1].toLowerCase();d=d[2].toLowerCase();if(d=="true"||d=="yes"||d=="1")d=!0;else if(d=="false"||d=="no"||d=="0")d=!1;e[f]=d}return e[a]}function g(a){var a=a||{},b={},c;for(c in l)l.hasOwnProperty(c)&&(b[c]=c in a?a[c]:l[c]);return b}function h(a){var b=0,c=a.indexOf(k),d=
{};c!=-1?a=a.split(k).join(""):c=a.length;a=i.processTextBeforePaste(a,function(a){return a},function(a,e,f){f&&(d[e]=f);if(a<c&&(c=a,f))b=f.length;return d[e]||""});return[a,c,c+b]}function j(a,b,c){o[a.toLowerCase()]={compiled:S.compile(a),label:b,action:(c||b).replace(/(^\s+|\s+$)/g,"").replace(/[\s\\\/]+/g,"_").replace(/\./g,"").toLowerCase()}}function n(a){var a=a||window.event,b=a.target||a.srcElement,c=a.keyCode||a.which,d;if(b&&b.nodeType==1&&b.nodeName=="TEXTAREA")for(d in T.setContext(b),
o)if(o.hasOwnProperty(d)&&(b=o[d],S.test(b.compiled,a))){d=b.action;switch(d){case "expand_abbreviation":if(c==9)if(f("use_tab"))d="expand_abbreviation_with_tab";else return!0;break;case "insert_formatted_line_break":if(c==13&&!f("pretty_break"))return!0}i.runAction(d,[T]);a.cancelBubble=!0;a.returnValue=!1;a.stopPropagation&&(a.stopPropagation(),a.preventDefault());return!1}return!0}var m=null,k="|",l={profile:"xhtml",syntax:"html",use_tab:!1,pretty_break:!1},o={},p=null,q=document.createElement("textarea");
q.value="\n";i.setNewline(q.value);var q=null,q=document,s=window.opera?"keypress":"keydown";q.addEventListener?q.addEventListener(s,n,!1):q.attachEvent?ele.attachEvent("on"+s,n):q["on"+s]=func;p=g();j("Meta+E","Expand Abbreviation");j("Tab","Expand Abbreviation");j("Meta+D","Balance Tag Outward","match_pair_outward");j("Shift+Meta+D","Balance Tag inward","match_pair_inward");j("Shift+Meta+A","Wrap with Abbreviation");j("Ctrl+Alt+RIGHT","Next Edit Point");j("Ctrl+Alt+LEFT","Previous Edit Point","prev_edit_point");
j("Meta+L","Select Line");j("Meta+Shift+M","Merge Lines");j("Meta+/","Toggle Comment");j("Meta+J","Split/Join Tag");j("Meta+K","Remove Tag");j("Ctrl+I","Update image size");j("Enter","Insert Formatted Line Break");j("Meta+Y","Evaluate Math Expression");j("Ctrl+UP","Increment number by 1");j("Ctrl+DOWN","Decrement number by 1");j("Alt+UP","Increment number by 0.1");j("Alt+DOWN","Decrement number by 0.1");j("Ctrl+Alt+UP","Increment number by 10");j("Ctrl+Alt+DOWN","Decrement number by 10");j("Meta+.",
"Select Next Item");j("Meta+,","Select Previous Item");j("Meta+Shift+B","Reflect CSS Value");return{setContext:function(a){m=a;k=i.getCaretPlaceholder()},getSelectionRange:c,createSelection:a,getCurrentLineRange:function(){var a=d(),c=b();if(a===null)c=null;else{for(var e=c.length,f=0,g=e-1,h=a-1;h>0;h--){var i=c.charAt(h);if(i=="\n"||i=="\r"){f=h+1;break}}for(;a<e;a++)if(i=c.charAt(a),i=="\n"||i=="\r"){g=a;break}c={start:f,end:g}}return c},getCaretPos:d,setCaretPos:function(b){a(b)},getCurrentLine:function(){var a=
this.getCurrentLineRange();return a.start<a.end?this.getContent().substring(a.start,a.end):""},replaceContent:function(a,c,f,g){var j=b();d();var k=typeof c!=="undefined",l=typeof f!=="undefined";g||(a=i.padString(a,e(this.getCurrentLine())));g=h(a);a=g[0];c=c||0;g[1]!==-1?(g[1]+=c,g[2]+=c):g[1]=g[2]=a.length+c;try{k&&l?j=j.substring(0,c)+a+j.substring(f):k&&(j=j.substring(0,c)+a+j.substring(c)),m.value=j,this.createSelection(g[1],g[2])}catch(n){}},getContent:b,getSyntax:function(){var a=this.getOption("syntax"),
b=this.getCaretPos();u.hasSyntax(a)||(a="html");if(a=="html"){var c=i.html_matcher.getTags(this.getContent(),b);c&&c[0]&&c[0].type=="tag"&&c[0].name.toLowerCase()=="style"&&c[0].end<=b&&c[1].start>=b&&(a="css")}return a},getProfileName:function(){return this.getOption("profile")},prompt:function(a){return prompt(a)},getSelection:function(){var a=c();if(a)try{return b().substring(a.start,a.end)}catch(d){}return""},getFilePath:function(){return location.href},setOptions:function(a){p=g(a)},getOption:f,
addShortcut:j,unbindShortcut:function(a){a=a.toLowerCase();a in o&&delete o[a]},getShortcuts:function(){var a=[],b,c;for(c in o)o.hasOwnProperty(c)&&(b=c.toLowerCase(),b=="tab"||b=="enter"||a.push({keystroke:S.format(c),compiled:o[c].compiled,label:o[c].label,action:o[c].action}));return a},getInfo:function(){for(var a="This textareas on this page are powered by Zen Coding project: a set of tools for fast HTML coding.\n\nAvailable shortcuts:\n",b=this.getShortcuts(),c=[],d=0;d<b.length;d++)c.push(b[d].keystroke+
" \u2014 "+b[d].label);a+=c.join("\n")+"\n\n";a+="More info on http://code.google.com/p/zen-coding/";return a},showInfo:function(){alert(this.getInfo())},setup:function(a){this.setOptions(a)},getCore:function(){return i},getResourceManager:function(){return u}}}();return T}();
