html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font:inherit;font-size:100%;vertical-align:baseline}html{line-height:1}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0}caption,th,td{text-align:left;font-weight:normal;vertical-align:middle}q,blockquote{quotes:none}q:before,q:after,blockquote:before,blockquote:after{content:"";content:none}a img{border:none}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{display:block}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{display:block}p.meta+.sharing{padding-top:1em;padding-left:0}#fb-root{display:none}.CodeRay pre{background:none;color:#000;overflow:auto;white-space:pre;word-wrap:break-word;word-break:normal}.CodeRay span.insert,.CodeRay span.change,.CodeRay span.delete{width:auto}.CodeRay pre,p code,li code{border:1px solid #565656;border-top-color:#cbcbcb;border-left-color:#a5a5a5;border-right-color:#a5a5a5}.gist .gist-file .gist-data .line-data{font-size:13px;line-height:1.45em}.gist .gist-file .gist-data .file-data .lines{width:100%}.bg_red_icon{color:red;font-size:29px}.articletext .left{float:left;margin-right:10px}.CodeRay{font-family:Monaco, "Courier New", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace;color:#000;margin-bottom:14px}.CodeRay pre{margin:0px;padding:1em;background-color:#efefef}span.CodeRay{white-space:pre;border:0px;padding:2px}table.CodeRay{border-collapse:collapse;width:100%;padding:2px}table.CodeRay td{padding:1em 0.5em;vertical-align:top}.CodeRay .line-numbers,.CodeRay .no{background-color:#ECECEC;color:#AAA;text-align:right}.CodeRay .line-numbers a{color:#AAA}.CodeRay .line-numbers tt{font-weight:bold}.CodeRay .line-numbers .highlighted{color:red}.CodeRay .line{display:block;float:left;width:100%}.CodeRay span.line-numbers{padding:0px 4px}.CodeRay .code{width:100%}ol.CodeRay{font-size:10pt}ol.CodeRay li{white-space:pre}.CodeRay .code pre{overflow:auto}.CodeRay .debug{color:#fff !important;background:blue !important}.CodeRay .annotation{color:#007}.CodeRay .attribute-name{color:#f08}.CodeRay .attribute-value{color:#700}.CodeRay .binary{color:#509;font-weight:bold}.CodeRay .comment{color:#998;font-style:italic}.CodeRay .char{color:#04d}.CodeRay .char .content{color:#04d}.CodeRay .char .delimiter{color:#039}.CodeRay .class{color:#458;font-weight:bold}.CodeRay .complex{color:#A08;font-weight:bold}.CodeRay .constant{color:teal}.CodeRay .color{color:#0a0}.CodeRay .class-variable{color:#369}.CodeRay .decorator{color:#B0B}.CodeRay .definition{color:#099;font-weight:bold}.CodeRay .directive{color:#088;font-weight:bold}.CodeRay .delimiter{color:#000}.CodeRay .doc{color:#970}.CodeRay .doctype{color:#34b}.CodeRay .doc-string{color:#D42;font-weight:bold}.CodeRay .escape{color:#666;font-weight:bold}.CodeRay .entity{color:#800;font-weight:bold}.CodeRay .error{color:#F00;background-color:#faa}.CodeRay .exception{color:#C00;font-weight:bold}.CodeRay .filename{color:#099}.CodeRay .function{color:#900;font-weight:bold}.CodeRay .global-variable{color:teal;font-weight:bold}.CodeRay .hex{color:#058;font-weight:bold}.CodeRay .integer{color:#099}.CodeRay .include{color:#B44;font-weight:bold}.CodeRay .inline{color:#000}.CodeRay .inline .inline{background:#ccc}.CodeRay .inline .inline .inline{background:#bbb}.CodeRay .inline .inline-delimiter{color:#D14}.CodeRay .inline-delimiter{color:#D14}.CodeRay .important{color:#f00}.CodeRay .interpreted{color:#B2B;font-weight:bold}.CodeRay .instance-variable{color:teal}.CodeRay .label{color:#970;font-weight:bold}.CodeRay .local-variable{color:#963}.CodeRay .octal{color:#40E;font-weight:bold}.CodeRay .predefined-constant{font-weight:bold}.CodeRay .predefined{color:#369;font-weight:bold}.CodeRay .preprocessor{color:#579}.CodeRay .pseudo-class{color:#00C;font-weight:bold}.CodeRay .predefined-type{color:#074;font-weight:bold}.CodeRay .reserved,.keyword{color:#000;font-weight:bold}.CodeRay .key{color:#808}.CodeRay .key .delimiter{color:#606}.CodeRay .key .char{color:#80f}.CodeRay .value{color:#088}.CodeRay .regexp{background-color:#fff0ff}.CodeRay .regexp .content{color:#808}.CodeRay .regexp .delimiter{color:#404}.CodeRay .regexp .modifier{color:#c2c}.CodeRay .regexp .function{color:#404;font-weight:bold}.CodeRay .string{color:#D20}.CodeRay .string .string .string{background-color:#ffd0d0}.CodeRay .string .content{color:#D14}.CodeRay .string .char{color:#D14}.CodeRay .string .delimiter{color:#D14}.CodeRay .shell{color:#d14}.CodeRay .shell .delimiter{color:#d14}.CodeRay .symbol{color:#990073}.CodeRay .symbol .content{color:#a60}.CodeRay .symbol .delimiter{color:#630}.CodeRay .tag{color:#070}.CodeRay .tag-special{color:#D70;font-weight:bold}.CodeRay .type{color:#339;font-weight:bold}.CodeRay .variable{color:#036}.CodeRay .insert{background:#afa}.CodeRay .delete{background:#faa}.CodeRay .change{color:#aaf;background:#007}.CodeRay .head{color:#f8f;background:#505}.CodeRay .insert .insert{color:#080;font-weight:bold}.CodeRay .delete .delete{color:#800;font-weight:bold}.CodeRay .change .change{color:#66f}.CodeRay .head .head{color:#f4f}figure.code,.gist-file,pre{-webkit-box-shadow:rgba(0,0,0,0.06) 0 0 10px;-moz-box-shadow:rgba(0,0,0,0.06) 0 0 10px;box-shadow:rgba(0,0,0,0.06) 0 0 10px}figure.code figcaption{position:relative}figure.code pre{-webkit-border-radius:0.4em;-moz-border-radius:0.4em;-ms-border-radius:0.4em;-o-border-radius:0.4em;border-radius:0.4em}.code-header{text-align:center;font-size:13px;line-height:2em;text-shadow:#cbcccc 0 1px 0;color:#474747;font-weight:normal;margin-bottom:0;-moz-border-radius-topleft:5px;-webkit-border-top-left-radius:5px;border-top-left-radius:5px;-moz-border-radius-topright:5px;-webkit-border-top-right-radius:5px;border-top-right-radius:5px;font-family:"Helvetica Neue", Arial, "Lucida Grande", "Lucida Sans Unicode", Lucida, sans-serif;background:#aaa url('/images/code_bg.png?1394957501') top repeat-x;border:1px solid #565656;border-top-color:#cbcbcb;border-left-color:#a5a5a5;border-right-color:#a5a5a5;border-bottom:0}.code-header a{position:absolute;right:.8em;text-decoration:none;color:#666 !important;z-index:1;font-size:13px;text-shadow:#cbcccc 0 1px 0;padding-left:3em}
