From a2d4310faabd60a4a86f66e18a7cba0434838a56 Mon Sep 17 00:00:00 2001 From: lifei6671 Date: Mon, 3 Sep 2018 15:39:01 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E5=8D=87=E7=BA=A7=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E5=9B=BE=E5=BA=93=E5=92=8C=E6=97=B6=E5=BA=8F=E5=9B=BE=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- static/editor.md/editormd.js | 56 +- static/editor.md/lib/jquery.flowchart.min.js | 63 +- static/editor.md/lib/marked.min.js | 9 +- static/editor.md/lib/raphael.min.js | 14 +- static/editor.md/lib/sequence/danielbd.woff | Bin 0 -> 38300 bytes static/editor.md/lib/sequence/danielbd.woff2 | Bin 0 -> 33744 bytes .../lib/sequence/sequence-diagram-min.css | 6 + .../lib/sequence/sequence-diagram-min.js | 9 + .../lib/sequence/sequence-diagram-min.js.map | 1 + .../sequence/sequence-diagram-raphael-min.js | 9 + .../sequence-diagram-raphael-min.js.map | 1 + .../lib/sequence/sequence-diagram-raphael.js | 2454 +++++++++++++++++ .../lib/sequence/sequence-diagram-snap-min.js | 7 + .../sequence/sequence-diagram-snap-min.js.map | 1 + static/editor.md/lib/sequence/snap.svg-min.js | 22 + .../editor.md/lib/sequence/underscore-min.js | 7 + static/editor.md/lib/sequence/webfont.js | 16 + static/js/markdown.js | 2 +- views/blog/index.tpl | 2 + views/document/default_read.tpl | 2 + 20 files changed, 2633 insertions(+), 48 deletions(-) mode change 100644 => 100755 static/editor.md/lib/marked.min.js mode change 100644 => 100755 static/editor.md/lib/raphael.min.js create mode 100755 static/editor.md/lib/sequence/danielbd.woff create mode 100755 static/editor.md/lib/sequence/danielbd.woff2 create mode 100755 static/editor.md/lib/sequence/sequence-diagram-min.css create mode 100755 static/editor.md/lib/sequence/sequence-diagram-min.js create mode 100755 static/editor.md/lib/sequence/sequence-diagram-min.js.map create mode 100755 static/editor.md/lib/sequence/sequence-diagram-raphael-min.js create mode 100755 static/editor.md/lib/sequence/sequence-diagram-raphael-min.js.map create mode 100755 static/editor.md/lib/sequence/sequence-diagram-raphael.js create mode 100755 static/editor.md/lib/sequence/sequence-diagram-snap-min.js create mode 100755 static/editor.md/lib/sequence/sequence-diagram-snap-min.js.map create mode 100644 static/editor.md/lib/sequence/snap.svg-min.js create mode 100644 static/editor.md/lib/sequence/underscore-min.js create mode 100644 static/editor.md/lib/sequence/webfont.js diff --git a/static/editor.md/editormd.js b/static/editor.md/editormd.js index 648abd60..e38b35db 100644 --- a/static/editor.md/editormd.js +++ b/static/editor.md/editormd.js @@ -547,40 +547,30 @@ }); }); } - if (settings.flowChart || settings.sequenceDiagram) + if (settings.flowChart) { editormd.loadScript(loadPath + "raphael.min", function() { + editormd.loadScript(loadPath + "flowchart.min", function() { + editormd.loadScript(loadPath + "jquery.flowchart.min", function() { + _this.loadedDisplay(); + }); + }); + }); + } - editormd.loadScript(loadPath + "underscore.min", function() { - - if (!settings.flowChart && settings.sequenceDiagram) - { - editormd.loadScript(loadPath + "sequence-diagram.min", function() { - _this.loadedDisplay(); - }); - } - else if (settings.flowChart && !settings.sequenceDiagram) - { - editormd.loadScript(loadPath + "flowchart.min", function() { - editormd.loadScript(loadPath + "jquery.flowchart.min", function() { + if(settings.sequenceDiagram) { + editormd.loadCSS(loadPath + "sequence/sequence-diagram-min", function () { + editormd.loadScript(loadPath + "sequence/webfont", function() { + editormd.loadScript(loadPath + "sequence/snap.svg-min", function() { + editormd.loadScript(loadPath + "sequence/underscore-min", function() { + editormd.loadScript(loadPath + "sequence/sequence-diagram-min", function() { _this.loadedDisplay(); }); }); - } - else if (settings.flowChart && settings.sequenceDiagram) - { - editormd.loadScript(loadPath + "flowchart.min", function() { - editormd.loadScript(loadPath + "jquery.flowchart.min", function() { - editormd.loadScript(loadPath + "sequence-diagram.min", function() { - _this.loadedDisplay(); - }); - }); - }); - } + }); }); - }); - } + } else { _this.loadedDisplay(); @@ -1574,7 +1564,11 @@ if (settings.mermaid) { var mermaid = previewContainer.find(".lang-mermaid"); if (mermaid) { - window.mermaid.init(void 0, mermaid.removeClass("hide")); + try { + window.mermaid.init(void 0, mermaid.removeClass("hide")); + }catch (e) { + console.log(e); + } } } @@ -1586,8 +1580,12 @@ previewContainer.find(".flowchart").flowChart(); } - if (settings.sequence) { - previewContainer.find(".sequence-diagram").sequenceDiagram({theme: "simple"}); + if (settings.sequenceDiagram) { + try { + previewContainer.find(".sequence-diagram").sequenceDiagram({theme: "simple"}); + }catch (e) { + console.log(e); + } } var preview = $this.preview; diff --git a/static/editor.md/lib/jquery.flowchart.min.js b/static/editor.md/lib/jquery.flowchart.min.js index a30a8fd1..d03c5c6d 100644 --- a/static/editor.md/lib/jquery.flowchart.min.js +++ b/static/editor.md/lib/jquery.flowchart.min.js @@ -1,2 +1,63 @@ /*! jQuery.flowchart.js v1.1.0 | jquery.flowchart.min.js | jQuery plugin for flowchart.js. | MIT License | By: Pandao | https://github.com/pandao/jquery.flowchart.js | 2015-03-09 */ -(function(factory){if(typeof require==="function"&&typeof exports==="object"&&typeof module==="object"){module.exports=factory}else{if(typeof define==="function"){factory(jQuery,flowchart)}else{factory($,flowchart)}}}(function(jQuery,flowchart){(function($){$.fn.flowChart=function(options){options=options||{};var defaults={"x":0,"y":0,"line-width":2,"line-length":50,"text-margin":10,"font-size":14,"font-color":"black","line-color":"black","element-color":"black","fill":"white","yes-text":"yes","no-text":"no","arrow-end":"block","symbols":{"start":{"font-color":"black","element-color":"black","fill":"white"},"end":{"class":"end-element"}},"flowstate":{"past":{"fill":"#CCCCCC","font-size":12},"current":{"fill":"black","font-color":"white","font-weight":"bold"},"future":{"fill":"white"},"request":{"fill":"blue"},"invalid":{"fill":"#444444"},"approved":{"fill":"#58C4A3","font-size":12,"yes-text":"APPROVED","no-text":"n/a"},"rejected":{"fill":"#C45879","font-size":12,"yes-text":"n/a","no-text":"REJECTED"}}};return this.each(function(){var $this=$(this);var diagram=flowchart.parse($this.text());var settings=$.extend(true,defaults,options);$this.html("");diagram.drawSVG(this,settings)})}})(jQuery)})); \ No newline at end of file +(function (factory) { + if (typeof require === "function" && typeof exports === "object" && typeof module === "object") { + module.exports = factory + } else { + if (typeof define === "function") { + factory(jQuery, flowchart) + } else { + factory($, flowchart) + } + } +}(function (jQuery, flowchart) { + (function ($) { + $.fn.flowChart = function (options) { + options = options || {}; + var defaults = { + 'x': 0, + 'y': 0, + 'line-width': 3, + 'line-length': 50, + 'text-margin': 10, + 'font-size': 14, + 'font-color': 'black', + 'line-color': 'black', + 'element-color': 'black', + 'fill': 'white', + 'yes-text': 'yes', + 'no-text': 'no', + 'arrow-end': 'block', + 'scale': 1, + // style symbol types + 'symbols': { + 'start': { + 'font-color': 'red', + 'element-color': 'green', + 'fill': 'yellow' + }, + 'end':{ + 'class': 'end-element' + } + }, + // even flowstate support ;-) + 'flowstate' : { + 'past' : { 'fill' : '#CCCCCC', 'font-size' : 12}, + 'current' : {'fill' : 'yellow', 'font-color' : 'red', 'font-weight' : 'bold'}, + 'future' : { 'fill' : '#FFFF99'}, + 'request' : { 'fill' : 'blue'}, + 'invalid': {'fill' : '#444444'}, + 'approved' : { 'fill' : '#58C4A3', 'font-size' : 12, 'yes-text' : 'APPROVED', 'no-text' : 'n/a' }, + 'rejected' : { 'fill' : '#C45879', 'font-size' : 12, 'yes-text' : 'n/a', 'no-text' : 'REJECTED' } + } + }; + + return this.each(function () { + var $this = $(this); + var diagram = flowchart.parse($this.text()); + var settings = $.extend(true, defaults, options); + $this.html(""); + diagram.drawSVG($this.get(0), settings) + }) + } + })(jQuery) +})); \ No newline at end of file diff --git a/static/editor.md/lib/marked.min.js b/static/editor.md/lib/marked.min.js old mode 100644 new mode 100755 index 5597fa44..89df7981 --- a/static/editor.md/lib/marked.min.js +++ b/static/editor.md/lib/marked.min.js @@ -1,9 +1,6 @@ /** - * marked v0.3.3 - a markdown parser + * marked - a markdown parser * Copyright (c) 2011-2014, Christopher Jeffrey. (MIT Licensed) - * https://github.com/chjj/marked + * https://github.com/markedjs/marked */ -(function(){var block={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:noop,hr:/^( *[-*_]){3,} *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *#* *(?:\n+|$)/,nptable:noop,lheading:/^([^\n]+)\n *(=|-){2,} *(?:\n+|$)/,blockquote:/^( *>[^\n]+(\n(?!def)[^\n]+)*\n*)+/,list:/^( *)(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:/^ *(?:comment *(?:\n|\s*$)|closed *(?:\n{2,}|\s*$)|closing *(?:\n{2,}|\s*$))/,def:/^ *\[([^\]]+)\]: *]+)>?(?: +["(]([^\n]+)[")])? *(?:\n+|$)/,table:noop,paragraph:/^((?:[^\n]+\n?(?!hr|heading|lheading|blockquote|tag|def))+)\n*/,text:/^[^\n]+/};block.bullet=/(?:[*+-]|\d+\.)/;block.item=/^( *)(bull) [^\n]*(?:\n(?!\1bull )[^\n]*)*/;block.item=replace(block.item,"gm")(/bull/g,block.bullet)();block.list=replace(block.list)(/bull/g,block.bullet)("hr","\\n+(?=\\1?(?:[-*_] *){3,}(?:\\n+|$))")("def","\\n+(?="+block.def.source+")")();block.blockquote=replace(block.blockquote)("def",block.def)();block._tag="(?!(?:"+"a|em|strong|small|s|cite|q|dfn|abbr|data|time|code"+"|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo"+"|span|br|wbr|ins|del|img)\\b)\\w+(?!:/|[^\\w\\s@]*@)\\b";block.html=replace(block.html)("comment",//)("closed",/<(tag)[\s\S]+?<\/\1>/)("closing",/])*?>/)(/tag/g,block._tag)();block.paragraph=replace(block.paragraph)("hr",block.hr)("heading",block.heading)("lheading",block.lheading)("blockquote",block.blockquote)("tag","<"+block._tag)("def",block.def)();block.normal=merge({},block);block.gfm=merge({},block.normal,{fences:/^ *(`{3,}|~{3,}) *(\S+)? *\n([\s\S]+?)\s*\1 *(?:\n+|$)/,paragraph:/^/});block.gfm.paragraph=replace(block.paragraph)("(?!","(?!"+block.gfm.fences.source.replace("\\1","\\2")+"|"+block.list.source.replace("\\1","\\3")+"|")();block.tables=merge({},block.gfm,{nptable:/^ *(\S.*\|.*)\n *([-:]+ *\|[-| :]*)\n((?:.*\|.*(?:\n|$))*)\n*/,table:/^ *\|(.+)\n *\|( *[-:]+[-| :]*)\n((?: *\|.*(?:\n|$))*)\n*/});function Lexer(options){this.tokens=[];this.tokens.links={};this.options=options||marked.defaults;this.rules=block.normal;if(this.options.gfm){if(this.options.tables){this.rules=block.tables}else{this.rules=block.gfm}}}Lexer.rules=block;Lexer.lex=function(src,options){var lexer=new Lexer(options);return lexer.lex(src)};Lexer.prototype.lex=function(src){src=src.replace(/\r\n|\r/g,"\n").replace(/\t/g," ").replace(/\u00a0/g," ").replace(/\u2424/g,"\n");return this.token(src,true)};Lexer.prototype.token=function(src,top,bq){var src=src.replace(/^ +$/gm,""),next,loose,cap,bull,b,item,space,i,l;while(src){if(cap=this.rules.newline.exec(src)){src=src.substring(cap[0].length);if(cap[0].length>1){this.tokens.push({type:"space"})}}if(cap=this.rules.code.exec(src)){src=src.substring(cap[0].length);cap=cap[0].replace(/^ {4}/gm,"");this.tokens.push({type:"code",text:!this.options.pedantic?cap.replace(/\n+$/,""):cap});continue}if(cap=this.rules.fences.exec(src)){src=src.substring(cap[0].length);this.tokens.push({type:"code",lang:cap[2],text:cap[3]});continue}if(cap=this.rules.heading.exec(src)){src=src.substring(cap[0].length);this.tokens.push({type:"heading",depth:cap[1].length,text:cap[2]});continue}if(top&&(cap=this.rules.nptable.exec(src))){src=src.substring(cap[0].length);item={type:"table",header:cap[1].replace(/^ *| *\| *$/g,"").split(/ *\| */),align:cap[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:cap[3].replace(/\n$/,"").split("\n")};for(i=0;i ?/gm,"");this.token(cap,top,true);this.tokens.push({type:"blockquote_end"});continue}if(cap=this.rules.list.exec(src)){src=src.substring(cap[0].length);bull=cap[2];this.tokens.push({type:"list_start",ordered:bull.length>1});cap=cap[0].match(this.rules.item);next=false;l=cap.length;i=0;for(;i1&&b.length>1)){src=cap.slice(i+1).join("\n")+src;i=l-1}}loose=next||/\n\n(?!\s*$)/.test(item);if(i!==l-1){next=item.charAt(item.length-1)==="\n";if(!loose){loose=next}}this.tokens.push({type:loose?"loose_item_start":"list_item_start"});this.token(item,false,bq); -this.tokens.push({type:"list_item_end"})}this.tokens.push({type:"list_end"});continue}if(cap=this.rules.html.exec(src)){src=src.substring(cap[0].length);this.tokens.push({type:this.options.sanitize?"paragraph":"html",pre:cap[1]==="pre"||cap[1]==="script"||cap[1]==="style",text:cap[0]});continue}if((!bq&&top)&&(cap=this.rules.def.exec(src))){src=src.substring(cap[0].length);this.tokens.links[cap[1].toLowerCase()]={href:cap[2],title:cap[3]};continue}if(top&&(cap=this.rules.table.exec(src))){src=src.substring(cap[0].length);item={type:"table",header:cap[1].replace(/^ *| *\| *$/g,"").split(/ *\| */),align:cap[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:cap[3].replace(/(?: *\| *)?\n$/,"").split("\n")};for(i=0;i])/,autolink:/^<([^ >]+(@|:\/)[^ >]+)>/,url:noop,tag:/^|^<\/?\w+(?:"[^"]*"|'[^']*'|[^'">])*?>/,link:/^!?\[(inside)\]\(href\)/,reflink:/^!?\[(inside)\]\s*\[([^\]]*)\]/,nolink:/^!?\[((?:\[[^\]]*\]|[^\[\]])*)\]/,strong:/^__([\s\S]+?)__(?!_)|^\*\*([\s\S]+?)\*\*(?!\*)/,em:/^\b_((?:__|[\s\S])+?)_\b|^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,code:/^(`+)\s*([\s\S]*?[^`])\s*\1(?!`)/,br:/^ {2,}\n(?!\s*$)/,del:noop,text:/^[\s\S]+?(?=[\\?(?:\s+['"]([\s\S]*?)['"])?\s*/;inline.link=replace(inline.link)("inside",inline._inside)("href",inline._href)();inline.reflink=replace(inline.reflink)("inside",inline._inside)();inline.normal=merge({},inline);inline.pedantic=merge({},inline.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/});inline.gfm=merge({},inline.normal,{escape:replace(inline.escape)("])","~|])")(),url:/^(https?:\/\/[^\s<]+[^<.,:;"')\]\s])/,del:/^~~(?=\S)([\s\S]*?\S)~~/,text:replace(inline.text)("]|","~]|")("|","|https?://|")()});inline.breaks=merge({},inline.gfm,{br:replace(inline.br)("{2,}","*")(),text:replace(inline.gfm.text)("{2,}","*")()});function InlineLexer(links,options){this.options=options||marked.defaults;this.links=links;this.rules=inline.normal;this.renderer=this.options.renderer||new Renderer;this.renderer.options=this.options;if(!this.links){throw new Error("Tokens array requires a `links` property.")}if(this.options.gfm){if(this.options.breaks){this.rules=inline.breaks}else{this.rules=inline.gfm}}else{if(this.options.pedantic){this.rules=inline.pedantic}}}InlineLexer.rules=inline;InlineLexer.output=function(src,links,options){var inline=new InlineLexer(links,options);return inline.output(src)};InlineLexer.prototype.output=function(src){var out="",link,text,href,cap;while(src){if(cap=this.rules.escape.exec(src)){src=src.substring(cap[0].length);out+=cap[1];continue}if(cap=this.rules.autolink.exec(src)){src=src.substring(cap[0].length);if(cap[2]==="@"){text=cap[1].charAt(6)===":"?this.mangle(cap[1].substring(7)):this.mangle(cap[1]);href=this.mangle("mailto:")+text}else{text=escape(cap[1]);href=text}out+=this.renderer.link(href,null,text);continue}if(!this.inLink&&(cap=this.rules.url.exec(src))){src=src.substring(cap[0].length);text=escape(cap[1]);href=text;out+=this.renderer.link(href,null,text);continue}if(cap=this.rules.tag.exec(src)){if(!this.inLink&&/^/i.test(cap[0])){this.inLink=false}}src=src.substring(cap[0].length);out+=this.options.sanitize?escape(cap[0]):cap[0];continue}if(cap=this.rules.link.exec(src)){src=src.substring(cap[0].length);this.inLink=true;out+=this.outputLink(cap,{href:cap[2],title:cap[3]});this.inLink=false;continue}if((cap=this.rules.reflink.exec(src))||(cap=this.rules.nolink.exec(src))){src=src.substring(cap[0].length);link=(cap[2]||cap[1]).replace(/\s+/g," ");link=this.links[link.toLowerCase()];if(!link||!link.href){out+=cap[0].charAt(0);src=cap[0].substring(1)+src;continue}this.inLink=true;out+=this.outputLink(cap,link);this.inLink=false;continue}if(cap=this.rules.strong.exec(src)){src=src.substring(cap[0].length);out+=this.renderer.strong(this.output(cap[2]||cap[1]));continue}if(cap=this.rules.em.exec(src)){src=src.substring(cap[0].length);out+=this.renderer.em(this.output(cap[2]||cap[1]));continue -}if(cap=this.rules.code.exec(src)){src=src.substring(cap[0].length);out+=this.renderer.codespan(escape(cap[2],true));continue}if(cap=this.rules.br.exec(src)){src=src.substring(cap[0].length);out+=this.renderer.br();continue}if(cap=this.rules.del.exec(src)){src=src.substring(cap[0].length);out+=this.renderer.del(this.output(cap[1]));continue}if(cap=this.rules.text.exec(src)){src=src.substring(cap[0].length);out+=escape(this.smartypants(cap[0]));continue}if(src){throw new Error("Infinite loop on byte: "+src.charCodeAt(0))}}return out};InlineLexer.prototype.outputLink=function(cap,link){var href=escape(link.href),title=link.title?escape(link.title):null;return cap[0].charAt(0)!=="!"?this.renderer.link(href,title,this.output(cap[1])):this.renderer.image(href,title,escape(cap[1]))};InlineLexer.prototype.smartypants=function(text){if(!this.options.smartypants){return text}return text.replace(/--/g,"\u2014").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1\u2018").replace(/'/g,"\u2019").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1\u201c").replace(/"/g,"\u201d").replace(/\.{3}/g,"\u2026")};InlineLexer.prototype.mangle=function(text){var out="",l=text.length,i=0,ch;for(;i0.5){ch="x"+ch.toString(16)}out+="&#"+ch+";"}return out};function Renderer(options){this.options=options||{}}Renderer.prototype.code=function(code,lang,escaped){if(this.options.highlight){var out=this.options.highlight(code,lang);if(out!=null&&out!==code){escaped=true;code=out}}if(!lang){return"
"+(escaped?code:escape(code,true))+"\n
"}return'
'+(escaped?code:escape(code,true))+"\n
\n"};Renderer.prototype.blockquote=function(quote){return"
\n"+quote+"
\n"};Renderer.prototype.html=function(html){return html};Renderer.prototype.heading=function(text,level,raw){return"'+text+"\n"};Renderer.prototype.hr=function(){return this.options.xhtml?"
\n":"
\n"};Renderer.prototype.list=function(body,ordered){var type=ordered?"ol":"ul";return"<"+type+">\n"+body+"\n"};Renderer.prototype.listitem=function(text){return"
  • "+text+"
  • \n"};Renderer.prototype.paragraph=function(text){return"

    "+text+"

    \n"};Renderer.prototype.table=function(header,body){return"\n"+"\n"+header+"\n"+"\n"+body+"\n"+"
    \n"};Renderer.prototype.tablerow=function(content){return"\n"+content+"\n"};Renderer.prototype.tablecell=function(content,flags){var type=flags.header?"th":"td";var tag=flags.align?"<"+type+' style="text-align:'+flags.align+'">':"<"+type+">";return tag+content+"\n"};Renderer.prototype.strong=function(text){return""+text+""};Renderer.prototype.em=function(text){return""+text+""};Renderer.prototype.codespan=function(text){return""+text+""};Renderer.prototype.br=function(){return this.options.xhtml?"
    ":"
    "};Renderer.prototype.del=function(text){return""+text+""};Renderer.prototype.link=function(href,title,text){if(this.options.sanitize){try{var prot=decodeURIComponent(unescape(href)).replace(/[^\w:]/g,"").toLowerCase()}catch(e){return""}if(prot.indexOf("javascript:")===0||prot.indexOf("vbscript:")===0){return""}}var out='
    ";return out};Renderer.prototype.image=function(href,title,text){var out=''+text+'":">";return out};function Parser(options){this.tokens=[];this.token=null;this.options=options||marked.defaults;this.options.renderer=this.options.renderer||new Renderer;this.renderer=this.options.renderer;this.renderer.options=this.options}Parser.parse=function(src,options,renderer){var parser=new Parser(options,renderer);return parser.parse(src)};Parser.prototype.parse=function(src){this.inline=new InlineLexer(src.links,this.options,this.renderer);this.tokens=src.reverse();var out="";while(this.next()){out+=this.tok()}return out};Parser.prototype.next=function(){return this.token=this.tokens.pop()};Parser.prototype.peek=function(){return this.tokens[this.tokens.length-1]||0};Parser.prototype.parseText=function(){var body=this.token.text;while(this.peek().type==="text"){body+="\n"+this.next().text}return this.inline.output(body)};Parser.prototype.tok=function(){switch(this.token.type){case"space":return"";case"hr":return this.renderer.hr();case"heading":return this.renderer.heading(this.inline.output(this.token.text),this.token.depth,this.token.text);case"code":return this.renderer.code(this.token.text,this.token.lang,this.token.escaped);case"table":var header="",body="",i,row,cell,flags,j;cell="";for(i=0;i/g,">").replace(/"/g,""").replace(/'/g,"'")}function unescape(html){return html.replace(/&([#\w]+);/g,function(_,n){n=n.toLowerCase();if(n==="colon"){return":"}if(n.charAt(0)==="#"){return n.charAt(1)==="x"?String.fromCharCode(parseInt(n.substring(2),16)):String.fromCharCode(+n.substring(1))}return""})}function replace(regex,opt){regex=regex.source;opt=opt||"";return function self(name,val){if(!name){return new RegExp(regex,opt)}val=val.source||val;val=val.replace(/(^|[^\[])\^/g,"$1");regex=regex.replace(name,val);return self}}function noop(){}noop.exec=noop;function merge(obj){var i=1,target,key;for(;iAn error occured:

    "+escape(e.message+"",true)+"
    "}throw e}}marked.options=marked.setOptions=function(opt){merge(marked.defaults,opt);return marked};marked.defaults={gfm:true,tables:true,breaks:false,pedantic:false,sanitize:false,smartLists:false,silent:false,highlight:null,langPrefix:"lang-",smartypants:false,headerPrefix:"",renderer:new Renderer,xhtml:false};marked.Parser=Parser;marked.parser=Parser.parse;marked.Renderer=Renderer;marked.Lexer=Lexer;marked.lexer=Lexer.lex;marked.InlineLexer=InlineLexer;marked.inlineLexer=InlineLexer.output;marked.parse=marked;if(typeof module!=="undefined"&&typeof exports==="object"){module.exports=marked}else{if(typeof define==="function"&&define.amd){define(function(){return marked})}else{this.marked=marked}}}).call(function(){return this||(typeof window!=="undefined"?window:global)}()); \ No newline at end of file +!function(e){"use strict";var k={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:g,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,nptable:g,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( *)(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?\\?>\\n*|\\n*|\\n*|)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=\\h*\\n)[\\s\\S]*?(?:\\n{2,}|$)|(?=\\h*\\n)[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,table:g,lheading:/^([^\n]+)\n *(=|-){2,} *(?:\n+|$)/,paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading| {0,3}>|<\/?(?:tag)(?: +|\n|\/?>)|<(?:script|pre|style|!--))[^\n]+)*)/,text:/^[^\n]+/};function a(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||d.defaults,this.rules=k.normal,this.options.pedantic?this.rules=k.pedantic:this.options.gfm&&(this.options.tables?this.rules=k.tables:this.rules=k.gfm)}k._label=/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,k._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/,k.def=t(k.def).replace("label",k._label).replace("title",k._title).getRegex(),k.bullet=/(?:[*+-]|\d+\.)/,k.item=/^( *)(bull) [^\n]*(?:\n(?!\1bull )[^\n]*)*/,k.item=t(k.item,"gm").replace(/bull/g,k.bullet).getRegex(),k.list=t(k.list).replace(/bull/g,k.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+k.def.source+")").getRegex(),k._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",k._comment=//,k.html=t(k.html,"i").replace("comment",k._comment).replace("tag",k._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),k.paragraph=t(k.paragraph).replace("hr",k.hr).replace("heading",k.heading).replace("lheading",k.lheading).replace("tag",k._tag).getRegex(),k.blockquote=t(k.blockquote).replace("paragraph",k.paragraph).getRegex(),k.normal=f({},k),k.gfm=f({},k.normal,{fences:/^ *(`{3,}|~{3,})[ \.]*(\S+)? *\n([\s\S]*?)\n? *\1 *(?:\n+|$)/,paragraph:/^/,heading:/^ *(#{1,6}) +([^\n]+?) *#* *(?:\n+|$)/}),k.gfm.paragraph=t(k.paragraph).replace("(?!","(?!"+k.gfm.fences.source.replace("\\1","\\2")+"|"+k.list.source.replace("\\1","\\3")+"|").getRegex(),k.tables=f({},k.gfm,{nptable:/^ *([^|\n ].*\|.*)\n *([-:]+ *\|[-| :]*)(?:\n((?:.*[^>\n ].*(?:\n|$))*)\n*|$)/,table:/^ *\|(.+)\n *\|?( *[-:]+[-| :]*)(?:\n((?: *[^>\n ].*(?:\n|$))*)\n*|$)/}),k.pedantic=f({},k.normal,{html:t("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",k._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/}),a.rules=k,a.lex=function(e,t){return new a(t).lex(e)},a.prototype.lex=function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," ").replace(/\u00a0/g," ").replace(/\u2424/g,"\n"),this.token(e,!0)},a.prototype.token=function(e,t){var n,r,s,i,l,o,a,h,p,u,c,g,f,d,b,m;for(e=e.replace(/^ +$/gm,"");e;)if((s=this.rules.newline.exec(e))&&(e=e.substring(s[0].length),1 ?/gm,""),this.token(s,t),this.tokens.push({type:"blockquote_end"});else if(s=this.rules.list.exec(e)){for(e=e.substring(s[0].length),a={type:"list_start",ordered:d=1<(i=s[2]).length,start:d?+i:"",loose:!1},this.tokens.push(a),n=!(h=[]),f=(s=s[0].match(this.rules.item)).length,c=0;c?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:g,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(href(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,strong:/^__([^\s])__(?!_)|^\*\*([^\s])\*\*(?!\*)|^__([^\s][\s\S]*?[^\s])__(?!_)|^\*\*([^\s][\s\S]*?[^\s])\*\*(?!\*)/,em:/^_([^\s_])_(?!_)|^\*([^\s*"<\[])\*(?!\*)|^_([^\s][\s\S]*?[^\s_])_(?!_)|^_([^\s_][\s\S]*?[^\s])_(?!_)|^\*([^\s"<\[][\s\S]*?[^\s*])\*(?!\*)|^\*([^\s*"<\[][\s\S]*?[^\s])\*(?!\*)/,code:/^(`+)\s*([\s\S]*?[^`]?)\s*\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:g,text:/^[\s\S]+?(?=[\\/g,">").replace(/"/g,""").replace(/'/g,"'")}function c(e){return e.replace(/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi,function(e,t){return"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""})}function t(n,e){return n=n.source||n,e=e||"",{replace:function(e,t){return t=(t=t.source||t).replace(/(^|[^\[])\^/g,"$1"),n=n.replace(e,t),this},getRegex:function(){return new RegExp(n,e)}}}function i(e,t){return l[" "+e]||(/^[^:]+:\/*[^/]*$/.test(e)?l[" "+e]=e+"/":l[" "+e]=y(e,"/",!0)),e=l[" "+e],"//"===t.slice(0,2)?e.replace(/:[\s\S]*/,":")+t:"/"===t.charAt(0)?e.replace(/(:\/*[^/]*)[\s\S]*/,"$1")+t:e+t}n._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,n._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,n._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,n.autolink=t(n.autolink).replace("scheme",n._scheme).replace("email",n._email).getRegex(),n._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,n.tag=t(n.tag).replace("comment",k._comment).replace("attribute",n._attribute).getRegex(),n._label=/(?:\[[^\[\]]*\]|\\[\[\]]?|`[^`]*`|[^\[\]\\])*?/,n._href=/\s*(<(?:\\[<>]?|[^\s<>\\])*>|(?:\\[()]?|\([^\s\x00-\x1f\\]*\)|[^\s\x00-\x1f()\\])*?)/,n._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,n.link=t(n.link).replace("label",n._label).replace("href",n._href).replace("title",n._title).getRegex(),n.reflink=t(n.reflink).replace("label",n._label).getRegex(),n.normal=f({},n),n.pedantic=f({},n.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/,link:t(/^!?\[(label)\]\((.*?)\)/).replace("label",n._label).getRegex(),reflink:t(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",n._label).getRegex()}),n.gfm=f({},n.normal,{escape:t(n.escape).replace("])","~|])").getRegex(),url:t(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("email",n._email).getRegex(),_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^~+(?=\S)([\s\S]*?\S)~+/,text:t(n.text).replace("]|","~]|").replace("|","|https?://|ftp://|www\\.|[a-zA-Z0-9.!#$%&'*+/=?^_`{\\|}~-]+@|").getRegex()}),n.breaks=f({},n.gfm,{br:t(n.br).replace("{2,}","*").getRegex(),text:t(n.gfm.text).replace("{2,}","*").getRegex()}),h.rules=n,h.output=function(e,t,n){return new h(t,n).output(e)},h.prototype.output=function(e){for(var t,n,r,s,i,l,o="";e;)if(i=this.rules.escape.exec(e))e=e.substring(i[0].length),o+=i[1];else if(i=this.rules.autolink.exec(e))e=e.substring(i[0].length),r="@"===i[2]?"mailto:"+(n=u(this.mangle(i[1]))):n=u(i[1]),o+=this.renderer.link(r,null,n);else if(this.inLink||!(i=this.rules.url.exec(e))){if(i=this.rules.tag.exec(e))!this.inLink&&/^
    /i.test(i[0])&&(this.inLink=!1),e=e.substring(i[0].length),o+=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(i[0]):u(i[0]):i[0];else if(i=this.rules.link.exec(e))e=e.substring(i[0].length),this.inLink=!0,r=i[2],this.options.pedantic?(t=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r))?(r=t[1],s=t[3]):s="":s=i[3]?i[3].slice(1,-1):"",r=r.trim().replace(/^<([\s\S]*)>$/,"$1"),o+=this.outputLink(i,{href:h.escapes(r),title:h.escapes(s)}),this.inLink=!1;else if((i=this.rules.reflink.exec(e))||(i=this.rules.nolink.exec(e))){if(e=e.substring(i[0].length),t=(i[2]||i[1]).replace(/\s+/g," "),!(t=this.links[t.toLowerCase()])||!t.href){o+=i[0].charAt(0),e=i[0].substring(1)+e;continue}this.inLink=!0,o+=this.outputLink(i,t),this.inLink=!1}else if(i=this.rules.strong.exec(e))e=e.substring(i[0].length),o+=this.renderer.strong(this.output(i[4]||i[3]||i[2]||i[1]));else if(i=this.rules.em.exec(e))e=e.substring(i[0].length),o+=this.renderer.em(this.output(i[6]||i[5]||i[4]||i[3]||i[2]||i[1]));else if(i=this.rules.code.exec(e))e=e.substring(i[0].length),o+=this.renderer.codespan(u(i[2].trim(),!0));else if(i=this.rules.br.exec(e))e=e.substring(i[0].length),o+=this.renderer.br();else if(i=this.rules.del.exec(e))e=e.substring(i[0].length),o+=this.renderer.del(this.output(i[1]));else if(i=this.rules.text.exec(e))e=e.substring(i[0].length),o+=this.renderer.text(u(this.smartypants(i[0])));else if(e)throw new Error("Infinite loop on byte: "+e.charCodeAt(0))}else{for(;l=i[0],i[0]=this.rules._backpedal.exec(i[0])[0],l!==i[0];);e=e.substring(i[0].length),"@"===i[2]?r="mailto:"+(n=u(i[0])):(n=u(i[0]),r="www."===i[1]?"http://"+n:n),o+=this.renderer.link(r,null,n)}return o},h.escapes=function(e){return e?e.replace(h.rules._escapes,"$1"):e},h.prototype.outputLink=function(e,t){var n=t.href,r=t.title?u(t.title):null;return"!"!==e[0].charAt(0)?this.renderer.link(n,r,this.output(e[1])):this.renderer.image(n,r,u(e[1]))},h.prototype.smartypants=function(e){return this.options.smartypants?e.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…"):e},h.prototype.mangle=function(e){if(!this.options.mangle)return e;for(var t,n="",r=e.length,s=0;s'+(n?e:u(e,!0))+"\n":"
    "+(n?e:u(e,!0))+"
    "},r.prototype.blockquote=function(e){return"
    \n"+e+"
    \n"},r.prototype.html=function(e){return e},r.prototype.heading=function(e,t,n){return this.options.headerIds?"'+e+"\n":""+e+"\n"},r.prototype.hr=function(){return this.options.xhtml?"
    \n":"
    \n"},r.prototype.list=function(e,t,n){var r=t?"ol":"ul";return"<"+r+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"\n"},r.prototype.listitem=function(e){return"
  • "+e+"
  • \n"},r.prototype.checkbox=function(e){return" "},r.prototype.paragraph=function(e){return"

    "+e+"

    \n"},r.prototype.table=function(e,t){return t&&(t=""+t+""),"\n\n"+e+"\n"+t+"
    \n"},r.prototype.tablerow=function(e){return"\n"+e+"\n"},r.prototype.tablecell=function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"\n"},r.prototype.strong=function(e){return""+e+""},r.prototype.em=function(e){return""+e+""},r.prototype.codespan=function(e){return""+e+""},r.prototype.br=function(){return this.options.xhtml?"
    ":"
    "},r.prototype.del=function(e){return""+e+""},r.prototype.link=function(e,t,n){if(this.options.sanitize){try{var r=decodeURIComponent(c(e)).replace(/[^\w:]/g,"").toLowerCase()}catch(e){return n}if(0===r.indexOf("javascript:")||0===r.indexOf("vbscript:")||0===r.indexOf("data:"))return n}this.options.baseUrl&&!o.test(e)&&(e=i(this.options.baseUrl,e));try{e=encodeURI(e).replace(/%25/g,"%")}catch(e){return n}var s='
    "},r.prototype.image=function(e,t,n){this.options.baseUrl&&!o.test(e)&&(e=i(this.options.baseUrl,e));var r=''+n+'":">"},r.prototype.text=function(e){return e},s.prototype.strong=s.prototype.em=s.prototype.codespan=s.prototype.del=s.prototype.text=function(e){return e},s.prototype.link=s.prototype.image=function(e,t,n){return""+n},s.prototype.br=function(){return""},p.parse=function(e,t){return new p(t).parse(e)},p.prototype.parse=function(e){this.inline=new h(e.links,this.options),this.inlineText=new h(e.links,f({},this.options,{renderer:new s})),this.tokens=e.reverse();for(var t="";this.next();)t+=this.tok();return t},p.prototype.next=function(){return this.token=this.tokens.pop()},p.prototype.peek=function(){return this.tokens[this.tokens.length-1]||0},p.prototype.parseText=function(){for(var e=this.token.text;"text"===this.peek().type;)e+="\n"+this.next().text;return this.inline.output(e)},p.prototype.tok=function(){switch(this.token.type){case"space":return"";case"hr":return this.renderer.hr();case"heading":return this.renderer.heading(this.inline.output(this.token.text),this.token.depth,c(this.inlineText.output(this.token.text)));case"code":return this.renderer.code(this.token.text,this.token.lang,this.token.escaped);case"table":var e,t,n,r,s="",i="";for(n="",e=0;et)n.splice(t);else for(;n.lengthAn error occurred:

    "+u(e.message+"",!0)+"
    ";throw e}}g.exec=g,d.options=d.setOptions=function(e){return f(d.defaults,e),d},d.getDefaults=function(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:new r,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tables:!0,xhtml:!1}},d.defaults=d.getDefaults(),d.Parser=p,d.parser=p.parse,d.Renderer=r,d.TextRenderer=s,d.Lexer=a,d.lexer=a.lex,d.InlineLexer=h,d.inlineLexer=h.output,d.parse=d,"undefined"!=typeof module&&"object"==typeof exports?module.exports=d:"function"==typeof define&&define.amd?define(function(){return d}):e.marked=d}(this||("undefined"!=typeof window?window:global)); \ No newline at end of file diff --git a/static/editor.md/lib/raphael.min.js b/static/editor.md/lib/raphael.min.js old mode 100644 new mode 100755 index e5d0edfb..2fb91046 --- a/static/editor.md/lib/raphael.min.js +++ b/static/editor.md/lib/raphael.min.js @@ -1,11 +1,3 @@ -// ┌────────────────────────────────────────────────────────────────────┐ \\ -// │ Raphaël 2.1.3 - JavaScript Vector Library │ \\ -// ├────────────────────────────────────────────────────────────────────┤ \\ -// │ Copyright © 2008-2012 Dmitry Baranovskiy (http://raphaeljs.com) │ \\ -// │ Copyright © 2008-2012 Sencha Labs (http://sencha.com) │ \\ -// ├────────────────────────────────────────────────────────────────────┤ \\ -// │ Licensed under the MIT (http://raphaeljs.com/license.html) license.│ \\ -// └────────────────────────────────────────────────────────────────────┘ \\ -!function(a){var b,c,d="0.4.2",e="hasOwnProperty",f=/[\.\/]/,g="*",h=function(){},i=function(a,b){return a-b},j={n:{}},k=function(a,d){a=String(a);var e,f=c,g=Array.prototype.slice.call(arguments,2),h=k.listeners(a),j=0,l=[],m={},n=[],o=b;b=a,c=0;for(var p=0,q=h.length;q>p;p++)"zIndex"in h[p]&&(l.push(h[p].zIndex),h[p].zIndex<0&&(m[h[p].zIndex]=h[p]));for(l.sort(i);l[j]<0;)if(e=m[l[j++]],n.push(e.apply(d,g)),c)return c=f,n;for(p=0;q>p;p++)if(e=h[p],"zIndex"in e)if(e.zIndex==l[j]){if(n.push(e.apply(d,g)),c)break;do if(j++,e=m[l[j]],e&&n.push(e.apply(d,g)),c)break;while(e)}else m[e.zIndex]=e;else if(n.push(e.apply(d,g)),c)break;return c=f,b=o,n.length?n:null};k._events=j,k.listeners=function(a){var b,c,d,e,h,i,k,l,m=a.split(f),n=j,o=[n],p=[];for(e=0,h=m.length;h>e;e++){for(l=[],i=0,k=o.length;k>i;i++)for(n=o[i].n,c=[n[m[e]],n[g]],d=2;d--;)b=c[d],b&&(l.push(b),p=p.concat(b.f||[]));o=l}return p},k.on=function(a,b){if(a=String(a),"function"!=typeof b)return function(){};for(var c=a.split(f),d=j,e=0,g=c.length;g>e;e++)d=d.n,d=d.hasOwnProperty(c[e])&&d[c[e]]||(d[c[e]]={n:{}});for(d.f=d.f||[],e=0,g=d.f.length;g>e;e++)if(d.f[e]==b)return h;return d.f.push(b),function(a){+a==+a&&(b.zIndex=+a)}},k.f=function(a){var b=[].slice.call(arguments,1);return function(){k.apply(null,[a,null].concat(b).concat([].slice.call(arguments,0)))}},k.stop=function(){c=1},k.nt=function(a){return a?new RegExp("(?:\\.|\\/|^)"+a+"(?:\\.|\\/|$)").test(b):b},k.nts=function(){return b.split(f)},k.off=k.unbind=function(a,b){if(!a)return void(k._events=j={n:{}});var c,d,h,i,l,m,n,o=a.split(f),p=[j];for(i=0,l=o.length;l>i;i++)for(m=0;mi;i++)for(c=p[i];c.n;){if(b){if(c.f){for(m=0,n=c.f.length;n>m;m++)if(c.f[m]==b){c.f.splice(m,1);break}!c.f.length&&delete c.f}for(d in c.n)if(c.n[e](d)&&c.n[d].f){var q=c.n[d].f;for(m=0,n=q.length;n>m;m++)if(q[m]==b){q.splice(m,1);break}!q.length&&delete c.n[d].f}}else{delete c.f;for(d in c.n)c.n[e](d)&&c.n[d].f&&delete c.n[d].f}c=c.n}},k.once=function(a,b){var c=function(){return k.unbind(a,c),b.apply(this,arguments)};return k.on(a,c)},k.version=d,k.toString=function(){return"You are running Eve "+d},"undefined"!=typeof module&&module.exports?module.exports=k:"undefined"!=typeof define?define("eve",[],function(){return k}):a.eve=k}(window||this),function(a,b){"function"==typeof define&&define.amd?define(["eve"],function(c){return b(a,c)}):b(a,a.eve||"function"==typeof require&&require("eve"))}(this,function(a,b){function c(a){if(c.is(a,"function"))return u?a():b.on("raphael.DOMload",a);if(c.is(a,V))return c._engine.create[D](c,a.splice(0,3+c.is(a[0],T))).add(a);var d=Array.prototype.slice.call(arguments,0);if(c.is(d[d.length-1],"function")){var e=d.pop();return u?e.call(c._engine.create[D](c,d)):b.on("raphael.DOMload",function(){e.call(c._engine.create[D](c,d))})}return c._engine.create[D](c,arguments)}function d(a){if("function"==typeof a||Object(a)!==a)return a;var b=new a.constructor;for(var c in a)a[z](c)&&(b[c]=d(a[c]));return b}function e(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return a.push(a.splice(c,1)[0])}function f(a,b,c){function d(){var f=Array.prototype.slice.call(arguments,0),g=f.join("␀"),h=d.cache=d.cache||{},i=d.count=d.count||[];return h[z](g)?(e(i,g),c?c(h[g]):h[g]):(i.length>=1e3&&delete h[i.shift()],i.push(g),h[g]=a[D](b,f),c?c(h[g]):h[g])}return d}function g(){return this.hex}function h(a,b){for(var c=[],d=0,e=a.length;e-2*!b>d;d+=2){var f=[{x:+a[d-2],y:+a[d-1]},{x:+a[d],y:+a[d+1]},{x:+a[d+2],y:+a[d+3]},{x:+a[d+4],y:+a[d+5]}];b?d?e-4==d?f[3]={x:+a[0],y:+a[1]}:e-2==d&&(f[2]={x:+a[0],y:+a[1]},f[3]={x:+a[2],y:+a[3]}):f[0]={x:+a[e-2],y:+a[e-1]}:e-4==d?f[3]=f[2]:d||(f[0]={x:+a[d],y:+a[d+1]}),c.push(["C",(-f[0].x+6*f[1].x+f[2].x)/6,(-f[0].y+6*f[1].y+f[2].y)/6,(f[1].x+6*f[2].x-f[3].x)/6,(f[1].y+6*f[2].y-f[3].y)/6,f[2].x,f[2].y])}return c}function i(a,b,c,d,e){var f=-3*b+9*c-9*d+3*e,g=a*f+6*b-12*c+6*d;return a*g-3*b+3*c}function j(a,b,c,d,e,f,g,h,j){null==j&&(j=1),j=j>1?1:0>j?0:j;for(var k=j/2,l=12,m=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],n=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],o=0,p=0;l>p;p++){var q=k*m[p]+k,r=i(q,a,c,e,g),s=i(q,b,d,f,h),t=r*r+s*s;o+=n[p]*N.sqrt(t)}return k*o}function k(a,b,c,d,e,f,g,h,i){if(!(0>i||j(a,b,c,d,e,f,g,h)o;)m/=2,n+=(i>k?1:-1)*m,k=j(a,b,c,d,e,f,g,h,n);return n}}function l(a,b,c,d,e,f,g,h){if(!(O(a,c)O(e,g)||O(b,d)O(f,h))){var i=(a*d-b*c)*(e-g)-(a-c)*(e*h-f*g),j=(a*d-b*c)*(f-h)-(b-d)*(e*h-f*g),k=(a-c)*(f-h)-(b-d)*(e-g);if(k){var l=i/k,m=j/k,n=+l.toFixed(2),o=+m.toFixed(2);if(!(n<+P(a,c).toFixed(2)||n>+O(a,c).toFixed(2)||n<+P(e,g).toFixed(2)||n>+O(e,g).toFixed(2)||o<+P(b,d).toFixed(2)||o>+O(b,d).toFixed(2)||o<+P(f,h).toFixed(2)||o>+O(f,h).toFixed(2)))return{x:l,y:m}}}}function m(a,b,d){var e=c.bezierBBox(a),f=c.bezierBBox(b);if(!c.isBBoxIntersect(e,f))return d?0:[];for(var g=j.apply(0,a),h=j.apply(0,b),i=O(~~(g/5),1),k=O(~~(h/5),1),m=[],n=[],o={},p=d?0:[],q=0;i+1>q;q++){var r=c.findDotsAtSegment.apply(c,a.concat(q/i));m.push({x:r.x,y:r.y,t:q/i})}for(q=0;k+1>q;q++)r=c.findDotsAtSegment.apply(c,b.concat(q/k)),n.push({x:r.x,y:r.y,t:q/k});for(q=0;i>q;q++)for(var s=0;k>s;s++){var t=m[q],u=m[q+1],v=n[s],w=n[s+1],x=Q(u.x-t.x)<.001?"y":"x",y=Q(w.x-v.x)<.001?"y":"x",z=l(t.x,t.y,u.x,u.y,v.x,v.y,w.x,w.y);if(z){if(o[z.x.toFixed(4)]==z.y.toFixed(4))continue;o[z.x.toFixed(4)]=z.y.toFixed(4);var A=t.t+Q((z[x]-t[x])/(u[x]-t[x]))*(u.t-t.t),B=v.t+Q((z[y]-v[y])/(w[y]-v[y]))*(w.t-v.t);A>=0&&1.001>=A&&B>=0&&1.001>=B&&(d?p++:p.push({x:z.x,y:z.y,t1:P(A,1),t2:P(B,1)}))}}return p}function n(a,b,d){a=c._path2curve(a),b=c._path2curve(b);for(var e,f,g,h,i,j,k,l,n,o,p=d?0:[],q=0,r=a.length;r>q;q++){var s=a[q];if("M"==s[0])e=i=s[1],f=j=s[2];else{"C"==s[0]?(n=[e,f].concat(s.slice(1)),e=n[6],f=n[7]):(n=[e,f,e,f,i,j,i,j],e=i,f=j);for(var t=0,u=b.length;u>t;t++){var v=b[t];if("M"==v[0])g=k=v[1],h=l=v[2];else{"C"==v[0]?(o=[g,h].concat(v.slice(1)),g=o[6],h=o[7]):(o=[g,h,g,h,k,l,k,l],g=k,h=l);var w=m(n,o,d);if(d)p+=w;else{for(var x=0,y=w.length;y>x;x++)w[x].segment1=q,w[x].segment2=t,w[x].bez1=n,w[x].bez2=o;p=p.concat(w)}}}}}return p}function o(a,b,c,d,e,f){null!=a?(this.a=+a,this.b=+b,this.c=+c,this.d=+d,this.e=+e,this.f=+f):(this.a=1,this.b=0,this.c=0,this.d=1,this.e=0,this.f=0)}function p(){return this.x+H+this.y+H+this.width+" × "+this.height}function q(a,b,c,d,e,f){function g(a){return((l*a+k)*a+j)*a}function h(a,b){var c=i(a,b);return((o*c+n)*c+m)*c}function i(a,b){var c,d,e,f,h,i;for(e=a,i=0;8>i;i++){if(f=g(e)-a,Q(f)e)return c;if(e>d)return d;for(;d>c;){if(f=g(e),Q(f-a)f?c=e:d=e,e=(d-c)/2+c}return e}var j=3*b,k=3*(d-b)-j,l=1-j-k,m=3*c,n=3*(e-c)-m,o=1-m-n;return h(a,1/(200*f))}function r(a,b){var c=[],d={};if(this.ms=b,this.times=1,a){for(var e in a)a[z](e)&&(d[_(e)]=a[e],c.push(_(e)));c.sort(lb)}this.anim=d,this.top=c[c.length-1],this.percents=c}function s(a,d,e,f,g,h){e=_(e);var i,j,k,l,m,n,p=a.ms,r={},s={},t={};if(f)for(v=0,x=ic.length;x>v;v++){var u=ic[v];if(u.el.id==d.id&&u.anim==a){u.percent!=e?(ic.splice(v,1),k=1):j=u,d.attr(u.totalOrigin);break}}else f=+s;for(var v=0,x=a.percents.length;x>v;v++){if(a.percents[v]==e||a.percents[v]>f*a.top){e=a.percents[v],m=a.percents[v-1]||0,p=p/a.top*(e-m),l=a.percents[v+1],i=a.anim[e];break}f&&d.attr(a.anim[a.percents[v]])}if(i){if(j)j.initstatus=f,j.start=new Date-j.ms*f;else{for(var y in i)if(i[z](y)&&(db[z](y)||d.paper.customAttributes[z](y)))switch(r[y]=d.attr(y),null==r[y]&&(r[y]=cb[y]),s[y]=i[y],db[y]){case T:t[y]=(s[y]-r[y])/p;break;case"colour":r[y]=c.getRGB(r[y]);var A=c.getRGB(s[y]);t[y]={r:(A.r-r[y].r)/p,g:(A.g-r[y].g)/p,b:(A.b-r[y].b)/p};break;case"path":var B=Kb(r[y],s[y]),C=B[1];for(r[y]=B[0],t[y]=[],v=0,x=r[y].length;x>v;v++){t[y][v]=[0];for(var D=1,F=r[y][v].length;F>D;D++)t[y][v][D]=(C[v][D]-r[y][v][D])/p}break;case"transform":var G=d._,H=Pb(G[y],s[y]);if(H)for(r[y]=H.from,s[y]=H.to,t[y]=[],t[y].real=!0,v=0,x=r[y].length;x>v;v++)for(t[y][v]=[r[y][v][0]],D=1,F=r[y][v].length;F>D;D++)t[y][v][D]=(s[y][v][D]-r[y][v][D])/p;else{var K=d.matrix||new o,L={_:{transform:G.transform},getBBox:function(){return d.getBBox(1)}};r[y]=[K.a,K.b,K.c,K.d,K.e,K.f],Nb(L,s[y]),s[y]=L._.transform,t[y]=[(L.matrix.a-K.a)/p,(L.matrix.b-K.b)/p,(L.matrix.c-K.c)/p,(L.matrix.d-K.d)/p,(L.matrix.e-K.e)/p,(L.matrix.f-K.f)/p]}break;case"csv":var M=I(i[y])[J](w),N=I(r[y])[J](w);if("clip-rect"==y)for(r[y]=N,t[y]=[],v=N.length;v--;)t[y][v]=(M[v]-r[y][v])/p;s[y]=M;break;default:for(M=[][E](i[y]),N=[][E](r[y]),t[y]=[],v=d.paper.customAttributes[y].length;v--;)t[y][v]=((M[v]||0)-(N[v]||0))/p}var O=i.easing,P=c.easing_formulas[O];if(!P)if(P=I(O).match(Z),P&&5==P.length){var Q=P;P=function(a){return q(a,+Q[1],+Q[2],+Q[3],+Q[4],p)}}else P=nb;if(n=i.start||a.start||+new Date,u={anim:a,percent:e,timestamp:n,start:n+(a.del||0),status:0,initstatus:f||0,stop:!1,ms:p,easing:P,from:r,diff:t,to:s,el:d,callback:i.callback,prev:m,next:l,repeat:h||a.times,origin:d.attr(),totalOrigin:g},ic.push(u),f&&!j&&!k&&(u.stop=!0,u.start=new Date-p*f,1==ic.length))return kc();k&&(u.start=new Date-u.ms*f),1==ic.length&&jc(kc)}b("raphael.anim.start."+d.id,d,a)}}function t(a){for(var b=0;be;e++)for(i=a[e],f=1,h=i.length;h>f;f+=2)c=b.x(i[f],i[f+1]),d=b.y(i[f],i[f+1]),i[f]=c,i[f+1]=d;return a};if(c._g=A,c.type=A.win.SVGAngle||A.doc.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")?"SVG":"VML","VML"==c.type){var sb,tb=A.doc.createElement("div");if(tb.innerHTML='',sb=tb.firstChild,sb.style.behavior="url(#default#VML)",!sb||"object"!=typeof sb.adj)return c.type=G;tb=null}c.svg=!(c.vml="VML"==c.type),c._Paper=C,c.fn=v=C.prototype=c.prototype,c._id=0,c._oid=0,c.is=function(a,b){return b=M.call(b),"finite"==b?!Y[z](+a):"array"==b?a instanceof Array:"null"==b&&null===a||b==typeof a&&null!==a||"object"==b&&a===Object(a)||"array"==b&&Array.isArray&&Array.isArray(a)||W.call(a).slice(8,-1).toLowerCase()==b},c.angle=function(a,b,d,e,f,g){if(null==f){var h=a-d,i=b-e;return h||i?(180+180*N.atan2(-i,-h)/S+360)%360:0}return c.angle(a,b,f,g)-c.angle(d,e,f,g)},c.rad=function(a){return a%360*S/180},c.deg=function(a){return 180*a/S%360},c.snapTo=function(a,b,d){if(d=c.is(d,"finite")?d:10,c.is(a,V)){for(var e=a.length;e--;)if(Q(a[e]-b)<=d)return a[e]}else{a=+a;var f=b%a;if(d>f)return b-f;if(f>a-d)return b-f+a}return b};c.createUUID=function(a,b){return function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(a,b).toUpperCase()}}(/[xy]/g,function(a){var b=16*N.random()|0,c="x"==a?b:3&b|8;return c.toString(16)});c.setWindow=function(a){b("raphael.setWindow",c,A.win,a),A.win=a,A.doc=A.win.document,c._engine.initWin&&c._engine.initWin(A.win)};var ub=function(a){if(c.vml){var b,d=/^\s+|\s+$/g;try{var e=new ActiveXObject("htmlfile");e.write(""),e.close(),b=e.body}catch(g){b=createPopup().document.body}var h=b.createTextRange();ub=f(function(a){try{b.style.color=I(a).replace(d,G);var c=h.queryCommandValue("ForeColor");return c=(255&c)<<16|65280&c|(16711680&c)>>>16,"#"+("000000"+c.toString(16)).slice(-6)}catch(e){return"none"}})}else{var i=A.doc.createElement("i");i.title="Raphaël Colour Picker",i.style.display="none",A.doc.body.appendChild(i),ub=f(function(a){return i.style.color=a,A.doc.defaultView.getComputedStyle(i,G).getPropertyValue("color")})}return ub(a)},vb=function(){return"hsb("+[this.h,this.s,this.b]+")"},wb=function(){return"hsl("+[this.h,this.s,this.l]+")"},xb=function(){return this.hex},yb=function(a,b,d){if(null==b&&c.is(a,"object")&&"r"in a&&"g"in a&&"b"in a&&(d=a.b,b=a.g,a=a.r),null==b&&c.is(a,U)){var e=c.getRGB(a);a=e.r,b=e.g,d=e.b}return(a>1||b>1||d>1)&&(a/=255,b/=255,d/=255),[a,b,d]},zb=function(a,b,d,e){a*=255,b*=255,d*=255;var f={r:a,g:b,b:d,hex:c.rgb(a,b,d),toString:xb};return c.is(e,"finite")&&(f.opacity=e),f};c.color=function(a){var b;return c.is(a,"object")&&"h"in a&&"s"in a&&"b"in a?(b=c.hsb2rgb(a),a.r=b.r,a.g=b.g,a.b=b.b,a.hex=b.hex):c.is(a,"object")&&"h"in a&&"s"in a&&"l"in a?(b=c.hsl2rgb(a),a.r=b.r,a.g=b.g,a.b=b.b,a.hex=b.hex):(c.is(a,"string")&&(a=c.getRGB(a)),c.is(a,"object")&&"r"in a&&"g"in a&&"b"in a?(b=c.rgb2hsl(a),a.h=b.h,a.s=b.s,a.l=b.l,b=c.rgb2hsb(a),a.v=b.b):(a={hex:"none"},a.r=a.g=a.b=a.h=a.s=a.v=a.l=-1)),a.toString=xb,a},c.hsb2rgb=function(a,b,c,d){this.is(a,"object")&&"h"in a&&"s"in a&&"b"in a&&(c=a.b,b=a.s,d=a.o,a=a.h),a*=360;var e,f,g,h,i;return a=a%360/60,i=c*b,h=i*(1-Q(a%2-1)),e=f=g=c-i,a=~~a,e+=[i,h,0,0,h,i][a],f+=[h,i,i,h,0,0][a],g+=[0,0,h,i,i,h][a],zb(e,f,g,d)},c.hsl2rgb=function(a,b,c,d){this.is(a,"object")&&"h"in a&&"s"in a&&"l"in a&&(c=a.l,b=a.s,a=a.h),(a>1||b>1||c>1)&&(a/=360,b/=100,c/=100),a*=360;var e,f,g,h,i;return a=a%360/60,i=2*b*(.5>c?c:1-c),h=i*(1-Q(a%2-1)),e=f=g=c-i/2,a=~~a,e+=[i,h,0,0,h,i][a],f+=[h,i,i,h,0,0][a],g+=[0,0,h,i,i,h][a],zb(e,f,g,d)},c.rgb2hsb=function(a,b,c){c=yb(a,b,c),a=c[0],b=c[1],c=c[2];var d,e,f,g;return f=O(a,b,c),g=f-P(a,b,c),d=0==g?null:f==a?(b-c)/g:f==b?(c-a)/g+2:(a-b)/g+4,d=(d+360)%6*60/360,e=0==g?0:g/f,{h:d,s:e,b:f,toString:vb}},c.rgb2hsl=function(a,b,c){c=yb(a,b,c),a=c[0],b=c[1],c=c[2];var d,e,f,g,h,i;return g=O(a,b,c),h=P(a,b,c),i=g-h,d=0==i?null:g==a?(b-c)/i:g==b?(c-a)/i+2:(a-b)/i+4,d=(d+360)%6*60/360,f=(g+h)/2,e=0==i?0:.5>f?i/(2*f):i/(2-2*f),{h:d,s:e,l:f,toString:wb}},c._path2string=function(){return this.join(",").replace(gb,"$1")};c._preload=function(a,b){var c=A.doc.createElement("img");c.style.cssText="position:absolute;left:-9999em;top:-9999em",c.onload=function(){b.call(this),this.onload=null,A.doc.body.removeChild(this)},c.onerror=function(){A.doc.body.removeChild(this)},A.doc.body.appendChild(c),c.src=a};c.getRGB=f(function(a){if(!a||(a=I(a)).indexOf("-")+1)return{r:-1,g:-1,b:-1,hex:"none",error:1,toString:g};if("none"==a)return{r:-1,g:-1,b:-1,hex:"none",toString:g};!(fb[z](a.toLowerCase().substring(0,2))||"#"==a.charAt())&&(a=ub(a));var b,d,e,f,h,i,j=a.match(X);return j?(j[2]&&(e=ab(j[2].substring(5),16),d=ab(j[2].substring(3,5),16),b=ab(j[2].substring(1,3),16)),j[3]&&(e=ab((h=j[3].charAt(3))+h,16),d=ab((h=j[3].charAt(2))+h,16),b=ab((h=j[3].charAt(1))+h,16)),j[4]&&(i=j[4][J](eb),b=_(i[0]),"%"==i[0].slice(-1)&&(b*=2.55),d=_(i[1]),"%"==i[1].slice(-1)&&(d*=2.55),e=_(i[2]),"%"==i[2].slice(-1)&&(e*=2.55),"rgba"==j[1].toLowerCase().slice(0,4)&&(f=_(i[3])),i[3]&&"%"==i[3].slice(-1)&&(f/=100)),j[5]?(i=j[5][J](eb),b=_(i[0]),"%"==i[0].slice(-1)&&(b*=2.55),d=_(i[1]),"%"==i[1].slice(-1)&&(d*=2.55),e=_(i[2]),"%"==i[2].slice(-1)&&(e*=2.55),("deg"==i[0].slice(-3)||"°"==i[0].slice(-1))&&(b/=360),"hsba"==j[1].toLowerCase().slice(0,4)&&(f=_(i[3])),i[3]&&"%"==i[3].slice(-1)&&(f/=100),c.hsb2rgb(b,d,e,f)):j[6]?(i=j[6][J](eb),b=_(i[0]),"%"==i[0].slice(-1)&&(b*=2.55),d=_(i[1]),"%"==i[1].slice(-1)&&(d*=2.55),e=_(i[2]),"%"==i[2].slice(-1)&&(e*=2.55),("deg"==i[0].slice(-3)||"°"==i[0].slice(-1))&&(b/=360),"hsla"==j[1].toLowerCase().slice(0,4)&&(f=_(i[3])),i[3]&&"%"==i[3].slice(-1)&&(f/=100),c.hsl2rgb(b,d,e,f)):(j={r:b,g:d,b:e,toString:g},j.hex="#"+(16777216|e|d<<8|b<<16).toString(16).slice(1),c.is(f,"finite")&&(j.opacity=f),j)):{r:-1,g:-1,b:-1,hex:"none",error:1,toString:g}},c),c.hsb=f(function(a,b,d){return c.hsb2rgb(a,b,d).hex}),c.hsl=f(function(a,b,d){return c.hsl2rgb(a,b,d).hex}),c.rgb=f(function(a,b,c){return"#"+(16777216|c|b<<8|a<<16).toString(16).slice(1)}),c.getColor=function(a){var b=this.getColor.start=this.getColor.start||{h:0,s:1,b:a||.75},c=this.hsb2rgb(b.h,b.s,b.b);return b.h+=.075,b.h>1&&(b.h=0,b.s-=.2,b.s<=0&&(this.getColor.start={h:0,s:1,b:b.b})),c.hex},c.getColor.reset=function(){delete this.start},c.parsePathString=function(a){if(!a)return null;var b=Ab(a);if(b.arr)return Cb(b.arr);var d={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0},e=[];return c.is(a,V)&&c.is(a[0],V)&&(e=Cb(a)),e.length||I(a).replace(hb,function(a,b,c){var f=[],g=b.toLowerCase();if(c.replace(jb,function(a,b){b&&f.push(+b)}),"m"==g&&f.length>2&&(e.push([b][E](f.splice(0,2))),g="l",b="m"==b?"l":"L"),"r"==g)e.push([b][E](f));else for(;f.length>=d[g]&&(e.push([b][E](f.splice(0,d[g]))),d[g]););}),e.toString=c._path2string,b.arr=Cb(e),e},c.parseTransformString=f(function(a){if(!a)return null;var b=[];return c.is(a,V)&&c.is(a[0],V)&&(b=Cb(a)),b.length||I(a).replace(ib,function(a,c,d){{var e=[];M.call(c)}d.replace(jb,function(a,b){b&&e.push(+b)}),b.push([c][E](e))}),b.toString=c._path2string,b});var Ab=function(a){var b=Ab.ps=Ab.ps||{};return b[a]?b[a].sleep=100:b[a]={sleep:100},setTimeout(function(){for(var c in b)b[z](c)&&c!=a&&(b[c].sleep--,!b[c].sleep&&delete b[c])}),b[a]};c.findDotsAtSegment=function(a,b,c,d,e,f,g,h,i){var j=1-i,k=R(j,3),l=R(j,2),m=i*i,n=m*i,o=k*a+3*l*i*c+3*j*i*i*e+n*g,p=k*b+3*l*i*d+3*j*i*i*f+n*h,q=a+2*i*(c-a)+m*(e-2*c+a),r=b+2*i*(d-b)+m*(f-2*d+b),s=c+2*i*(e-c)+m*(g-2*e+c),t=d+2*i*(f-d)+m*(h-2*f+d),u=j*a+i*c,v=j*b+i*d,w=j*e+i*g,x=j*f+i*h,y=90-180*N.atan2(q-s,r-t)/S;return(q>s||t>r)&&(y+=180),{x:o,y:p,m:{x:q,y:r},n:{x:s,y:t},start:{x:u,y:v},end:{x:w,y:x},alpha:y}},c.bezierBBox=function(a,b,d,e,f,g,h,i){c.is(a,"array")||(a=[a,b,d,e,f,g,h,i]);var j=Jb.apply(null,a);return{x:j.min.x,y:j.min.y,x2:j.max.x,y2:j.max.y,width:j.max.x-j.min.x,height:j.max.y-j.min.y}},c.isPointInsideBBox=function(a,b,c){return b>=a.x&&b<=a.x2&&c>=a.y&&c<=a.y2},c.isBBoxIntersect=function(a,b){var d=c.isPointInsideBBox;return d(b,a.x,a.y)||d(b,a.x2,a.y)||d(b,a.x,a.y2)||d(b,a.x2,a.y2)||d(a,b.x,b.y)||d(a,b.x2,b.y)||d(a,b.x,b.y2)||d(a,b.x2,b.y2)||(a.xb.x||b.xa.x)&&(a.yb.y||b.ya.y)},c.pathIntersection=function(a,b){return n(a,b)},c.pathIntersectionNumber=function(a,b){return n(a,b,1)},c.isPointInsidePath=function(a,b,d){var e=c.pathBBox(a);return c.isPointInsideBBox(e,b,d)&&n(a,[["M",b,d],["H",e.x2+10]],1)%2==1},c._removedFactory=function(a){return function(){b("raphael.log",null,"Raphaël: you are calling to method “"+a+"” of removed object",a)}};var Bb=c.pathBBox=function(a){var b=Ab(a);if(b.bbox)return d(b.bbox);if(!a)return{x:0,y:0,width:0,height:0,x2:0,y2:0};a=Kb(a);for(var c,e=0,f=0,g=[],h=[],i=0,j=a.length;j>i;i++)if(c=a[i],"M"==c[0])e=c[1],f=c[2],g.push(e),h.push(f);else{var k=Jb(e,f,c[1],c[2],c[3],c[4],c[5],c[6]);g=g[E](k.min.x,k.max.x),h=h[E](k.min.y,k.max.y),e=c[5],f=c[6]}var l=P[D](0,g),m=P[D](0,h),n=O[D](0,g),o=O[D](0,h),p=n-l,q=o-m,r={x:l,y:m,x2:n,y2:o,width:p,height:q,cx:l+p/2,cy:m+q/2};return b.bbox=d(r),r},Cb=function(a){var b=d(a);return b.toString=c._path2string,b},Db=c._pathToRelative=function(a){var b=Ab(a);if(b.rel)return Cb(b.rel);c.is(a,V)&&c.is(a&&a[0],V)||(a=c.parsePathString(a));var d=[],e=0,f=0,g=0,h=0,i=0;"M"==a[0][0]&&(e=a[0][1],f=a[0][2],g=e,h=f,i++,d.push(["M",e,f]));for(var j=i,k=a.length;k>j;j++){var l=d[j]=[],m=a[j];if(m[0]!=M.call(m[0]))switch(l[0]=M.call(m[0]),l[0]){case"a":l[1]=m[1],l[2]=m[2],l[3]=m[3],l[4]=m[4],l[5]=m[5],l[6]=+(m[6]-e).toFixed(3),l[7]=+(m[7]-f).toFixed(3);break;case"v":l[1]=+(m[1]-f).toFixed(3);break;case"m":g=m[1],h=m[2];default:for(var n=1,o=m.length;o>n;n++)l[n]=+(m[n]-(n%2?e:f)).toFixed(3)}else{l=d[j]=[],"m"==m[0]&&(g=m[1]+e,h=m[2]+f);for(var p=0,q=m.length;q>p;p++)d[j][p]=m[p]}var r=d[j].length;switch(d[j][0]){case"z":e=g,f=h;break;case"h":e+=+d[j][r-1];break;case"v":f+=+d[j][r-1];break;default:e+=+d[j][r-2],f+=+d[j][r-1]}}return d.toString=c._path2string,b.rel=Cb(d),d},Eb=c._pathToAbsolute=function(a){var b=Ab(a);if(b.abs)return Cb(b.abs);if(c.is(a,V)&&c.is(a&&a[0],V)||(a=c.parsePathString(a)),!a||!a.length)return[["M",0,0]];var d=[],e=0,f=0,g=0,i=0,j=0;"M"==a[0][0]&&(e=+a[0][1],f=+a[0][2],g=e,i=f,j++,d[0]=["M",e,f]);for(var k,l,m=3==a.length&&"M"==a[0][0]&&"R"==a[1][0].toUpperCase()&&"Z"==a[2][0].toUpperCase(),n=j,o=a.length;o>n;n++){if(d.push(k=[]),l=a[n],l[0]!=bb.call(l[0]))switch(k[0]=bb.call(l[0]),k[0]){case"A":k[1]=l[1],k[2]=l[2],k[3]=l[3],k[4]=l[4],k[5]=l[5],k[6]=+(l[6]+e),k[7]=+(l[7]+f);break;case"V":k[1]=+l[1]+f;break;case"H":k[1]=+l[1]+e;break;case"R":for(var p=[e,f][E](l.slice(1)),q=2,r=p.length;r>q;q++)p[q]=+p[q]+e,p[++q]=+p[q]+f;d.pop(),d=d[E](h(p,m));break;case"M":g=+l[1]+e,i=+l[2]+f;default:for(q=1,r=l.length;r>q;q++)k[q]=+l[q]+(q%2?e:f)}else if("R"==l[0])p=[e,f][E](l.slice(1)),d.pop(),d=d[E](h(p,m)),k=["R"][E](l.slice(-2));else for(var s=0,t=l.length;t>s;s++)k[s]=l[s];switch(k[0]){case"Z":e=g,f=i;break;case"H":e=k[1];break;case"V":f=k[1];break;case"M":g=k[k.length-2],i=k[k.length-1];default:e=k[k.length-2],f=k[k.length-1]}}return d.toString=c._path2string,b.abs=Cb(d),d},Fb=function(a,b,c,d){return[a,b,c,d,c,d]},Gb=function(a,b,c,d,e,f){var g=1/3,h=2/3;return[g*a+h*c,g*b+h*d,g*e+h*c,g*f+h*d,e,f]},Hb=function(a,b,c,d,e,g,h,i,j,k){var l,m=120*S/180,n=S/180*(+e||0),o=[],p=f(function(a,b,c){var d=a*N.cos(c)-b*N.sin(c),e=a*N.sin(c)+b*N.cos(c);return{x:d,y:e}});if(k)y=k[0],z=k[1],w=k[2],x=k[3];else{l=p(a,b,-n),a=l.x,b=l.y,l=p(i,j,-n),i=l.x,j=l.y;var q=(N.cos(S/180*e),N.sin(S/180*e),(a-i)/2),r=(b-j)/2,s=q*q/(c*c)+r*r/(d*d);s>1&&(s=N.sqrt(s),c=s*c,d=s*d);var t=c*c,u=d*d,v=(g==h?-1:1)*N.sqrt(Q((t*u-t*r*r-u*q*q)/(t*r*r+u*q*q))),w=v*c*r/d+(a+i)/2,x=v*-d*q/c+(b+j)/2,y=N.asin(((b-x)/d).toFixed(9)),z=N.asin(((j-x)/d).toFixed(9));y=w>a?S-y:y,z=w>i?S-z:z,0>y&&(y=2*S+y),0>z&&(z=2*S+z),h&&y>z&&(y-=2*S),!h&&z>y&&(z-=2*S)}var A=z-y;if(Q(A)>m){var B=z,C=i,D=j;z=y+m*(h&&z>y?1:-1),i=w+c*N.cos(z),j=x+d*N.sin(z),o=Hb(i,j,c,d,e,0,h,C,D,[z,B,w,x])}A=z-y;var F=N.cos(y),G=N.sin(y),H=N.cos(z),I=N.sin(z),K=N.tan(A/4),L=4/3*c*K,M=4/3*d*K,O=[a,b],P=[a+L*G,b-M*F],R=[i+L*I,j-M*H],T=[i,j];if(P[0]=2*O[0]-P[0],P[1]=2*O[1]-P[1],k)return[P,R,T][E](o);o=[P,R,T][E](o).join()[J](",");for(var U=[],V=0,W=o.length;W>V;V++)U[V]=V%2?p(o[V-1],o[V],n).y:p(o[V],o[V+1],n).x;return U},Ib=function(a,b,c,d,e,f,g,h,i){var j=1-i;return{x:R(j,3)*a+3*R(j,2)*i*c+3*j*i*i*e+R(i,3)*g,y:R(j,3)*b+3*R(j,2)*i*d+3*j*i*i*f+R(i,3)*h}},Jb=f(function(a,b,c,d,e,f,g,h){var i,j=e-2*c+a-(g-2*e+c),k=2*(c-a)-2*(e-c),l=a-c,m=(-k+N.sqrt(k*k-4*j*l))/2/j,n=(-k-N.sqrt(k*k-4*j*l))/2/j,o=[b,h],p=[a,g];return Q(m)>"1e12"&&(m=.5),Q(n)>"1e12"&&(n=.5),m>0&&1>m&&(i=Ib(a,b,c,d,e,f,g,h,m),p.push(i.x),o.push(i.y)),n>0&&1>n&&(i=Ib(a,b,c,d,e,f,g,h,n),p.push(i.x),o.push(i.y)),j=f-2*d+b-(h-2*f+d),k=2*(d-b)-2*(f-d),l=b-d,m=(-k+N.sqrt(k*k-4*j*l))/2/j,n=(-k-N.sqrt(k*k-4*j*l))/2/j,Q(m)>"1e12"&&(m=.5),Q(n)>"1e12"&&(n=.5),m>0&&1>m&&(i=Ib(a,b,c,d,e,f,g,h,m),p.push(i.x),o.push(i.y)),n>0&&1>n&&(i=Ib(a,b,c,d,e,f,g,h,n),p.push(i.x),o.push(i.y)),{min:{x:P[D](0,p),y:P[D](0,o)},max:{x:O[D](0,p),y:O[D](0,o)}}}),Kb=c._path2curve=f(function(a,b){var c=!b&&Ab(a);if(!b&&c.curve)return Cb(c.curve);for(var d=Eb(a),e=b&&Eb(b),f={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},g={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},h=(function(a,b,c){var d,e,f={T:1,Q:1};if(!a)return["C",b.x,b.y,b.x,b.y,b.x,b.y];switch(!(a[0]in f)&&(b.qx=b.qy=null),a[0]){case"M":b.X=a[1],b.Y=a[2];break;case"A":a=["C"][E](Hb[D](0,[b.x,b.y][E](a.slice(1))));break;case"S":"C"==c||"S"==c?(d=2*b.x-b.bx,e=2*b.y-b.by):(d=b.x,e=b.y),a=["C",d,e][E](a.slice(1));break;case"T":"Q"==c||"T"==c?(b.qx=2*b.x-b.qx,b.qy=2*b.y-b.qy):(b.qx=b.x,b.qy=b.y),a=["C"][E](Gb(b.x,b.y,b.qx,b.qy,a[1],a[2]));break;case"Q":b.qx=a[1],b.qy=a[2],a=["C"][E](Gb(b.x,b.y,a[1],a[2],a[3],a[4]));break;case"L":a=["C"][E](Fb(b.x,b.y,a[1],a[2]));break;case"H":a=["C"][E](Fb(b.x,b.y,a[1],b.y));break;case"V":a=["C"][E](Fb(b.x,b.y,b.x,a[1]));break;case"Z":a=["C"][E](Fb(b.x,b.y,b.X,b.Y))}return a}),i=function(a,b){if(a[b].length>7){a[b].shift();for(var c=a[b];c.length;)k[b]="A",e&&(l[b]="A"),a.splice(b++,0,["C"][E](c.splice(0,6)));a.splice(b,1),p=O(d.length,e&&e.length||0)}},j=function(a,b,c,f,g){a&&b&&"M"==a[g][0]&&"M"!=b[g][0]&&(b.splice(g,0,["M",f.x,f.y]),c.bx=0,c.by=0,c.x=a[g][1],c.y=a[g][2],p=O(d.length,e&&e.length||0))},k=[],l=[],m="",n="",o=0,p=O(d.length,e&&e.length||0);p>o;o++){d[o]&&(m=d[o][0]),"C"!=m&&(k[o]=m,o&&(n=k[o-1])),d[o]=h(d[o],f,n),"A"!=k[o]&&"C"==m&&(k[o]="C"),i(d,o),e&&(e[o]&&(m=e[o][0]),"C"!=m&&(l[o]=m,o&&(n=l[o-1])),e[o]=h(e[o],g,n),"A"!=l[o]&&"C"==m&&(l[o]="C"),i(e,o)),j(d,e,f,g,o),j(e,d,g,f,o);var q=d[o],r=e&&e[o],s=q.length,t=e&&r.length;f.x=q[s-2],f.y=q[s-1],f.bx=_(q[s-4])||f.x,f.by=_(q[s-3])||f.y,g.bx=e&&(_(r[t-4])||g.x),g.by=e&&(_(r[t-3])||g.y),g.x=e&&r[t-2],g.y=e&&r[t-1]}return e||(c.curve=Cb(d)),e?[d,e]:d},null,Cb),Lb=(c._parseDots=f(function(a){for(var b=[],d=0,e=a.length;e>d;d++){var f={},g=a[d].match(/^([^:]*):?([\d\.]*)/);if(f.color=c.getRGB(g[1]),f.color.error)return null;f.color=f.color.hex,g[2]&&(f.offset=g[2]+"%"),b.push(f)}for(d=1,e=b.length-1;e>d;d++)if(!b[d].offset){for(var h=_(b[d-1].offset||0),i=0,j=d+1;e>j;j++)if(b[j].offset){i=b[j].offset;break}i||(i=100,j=e),i=_(i);for(var k=(i-h)/(j-d+1);j>d;d++)h+=k,b[d].offset=h+"%"}return b}),c._tear=function(a,b){a==b.top&&(b.top=a.prev),a==b.bottom&&(b.bottom=a.next),a.next&&(a.next.prev=a.prev),a.prev&&(a.prev.next=a.next)}),Mb=(c._tofront=function(a,b){b.top!==a&&(Lb(a,b),a.next=null,a.prev=b.top,b.top.next=a,b.top=a)},c._toback=function(a,b){b.bottom!==a&&(Lb(a,b),a.next=b.bottom,a.prev=null,b.bottom.prev=a,b.bottom=a)},c._insertafter=function(a,b,c){Lb(a,c),b==c.top&&(c.top=a),b.next&&(b.next.prev=a),a.next=b.next,a.prev=b,b.next=a},c._insertbefore=function(a,b,c){Lb(a,c),b==c.bottom&&(c.bottom=a),b.prev&&(b.prev.next=a),a.prev=b.prev,b.prev=a,a.next=b},c.toMatrix=function(a,b){var c=Bb(a),d={_:{transform:G},getBBox:function(){return c}};return Nb(d,b),d.matrix}),Nb=(c.transformPath=function(a,b){return rb(a,Mb(a,b))},c._extractTransform=function(a,b){if(null==b)return a._.transform;b=I(b).replace(/\.{3}|\u2026/g,a._.transform||G);var d=c.parseTransformString(b),e=0,f=0,g=0,h=1,i=1,j=a._,k=new o;if(j.transform=d||[],d)for(var l=0,m=d.length;m>l;l++){var n,p,q,r,s,t=d[l],u=t.length,v=I(t[0]).toLowerCase(),w=t[0]!=v,x=w?k.invert():0;"t"==v&&3==u?w?(n=x.x(0,0),p=x.y(0,0),q=x.x(t[1],t[2]),r=x.y(t[1],t[2]),k.translate(q-n,r-p)):k.translate(t[1],t[2]):"r"==v?2==u?(s=s||a.getBBox(1),k.rotate(t[1],s.x+s.width/2,s.y+s.height/2),e+=t[1]):4==u&&(w?(q=x.x(t[2],t[3]),r=x.y(t[2],t[3]),k.rotate(t[1],q,r)):k.rotate(t[1],t[2],t[3]),e+=t[1]):"s"==v?2==u||3==u?(s=s||a.getBBox(1),k.scale(t[1],t[u-1],s.x+s.width/2,s.y+s.height/2),h*=t[1],i*=t[u-1]):5==u&&(w?(q=x.x(t[3],t[4]),r=x.y(t[3],t[4]),k.scale(t[1],t[2],q,r)):k.scale(t[1],t[2],t[3],t[4]),h*=t[1],i*=t[2]):"m"==v&&7==u&&k.add(t[1],t[2],t[3],t[4],t[5],t[6]),j.dirtyT=1,a.matrix=k}a.matrix=k,j.sx=h,j.sy=i,j.deg=e,j.dx=f=k.e,j.dy=g=k.f,1==h&&1==i&&!e&&j.bbox?(j.bbox.x+=+f,j.bbox.y+=+g):j.dirtyT=1}),Ob=function(a){var b=a[0];switch(b.toLowerCase()){case"t":return[b,0,0];case"m":return[b,1,0,0,1,0,0];case"r":return 4==a.length?[b,0,a[2],a[3]]:[b,0];case"s":return 5==a.length?[b,1,1,a[3],a[4]]:3==a.length?[b,1,1]:[b,1]}},Pb=c._equaliseTransform=function(a,b){b=I(b).replace(/\.{3}|\u2026/g,a),a=c.parseTransformString(a)||[],b=c.parseTransformString(b)||[]; -for(var d,e,f,g,h=O(a.length,b.length),i=[],j=[],k=0;h>k;k++){if(f=a[k]||Ob(b[k]),g=b[k]||Ob(f),f[0]!=g[0]||"r"==f[0].toLowerCase()&&(f[2]!=g[2]||f[3]!=g[3])||"s"==f[0].toLowerCase()&&(f[3]!=g[3]||f[4]!=g[4]))return;for(i[k]=[],j[k]=[],d=0,e=O(f.length,g.length);e>d;d++)d in f&&(i[k][d]=f[d]),d in g&&(j[k][d]=g[d])}return{from:i,to:j}};c._getContainer=function(a,b,d,e){var f;return f=null!=e||c.is(a,"object")?a:A.doc.getElementById(a),null!=f?f.tagName?null==b?{container:f,width:f.style.pixelWidth||f.offsetWidth,height:f.style.pixelHeight||f.offsetHeight}:{container:f,width:b,height:d}:{container:1,x:a,y:b,width:d,height:e}:void 0},c.pathToRelative=Db,c._engine={},c.path2curve=Kb,c.matrix=function(a,b,c,d,e,f){return new o(a,b,c,d,e,f)},function(a){function b(a){return a[0]*a[0]+a[1]*a[1]}function d(a){var c=N.sqrt(b(a));a[0]&&(a[0]/=c),a[1]&&(a[1]/=c)}a.add=function(a,b,c,d,e,f){var g,h,i,j,k=[[],[],[]],l=[[this.a,this.c,this.e],[this.b,this.d,this.f],[0,0,1]],m=[[a,c,e],[b,d,f],[0,0,1]];for(a&&a instanceof o&&(m=[[a.a,a.c,a.e],[a.b,a.d,a.f],[0,0,1]]),g=0;3>g;g++)for(h=0;3>h;h++){for(j=0,i=0;3>i;i++)j+=l[g][i]*m[i][h];k[g][h]=j}this.a=k[0][0],this.b=k[1][0],this.c=k[0][1],this.d=k[1][1],this.e=k[0][2],this.f=k[1][2]},a.invert=function(){var a=this,b=a.a*a.d-a.b*a.c;return new o(a.d/b,-a.b/b,-a.c/b,a.a/b,(a.c*a.f-a.d*a.e)/b,(a.b*a.e-a.a*a.f)/b)},a.clone=function(){return new o(this.a,this.b,this.c,this.d,this.e,this.f)},a.translate=function(a,b){this.add(1,0,0,1,a,b)},a.scale=function(a,b,c,d){null==b&&(b=a),(c||d)&&this.add(1,0,0,1,c,d),this.add(a,0,0,b,0,0),(c||d)&&this.add(1,0,0,1,-c,-d)},a.rotate=function(a,b,d){a=c.rad(a),b=b||0,d=d||0;var e=+N.cos(a).toFixed(9),f=+N.sin(a).toFixed(9);this.add(e,f,-f,e,b,d),this.add(1,0,0,1,-b,-d)},a.x=function(a,b){return a*this.a+b*this.c+this.e},a.y=function(a,b){return a*this.b+b*this.d+this.f},a.get=function(a){return+this[I.fromCharCode(97+a)].toFixed(4)},a.toString=function(){return c.svg?"matrix("+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)].join()+")":[this.get(0),this.get(2),this.get(1),this.get(3),0,0].join()},a.toFilter=function(){return"progid:DXImageTransform.Microsoft.Matrix(M11="+this.get(0)+", M12="+this.get(2)+", M21="+this.get(1)+", M22="+this.get(3)+", Dx="+this.get(4)+", Dy="+this.get(5)+", sizingmethod='auto expand')"},a.offset=function(){return[this.e.toFixed(4),this.f.toFixed(4)]},a.split=function(){var a={};a.dx=this.e,a.dy=this.f;var e=[[this.a,this.c],[this.b,this.d]];a.scalex=N.sqrt(b(e[0])),d(e[0]),a.shear=e[0][0]*e[1][0]+e[0][1]*e[1][1],e[1]=[e[1][0]-e[0][0]*a.shear,e[1][1]-e[0][1]*a.shear],a.scaley=N.sqrt(b(e[1])),d(e[1]),a.shear/=a.scaley;var f=-e[0][1],g=e[1][1];return 0>g?(a.rotate=c.deg(N.acos(g)),0>f&&(a.rotate=360-a.rotate)):a.rotate=c.deg(N.asin(f)),a.isSimple=!(+a.shear.toFixed(9)||a.scalex.toFixed(9)!=a.scaley.toFixed(9)&&a.rotate),a.isSuperSimple=!+a.shear.toFixed(9)&&a.scalex.toFixed(9)==a.scaley.toFixed(9)&&!a.rotate,a.noRotation=!+a.shear.toFixed(9)&&!a.rotate,a},a.toTransformString=function(a){var b=a||this[J]();return b.isSimple?(b.scalex=+b.scalex.toFixed(4),b.scaley=+b.scaley.toFixed(4),b.rotate=+b.rotate.toFixed(4),(b.dx||b.dy?"t"+[b.dx,b.dy]:G)+(1!=b.scalex||1!=b.scaley?"s"+[b.scalex,b.scaley,0,0]:G)+(b.rotate?"r"+[b.rotate,0,0]:G)):"m"+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)]}}(o.prototype);var Qb=navigator.userAgent.match(/Version\/(.*?)\s/)||navigator.userAgent.match(/Chrome\/(\d+)/);v.safari="Apple Computer, Inc."==navigator.vendor&&(Qb&&Qb[1]<4||"iP"==navigator.platform.slice(0,2))||"Google Inc."==navigator.vendor&&Qb&&Qb[1]<8?function(){var a=this.rect(-99,-99,this.width+99,this.height+99).attr({stroke:"none"});setTimeout(function(){a.remove()})}:mb;for(var Rb=function(){this.returnValue=!1},Sb=function(){return this.originalEvent.preventDefault()},Tb=function(){this.cancelBubble=!0},Ub=function(){return this.originalEvent.stopPropagation()},Vb=function(a){var b=A.doc.documentElement.scrollTop||A.doc.body.scrollTop,c=A.doc.documentElement.scrollLeft||A.doc.body.scrollLeft;return{x:a.clientX+c,y:a.clientY+b}},Wb=function(){return A.doc.addEventListener?function(a,b,c,d){var e=function(a){var b=Vb(a);return c.call(d,a,b.x,b.y)};if(a.addEventListener(b,e,!1),F&&L[b]){var f=function(b){for(var e=Vb(b),f=b,g=0,h=b.targetTouches&&b.targetTouches.length;h>g;g++)if(b.targetTouches[g].target==a){b=b.targetTouches[g],b.originalEvent=f,b.preventDefault=Sb,b.stopPropagation=Ub;break}return c.call(d,b,e.x,e.y)};a.addEventListener(L[b],f,!1)}return function(){return a.removeEventListener(b,e,!1),F&&L[b]&&a.removeEventListener(L[b],f,!1),!0}}:A.doc.attachEvent?function(a,b,c,d){var e=function(a){a=a||A.win.event;var b=A.doc.documentElement.scrollTop||A.doc.body.scrollTop,e=A.doc.documentElement.scrollLeft||A.doc.body.scrollLeft,f=a.clientX+e,g=a.clientY+b;return a.preventDefault=a.preventDefault||Rb,a.stopPropagation=a.stopPropagation||Tb,c.call(d,a,f,g)};a.attachEvent("on"+b,e);var f=function(){return a.detachEvent("on"+b,e),!0};return f}:void 0}(),Xb=[],Yb=function(a){for(var c,d=a.clientX,e=a.clientY,f=A.doc.documentElement.scrollTop||A.doc.body.scrollTop,g=A.doc.documentElement.scrollLeft||A.doc.body.scrollLeft,h=Xb.length;h--;){if(c=Xb[h],F&&a.touches){for(var i,j=a.touches.length;j--;)if(i=a.touches[j],i.identifier==c.el._drag.id){d=i.clientX,e=i.clientY,(a.originalEvent?a.originalEvent:a).preventDefault();break}}else a.preventDefault();var k,l=c.el.node,m=l.nextSibling,n=l.parentNode,o=l.style.display;A.win.opera&&n.removeChild(l),l.style.display="none",k=c.el.paper.getElementByPoint(d,e),l.style.display=o,A.win.opera&&(m?n.insertBefore(l,m):n.appendChild(l)),k&&b("raphael.drag.over."+c.el.id,c.el,k),d+=g,e+=f,b("raphael.drag.move."+c.el.id,c.move_scope||c.el,d-c.el._drag.x,e-c.el._drag.y,d,e,a)}},Zb=function(a){c.unmousemove(Yb).unmouseup(Zb);for(var d,e=Xb.length;e--;)d=Xb[e],d.el._drag={},b("raphael.drag.end."+d.el.id,d.end_scope||d.start_scope||d.move_scope||d.el,a);Xb=[]},$b=c.el={},_b=K.length;_b--;)!function(a){c[a]=$b[a]=function(b,d){return c.is(b,"function")&&(this.events=this.events||[],this.events.push({name:a,f:b,unbind:Wb(this.shape||this.node||A.doc,a,b,d||this)})),this},c["un"+a]=$b["un"+a]=function(b){for(var d=this.events||[],e=d.length;e--;)d[e].name!=a||!c.is(b,"undefined")&&d[e].f!=b||(d[e].unbind(),d.splice(e,1),!d.length&&delete this.events);return this}}(K[_b]);$b.data=function(a,d){var e=kb[this.id]=kb[this.id]||{};if(0==arguments.length)return e;if(1==arguments.length){if(c.is(a,"object")){for(var f in a)a[z](f)&&this.data(f,a[f]);return this}return b("raphael.data.get."+this.id,this,e[a],a),e[a]}return e[a]=d,b("raphael.data.set."+this.id,this,d,a),this},$b.removeData=function(a){return null==a?kb[this.id]={}:kb[this.id]&&delete kb[this.id][a],this},$b.getData=function(){return d(kb[this.id]||{})},$b.hover=function(a,b,c,d){return this.mouseover(a,c).mouseout(b,d||c)},$b.unhover=function(a,b){return this.unmouseover(a).unmouseout(b)};var ac=[];$b.drag=function(a,d,e,f,g,h){function i(i){(i.originalEvent||i).preventDefault();var j=i.clientX,k=i.clientY,l=A.doc.documentElement.scrollTop||A.doc.body.scrollTop,m=A.doc.documentElement.scrollLeft||A.doc.body.scrollLeft;if(this._drag.id=i.identifier,F&&i.touches)for(var n,o=i.touches.length;o--;)if(n=i.touches[o],this._drag.id=n.identifier,n.identifier==this._drag.id){j=n.clientX,k=n.clientY;break}this._drag.x=j+m,this._drag.y=k+l,!Xb.length&&c.mousemove(Yb).mouseup(Zb),Xb.push({el:this,move_scope:f,start_scope:g,end_scope:h}),d&&b.on("raphael.drag.start."+this.id,d),a&&b.on("raphael.drag.move."+this.id,a),e&&b.on("raphael.drag.end."+this.id,e),b("raphael.drag.start."+this.id,g||f||this,i.clientX+m,i.clientY+l,i)}return this._drag={},ac.push({el:this,start:i}),this.mousedown(i),this},$b.onDragOver=function(a){a?b.on("raphael.drag.over."+this.id,a):b.unbind("raphael.drag.over."+this.id)},$b.undrag=function(){for(var a=ac.length;a--;)ac[a].el==this&&(this.unmousedown(ac[a].start),ac.splice(a,1),b.unbind("raphael.drag.*."+this.id));!ac.length&&c.unmousemove(Yb).unmouseup(Zb),Xb=[]},v.circle=function(a,b,d){var e=c._engine.circle(this,a||0,b||0,d||0);return this.__set__&&this.__set__.push(e),e},v.rect=function(a,b,d,e,f){var g=c._engine.rect(this,a||0,b||0,d||0,e||0,f||0);return this.__set__&&this.__set__.push(g),g},v.ellipse=function(a,b,d,e){var f=c._engine.ellipse(this,a||0,b||0,d||0,e||0);return this.__set__&&this.__set__.push(f),f},v.path=function(a){a&&!c.is(a,U)&&!c.is(a[0],V)&&(a+=G);var b=c._engine.path(c.format[D](c,arguments),this);return this.__set__&&this.__set__.push(b),b},v.image=function(a,b,d,e,f){var g=c._engine.image(this,a||"about:blank",b||0,d||0,e||0,f||0);return this.__set__&&this.__set__.push(g),g},v.text=function(a,b,d){var e=c._engine.text(this,a||0,b||0,I(d));return this.__set__&&this.__set__.push(e),e},v.set=function(a){!c.is(a,"array")&&(a=Array.prototype.splice.call(arguments,0,arguments.length));var b=new mc(a);return this.__set__&&this.__set__.push(b),b.paper=this,b.type="set",b},v.setStart=function(a){this.__set__=a||this.set()},v.setFinish=function(){var a=this.__set__;return delete this.__set__,a},v.getSize=function(){var a=this.canvas.parentNode;return{width:a.offsetWidth,height:a.offsetHeight}},v.setSize=function(a,b){return c._engine.setSize.call(this,a,b)},v.setViewBox=function(a,b,d,e,f){return c._engine.setViewBox.call(this,a,b,d,e,f)},v.top=v.bottom=null,v.raphael=c;var bc=function(a){var b=a.getBoundingClientRect(),c=a.ownerDocument,d=c.body,e=c.documentElement,f=e.clientTop||d.clientTop||0,g=e.clientLeft||d.clientLeft||0,h=b.top+(A.win.pageYOffset||e.scrollTop||d.scrollTop)-f,i=b.left+(A.win.pageXOffset||e.scrollLeft||d.scrollLeft)-g;return{y:h,x:i}};v.getElementByPoint=function(a,b){var c=this,d=c.canvas,e=A.doc.elementFromPoint(a,b);if(A.win.opera&&"svg"==e.tagName){var f=bc(d),g=d.createSVGRect();g.x=a-f.x,g.y=b-f.y,g.width=g.height=1;var h=d.getIntersectionList(g,null);h.length&&(e=h[h.length-1])}if(!e)return null;for(;e.parentNode&&e!=d.parentNode&&!e.raphael;)e=e.parentNode;return e==c.canvas.parentNode&&(e=d),e=e&&e.raphael?c.getById(e.raphaelid):null},v.getElementsByBBox=function(a){var b=this.set();return this.forEach(function(d){c.isBBoxIntersect(d.getBBox(),a)&&b.push(d)}),b},v.getById=function(a){for(var b=this.bottom;b;){if(b.id==a)return b;b=b.next}return null},v.forEach=function(a,b){for(var c=this.bottom;c;){if(a.call(b,c)===!1)return this;c=c.next}return this},v.getElementsByPoint=function(a,b){var c=this.set();return this.forEach(function(d){d.isPointInside(a,b)&&c.push(d)}),c},$b.isPointInside=function(a,b){var d=this.realPath=qb[this.type](this);return this.attr("transform")&&this.attr("transform").length&&(d=c.transformPath(d,this.attr("transform"))),c.isPointInsidePath(d,a,b)},$b.getBBox=function(a){if(this.removed)return{};var b=this._;return a?((b.dirty||!b.bboxwt)&&(this.realPath=qb[this.type](this),b.bboxwt=Bb(this.realPath),b.bboxwt.toString=p,b.dirty=0),b.bboxwt):((b.dirty||b.dirtyT||!b.bbox)&&((b.dirty||!this.realPath)&&(b.bboxwt=0,this.realPath=qb[this.type](this)),b.bbox=Bb(rb(this.realPath,this.matrix)),b.bbox.toString=p,b.dirty=b.dirtyT=0),b.bbox)},$b.clone=function(){if(this.removed)return null;var a=this.paper[this.type]().attr(this.attr());return this.__set__&&this.__set__.push(a),a},$b.glow=function(a){if("text"==this.type)return null;a=a||{};var b={width:(a.width||10)+(+this.attr("stroke-width")||1),fill:a.fill||!1,opacity:a.opacity||.5,offsetx:a.offsetx||0,offsety:a.offsety||0,color:a.color||"#000"},c=b.width/2,d=this.paper,e=d.set(),f=this.realPath||qb[this.type](this);f=this.matrix?rb(f,this.matrix):f;for(var g=1;c+1>g;g++)e.push(d.path(f).attr({stroke:b.color,fill:b.fill?b.color:"none","stroke-linejoin":"round","stroke-linecap":"round","stroke-width":+(b.width/c*g).toFixed(3),opacity:+(b.opacity/c).toFixed(3)}));return e.insertBefore(this).translate(b.offsetx,b.offsety)};var cc=function(a,b,d,e,f,g,h,i,l){return null==l?j(a,b,d,e,f,g,h,i):c.findDotsAtSegment(a,b,d,e,f,g,h,i,k(a,b,d,e,f,g,h,i,l))},dc=function(a,b){return function(d,e,f){d=Kb(d);for(var g,h,i,j,k,l="",m={},n=0,o=0,p=d.length;p>o;o++){if(i=d[o],"M"==i[0])g=+i[1],h=+i[2];else{if(j=cc(g,h,i[1],i[2],i[3],i[4],i[5],i[6]),n+j>e){if(b&&!m.start){if(k=cc(g,h,i[1],i[2],i[3],i[4],i[5],i[6],e-n),l+=["C"+k.start.x,k.start.y,k.m.x,k.m.y,k.x,k.y],f)return l;m.start=l,l=["M"+k.x,k.y+"C"+k.n.x,k.n.y,k.end.x,k.end.y,i[5],i[6]].join(),n+=j,g=+i[5],h=+i[6];continue}if(!a&&!b)return k=cc(g,h,i[1],i[2],i[3],i[4],i[5],i[6],e-n),{x:k.x,y:k.y,alpha:k.alpha}}n+=j,g=+i[5],h=+i[6]}l+=i.shift()+i}return m.end=l,k=a?n:b?m:c.findDotsAtSegment(g,h,i[0],i[1],i[2],i[3],i[4],i[5],1),k.alpha&&(k={x:k.x,y:k.y,alpha:k.alpha}),k}},ec=dc(1),fc=dc(),gc=dc(0,1);c.getTotalLength=ec,c.getPointAtLength=fc,c.getSubpath=function(a,b,c){if(this.getTotalLength(a)-c<1e-6)return gc(a,b).end;var d=gc(a,c,1);return b?gc(d,b).end:d},$b.getTotalLength=function(){var a=this.getPath();if(a)return this.node.getTotalLength?this.node.getTotalLength():ec(a)},$b.getPointAtLength=function(a){var b=this.getPath();if(b)return fc(b,a)},$b.getPath=function(){var a,b=c._getPath[this.type];if("text"!=this.type&&"set"!=this.type)return b&&(a=b(this)),a},$b.getSubpath=function(a,b){var d=this.getPath();if(d)return c.getSubpath(d,a,b)};var hc=c.easing_formulas={linear:function(a){return a},"<":function(a){return R(a,1.7)},">":function(a){return R(a,.48)},"<>":function(a){var b=.48-a/1.04,c=N.sqrt(.1734+b*b),d=c-b,e=R(Q(d),1/3)*(0>d?-1:1),f=-c-b,g=R(Q(f),1/3)*(0>f?-1:1),h=e+g+.5;return 3*(1-h)*h*h+h*h*h},backIn:function(a){var b=1.70158;return a*a*((b+1)*a-b)},backOut:function(a){a-=1;var b=1.70158;return a*a*((b+1)*a+b)+1},elastic:function(a){return a==!!a?a:R(2,-10*a)*N.sin(2*(a-.075)*S/.3)+1},bounce:function(a){var b,c=7.5625,d=2.75;return 1/d>a?b=c*a*a:2/d>a?(a-=1.5/d,b=c*a*a+.75):2.5/d>a?(a-=2.25/d,b=c*a*a+.9375):(a-=2.625/d,b=c*a*a+.984375),b}};hc.easeIn=hc["ease-in"]=hc["<"],hc.easeOut=hc["ease-out"]=hc[">"],hc.easeInOut=hc["ease-in-out"]=hc["<>"],hc["back-in"]=hc.backIn,hc["back-out"]=hc.backOut;var ic=[],jc=a.requestAnimationFrame||a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame||a.msRequestAnimationFrame||function(a){setTimeout(a,16)},kc=function(){for(var a=+new Date,d=0;dh))if(i>h){var q=j(h/i);for(var r in k)if(k[z](r)){switch(db[r]){case T:f=+k[r]+q*i*l[r];break;case"colour":f="rgb("+[lc($(k[r].r+q*i*l[r].r)),lc($(k[r].g+q*i*l[r].g)),lc($(k[r].b+q*i*l[r].b))].join(",")+")";break;case"path":f=[];for(var t=0,u=k[r].length;u>t;t++){f[t]=[k[r][t][0]];for(var v=1,w=k[r][t].length;w>v;v++)f[t][v]=+k[r][t][v]+q*i*l[r][t][v];f[t]=f[t].join(H)}f=f.join(H);break;case"transform":if(l[r].real)for(f=[],t=0,u=k[r].length;u>t;t++)for(f[t]=[k[r][t][0]],v=1,w=k[r][t].length;w>v;v++)f[t][v]=k[r][t][v]+q*i*l[r][t][v];else{var x=function(a){return+k[r][a]+q*i*l[r][a]};f=[["m",x(0),x(1),x(2),x(3),x(4),x(5)]]}break;case"csv":if("clip-rect"==r)for(f=[],t=4;t--;)f[t]=+k[r][t]+q*i*l[r][t];break;default:var y=[][E](k[r]);for(f=[],t=n.paper.customAttributes[r].length;t--;)f[t]=+y[t]+q*i*l[r][t]}o[r]=f}n.attr(o),function(a,c,d){setTimeout(function(){b("raphael.anim.frame."+a,c,d)})}(n.id,n,e.anim)}else{if(function(a,d,e){setTimeout(function(){b("raphael.anim.frame."+d.id,d,e),b("raphael.anim.finish."+d.id,d,e),c.is(a,"function")&&a.call(d)})}(e.callback,n,e.anim),n.attr(m),ic.splice(d--,1),e.repeat>1&&!e.next){for(g in m)m[z](g)&&(p[g]=e.totalOrigin[g]);e.el.attr(p),s(e.anim,e.el,e.anim.percents[0],null,e.totalOrigin,e.repeat-1)}e.next&&!e.stop&&s(e.anim,e.el,e.next,null,e.totalOrigin,e.repeat)}}}c.svg&&n&&n.paper&&n.paper.safari(),ic.length&&jc(kc)},lc=function(a){return a>255?255:0>a?0:a};$b.animateWith=function(a,b,d,e,f,g){var h=this;if(h.removed)return g&&g.call(h),h;var i=d instanceof r?d:c.animation(d,e,f,g);s(i,h,i.percents[0],null,h.attr());for(var j=0,k=ic.length;k>j;j++)if(ic[j].anim==b&&ic[j].el==a){ic[k-1].start=ic[j].start;break}return h},$b.onAnimation=function(a){return a?b.on("raphael.anim.frame."+this.id,a):b.unbind("raphael.anim.frame."+this.id),this},r.prototype.delay=function(a){var b=new r(this.anim,this.ms);return b.times=this.times,b.del=+a||0,b},r.prototype.repeat=function(a){var b=new r(this.anim,this.ms);return b.del=this.del,b.times=N.floor(O(a,0))||1,b},c.animation=function(a,b,d,e){if(a instanceof r)return a;(c.is(d,"function")||!d)&&(e=e||d||null,d=null),a=Object(a),b=+b||0;var f,g,h={};for(g in a)a[z](g)&&_(g)!=g&&_(g)+"%"!=g&&(f=!0,h[g]=a[g]);if(f)return d&&(h.easing=d),e&&(h.callback=e),new r({100:h},b);if(e){var i=0;for(var j in a){var k=ab(j);a[z](j)&&k>i&&(i=k)}i+="%",!a[i].callback&&(a[i].callback=e)}return new r(a,b)},$b.animate=function(a,b,d,e){var f=this;if(f.removed)return e&&e.call(f),f;var g=a instanceof r?a:c.animation(a,b,d,e);return s(g,f,g.percents[0],null,f.attr()),f},$b.setTime=function(a,b){return a&&null!=b&&this.status(a,P(b,a.ms)/a.ms),this},$b.status=function(a,b){var c,d,e=[],f=0;if(null!=b)return s(a,this,-1,P(b,1)),this;for(c=ic.length;c>f;f++)if(d=ic[f],d.el.id==this.id&&(!a||d.anim==a)){if(a)return d.status;e.push({anim:d.anim,status:d.status})}return a?0:e},$b.pause=function(a){for(var c=0;cb;b++)!a[b]||a[b].constructor!=$b.constructor&&a[b].constructor!=mc||(this[this.items.length]=this.items[this.items.length]=a[b],this.length++)},nc=mc.prototype;nc.push=function(){for(var a,b,c=0,d=arguments.length;d>c;c++)a=arguments[c],!a||a.constructor!=$b.constructor&&a.constructor!=mc||(b=this.items.length,this[b]=this.items[b]=a,this.length++);return this},nc.pop=function(){return this.length&&delete this[this.length--],this.items.pop()},nc.forEach=function(a,b){for(var c=0,d=this.items.length;d>c;c++)if(a.call(b,this.items[c],c)===!1)return this;return this};for(var oc in $b)$b[z](oc)&&(nc[oc]=function(a){return function(){var b=arguments;return this.forEach(function(c){c[a][D](c,b)})}}(oc));return nc.attr=function(a,b){if(a&&c.is(a,V)&&c.is(a[0],"object"))for(var d=0,e=a.length;e>d;d++)this.items[d].attr(a[d]);else for(var f=0,g=this.items.length;g>f;f++)this.items[f].attr(a,b);return this},nc.clear=function(){for(;this.length;)this.pop()},nc.splice=function(a,b){a=0>a?O(this.length+a,0):a,b=O(0,P(this.length-a,b));var c,d=[],e=[],f=[];for(c=2;cc;c++)e.push(this[a+c]);for(;cc?f[c]:d[c-g];for(c=this.items.length=this.length-=b-g;this[c];)delete this[c++];return new mc(e)},nc.exclude=function(a){for(var b=0,c=this.length;c>b;b++)if(this[b]==a)return this.splice(b,1),!0},nc.animate=function(a,b,d,e){(c.is(d,"function")||!d)&&(e=d||null);var f,g,h=this.items.length,i=h,j=this;if(!h)return this;e&&(g=function(){!--h&&e.call(j)}),d=c.is(d,U)?d:g;var k=c.animation(a,b,d,g);for(f=this.items[--i].animate(k);i--;)this.items[i]&&!this.items[i].removed&&this.items[i].animateWith(f,k,k),this.items[i]&&!this.items[i].removed||h--;return this},nc.insertAfter=function(a){for(var b=this.items.length;b--;)this.items[b].insertAfter(a);return this},nc.getBBox=function(){for(var a=[],b=[],c=[],d=[],e=this.items.length;e--;)if(!this.items[e].removed){var f=this.items[e].getBBox();a.push(f.x),b.push(f.y),c.push(f.x+f.width),d.push(f.y+f.height)}return a=P[D](0,a),b=P[D](0,b),c=O[D](0,c),d=O[D](0,d),{x:a,y:b,x2:c,y2:d,width:c-a,height:d-b}},nc.clone=function(a){a=this.paper.set();for(var b=0,c=this.items.length;c>b;b++)a.push(this.items[b].clone());return a},nc.toString=function(){return"Raphaël‘s set"},nc.glow=function(a){var b=this.paper.set();return this.forEach(function(c){var d=c.glow(a);null!=d&&d.forEach(function(a){b.push(a)})}),b},nc.isPointInside=function(a,b){var c=!1;return this.forEach(function(d){return d.isPointInside(a,b)?(c=!0,!1):void 0}),c},c.registerFont=function(a){if(!a.face)return a;this.fonts=this.fonts||{};var b={w:a.w,face:{},glyphs:{}},c=a.face["font-family"];for(var d in a.face)a.face[z](d)&&(b.face[d]=a.face[d]);if(this.fonts[c]?this.fonts[c].push(b):this.fonts[c]=[b],!a.svg){b.face["units-per-em"]=ab(a.face["units-per-em"],10);for(var e in a.glyphs)if(a.glyphs[z](e)){var f=a.glyphs[e];if(b.glyphs[e]={w:f.w,k:{},d:f.d&&"M"+f.d.replace(/[mlcxtrv]/g,function(a){return{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[a]||"M"})+"z"},f.k)for(var g in f.k)f[z](g)&&(b.glyphs[e].k[g]=f.k[g])}}return a},v.getFont=function(a,b,d,e){if(e=e||"normal",d=d||"normal",b=+b||{normal:400,bold:700,lighter:300,bolder:800}[b]||400,c.fonts){var f=c.fonts[a];if(!f){var g=new RegExp("(^|\\s)"+a.replace(/[^\w\d\s+!~.:_-]/g,G)+"(\\s|$)","i");for(var h in c.fonts)if(c.fonts[z](h)&&g.test(h)){f=c.fonts[h];break}}var i;if(f)for(var j=0,k=f.length;k>j&&(i=f[j],i.face["font-weight"]!=b||i.face["font-style"]!=d&&i.face["font-style"]||i.face["font-stretch"]!=e);j++);return i}},v.print=function(a,b,d,e,f,g,h,i){g=g||"middle",h=O(P(h||0,1),-1),i=O(P(i||1,3),1);var j,k=I(d)[J](G),l=0,m=0,n=G;if(c.is(e,"string")&&(e=this.getFont(e)),e){j=(f||16)/e.face["units-per-em"];for(var o=e.face.bbox[J](w),p=+o[0],q=o[3]-o[1],r=0,s=+o[1]+("baseline"==g?q+ +e.face.descent:q/2),t=0,u=k.length;u>t;t++){if("\n"==k[t])l=0,x=0,m=0,r+=q*i;else{var v=m&&e.glyphs[k[t-1]]||{},x=e.glyphs[k[t]];l+=m?(v.w||e.w)+(v.k&&v.k[k[t]]||0)+e.w*h:0,m=1}x&&x.d&&(n+=c.transformPath(x.d,["t",l*j,r*j,"s",j,j,p,s,"t",(a-p)/j,(b-s)/j]))}}return this.path(n).attr({fill:"#000",stroke:"none"})},v.add=function(a){if(c.is(a,"array"))for(var b,d=this.set(),e=0,f=a.length;f>e;e++)b=a[e]||{},x[z](b.type)&&d.push(this[b.type]().attr(b));return d},c.format=function(a,b){var d=c.is(b,V)?[0][E](b):arguments;return a&&c.is(a,U)&&d.length-1&&(a=a.replace(y,function(a,b){return null==d[++b]?G:d[b]})),a||G},c.fullfill=function(){var a=/\{([^\}]+)\}/g,b=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g,c=function(a,c,d){var e=d;return c.replace(b,function(a,b,c,d,f){b=b||d,e&&(b in e&&(e=e[b]),"function"==typeof e&&f&&(e=e()))}),e=(null==e||e==d?a:e)+""};return function(b,d){return String(b).replace(a,function(a,b){return c(a,b,d)})}}(),c.ninja=function(){return B.was?A.win.Raphael=B.is:delete Raphael,c},c.st=nc,b.on("raphael.DOMload",function(){u=!0}),function(a,b,d){function e(){/in/.test(a.readyState)?setTimeout(e,9):c.eve("raphael.DOMload")}null==a.readyState&&a.addEventListener&&(a.addEventListener(b,d=function(){a.removeEventListener(b,d,!1),a.readyState="complete"},!1),a.readyState="loading"),e()}(document,"DOMContentLoaded"),function(){if(c.svg){var a="hasOwnProperty",b=String,d=parseFloat,e=parseInt,f=Math,g=f.max,h=f.abs,i=f.pow,j=/[, ]+/,k=c.eve,l="",m=" ",n="http://www.w3.org/1999/xlink",o={block:"M5,0 0,2.5 5,5z",classic:"M5,0 0,2.5 5,5 3.5,3 3.5,2z",diamond:"M2.5,0 5,2.5 2.5,5 0,2.5z",open:"M6,1 1,3.5 6,6",oval:"M2.5,0A2.5,2.5,0,0,1,2.5,5 2.5,2.5,0,0,1,2.5,0z"},p={};c.toString=function(){return"Your browser supports SVG.\nYou are running Raphaël "+this.version};var q=function(d,e){if(e){"string"==typeof d&&(d=q(d));for(var f in e)e[a](f)&&("xlink:"==f.substring(0,6)?d.setAttributeNS(n,f.substring(6),b(e[f])):d.setAttribute(f,b(e[f])))}else d=c._g.doc.createElementNS("http://www.w3.org/2000/svg",d),d.style&&(d.style.webkitTapHighlightColor="rgba(0,0,0,0)");return d},r=function(a,e){var j="linear",k=a.id+e,m=.5,n=.5,o=a.node,p=a.paper,r=o.style,s=c._g.doc.getElementById(k);if(!s){if(e=b(e).replace(c._radial_gradient,function(a,b,c){if(j="radial",b&&c){m=d(b),n=d(c);var e=2*(n>.5)-1;i(m-.5,2)+i(n-.5,2)>.25&&(n=f.sqrt(.25-i(m-.5,2))*e+.5)&&.5!=n&&(n=n.toFixed(5)-1e-5*e)}return l}),e=e.split(/\s*\-\s*/),"linear"==j){var t=e.shift();if(t=-d(t),isNaN(t))return null;var u=[0,0,f.cos(c.rad(t)),f.sin(c.rad(t))],v=1/(g(h(u[2]),h(u[3]))||1);u[2]*=v,u[3]*=v,u[2]<0&&(u[0]=-u[2],u[2]=0),u[3]<0&&(u[1]=-u[3],u[3]=0)}var w=c._parseDots(e);if(!w)return null;if(k=k.replace(/[\(\)\s,\xb0#]/g,"_"),a.gradient&&k!=a.gradient.id&&(p.defs.removeChild(a.gradient),delete a.gradient),!a.gradient){s=q(j+"Gradient",{id:k}),a.gradient=s,q(s,"radial"==j?{fx:m,fy:n}:{x1:u[0],y1:u[1],x2:u[2],y2:u[3],gradientTransform:a.matrix.invert()}),p.defs.appendChild(s);for(var x=0,y=w.length;y>x;x++)s.appendChild(q("stop",{offset:w[x].offset?w[x].offset:x?"100%":"0%","stop-color":w[x].color||"#fff"}))}}return q(o,{fill:"url("+document.location+"#"+k+")",opacity:1,"fill-opacity":1}),r.fill=l,r.opacity=1,r.fillOpacity=1,1},s=function(a){var b=a.getBBox(1);q(a.pattern,{patternTransform:a.matrix.invert()+" translate("+b.x+","+b.y+")"})},t=function(d,e,f){if("path"==d.type){for(var g,h,i,j,k,m=b(e).toLowerCase().split("-"),n=d.paper,r=f?"end":"start",s=d.node,t=d.attrs,u=t["stroke-width"],v=m.length,w="classic",x=3,y=3,z=5;v--;)switch(m[v]){case"block":case"classic":case"oval":case"diamond":case"open":case"none":w=m[v];break;case"wide":y=5;break;case"narrow":y=2;break;case"long":x=5;break;case"short":x=2}if("open"==w?(x+=2,y+=2,z+=2,i=1,j=f?4:1,k={fill:"none",stroke:t.stroke}):(j=i=x/2,k={fill:t.stroke,stroke:"none"}),d._.arrows?f?(d._.arrows.endPath&&p[d._.arrows.endPath]--,d._.arrows.endMarker&&p[d._.arrows.endMarker]--):(d._.arrows.startPath&&p[d._.arrows.startPath]--,d._.arrows.startMarker&&p[d._.arrows.startMarker]--):d._.arrows={},"none"!=w){var A="raphael-marker-"+w,B="raphael-marker-"+r+w+x+y+"-obj"+d.id;c._g.doc.getElementById(A)?p[A]++:(n.defs.appendChild(q(q("path"),{"stroke-linecap":"round",d:o[w],id:A})),p[A]=1);var C,D=c._g.doc.getElementById(B);D?(p[B]++,C=D.getElementsByTagName("use")[0]):(D=q(q("marker"),{id:B,markerHeight:y,markerWidth:x,orient:"auto",refX:j,refY:y/2}),C=q(q("use"),{"xlink:href":"#"+A,transform:(f?"rotate(180 "+x/2+" "+y/2+") ":l)+"scale("+x/z+","+y/z+")","stroke-width":(1/((x/z+y/z)/2)).toFixed(4)}),D.appendChild(C),n.defs.appendChild(D),p[B]=1),q(C,k);var E=i*("diamond"!=w&&"oval"!=w);f?(g=d._.arrows.startdx*u||0,h=c.getTotalLength(t.path)-E*u):(g=E*u,h=c.getTotalLength(t.path)-(d._.arrows.enddx*u||0)),k={},k["marker-"+r]="url(#"+B+")",(h||g)&&(k.d=c.getSubpath(t.path,g,h)),q(s,k),d._.arrows[r+"Path"]=A,d._.arrows[r+"Marker"]=B,d._.arrows[r+"dx"]=E,d._.arrows[r+"Type"]=w,d._.arrows[r+"String"]=e}else f?(g=d._.arrows.startdx*u||0,h=c.getTotalLength(t.path)-g):(g=0,h=c.getTotalLength(t.path)-(d._.arrows.enddx*u||0)),d._.arrows[r+"Path"]&&q(s,{d:c.getSubpath(t.path,g,h)}),delete d._.arrows[r+"Path"],delete d._.arrows[r+"Marker"],delete d._.arrows[r+"dx"],delete d._.arrows[r+"Type"],delete d._.arrows[r+"String"];for(k in p)if(p[a](k)&&!p[k]){var F=c._g.doc.getElementById(k);F&&F.parentNode.removeChild(F)}}},u={"":[0],none:[0],"-":[3,1],".":[1,1],"-.":[3,1,1,1],"-..":[3,1,1,1,1,1],". ":[1,3],"- ":[4,3],"--":[8,3],"- .":[4,3,1,3],"--.":[8,3,1,3],"--..":[8,3,1,3,1,3]},v=function(a,c,d){if(c=u[b(c).toLowerCase()]){for(var e=a.attrs["stroke-width"]||"1",f={round:e,square:e,butt:0}[a.attrs["stroke-linecap"]||d["stroke-linecap"]]||0,g=[],h=c.length;h--;)g[h]=c[h]*e+(h%2?1:-1)*f;q(a.node,{"stroke-dasharray":g.join(",")})}},w=function(d,f){var i=d.node,k=d.attrs,m=i.style.visibility;i.style.visibility="hidden";for(var o in f)if(f[a](o)){if(!c._availableAttrs[a](o))continue;var p=f[o];switch(k[o]=p,o){case"blur":d.blur(p);break;case"title":var u=i.getElementsByTagName("title");if(u.length&&(u=u[0]))u.firstChild.nodeValue=p;else{u=q("title");var w=c._g.doc.createTextNode(p);u.appendChild(w),i.appendChild(u)}break;case"href":case"target":var x=i.parentNode;if("a"!=x.tagName.toLowerCase()){var z=q("a");x.insertBefore(z,i),z.appendChild(i),x=z}"target"==o?x.setAttributeNS(n,"show","blank"==p?"new":p):x.setAttributeNS(n,o,p);break;case"cursor":i.style.cursor=p;break;case"transform":d.transform(p);break;case"arrow-start":t(d,p);break;case"arrow-end":t(d,p,1);break;case"clip-rect":var A=b(p).split(j);if(4==A.length){d.clip&&d.clip.parentNode.parentNode.removeChild(d.clip.parentNode);var B=q("clipPath"),C=q("rect");B.id=c.createUUID(),q(C,{x:A[0],y:A[1],width:A[2],height:A[3]}),B.appendChild(C),d.paper.defs.appendChild(B),q(i,{"clip-path":"url(#"+B.id+")"}),d.clip=C}if(!p){var D=i.getAttribute("clip-path");if(D){var E=c._g.doc.getElementById(D.replace(/(^url\(#|\)$)/g,l));E&&E.parentNode.removeChild(E),q(i,{"clip-path":l}),delete d.clip}}break;case"path":"path"==d.type&&(q(i,{d:p?k.path=c._pathToAbsolute(p):"M0,0"}),d._.dirty=1,d._.arrows&&("startString"in d._.arrows&&t(d,d._.arrows.startString),"endString"in d._.arrows&&t(d,d._.arrows.endString,1)));break;case"width":if(i.setAttribute(o,p),d._.dirty=1,!k.fx)break;o="x",p=k.x;case"x":k.fx&&(p=-k.x-(k.width||0));case"rx":if("rx"==o&&"rect"==d.type)break;case"cx":i.setAttribute(o,p),d.pattern&&s(d),d._.dirty=1;break;case"height":if(i.setAttribute(o,p),d._.dirty=1,!k.fy)break;o="y",p=k.y;case"y":k.fy&&(p=-k.y-(k.height||0));case"ry":if("ry"==o&&"rect"==d.type)break;case"cy":i.setAttribute(o,p),d.pattern&&s(d),d._.dirty=1;break;case"r":"rect"==d.type?q(i,{rx:p,ry:p}):i.setAttribute(o,p),d._.dirty=1;break;case"src":"image"==d.type&&i.setAttributeNS(n,"href",p);break;case"stroke-width":(1!=d._.sx||1!=d._.sy)&&(p/=g(h(d._.sx),h(d._.sy))||1),i.setAttribute(o,p),k["stroke-dasharray"]&&v(d,k["stroke-dasharray"],f),d._.arrows&&("startString"in d._.arrows&&t(d,d._.arrows.startString),"endString"in d._.arrows&&t(d,d._.arrows.endString,1));break;case"stroke-dasharray":v(d,p,f);break;case"fill":var F=b(p).match(c._ISURL);if(F){B=q("pattern");var G=q("image");B.id=c.createUUID(),q(B,{x:0,y:0,patternUnits:"userSpaceOnUse",height:1,width:1}),q(G,{x:0,y:0,"xlink:href":F[1]}),B.appendChild(G),function(a){c._preload(F[1],function(){var b=this.offsetWidth,c=this.offsetHeight;q(a,{width:b,height:c}),q(G,{width:b,height:c}),d.paper.safari()})}(B),d.paper.defs.appendChild(B),q(i,{fill:"url(#"+B.id+")"}),d.pattern=B,d.pattern&&s(d);break}var H=c.getRGB(p);if(H.error){if(("circle"==d.type||"ellipse"==d.type||"r"!=b(p).charAt())&&r(d,p)){if("opacity"in k||"fill-opacity"in k){var I=c._g.doc.getElementById(i.getAttribute("fill").replace(/^url\(#|\)$/g,l));if(I){var J=I.getElementsByTagName("stop");q(J[J.length-1],{"stop-opacity":("opacity"in k?k.opacity:1)*("fill-opacity"in k?k["fill-opacity"]:1)})}}k.gradient=p,k.fill="none";break}}else delete f.gradient,delete k.gradient,!c.is(k.opacity,"undefined")&&c.is(f.opacity,"undefined")&&q(i,{opacity:k.opacity}),!c.is(k["fill-opacity"],"undefined")&&c.is(f["fill-opacity"],"undefined")&&q(i,{"fill-opacity":k["fill-opacity"]});H[a]("opacity")&&q(i,{"fill-opacity":H.opacity>1?H.opacity/100:H.opacity});case"stroke":H=c.getRGB(p),i.setAttribute(o,H.hex),"stroke"==o&&H[a]("opacity")&&q(i,{"stroke-opacity":H.opacity>1?H.opacity/100:H.opacity}),"stroke"==o&&d._.arrows&&("startString"in d._.arrows&&t(d,d._.arrows.startString),"endString"in d._.arrows&&t(d,d._.arrows.endString,1));break;case"gradient":("circle"==d.type||"ellipse"==d.type||"r"!=b(p).charAt())&&r(d,p);break; -case"opacity":k.gradient&&!k[a]("stroke-opacity")&&q(i,{"stroke-opacity":p>1?p/100:p});case"fill-opacity":if(k.gradient){I=c._g.doc.getElementById(i.getAttribute("fill").replace(/^url\(#|\)$/g,l)),I&&(J=I.getElementsByTagName("stop"),q(J[J.length-1],{"stop-opacity":p}));break}default:"font-size"==o&&(p=e(p,10)+"px");var K=o.replace(/(\-.)/g,function(a){return a.substring(1).toUpperCase()});i.style[K]=p,d._.dirty=1,i.setAttribute(o,p)}}y(d,f),i.style.visibility=m},x=1.2,y=function(d,f){if("text"==d.type&&(f[a]("text")||f[a]("font")||f[a]("font-size")||f[a]("x")||f[a]("y"))){var g=d.attrs,h=d.node,i=h.firstChild?e(c._g.doc.defaultView.getComputedStyle(h.firstChild,l).getPropertyValue("font-size"),10):10;if(f[a]("text")){for(g.text=f.text;h.firstChild;)h.removeChild(h.firstChild);for(var j,k=b(f.text).split("\n"),m=[],n=0,o=k.length;o>n;n++)j=q("tspan"),n&&q(j,{dy:i*x,x:g.x}),j.appendChild(c._g.doc.createTextNode(k[n])),h.appendChild(j),m[n]=j}else for(m=h.getElementsByTagName("tspan"),n=0,o=m.length;o>n;n++)n?q(m[n],{dy:i*x,x:g.x}):q(m[0],{dy:0});q(h,{x:g.x,y:g.y}),d._.dirty=1;var p=d._getBBox(),r=g.y-(p.y+p.height/2);r&&c.is(r,"finite")&&q(m[0],{dy:r})}},z=function(a){return a.parentNode&&"a"===a.parentNode.tagName.toLowerCase()?a.parentNode:a};Element=function(a,b){this[0]=this.node=a,a.raphael=!0,this.id=c._oid++,a.raphaelid=this.id,this.matrix=c.matrix(),this.realPath=null,this.paper=b,this.attrs=this.attrs||{},this._={transform:[],sx:1,sy:1,deg:0,dx:0,dy:0,dirty:1},!b.bottom&&(b.bottom=this),this.prev=b.top,b.top&&(b.top.next=this),b.top=this,this.next=null},$b=c.el,Element.prototype=$b,$b.constructor=Element,c._engine.path=function(a,b){var c=q("path");b.canvas&&b.canvas.appendChild(c);var d=new Element(c,b);return d.type="path",w(d,{fill:"none",stroke:"#000",path:a}),d},$b.rotate=function(a,c,e){if(this.removed)return this;if(a=b(a).split(j),a.length-1&&(c=d(a[1]),e=d(a[2])),a=d(a[0]),null==e&&(c=e),null==c||null==e){var f=this.getBBox(1);c=f.x+f.width/2,e=f.y+f.height/2}return this.transform(this._.transform.concat([["r",a,c,e]])),this},$b.scale=function(a,c,e,f){if(this.removed)return this;if(a=b(a).split(j),a.length-1&&(c=d(a[1]),e=d(a[2]),f=d(a[3])),a=d(a[0]),null==c&&(c=a),null==f&&(e=f),null==e||null==f)var g=this.getBBox(1);return e=null==e?g.x+g.width/2:e,f=null==f?g.y+g.height/2:f,this.transform(this._.transform.concat([["s",a,c,e,f]])),this},$b.translate=function(a,c){return this.removed?this:(a=b(a).split(j),a.length-1&&(c=d(a[1])),a=d(a[0])||0,c=+c||0,this.transform(this._.transform.concat([["t",a,c]])),this)},$b.transform=function(b){var d=this._;if(null==b)return d.transform;if(c._extractTransform(this,b),this.clip&&q(this.clip,{transform:this.matrix.invert()}),this.pattern&&s(this),this.node&&q(this.node,{transform:this.matrix}),1!=d.sx||1!=d.sy){var e=this.attrs[a]("stroke-width")?this.attrs["stroke-width"]:1;this.attr({"stroke-width":e})}return this},$b.hide=function(){return!this.removed&&this.paper.safari(this.node.style.display="none"),this},$b.show=function(){return!this.removed&&this.paper.safari(this.node.style.display=""),this},$b.remove=function(){var a=z(this.node);if(!this.removed&&a.parentNode){var b=this.paper;b.__set__&&b.__set__.exclude(this),k.unbind("raphael.*.*."+this.id),this.gradient&&b.defs.removeChild(this.gradient),c._tear(this,b),a.parentNode.removeChild(a),this.removeData();for(var d in this)this[d]="function"==typeof this[d]?c._removedFactory(d):null;this.removed=!0}},$b._getBBox=function(){if("none"==this.node.style.display){this.show();var a=!0}var b,c=!1;this.paper.canvas.parentElement?b=this.paper.canvas.parentElement.style:this.paper.canvas.parentNode&&(b=this.paper.canvas.parentNode.style),b&&"none"==b.display&&(c=!0,b.display="");var d={};try{d=this.node.getBBox()}catch(e){d={x:this.node.clientLeft,y:this.node.clientTop,width:this.node.clientWidth,height:this.node.clientHeight}}finally{d=d||{},c&&(b.display="none")}return a&&this.hide(),d},$b.attr=function(b,d){if(this.removed)return this;if(null==b){var e={};for(var f in this.attrs)this.attrs[a](f)&&(e[f]=this.attrs[f]);return e.gradient&&"none"==e.fill&&(e.fill=e.gradient)&&delete e.gradient,e.transform=this._.transform,e}if(null==d&&c.is(b,"string")){if("fill"==b&&"none"==this.attrs.fill&&this.attrs.gradient)return this.attrs.gradient;if("transform"==b)return this._.transform;for(var g=b.split(j),h={},i=0,l=g.length;l>i;i++)b=g[i],h[b]=b in this.attrs?this.attrs[b]:c.is(this.paper.customAttributes[b],"function")?this.paper.customAttributes[b].def:c._availableAttrs[b];return l-1?h:h[g[0]]}if(null==d&&c.is(b,"array")){for(h={},i=0,l=b.length;l>i;i++)h[b[i]]=this.attr(b[i]);return h}if(null!=d){var m={};m[b]=d}else null!=b&&c.is(b,"object")&&(m=b);for(var n in m)k("raphael.attr."+n+"."+this.id,this,m[n]);for(n in this.paper.customAttributes)if(this.paper.customAttributes[a](n)&&m[a](n)&&c.is(this.paper.customAttributes[n],"function")){var o=this.paper.customAttributes[n].apply(this,[].concat(m[n]));this.attrs[n]=m[n];for(var p in o)o[a](p)&&(m[p]=o[p])}return w(this,m),this},$b.toFront=function(){if(this.removed)return this;var a=z(this.node);a.parentNode.appendChild(a);var b=this.paper;return b.top!=this&&c._tofront(this,b),this},$b.toBack=function(){if(this.removed)return this;var a=z(this.node),b=a.parentNode;b.insertBefore(a,b.firstChild),c._toback(this,this.paper);this.paper;return this},$b.insertAfter=function(a){if(this.removed||!a)return this;var b=z(this.node),d=z(a.node||a[a.length-1].node);return d.nextSibling?d.parentNode.insertBefore(b,d.nextSibling):d.parentNode.appendChild(b),c._insertafter(this,a,this.paper),this},$b.insertBefore=function(a){if(this.removed||!a)return this;var b=z(this.node),d=z(a.node||a[0].node);return d.parentNode.insertBefore(b,d),c._insertbefore(this,a,this.paper),this},$b.blur=function(a){var b=this;if(0!==+a){var d=q("filter"),e=q("feGaussianBlur");b.attrs.blur=a,d.id=c.createUUID(),q(e,{stdDeviation:+a||1.5}),d.appendChild(e),b.paper.defs.appendChild(d),b._blur=d,q(b.node,{filter:"url(#"+d.id+")"})}else b._blur&&(b._blur.parentNode.removeChild(b._blur),delete b._blur,delete b.attrs.blur),b.node.removeAttribute("filter");return b},c._engine.circle=function(a,b,c,d){var e=q("circle");a.canvas&&a.canvas.appendChild(e);var f=new Element(e,a);return f.attrs={cx:b,cy:c,r:d,fill:"none",stroke:"#000"},f.type="circle",q(e,f.attrs),f},c._engine.rect=function(a,b,c,d,e,f){var g=q("rect");a.canvas&&a.canvas.appendChild(g);var h=new Element(g,a);return h.attrs={x:b,y:c,width:d,height:e,rx:f||0,ry:f||0,fill:"none",stroke:"#000"},h.type="rect",q(g,h.attrs),h},c._engine.ellipse=function(a,b,c,d,e){var f=q("ellipse");a.canvas&&a.canvas.appendChild(f);var g=new Element(f,a);return g.attrs={cx:b,cy:c,rx:d,ry:e,fill:"none",stroke:"#000"},g.type="ellipse",q(f,g.attrs),g},c._engine.image=function(a,b,c,d,e,f){var g=q("image");q(g,{x:c,y:d,width:e,height:f,preserveAspectRatio:"none"}),g.setAttributeNS(n,"href",b),a.canvas&&a.canvas.appendChild(g);var h=new Element(g,a);return h.attrs={x:c,y:d,width:e,height:f,src:b},h.type="image",h},c._engine.text=function(a,b,d,e){var f=q("text");a.canvas&&a.canvas.appendChild(f);var g=new Element(f,a);return g.attrs={x:b,y:d,"text-anchor":"middle",text:e,"font-family":c._availableAttrs["font-family"],"font-size":c._availableAttrs["font-size"],stroke:"none",fill:"#000"},g.type="text",w(g,g.attrs),g},c._engine.setSize=function(a,b){return this.width=a||this.width,this.height=b||this.height,this.canvas.setAttribute("width",this.width),this.canvas.setAttribute("height",this.height),this._viewBox&&this.setViewBox.apply(this,this._viewBox),this},c._engine.create=function(){var a=c._getContainer.apply(0,arguments),b=a&&a.container,d=a.x,e=a.y,f=a.width,g=a.height;if(!b)throw new Error("SVG container not found.");var h,i=q("svg"),j="overflow:hidden;";return d=d||0,e=e||0,f=f||512,g=g||342,q(i,{height:g,version:1.1,width:f,xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"}),1==b?(i.style.cssText=j+"position:absolute;left:"+d+"px;top:"+e+"px",c._g.doc.body.appendChild(i),h=1):(i.style.cssText=j+"position:relative",b.firstChild?b.insertBefore(i,b.firstChild):b.appendChild(i)),b=new c._Paper,b.width=f,b.height=g,b.canvas=i,b.clear(),b._left=b._top=0,h&&(b.renderfix=function(){}),b.renderfix(),b},c._engine.setViewBox=function(a,b,c,d,e){k("raphael.setViewBox",this,this._viewBox,[a,b,c,d,e]);var f,h,i=this.getSize(),j=g(c/i.width,d/i.height),l=this.top,n=e?"xMidYMid meet":"xMinYMin";for(null==a?(this._vbSize&&(j=1),delete this._vbSize,f="0 0 "+this.width+m+this.height):(this._vbSize=j,f=a+m+b+m+c+m+d),q(this.canvas,{viewBox:f,preserveAspectRatio:n});j&&l;)h="stroke-width"in l.attrs?l.attrs["stroke-width"]:1,l.attr({"stroke-width":h}),l._.dirty=1,l._.dirtyT=1,l=l.prev;return this._viewBox=[a,b,c,d,!!e],this},c.prototype.renderfix=function(){var a,b=this.canvas,c=b.style;try{a=b.getScreenCTM()||b.createSVGMatrix()}catch(d){a=b.createSVGMatrix()}var e=-a.e%1,f=-a.f%1;(e||f)&&(e&&(this._left=(this._left+e)%1,c.left=this._left+"px"),f&&(this._top=(this._top+f)%1,c.top=this._top+"px"))},c.prototype.clear=function(){c.eve("raphael.clear",this);for(var a=this.canvas;a.firstChild;)a.removeChild(a.firstChild);this.bottom=this.top=null,(this.desc=q("desc")).appendChild(c._g.doc.createTextNode("Created with Raphaël "+c.version)),a.appendChild(this.desc),a.appendChild(this.defs=q("defs"))},c.prototype.remove=function(){k("raphael.remove",this),this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas);for(var a in this)this[a]="function"==typeof this[a]?c._removedFactory(a):null};var A=c.st;for(var B in $b)$b[a](B)&&!A[a](B)&&(A[B]=function(a){return function(){var b=arguments;return this.forEach(function(c){c[a].apply(c,b)})}}(B))}}(),function(){if(c.vml){var a="hasOwnProperty",b=String,d=parseFloat,e=Math,f=e.round,g=e.max,h=e.min,i=e.abs,j="fill",k=/[, ]+/,l=c.eve,m=" progid:DXImageTransform.Microsoft",n=" ",o="",p={M:"m",L:"l",C:"c",Z:"x",m:"t",l:"r",c:"v",z:"x"},q=/([clmz]),?([^clmz]*)/gi,r=/ progid:\S+Blur\([^\)]+\)/g,s=/-?[^,\s-]+/g,t="position:absolute;left:0;top:0;width:1px;height:1px;behavior:url(#default#VML)",u=21600,v={path:1,rect:1,image:1},w={circle:1,ellipse:1},x=function(a){var d=/[ahqstv]/gi,e=c._pathToAbsolute;if(b(a).match(d)&&(e=c._path2curve),d=/[clmz]/g,e==c._pathToAbsolute&&!b(a).match(d)){var g=b(a).replace(q,function(a,b,c){var d=[],e="m"==b.toLowerCase(),g=p[b];return c.replace(s,function(a){e&&2==d.length&&(g+=d+p["m"==b?"l":"L"],d=[]),d.push(f(a*u))}),g+d});return g}var h,i,j=e(a);g=[];for(var k=0,l=j.length;l>k;k++){h=j[k],i=j[k][0].toLowerCase(),"z"==i&&(i="x");for(var m=1,r=h.length;r>m;m++)i+=f(h[m]*u)+(m!=r-1?",":o);g.push(i)}return g.join(n)},y=function(a,b,d){var e=c.matrix();return e.rotate(-a,.5,.5),{dx:e.x(b,d),dy:e.y(b,d)}},z=function(a,b,c,d,e,f){var g=a._,h=a.matrix,k=g.fillpos,l=a.node,m=l.style,o=1,p="",q=u/b,r=u/c;if(m.visibility="hidden",b&&c){if(l.coordsize=i(q)+n+i(r),m.rotation=f*(0>b*c?-1:1),f){var s=y(f,d,e);d=s.dx,e=s.dy}if(0>b&&(p+="x"),0>c&&(p+=" y")&&(o=-1),m.flip=p,l.coordorigin=d*-q+n+e*-r,k||g.fillsize){var t=l.getElementsByTagName(j);t=t&&t[0],l.removeChild(t),k&&(s=y(f,h.x(k[0],k[1]),h.y(k[0],k[1])),t.position=s.dx*o+n+s.dy*o),g.fillsize&&(t.size=g.fillsize[0]*i(b)+n+g.fillsize[1]*i(c)),l.appendChild(t)}m.visibility="visible"}};c.toString=function(){return"Your browser doesn’t support SVG. Falling down to VML.\nYou are running Raphaël "+this.version};var A=function(a,c,d){for(var e=b(c).toLowerCase().split("-"),f=d?"end":"start",g=e.length,h="classic",i="medium",j="medium";g--;)switch(e[g]){case"block":case"classic":case"oval":case"diamond":case"open":case"none":h=e[g];break;case"wide":case"narrow":j=e[g];break;case"long":case"short":i=e[g]}var k=a.node.getElementsByTagName("stroke")[0];k[f+"arrow"]=h,k[f+"arrowlength"]=i,k[f+"arrowwidth"]=j},B=function(e,i){e.attrs=e.attrs||{};var l=e.node,m=e.attrs,p=l.style,q=v[e.type]&&(i.x!=m.x||i.y!=m.y||i.width!=m.width||i.height!=m.height||i.cx!=m.cx||i.cy!=m.cy||i.rx!=m.rx||i.ry!=m.ry||i.r!=m.r),r=w[e.type]&&(m.cx!=i.cx||m.cy!=i.cy||m.r!=i.r||m.rx!=i.rx||m.ry!=i.ry),s=e;for(var t in i)i[a](t)&&(m[t]=i[t]);if(q&&(m.path=c._getPath[e.type](e),e._.dirty=1),i.href&&(l.href=i.href),i.title&&(l.title=i.title),i.target&&(l.target=i.target),i.cursor&&(p.cursor=i.cursor),"blur"in i&&e.blur(i.blur),(i.path&&"path"==e.type||q)&&(l.path=x(~b(m.path).toLowerCase().indexOf("r")?c._pathToAbsolute(m.path):m.path),e._.dirty=1,"image"==e.type&&(e._.fillpos=[m.x,m.y],e._.fillsize=[m.width,m.height],z(e,1,1,0,0,0))),"transform"in i&&e.transform(i.transform),r){var y=+m.cx,B=+m.cy,D=+m.rx||+m.r||0,E=+m.ry||+m.r||0;l.path=c.format("ar{0},{1},{2},{3},{4},{1},{4},{1}x",f((y-D)*u),f((B-E)*u),f((y+D)*u),f((B+E)*u),f(y*u)),e._.dirty=1}if("clip-rect"in i){var G=b(i["clip-rect"]).split(k);if(4==G.length){G[2]=+G[2]+ +G[0],G[3]=+G[3]+ +G[1];var H=l.clipRect||c._g.doc.createElement("div"),I=H.style;I.clip=c.format("rect({1}px {2}px {3}px {0}px)",G),l.clipRect||(I.position="absolute",I.top=0,I.left=0,I.width=e.paper.width+"px",I.height=e.paper.height+"px",l.parentNode.insertBefore(H,l),H.appendChild(l),l.clipRect=H)}i["clip-rect"]||l.clipRect&&(l.clipRect.style.clip="auto")}if(e.textpath){var J=e.textpath.style;i.font&&(J.font=i.font),i["font-family"]&&(J.fontFamily='"'+i["font-family"].split(",")[0].replace(/^['"]+|['"]+$/g,o)+'"'),i["font-size"]&&(J.fontSize=i["font-size"]),i["font-weight"]&&(J.fontWeight=i["font-weight"]),i["font-style"]&&(J.fontStyle=i["font-style"])}if("arrow-start"in i&&A(s,i["arrow-start"]),"arrow-end"in i&&A(s,i["arrow-end"],1),null!=i.opacity||null!=i["stroke-width"]||null!=i.fill||null!=i.src||null!=i.stroke||null!=i["stroke-width"]||null!=i["stroke-opacity"]||null!=i["fill-opacity"]||null!=i["stroke-dasharray"]||null!=i["stroke-miterlimit"]||null!=i["stroke-linejoin"]||null!=i["stroke-linecap"]){var K=l.getElementsByTagName(j),L=!1;if(K=K&&K[0],!K&&(L=K=F(j)),"image"==e.type&&i.src&&(K.src=i.src),i.fill&&(K.on=!0),(null==K.on||"none"==i.fill||null===i.fill)&&(K.on=!1),K.on&&i.fill){var M=b(i.fill).match(c._ISURL);if(M){K.parentNode==l&&l.removeChild(K),K.rotate=!0,K.src=M[1],K.type="tile";var N=e.getBBox(1);K.position=N.x+n+N.y,e._.fillpos=[N.x,N.y],c._preload(M[1],function(){e._.fillsize=[this.offsetWidth,this.offsetHeight]})}else K.color=c.getRGB(i.fill).hex,K.src=o,K.type="solid",c.getRGB(i.fill).error&&(s.type in{circle:1,ellipse:1}||"r"!=b(i.fill).charAt())&&C(s,i.fill,K)&&(m.fill="none",m.gradient=i.fill,K.rotate=!1)}if("fill-opacity"in i||"opacity"in i){var O=((+m["fill-opacity"]+1||2)-1)*((+m.opacity+1||2)-1)*((+c.getRGB(i.fill).o+1||2)-1);O=h(g(O,0),1),K.opacity=O,K.src&&(K.color="none")}l.appendChild(K);var P=l.getElementsByTagName("stroke")&&l.getElementsByTagName("stroke")[0],Q=!1;!P&&(Q=P=F("stroke")),(i.stroke&&"none"!=i.stroke||i["stroke-width"]||null!=i["stroke-opacity"]||i["stroke-dasharray"]||i["stroke-miterlimit"]||i["stroke-linejoin"]||i["stroke-linecap"])&&(P.on=!0),("none"==i.stroke||null===i.stroke||null==P.on||0==i.stroke||0==i["stroke-width"])&&(P.on=!1);var R=c.getRGB(i.stroke);P.on&&i.stroke&&(P.color=R.hex),O=((+m["stroke-opacity"]+1||2)-1)*((+m.opacity+1||2)-1)*((+R.o+1||2)-1);var S=.75*(d(i["stroke-width"])||1);if(O=h(g(O,0),1),null==i["stroke-width"]&&(S=m["stroke-width"]),i["stroke-width"]&&(P.weight=S),S&&1>S&&(O*=S)&&(P.weight=1),P.opacity=O,i["stroke-linejoin"]&&(P.joinstyle=i["stroke-linejoin"]||"miter"),P.miterlimit=i["stroke-miterlimit"]||8,i["stroke-linecap"]&&(P.endcap="butt"==i["stroke-linecap"]?"flat":"square"==i["stroke-linecap"]?"square":"round"),"stroke-dasharray"in i){var T={"-":"shortdash",".":"shortdot","-.":"shortdashdot","-..":"shortdashdotdot",". ":"dot","- ":"dash","--":"longdash","- .":"dashdot","--.":"longdashdot","--..":"longdashdotdot"};P.dashstyle=T[a](i["stroke-dasharray"])?T[i["stroke-dasharray"]]:o}Q&&l.appendChild(P)}if("text"==s.type){s.paper.canvas.style.display=o;var U=s.paper.span,V=100,W=m.font&&m.font.match(/\d+(?:\.\d*)?(?=px)/);p=U.style,m.font&&(p.font=m.font),m["font-family"]&&(p.fontFamily=m["font-family"]),m["font-weight"]&&(p.fontWeight=m["font-weight"]),m["font-style"]&&(p.fontStyle=m["font-style"]),W=d(m["font-size"]||W&&W[0])||10,p.fontSize=W*V+"px",s.textpath.string&&(U.innerHTML=b(s.textpath.string).replace(/"));var X=U.getBoundingClientRect();s.W=m.w=(X.right-X.left)/V,s.H=m.h=(X.bottom-X.top)/V,s.X=m.x,s.Y=m.y+s.H/2,("x"in i||"y"in i)&&(s.path.v=c.format("m{0},{1}l{2},{1}",f(m.x*u),f(m.y*u),f(m.x*u)+1));for(var Y=["x","y","text","font","font-family","font-weight","font-style","font-size"],Z=0,$=Y.length;$>Z;Z++)if(Y[Z]in i){s._.dirty=1;break}switch(m["text-anchor"]){case"start":s.textpath.style["v-text-align"]="left",s.bbx=s.W/2;break;case"end":s.textpath.style["v-text-align"]="right",s.bbx=-s.W/2;break;default:s.textpath.style["v-text-align"]="center",s.bbx=0}s.textpath.style["v-text-kern"]=!0}},C=function(a,f,g){a.attrs=a.attrs||{};var h=(a.attrs,Math.pow),i="linear",j=".5 .5";if(a.attrs.gradient=f,f=b(f).replace(c._radial_gradient,function(a,b,c){return i="radial",b&&c&&(b=d(b),c=d(c),h(b-.5,2)+h(c-.5,2)>.25&&(c=e.sqrt(.25-h(b-.5,2))*(2*(c>.5)-1)+.5),j=b+n+c),o}),f=f.split(/\s*\-\s*/),"linear"==i){var k=f.shift();if(k=-d(k),isNaN(k))return null}var l=c._parseDots(f);if(!l)return null;if(a=a.shape||a.node,l.length){a.removeChild(g),g.on=!0,g.method="none",g.color=l[0].color,g.color2=l[l.length-1].color;for(var m=[],p=0,q=l.length;q>p;p++)l[p].offset&&m.push(l[p].offset+n+l[p].color);g.colors=m.length?m.join():"0% "+g.color,"radial"==i?(g.type="gradientTitle",g.focus="100%",g.focussize="0 0",g.focusposition=j,g.angle=0):(g.type="gradient",g.angle=(270-k)%360),a.appendChild(g)}return 1},D=function(a,b){this[0]=this.node=a,a.raphael=!0,this.id=c._oid++,a.raphaelid=this.id,this.X=0,this.Y=0,this.attrs={},this.paper=b,this.matrix=c.matrix(),this._={transform:[],sx:1,sy:1,dx:0,dy:0,deg:0,dirty:1,dirtyT:1},!b.bottom&&(b.bottom=this),this.prev=b.top,b.top&&(b.top.next=this),b.top=this,this.next=null},E=c.el;D.prototype=E,E.constructor=D,E.transform=function(a){if(null==a)return this._.transform;var d,e=this.paper._viewBoxShift,f=e?"s"+[e.scale,e.scale]+"-1-1t"+[e.dx,e.dy]:o;e&&(d=a=b(a).replace(/\.{3}|\u2026/g,this._.transform||o)),c._extractTransform(this,f+a);var g,h=this.matrix.clone(),i=this.skew,j=this.node,k=~b(this.attrs.fill).indexOf("-"),l=!b(this.attrs.fill).indexOf("url(");if(h.translate(1,1),l||k||"image"==this.type)if(i.matrix="1 0 0 1",i.offset="0 0",g=h.split(),k&&g.noRotation||!g.isSimple){j.style.filter=h.toFilter();var m=this.getBBox(),p=this.getBBox(1),q=m.x-p.x,r=m.y-p.y;j.coordorigin=q*-u+n+r*-u,z(this,1,1,q,r,0)}else j.style.filter=o,z(this,g.scalex,g.scaley,g.dx,g.dy,g.rotate);else j.style.filter=o,i.matrix=b(h),i.offset=h.offset();return null!==d&&(this._.transform=d,c._extractTransform(this,d)),this},E.rotate=function(a,c,e){if(this.removed)return this;if(null!=a){if(a=b(a).split(k),a.length-1&&(c=d(a[1]),e=d(a[2])),a=d(a[0]),null==e&&(c=e),null==c||null==e){var f=this.getBBox(1);c=f.x+f.width/2,e=f.y+f.height/2}return this._.dirtyT=1,this.transform(this._.transform.concat([["r",a,c,e]])),this}},E.translate=function(a,c){return this.removed?this:(a=b(a).split(k),a.length-1&&(c=d(a[1])),a=d(a[0])||0,c=+c||0,this._.bbox&&(this._.bbox.x+=a,this._.bbox.y+=c),this.transform(this._.transform.concat([["t",a,c]])),this)},E.scale=function(a,c,e,f){if(this.removed)return this;if(a=b(a).split(k),a.length-1&&(c=d(a[1]),e=d(a[2]),f=d(a[3]),isNaN(e)&&(e=null),isNaN(f)&&(f=null)),a=d(a[0]),null==c&&(c=a),null==f&&(e=f),null==e||null==f)var g=this.getBBox(1);return e=null==e?g.x+g.width/2:e,f=null==f?g.y+g.height/2:f,this.transform(this._.transform.concat([["s",a,c,e,f]])),this._.dirtyT=1,this},E.hide=function(){return!this.removed&&(this.node.style.display="none"),this},E.show=function(){return!this.removed&&(this.node.style.display=o),this},E.auxGetBBox=c.el.getBBox,E.getBBox=function(){var a=this.auxGetBBox();if(this.paper&&this.paper._viewBoxShift){var b={},c=1/this.paper._viewBoxShift.scale;return b.x=a.x-this.paper._viewBoxShift.dx,b.x*=c,b.y=a.y-this.paper._viewBoxShift.dy,b.y*=c,b.width=a.width*c,b.height=a.height*c,b.x2=b.x+b.width,b.y2=b.y+b.height,b}return a},E._getBBox=function(){return this.removed?{}:{x:this.X+(this.bbx||0)-this.W/2,y:this.Y-this.H,width:this.W,height:this.H}},E.remove=function(){if(!this.removed&&this.node.parentNode){this.paper.__set__&&this.paper.__set__.exclude(this),c.eve.unbind("raphael.*.*."+this.id),c._tear(this,this.paper),this.node.parentNode.removeChild(this.node),this.shape&&this.shape.parentNode.removeChild(this.shape);for(var a in this)this[a]="function"==typeof this[a]?c._removedFactory(a):null;this.removed=!0}},E.attr=function(b,d){if(this.removed)return this;if(null==b){var e={};for(var f in this.attrs)this.attrs[a](f)&&(e[f]=this.attrs[f]);return e.gradient&&"none"==e.fill&&(e.fill=e.gradient)&&delete e.gradient,e.transform=this._.transform,e}if(null==d&&c.is(b,"string")){if(b==j&&"none"==this.attrs.fill&&this.attrs.gradient)return this.attrs.gradient;for(var g=b.split(k),h={},i=0,m=g.length;m>i;i++)b=g[i],h[b]=b in this.attrs?this.attrs[b]:c.is(this.paper.customAttributes[b],"function")?this.paper.customAttributes[b].def:c._availableAttrs[b];return m-1?h:h[g[0]]}if(this.attrs&&null==d&&c.is(b,"array")){for(h={},i=0,m=b.length;m>i;i++)h[b[i]]=this.attr(b[i]);return h}var n;null!=d&&(n={},n[b]=d),null==d&&c.is(b,"object")&&(n=b);for(var o in n)l("raphael.attr."+o+"."+this.id,this,n[o]);if(n){for(o in this.paper.customAttributes)if(this.paper.customAttributes[a](o)&&n[a](o)&&c.is(this.paper.customAttributes[o],"function")){var p=this.paper.customAttributes[o].apply(this,[].concat(n[o]));this.attrs[o]=n[o];for(var q in p)p[a](q)&&(n[q]=p[q])}n.text&&"text"==this.type&&(this.textpath.string=n.text),B(this,n)}return this},E.toFront=function(){return!this.removed&&this.node.parentNode.appendChild(this.node),this.paper&&this.paper.top!=this&&c._tofront(this,this.paper),this},E.toBack=function(){return this.removed?this:(this.node.parentNode.firstChild!=this.node&&(this.node.parentNode.insertBefore(this.node,this.node.parentNode.firstChild),c._toback(this,this.paper)),this)},E.insertAfter=function(a){return this.removed?this:(a.constructor==c.st.constructor&&(a=a[a.length-1]),a.node.nextSibling?a.node.parentNode.insertBefore(this.node,a.node.nextSibling):a.node.parentNode.appendChild(this.node),c._insertafter(this,a,this.paper),this)},E.insertBefore=function(a){return this.removed?this:(a.constructor==c.st.constructor&&(a=a[0]),a.node.parentNode.insertBefore(this.node,a.node),c._insertbefore(this,a,this.paper),this)},E.blur=function(a){var b=this.node.runtimeStyle,d=b.filter;return d=d.replace(r,o),0!==+a?(this.attrs.blur=a,b.filter=d+n+m+".Blur(pixelradius="+(+a||1.5)+")",b.margin=c.format("-{0}px 0 0 -{0}px",f(+a||1.5))):(b.filter=d,b.margin=0,delete this.attrs.blur),this},c._engine.path=function(a,b){var c=F("shape");c.style.cssText=t,c.coordsize=u+n+u,c.coordorigin=b.coordorigin;var d=new D(c,b),e={fill:"none",stroke:"#000"};a&&(e.path=a),d.type="path",d.path=[],d.Path=o,B(d,e),b.canvas.appendChild(c);var f=F("skew");return f.on=!0,c.appendChild(f),d.skew=f,d.transform(o),d},c._engine.rect=function(a,b,d,e,f,g){var h=c._rectPath(b,d,e,f,g),i=a.path(h),j=i.attrs;return i.X=j.x=b,i.Y=j.y=d,i.W=j.width=e,i.H=j.height=f,j.r=g,j.path=h,i.type="rect",i},c._engine.ellipse=function(a,b,c,d,e){{var f=a.path();f.attrs}return f.X=b-d,f.Y=c-e,f.W=2*d,f.H=2*e,f.type="ellipse",B(f,{cx:b,cy:c,rx:d,ry:e}),f},c._engine.circle=function(a,b,c,d){{var e=a.path();e.attrs}return e.X=b-d,e.Y=c-d,e.W=e.H=2*d,e.type="circle",B(e,{cx:b,cy:c,r:d}),e},c._engine.image=function(a,b,d,e,f,g){var h=c._rectPath(d,e,f,g),i=a.path(h).attr({stroke:"none"}),k=i.attrs,l=i.node,m=l.getElementsByTagName(j)[0];return k.src=b,i.X=k.x=d,i.Y=k.y=e,i.W=k.width=f,i.H=k.height=g,k.path=h,i.type="image",m.parentNode==l&&l.removeChild(m),m.rotate=!0,m.src=b,m.type="tile",i._.fillpos=[d,e],i._.fillsize=[f,g],l.appendChild(m),z(i,1,1,0,0,0),i},c._engine.text=function(a,d,e,g){var h=F("shape"),i=F("path"),j=F("textpath");d=d||0,e=e||0,g=g||"",i.v=c.format("m{0},{1}l{2},{1}",f(d*u),f(e*u),f(d*u)+1),i.textpathok=!0,j.string=b(g),j.on=!0,h.style.cssText=t,h.coordsize=u+n+u,h.coordorigin="0 0";var k=new D(h,a),l={fill:"#000",stroke:"none",font:c._availableAttrs.font,text:g};k.shape=h,k.path=i,k.textpath=j,k.type="text",k.attrs.text=b(g),k.attrs.x=d,k.attrs.y=e,k.attrs.w=1,k.attrs.h=1,B(k,l),h.appendChild(j),h.appendChild(i),a.canvas.appendChild(h);var m=F("skew");return m.on=!0,h.appendChild(m),k.skew=m,k.transform(o),k},c._engine.setSize=function(a,b){var d=this.canvas.style;return this.width=a,this.height=b,a==+a&&(a+="px"),b==+b&&(b+="px"),d.width=a,d.height=b,d.clip="rect(0 "+a+" "+b+" 0)",this._viewBox&&c._engine.setViewBox.apply(this,this._viewBox),this},c._engine.setViewBox=function(a,b,d,e,f){c.eve("raphael.setViewBox",this,this._viewBox,[a,b,d,e,f]);var g,h,i=this.getSize(),j=i.width,k=i.height;return f&&(g=k/e,h=j/d,j>d*g&&(a-=(j-d*g)/2/g),k>e*h&&(b-=(k-e*h)/2/h)),this._viewBox=[a,b,d,e,!!f],this._viewBoxShift={dx:-a,dy:-b,scale:size},this.forEach(function(a){a.transform("...")}),this};var F;c._engine.initWin=function(a){var b=a.document;b.styleSheets.length<31?b.createStyleSheet().addRule(".rvml","behavior:url(#default#VML)"):b.styleSheets[0].addRule(".rvml","behavior:url(#default#VML)");try{!b.namespaces.rvml&&b.namespaces.add("rvml","urn:schemas-microsoft-com:vml"),F=function(a){return b.createElement("')}}catch(c){F=function(a){return b.createElement("<"+a+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">')}}},c._engine.initWin(c._g.win),c._engine.create=function(){var a=c._getContainer.apply(0,arguments),b=a.container,d=a.height,e=a.width,f=a.x,g=a.y;if(!b)throw new Error("VML container not found.");var h=new c._Paper,i=h.canvas=c._g.doc.createElement("div"),j=i.style;return f=f||0,g=g||0,e=e||512,d=d||342,h.width=e,h.height=d,e==+e&&(e+="px"),d==+d&&(d+="px"),h.coordsize=1e3*u+n+1e3*u,h.coordorigin="0 0",h.span=c._g.doc.createElement("span"),h.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;",i.appendChild(h.span),j.cssText=c.format("top:0;left:0;width:{0};height:{1};display:inline-block;position:relative;clip:rect(0 {0} {1} 0);overflow:hidden",e,d),1==b?(c._g.doc.body.appendChild(i),j.left=f+"px",j.top=g+"px",j.position="absolute"):b.firstChild?b.insertBefore(i,b.firstChild):b.appendChild(i),h.renderfix=function(){},h},c.prototype.clear=function(){c.eve("raphael.clear",this),this.canvas.innerHTML=o,this.span=c._g.doc.createElement("span"),this.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;",this.canvas.appendChild(this.span),this.bottom=this.top=null},c.prototype.remove=function(){c.eve("raphael.remove",this),this.canvas.parentNode.removeChild(this.canvas);for(var a in this)this[a]="function"==typeof this[a]?c._removedFactory(a):null;return!0};var G=c.st;for(var H in E)E[a](H)&&!G[a](H)&&(G[H]=function(a){return function(){var b=arguments;return this.forEach(function(c){c[a].apply(c,b)})}}(H))}}(),B.was?A.win.Raphael=c:Raphael=c,"object"==typeof exports&&(module.exports=c),c}); \ No newline at end of file +!function t(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.Raphael=r():e.Raphael=r()}(this,function(){return function(t){function e(i){if(r[i])return r[i].exports;var n=r[i]={exports:{},id:i,loaded:!1};return t[i].call(n.exports,n,n.exports,e),n.loaded=!0,n.exports}var r={};return e.m=t,e.c=r,e.p="",e(0)}([function(t,e,r){var i,n;i=[r(1),r(3),r(4)],n=function(t){return t}.apply(e,i),!(void 0!==n&&(t.exports=n))},function(t,e,r){var i,n;i=[r(2)],n=function(t){function e(r){if(e.is(r,"function"))return w?r():t.on("raphael.DOMload",r);if(e.is(r,Q))return e._engine.create[z](e,r.splice(0,3+e.is(r[0],$))).add(r);var i=Array.prototype.slice.call(arguments,0);if(e.is(i[i.length-1],"function")){var n=i.pop();return w?n.call(e._engine.create[z](e,i)):t.on("raphael.DOMload",function(){n.call(e._engine.create[z](e,i))})}return e._engine.create[z](e,arguments)}function r(t){if("function"==typeof t||Object(t)!==t)return t;var e=new t.constructor;for(var i in t)t[A](i)&&(e[i]=r(t[i]));return e}function i(t,e){for(var r=0,i=t.length;r=1e3&&delete o[l.shift()],l.push(s),o[s]=t[z](e,a),r?r(o[s]):o[s])}return n}function a(){return this.hex}function s(t,e){for(var r=[],i=0,n=t.length;n-2*!e>i;i+=2){var a=[{x:+t[i-2],y:+t[i-1]},{x:+t[i],y:+t[i+1]},{x:+t[i+2],y:+t[i+3]},{x:+t[i+4],y:+t[i+5]}];e?i?n-4==i?a[3]={x:+t[0],y:+t[1]}:n-2==i&&(a[2]={x:+t[0],y:+t[1]},a[3]={x:+t[2],y:+t[3]}):a[0]={x:+t[n-2],y:+t[n-1]}:n-4==i?a[3]=a[2]:i||(a[0]={x:+t[i],y:+t[i+1]}),r.push(["C",(-a[0].x+6*a[1].x+a[2].x)/6,(-a[0].y+6*a[1].y+a[2].y)/6,(a[1].x+6*a[2].x-a[3].x)/6,(a[1].y+6*a[2].y-a[3].y)/6,a[2].x,a[2].y])}return r}function o(t,e,r,i,n){var a=-3*e+9*r-9*i+3*n,s=t*a+6*e-12*r+6*i;return t*s-3*e+3*r}function l(t,e,r,i,n,a,s,l,h){null==h&&(h=1),h=h>1?1:h<0?0:h;for(var u=h/2,c=12,f=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],p=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],d=0,g=0;gd;)c/=2,f+=(pW(n,s)||W(e,i)W(a,o))){var l=(t*i-e*r)*(n-s)-(t-r)*(n*o-a*s),h=(t*i-e*r)*(a-o)-(e-i)*(n*o-a*s),u=(t-r)*(a-o)-(e-i)*(n-s);if(u){var c=l/u,f=h/u,p=+c.toFixed(2),d=+f.toFixed(2);if(!(p<+G(t,r).toFixed(2)||p>+W(t,r).toFixed(2)||p<+G(n,s).toFixed(2)||p>+W(n,s).toFixed(2)||d<+G(e,i).toFixed(2)||d>+W(e,i).toFixed(2)||d<+G(a,o).toFixed(2)||d>+W(a,o).toFixed(2)))return{x:c,y:f}}}}function c(t,e){return p(t,e)}function f(t,e){return p(t,e,1)}function p(t,r,i){var n=e.bezierBBox(t),a=e.bezierBBox(r);if(!e.isBBoxIntersect(n,a))return i?0:[];for(var s=l.apply(0,t),o=l.apply(0,r),h=W(~~(s/5),1),c=W(~~(o/5),1),f=[],p=[],d={},g=i?0:[],v=0;v=0&&S<=1.001&&A>=0&&A<=1.001&&(i?g++:g.push({x:C.x,y:C.y,t1:G(S,1),t2:G(A,1)}))}}return g}function d(t,r,i){t=e._path2curve(t),r=e._path2curve(r);for(var n,a,s,o,l,h,u,c,f,d,g=i?0:[],v=0,x=t.length;vi)return i;for(;ra?r=n:i=n,n=(i-r)/2+r}return n}var h=3*e,u=3*(i-e)-h,c=1-h-u,f=3*r,p=3*(n-r)-f,d=1-f-p;return o(t,1/(200*a))}function m(t,e){var r=[],i={};if(this.ms=e,this.times=1,t){for(var n in t)t[A](n)&&(i[ht(n)]=t[n],r.push(ht(n)));r.sort(Bt)}this.anim=i,this.top=r[r.length-1],this.percents=r}function b(r,i,n,a,s,o){n=ht(n);var l,h,u,c=[],f,p,d,v=r.ms,x={},m={},b={};if(a)for(w=0,B=Ee.length;wa*r.top){n=r.percents[w],p=r.percents[w-1]||0,v=v/r.top*(n-p),f=r.percents[w+1],l=r.anim[n];break}a&&i.attr(r.anim[r.percents[w]])}if(l){if(h)h.initstatus=a,h.start=new Date-h.ms*a;else{for(var C in l)if(l[A](C)&&(pt[A](C)||i.paper.customAttributes[A](C)))switch(x[C]=i.attr(C),null==x[C]&&(x[C]=ft[C]),m[C]=l[C],pt[C]){case $:b[C]=(m[C]-x[C])/v;break;case"colour":x[C]=e.getRGB(x[C]);var S=e.getRGB(m[C]);b[C]={r:(S.r-x[C].r)/v,g:(S.g-x[C].g)/v,b:(S.b-x[C].b)/v};break;case"path":var T=Qt(x[C],m[C]),E=T[1];for(x[C]=T[0],b[C]=[],w=0,B=x[C].length;w',Lt=Nt.firstChild,Lt.style.behavior="url(#default#VML)",!Lt||"object"!=typeof Lt.adj)return e.type=R;Nt=null}e.svg=!(e.vml="VML"==e.type),e._Paper=M,e.fn=N=M.prototype=e.prototype,e._id=0,e.is=function(t,e){return e=O.call(e),"finite"==e?!at[A](+t):"array"==e?t instanceof Array:"null"==e&&null===t||e==typeof t&&null!==t||"object"==e&&t===Object(t)||"array"==e&&Array.isArray&&Array.isArray(t)||tt.call(t).slice(8,-1).toLowerCase()==e},e.angle=function(t,r,i,n,a,s){if(null==a){var o=t-i,l=r-n;return o||l?(180+180*Y.atan2(-l,-o)/U+360)%360:0}return e.angle(t,r,a,s)-e.angle(i,n,a,s)},e.rad=function(t){return t%360*U/180},e.deg=function(t){return Math.round(180*t/U%360*1e3)/1e3},e.snapTo=function(t,r,i){if(i=e.is(i,"finite")?i:10,e.is(t,Q)){for(var n=t.length;n--;)if(H(t[n]-r)<=i)return t[n]}else{t=+t;var a=r%t;if(at-i)return r-a+t}return r};var zt=e.createUUID=function(t,e){return function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(t,e).toUpperCase()}}(/[xy]/g,function(t){var e=16*Y.random()|0,r="x"==t?e:3&e|8;return r.toString(16)});e.setWindow=function(r){t("raphael.setWindow",e,T.win,r),T.win=r,T.doc=T.win.document,e._engine.initWin&&e._engine.initWin(T.win)};var Pt=function(t){if(e.vml){var r=/^\s+|\s+$/g,i;try{var a=new ActiveXObject("htmlfile");a.write(""),a.close(),i=a.body}catch(s){i=createPopup().document.body}var o=i.createTextRange();Pt=n(function(t){try{i.style.color=I(t).replace(r,R);var e=o.queryCommandValue("ForeColor");return e=(255&e)<<16|65280&e|(16711680&e)>>>16,"#"+("000000"+e.toString(16)).slice(-6)}catch(n){return"none"}})}else{var l=T.doc.createElement("i");l.title="Raphaël Colour Picker",l.style.display="none",T.doc.body.appendChild(l),Pt=n(function(t){return l.style.color=t,T.doc.defaultView.getComputedStyle(l,R).getPropertyValue("color")})}return Pt(t)},Ft=function(){return"hsb("+[this.h,this.s,this.b]+")"},Rt=function(){return"hsl("+[this.h,this.s,this.l]+")"},jt=function(){return this.hex},It=function(t,r,i){if(null==r&&e.is(t,"object")&&"r"in t&&"g"in t&&"b"in t&&(i=t.b,r=t.g,t=t.r),null==r&&e.is(t,Z)){var n=e.getRGB(t);t=n.r,r=n.g,i=n.b}return(t>1||r>1||i>1)&&(t/=255,r/=255,i/=255),[t,r,i]},qt=function(t,r,i,n){t*=255,r*=255,i*=255;var a={r:t,g:r,b:i,hex:e.rgb(t,r,i),toString:jt};return e.is(n,"finite")&&(a.opacity=n),a};e.color=function(t){var r;return e.is(t,"object")&&"h"in t&&"s"in t&&"b"in t?(r=e.hsb2rgb(t),t.r=r.r,t.g=r.g,t.b=r.b,t.hex=r.hex):e.is(t,"object")&&"h"in t&&"s"in t&&"l"in t?(r=e.hsl2rgb(t),t.r=r.r,t.g=r.g,t.b=r.b,t.hex=r.hex):(e.is(t,"string")&&(t=e.getRGB(t)),e.is(t,"object")&&"r"in t&&"g"in t&&"b"in t?(r=e.rgb2hsl(t),t.h=r.h,t.s=r.s,t.l=r.l,r=e.rgb2hsb(t),t.v=r.b):(t={hex:"none"},t.r=t.g=t.b=t.h=t.s=t.v=t.l=-1)),t.toString=jt,t},e.hsb2rgb=function(t,e,r,i){this.is(t,"object")&&"h"in t&&"s"in t&&"b"in t&&(r=t.b,e=t.s,i=t.o,t=t.h),t*=360;var n,a,s,o,l;return t=t%360/60,l=r*e,o=l*(1-H(t%2-1)),n=a=s=r-l,t=~~t,n+=[l,o,0,0,o,l][t],a+=[o,l,l,o,0,0][t],s+=[0,0,o,l,l,o][t],qt(n,a,s,i)},e.hsl2rgb=function(t,e,r,i){this.is(t,"object")&&"h"in t&&"s"in t&&"l"in t&&(r=t.l,e=t.s,t=t.h),(t>1||e>1||r>1)&&(t/=360,e/=100,r/=100),t*=360;var n,a,s,o,l;return t=t%360/60,l=2*e*(r<.5?r:1-r),o=l*(1-H(t%2-1)),n=a=s=r-l/2,t=~~t,n+=[l,o,0,0,o,l][t],a+=[o,l,l,o,0,0][t],s+=[0,0,o,l,l,o][t],qt(n,a,s,i)},e.rgb2hsb=function(t,e,r){r=It(t,e,r),t=r[0],e=r[1],r=r[2];var i,n,a,s;return a=W(t,e,r),s=a-G(t,e,r),i=0==s?null:a==t?(e-r)/s:a==e?(r-t)/s+2:(t-e)/s+4,i=(i+360)%6*60/360,n=0==s?0:s/a,{h:i,s:n,b:a,toString:Ft}},e.rgb2hsl=function(t,e,r){r=It(t,e,r),t=r[0],e=r[1],r=r[2];var i,n,a,s,o,l;return s=W(t,e,r),o=G(t,e,r),l=s-o,i=0==l?null:s==t?(e-r)/l:s==e?(r-t)/l+2:(t-e)/l+4,i=(i+360)%6*60/360,a=(s+o)/2,n=0==l?0:a<.5?l/(2*a):l/(2-2*a),{h:i,s:n,l:a,toString:Rt}},e._path2string=function(){return this.join(",").replace(xt,"$1")};var Dt=e._preload=function(t,e){var r=T.doc.createElement("img");r.style.cssText="position:absolute;left:-9999em;top:-9999em",r.onload=function(){e.call(this),this.onload=null,T.doc.body.removeChild(this)},r.onerror=function(){T.doc.body.removeChild(this)},T.doc.body.appendChild(r),r.src=t};e.getRGB=n(function(t){if(!t||(t=I(t)).indexOf("-")+1)return{r:-1,g:-1,b:-1,hex:"none",error:1,toString:a};if("none"==t)return{r:-1,g:-1,b:-1,hex:"none",toString:a};!(vt[A](t.toLowerCase().substring(0,2))||"#"==t.charAt())&&(t=Pt(t));var r,i,n,s,o,l,h,u=t.match(nt);return u?(u[2]&&(s=ut(u[2].substring(5),16),n=ut(u[2].substring(3,5),16),i=ut(u[2].substring(1,3),16)),u[3]&&(s=ut((l=u[3].charAt(3))+l,16),n=ut((l=u[3].charAt(2))+l,16),i=ut((l=u[3].charAt(1))+l,16)),u[4]&&(h=u[4][q](gt),i=ht(h[0]),"%"==h[0].slice(-1)&&(i*=2.55),n=ht(h[1]),"%"==h[1].slice(-1)&&(n*=2.55),s=ht(h[2]),"%"==h[2].slice(-1)&&(s*=2.55),"rgba"==u[1].toLowerCase().slice(0,4)&&(o=ht(h[3])),h[3]&&"%"==h[3].slice(-1)&&(o/=100)),u[5]?(h=u[5][q](gt),i=ht(h[0]),"%"==h[0].slice(-1)&&(i*=2.55),n=ht(h[1]),"%"==h[1].slice(-1)&&(n*=2.55),s=ht(h[2]),"%"==h[2].slice(-1)&&(s*=2.55),("deg"==h[0].slice(-3)||"°"==h[0].slice(-1))&&(i/=360),"hsba"==u[1].toLowerCase().slice(0,4)&&(o=ht(h[3])),h[3]&&"%"==h[3].slice(-1)&&(o/=100),e.hsb2rgb(i,n,s,o)):u[6]?(h=u[6][q](gt),i=ht(h[0]),"%"==h[0].slice(-1)&&(i*=2.55),n=ht(h[1]),"%"==h[1].slice(-1)&&(n*=2.55),s=ht(h[2]),"%"==h[2].slice(-1)&&(s*=2.55),("deg"==h[0].slice(-3)||"°"==h[0].slice(-1))&&(i/=360),"hsla"==u[1].toLowerCase().slice(0,4)&&(o=ht(h[3])),h[3]&&"%"==h[3].slice(-1)&&(o/=100),e.hsl2rgb(i,n,s,o)):(u={r:i,g:n,b:s,toString:a},u.hex="#"+(16777216|s|n<<8|i<<16).toString(16).slice(1),e.is(o,"finite")&&(u.opacity=o),u)):{r:-1,g:-1,b:-1,hex:"none",error:1,toString:a}},e),e.hsb=n(function(t,r,i){return e.hsb2rgb(t,r,i).hex}),e.hsl=n(function(t,r,i){return e.hsl2rgb(t,r,i).hex}),e.rgb=n(function(t,e,r){function i(t){return t+.5|0}return"#"+(16777216|i(r)|i(e)<<8|i(t)<<16).toString(16).slice(1)}),e.getColor=function(t){var e=this.getColor.start=this.getColor.start||{h:0,s:1,b:t||.75},r=this.hsb2rgb(e.h,e.s,e.b);return e.h+=.075,e.h>1&&(e.h=0,e.s-=.2,e.s<=0&&(this.getColor.start={h:0,s:1,b:e.b})),r.hex},e.getColor.reset=function(){delete this.start},e.parsePathString=function(t){if(!t)return null;var r=Vt(t);if(r.arr)return Yt(r.arr);var i={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0},n=[];return e.is(t,Q)&&e.is(t[0],Q)&&(n=Yt(t)),n.length||I(t).replace(yt,function(t,e,r){var a=[],s=e.toLowerCase();if(r.replace(bt,function(t,e){e&&a.push(+e)}),"m"==s&&a.length>2&&(n.push([e][P](a.splice(0,2))),s="l",e="m"==e?"l":"L"),"r"==s)n.push([e][P](a));else for(;a.length>=i[s]&&(n.push([e][P](a.splice(0,i[s]))),i[s]););}),n.toString=e._path2string,r.arr=Yt(n),n},e.parseTransformString=n(function(t){if(!t)return null;var r={r:3,s:4,t:2,m:6},i=[];return e.is(t,Q)&&e.is(t[0],Q)&&(i=Yt(t)),i.length||I(t).replace(mt,function(t,e,r){var n=[],a=O.call(e);r.replace(bt,function(t,e){e&&n.push(+e)}),i.push([e][P](n))}),i.toString=e._path2string,i});var Vt=function(t){var e=Vt.ps=Vt.ps||{};return e[t]?e[t].sleep=100:e[t]={sleep:100},setTimeout(function(){for(var r in e)e[A](r)&&r!=t&&(e[r].sleep--,!e[r].sleep&&delete e[r])}),e[t]};e.findDotsAtSegment=function(t,e,r,i,n,a,s,o,l){var h=1-l,u=X(h,3),c=X(h,2),f=l*l,p=f*l,d=u*t+3*c*l*r+3*h*l*l*n+p*s,g=u*e+3*c*l*i+3*h*l*l*a+p*o,v=t+2*l*(r-t)+f*(n-2*r+t),x=e+2*l*(i-e)+f*(a-2*i+e),y=r+2*l*(n-r)+f*(s-2*n+r),m=i+2*l*(a-i)+f*(o-2*a+i),b=h*t+l*r,_=h*e+l*i,w=h*n+l*s,k=h*a+l*o,B=90-180*Y.atan2(v-y,x-m)/U;return(v>y||x=t.x&&e<=t.x2&&r>=t.y&&r<=t.y2},e.isBBoxIntersect=function(t,r){var i=e.isPointInsideBBox;return i(r,t.x,t.y)||i(r,t.x2,t.y)||i(r,t.x,t.y2)||i(r,t.x2,t.y2)||i(t,r.x,r.y)||i(t,r.x2,r.y)||i(t,r.x,r.y2)||i(t,r.x2,r.y2)||(t.xr.x||r.xt.x)&&(t.yr.y||r.yt.y)},e.pathIntersection=function(t,e){return d(t,e)},e.pathIntersectionNumber=function(t,e){return d(t,e,1)},e.isPointInsidePath=function(t,r,i){var n=e.pathBBox(t);return e.isPointInsideBBox(n,r,i)&&d(t,[["M",r,i],["H",n.x2+10]],1)%2==1},e._removedFactory=function(e){return function(){t("raphael.log",null,"Raphaël: you are calling to method “"+e+"” of removed object",e)}};var Ot=e.pathBBox=function(t){var e=Vt(t);if(e.bbox)return r(e.bbox);if(!t)return{x:0,y:0,width:0,height:0,x2:0,y2:0};t=Qt(t);for(var i=0,n=0,a=[],s=[],o,l=0,h=t.length;l1&&(b=Y.sqrt(b),r=b*r,i=b*i);var _=r*r,w=i*i,k=(s==o?-1:1)*Y.sqrt(H((_*w-_*m*m-w*y*y)/(_*m*m+w*y*y))),B=k*r*m/i+(t+l)/2,C=k*-i*y/r+(e+h)/2,S=Y.asin(((e-C)/i).toFixed(9)),A=Y.asin(((h-C)/i).toFixed(9));S=tA&&(S-=2*U),!o&&A>S&&(A-=2*U)}var T=A-S;if(H(T)>c){var E=A,M=l,N=h;A=S+c*(o&&A>S?1:-1),l=B+r*Y.cos(A),h=C+i*Y.sin(A),p=Ut(l,h,r,i,a,0,o,M,N,[A,E,B,C])}T=A-S;var L=Y.cos(S),z=Y.sin(S),F=Y.cos(A),R=Y.sin(A),j=Y.tan(T/4),I=4/3*r*j,D=4/3*i*j,V=[t,e],O=[t+I*z,e-D*L],W=[l+I*R,h-D*F],G=[l,h];if(O[0]=2*V[0]-O[0],O[1]=2*V[1]-O[1],u)return[O,W,G][P](p);p=[O,W,G][P](p).join()[q](",");for(var X=[],$=0,Z=p.length;$"1e12"&&(c=.5),H(f)>"1e12"&&(f=.5),c>0&&c<1&&(g=$t(t,e,r,i,n,a,s,o,c),d.push(g.x),p.push(g.y)),f>0&&f<1&&(g=$t(t,e,r,i,n,a,s,o,f),d.push(g.x),p.push(g.y)),l=a-2*i+e-(o-2*a+i),h=2*(i-e)-2*(a-i),u=e-i,c=(-h+Y.sqrt(h*h-4*l*u))/2/l,f=(-h-Y.sqrt(h*h-4*l*u))/2/l,H(c)>"1e12"&&(c=.5),H(f)>"1e12"&&(f=.5),c>0&&c<1&&(g=$t(t,e,r,i,n,a,s,o,c),d.push(g.x),p.push(g.y)),f>0&&f<1&&(g=$t(t,e,r,i,n,a,s,o,f),d.push(g.x),p.push(g.y)),{min:{x:G[z](0,d),y:G[z](0,p)},max:{x:W[z](0,d),y:W[z](0,p)}}}),Qt=e._path2curve=n(function(t,e){var r=!e&&Vt(t);if(!e&&r.curve)return Yt(r.curve);for(var i=Gt(t),n=e&&Gt(e),a={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},s={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},o=(function(t,e,r){var i,n,a={T:1,Q:1};if(!t)return["C",e.x,e.y,e.x,e.y,e.x,e.y];switch(!(t[0]in a)&&(e.qx=e.qy=null),t[0]){case"M":e.X=t[1],e.Y=t[2];break;case"A":t=["C"][P](Ut[z](0,[e.x,e.y][P](t.slice(1))));break;case"S":"C"==r||"S"==r?(i=2*e.x-e.bx,n=2*e.y-e.by):(i=e.x,n=e.y),t=["C",i,n][P](t.slice(1));break;case"T":"Q"==r||"T"==r?(e.qx=2*e.x-e.qx,e.qy=2*e.y-e.qy):(e.qx=e.x,e.qy=e.y),t=["C"][P](Xt(e.x,e.y,e.qx,e.qy,t[1],t[2]));break;case"Q":e.qx=t[1],e.qy=t[2],t=["C"][P](Xt(e.x,e.y,t[1],t[2],t[3],t[4]));break;case"L":t=["C"][P](Ht(e.x,e.y,t[1],t[2]));break;case"H":t=["C"][P](Ht(e.x,e.y,t[1],e.y));break;case"V":t=["C"][P](Ht(e.x,e.y,e.x,t[1]));break;case"Z":t=["C"][P](Ht(e.x,e.y,e.X,e.Y))}return t}),l=function(t,e){if(t[e].length>7){t[e].shift();for(var r=t[e];r.length;)u[e]="A",n&&(c[e]="A"),t.splice(e++,0,["C"][P](r.splice(0,6)));t.splice(e,1),g=W(i.length,n&&n.length||0)}},h=function(t,e,r,a,s){t&&e&&"M"==t[s][0]&&"M"!=e[s][0]&&(e.splice(s,0,["M",a.x,a.y]),r.bx=0,r.by=0,r.x=t[s][1],r.y=t[s][2],g=W(i.length,n&&n.length||0))},u=[],c=[],f="",p="",d=0,g=W(i.length,n&&n.length||0);dn){if(r&&!c.start){if(f=ke(s,o,l[1],l[2],l[3],l[4],l[5],l[6],n-p),u+=["C"+f.start.x,f.start.y,f.m.x,f.m.y,f.x,f.y],a)return u;c.start=u,u=["M"+f.x,f.y+"C"+f.n.x,f.n.y,f.end.x,f.end.y,l[5],l[6]].join(),p+=h,s=+l[5],o=+l[6];continue}if(!t&&!r)return f=ke(s,o,l[1],l[2],l[3],l[4],l[5],l[6],n-p),{x:f.x,y:f.y,alpha:f.alpha}}p+=h,s=+l[5],o=+l[6]}u+=l.shift()+l}return c.end=u,f=t?p:r?c:e.findDotsAtSegment(s,o,l[0],l[1],l[2],l[3],l[4],l[5],1),f.alpha&&(f={x:f.x,y:f.y,alpha:f.alpha}),f}},Ce=Be(1),Se=Be(),Ae=Be(0,1);e.getTotalLength=Ce,e.getPointAtLength=Se,e.getSubpath=function(t,e,r){if(this.getTotalLength(t)-r<1e-6)return Ae(t,e).end;var i=Ae(t,r,1);return e?Ae(i,e).end:i},ye.getTotalLength=function(){var t=this.getPath();if(t)return this.node.getTotalLength?this.node.getTotalLength():Ce(t)},ye.getPointAtLength=function(t){var e=this.getPath();if(e)return Se(e,t)},ye.getPath=function(){var t,r=e._getPath[this.type];if("text"!=this.type&&"set"!=this.type)return r&&(t=r(this)),t},ye.getSubpath=function(t,r){var i=this.getPath();if(i)return e.getSubpath(i,t,r)};var Te=e.easing_formulas={linear:function(t){return t},"<":function(t){return X(t,1.7)},">":function(t){return X(t,.48)},"<>":function(t){var e=.48-t/1.04,r=Y.sqrt(.1734+e*e),i=r-e,n=X(H(i),1/3)*(i<0?-1:1),a=-r-e,s=X(H(a),1/3)*(a<0?-1:1),o=n+s+.5;return 3*(1-o)*o*o+o*o*o},backIn:function(t){var e=1.70158;return t*t*((e+1)*t-e)},backOut:function(t){t-=1;var e=1.70158;return t*t*((e+1)*t+e)+1},elastic:function(t){return t==!!t?t:X(2,-10*t)*Y.sin((t-.075)*(2*U)/.3)+1},bounce:function(t){var e=7.5625,r=2.75,i;return t<1/r?i=e*t*t:t<2/r?(t-=1.5/r,i=e*t*t+.75):t<2.5/r?(t-=2.25/r,i=e*t*t+.9375):(t-=2.625/r,i=e*t*t+.984375),i}};Te.easeIn=Te["ease-in"]=Te["<"],Te.easeOut=Te["ease-out"]=Te[">"],Te.easeInOut=Te["ease-in-out"]=Te["<>"],Te["back-in"]=Te.backIn,Te["back-out"]=Te.backOut;var Ee=[],Me=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){setTimeout(t,16)},Ne=function(){for(var r=+new Date,i=0;i1&&!n.next){for(v in u)u[A](v)&&(g[v]=n.totalOrigin[v]);n.el.attr(g),b(n.anim,n.el,n.anim.percents[0],null,n.totalOrigin,n.repeat-1)}n.next&&!n.stop&&b(n.anim,n.el,n.next,null,n.totalOrigin,n.repeat)}}}Ee.length&&Me(Ne)},Le=function(t){return t>255?255:t<0?0:t};ye.animateWith=function(t,r,i,n,a,s){var o=this;if(o.removed)return s&&s.call(o),o;var l=i instanceof m?i:e.animation(i,n,a,s),h,u;b(l,o,l.percents[0],null,o.attr());for(var c=0,f=Ee.length;cl&&(l=u)}l+="%",!t[l].callback&&(t[l].callback=n)}return new m(t,r)},ye.animate=function(t,r,i,n){var a=this;if(a.removed)return n&&n.call(a),a;var s=t instanceof m?t:e.animation(t,r,i,n);return b(s,a,s.percents[0],null,a.attr()),a},ye.setTime=function(t,e){return t&&null!=e&&this.status(t,G(e,t.ms)/t.ms),this},ye.status=function(t,e){var r=[],i=0,n,a;if(null!=e)return b(t,this,-1,G(e,1)),this;for(n=Ee.length;i1)for(var i=0,n=r.length;i.5)-1;l(f-.5,2)+l(p-.5,2)>.25&&(p=a.sqrt(.25-l(f-.5,2))*n+.5)&&.5!=p&&(p=p.toFixed(5)-1e-5*n)}return c}),n=n.split(/\s*\-\s*/),"linear"==h){var b=n.shift();if(b=-i(b),isNaN(b))return null;var _=[0,0,a.cos(t.rad(b)),a.sin(t.rad(b))],w=1/(s(o(_[2]),o(_[3]))||1);_[2]*=w,_[3]*=w,_[2]<0&&(_[0]=-_[2],_[2]=0),_[3]<0&&(_[1]=-_[3],_[3]=0)}var k=t._parseDots(n);if(!k)return null;if(u=u.replace(/[\(\)\s,\xb0#]/g,"_"),e.gradient&&u!=e.gradient.id&&(g.defs.removeChild(e.gradient),delete e.gradient),!e.gradient){y=v(h+"Gradient",{id:u}),e.gradient=y,v(y,"radial"==h?{fx:f,fy:p}:{x1:_[0],y1:_[1],x2:_[2],y2:_[3],gradientTransform:e.matrix.invert()}),g.defs.appendChild(y);for(var B=0,C=k.length;B1?z.opacity/100:z.opacity});case"stroke":z=t.getRGB(g),l.setAttribute(d,z.hex),"stroke"==d&&z[e]("opacity")&&v(l,{"stroke-opacity":z.opacity>1?z.opacity/100:z.opacity}),"stroke"==d&&i._.arrows&&("startString"in i._.arrows&&_(i,i._.arrows.startString),"endString"in i._.arrows&&_(i,i._.arrows.endString,1));break;case"gradient":("circle"==i.type||"ellipse"==i.type||"r"!=r(g).charAt())&&x(i,g);break;case"opacity":u.gradient&&!u[e]("stroke-opacity")&&v(l,{"stroke-opacity":g>1?g/100:g});case"fill-opacity":if(u.gradient){P=t._g.doc.getElementById(l.getAttribute("fill").replace(/^url\(#|\)$/g,c)),P&&(F=P.getElementsByTagName("stop"),v(F[F.length-1],{"stop-opacity":g}));break}default:"font-size"==d&&(g=n(g,10)+"px");var R=d.replace(/(\-.)/g,function(t){return t.substring(1).toUpperCase()});l.style[R]=g,i._.dirty=1,l.setAttribute(d,g)}}S(i,a),l.style.visibility=f},C=1.2,S=function(i,a){if("text"==i.type&&(a[e]("text")||a[e]("font")||a[e]("font-size")||a[e]("x")||a[e]("y"))){var s=i.attrs,o=i.node,l=o.firstChild?n(t._g.doc.defaultView.getComputedStyle(o.firstChild,c).getPropertyValue("font-size"),10):10;if(a[e]("text")){for(s.text=a.text;o.firstChild;)o.removeChild(o.firstChild);for(var h=r(a.text).split("\n"),u=[],f,p=0,d=h.length;p"));var Z=X.getBoundingClientRect();m.W=f.w=(Z.right-Z.left)/U,m.H=f.h=(Z.bottom-Z.top)/U,m.X=f.x,m.Y=f.y+m.H/2,("x"in l||"y"in l)&&(m.path.v=t.format("m{0},{1}l{2},{1}",a(f.x*b),a(f.y*b),a(f.x*b)+1));for(var Q=["x","y","text","font","font-family","font-weight","font-style","font-size"],J=0,K=Q.length;J.25&&(r=n.sqrt(.25-l(e-.5,2))*(2*(r>.5)-1)+.5),f=e+p+r),d}),a=a.split(/\s*\-\s*/),"linear"==c){var g=a.shift();if(g=-i(g),isNaN(g))return null}var v=t._parseDots(a);if(!v)return null;if(e=e.shape||e.node,v.length){e.removeChild(s),s.on=!0,s.method="none",s.color=v[0].color,s.color2=v[v.length-1].color;for(var x=[],y=0,m=v.length;y')}}catch(r){N=function(t){return e.createElement("<"+t+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">')}}},t._engine.initWin(t._g.win),t._engine.create=function(){var e=t._getContainer.apply(0,arguments),r=e.container,i=e.height,n,a=e.width,s=e.x,o=e.y;if(!r)throw new Error("VML container not found.");var l=new t._Paper,h=l.canvas=t._g.doc.createElement("div"),u=h.style;return s=s||0,o=o||0,a=a||512,i=i||342,l.width=a,l.height=i,a==+a&&(a+="px"),i==+i&&(i+="px"),l.coordsize=1e3*b+p+1e3*b,l.coordorigin="0 0",l.span=t._g.doc.createElement("span"),l.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;",h.appendChild(l.span),u.cssText=t.format("top:0;left:0;width:{0};height:{1};display:inline-block;position:relative;clip:rect(0 {0} {1} 0);overflow:hidden",a,i),1==r?(t._g.doc.body.appendChild(h),u.left=s+"px",u.top=o+"px",u.position="absolute"):r.firstChild?r.insertBefore(h,r.firstChild):r.appendChild(h),l.renderfix=function(){},l},t.prototype.clear=function(){t.eve("raphael.clear",this),this.canvas.innerHTML=d,this.span=t._g.doc.createElement("span"),this.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;",this.canvas.appendChild(this.span),this.bottom=this.top=null},t.prototype.remove=function(){t.eve("raphael.remove",this),this.canvas.parentNode.removeChild(this.canvas);for(var e in this)this[e]="function"==typeof this[e]?t._removedFactory(e):null;return!0};var L=t.st;for(var z in M)M[e](z)&&!L[e](z)&&(L[z]=function(t){return function(){var e=arguments;return this.forEach(function(r){r[t].apply(r,e)})}}(z))}}.apply(e,i),!(void 0!==n&&(t.exports=n))}])}); \ No newline at end of file diff --git a/static/editor.md/lib/sequence/danielbd.woff b/static/editor.md/lib/sequence/danielbd.woff new file mode 100755 index 0000000000000000000000000000000000000000..aa01f17b930503d23aa19e780fff8795c49207d1 GIT binary patch literal 38300 zcmY(KQ?MvKw5^wI+qP}nwr#JyY+HNTwr$(CZTs&3p7U~2HL5eejLeybuCA_1;w~>H z1^@`~ucc%G!2S2U;rXBVzyAMiVqz+?004j@|0w1^;pC(b^ofgziv42-|6;sCn z0FhUwXZpwd|HY#JWPr`ROJZzm=l{;e-1`QJRS|77o|#^$kMY+ztu z0uadD5;en25FpL?fDgc|3DW-0@ZXq;fx#ZI5hNIbfziLd2}lBs0Uj^_hz$VS|BM@^ zk2Hk^qy&UGq8Sqc58j3$WRS)Y#z=+-1Vm&80m5ta^_72w(O&Cg0RwLeqrHME7@FC& z5D*mi^+5o{DZnWF|2ox)mI|?oD5HL}+TBPA!BS3M6w+lj+Z0IL?b;>h^Dv&Vuj%t%(Ato!0YJ@ELwQ0pKK-eJsixZInF0D-`mW;&H&UjH=#uG z$rhTFCmULjsg5Z9YjY}QG4SHVdRs5e5WdIRbp zkqn53`4wWzims~Ls`jipF{;Qs(7e_z-?RK?8GG?X#}ZoMNaaIPS`9_V*m@AbK@Mnk zLJ}Eq5EcT?@6u7VrJCoG}U^C5Nn)sTGMg#rH#DsM-6Q%uNV*$PVm^#6Skro%j zGNeXrER4ts=AE{P1*UZ=6ss0j@rne>Rf ztTJPZdKX1({xV6}I-nh%6hu{T>GKevAuAhlkf zz-p;a$Gswnxh`rH-?=#fNWUVFGm?@#U?k-+M4k1RDBMNn?os{sVgUjG{{8~Mdu-Tr zfoEYax3lq?&$z^}6jEY6?-VarSi3iOqkDBvzjVCX9op&CF)sImEqXEX3c&1#x*-dl zkt83LYzsh97Lk+a-=rN00j2&jV_CZI|7!BvC#V&2+WX|Z`pgO{_!B_5;fW)J$3q-2 ze@-Dj^9$^G&X(eGJU|`{>wOd<3nqNM!}rxjv?c%~3Lyx@KZl8A2=wVwpgj~9{EV5R zMiFV|q1=fNgm}|g1NNR&GX^M9aHEYFrf%l#B~~t*MK;D{Sx902FkM(k)F_BW^z6s{ z)_2{Tyh=Y@rmKqm`lyS4^HTeLpX?;OW@5y_qy5U>(x7H#`&@h%)!FB5578qsFXZjS z741au@4*K*%d6NA1fDYcmhIpWeoB6iyO80}>rH6R+2I@ZlMoVUYew;QR6l@CK_kR% z2n#~(f~C|>R>crGvLKTqRsW?&vhb)vRJ<*OzemQX zB6uZ~zjT6p8wB)|<=B__UK}iLpACg3RW(SsQ0_=(ski)%vK8=21-?j1sGy-uucA|W zezuYPESYA$Bs?G2ENQP_^Xn83uCJJcZylKNxDsvAR zmrExsL5{@O!Ma477LUcL@Y)^DOfsS7NR1u*nA%SOal|SgUT#I zR0oXE#0WD83nM}5YdBeeK4~bRZ4-sBvH%e#uw(}aLZpb;pmhkE)dJp_1dH3*g2Nix zmOUtiRm_n_1_LUV77WEiLt5wdNO2++?vkZKxAETBZaw#%c|!M?=$NW%)T4Dq)Y1}_ zbj4I9yypnJiRAaXzOs|x0*dCCwbd$qh>_%KM2+HiNX4@mf1$GK=ts(Zpc`$J5{m0$ z0tEV)X+8HBh076gI%4mv(584DSVq%F;&r?uuDBQ#F63Pi{OMw@aayS!fO)^W~LtnMoT)$ zWu)Ajw0L4Fjw1E8$HFKRAm$*hY}gbC_kLnlXwNeq3Jb^-$U2~RI${Qzk$>M+@~pi` zkQsM5zAecvjR->1H-J-#+LuWKow*nc~JKavVz2ejUEvLf;)1_s%2 zwo%wmojM(GlsFyPdG0~S*jn+vAl9_B#veGNa5#tf!F9?cz=Y2UH-FULj=4Ymx<)&E zSvq|`;Semsxt(+3YqKy9Q=of+7y}p@-pfNtK4e{FDEKwjb2q$e*D}(ipxK0y&0ey) zUw6=uhl4HKlc&X2TB&k|!*G4X3df5!kj4Le1Aqc-;CvMW%YhT-dCti}hj{Ri`q3nWvCTH`=Kz z3lnB5GE4F?A&aXfsP9565h#2r^H!nWixGW%u%Vw`o>aHQ1`j%)Q-OU$K}iCMx+}HL z`e7Q8%1b-H$%dYy*(%X-Bmdok(Bq{`(2I$tUw?HaswUQAdgzRdy4LqgA7*qdEBZtLW4s%!FN?S!QGM)y=OP|5Vynl zZjdgc*Gz2Q>oFUm9wgf2efG^iGh0OQj5hOo{B?MScEC$gvKg!6Jkt?WVJ&ju$dnkj z1OvJa=$*@`d_v<l>Cqw#=*T&j&!ic0>k=lh*d>T5&B&u*0sP*}n%B6VPJ z(d=0_7_D?W4M!G4%)F1W(%LZ&oO>&yRjiUXHPexwnOiy%X6Eu>jfD=+PUqD~qFl85%zXOS)z-$KU$>sEDW^ z{YwDiG>KbM;>q6H{#+9d0eu8u8ZLb<2WiTwvYpAp>$BP0^iT8;AJa-_i*A>M&g#eg z#=a3A%-;x4i<5{EF~sNUW|QqHEDPQ3l5V_v9M8t(be1|t3Dccc&D#d~>pO?R@99TJ zMy6xXkZ@(CyYKR(mGOw79eAIYNC#!ZUxO8b=fHd)xTq@*j!F=}1O1Q}X~qmQws{4J*|l*X0jo2oU^XATZ&nzt z=8!@ff?Kp*gw|&3eyQ%seLhw~vzcl>tCW6>s`fgWEsfzZW`}T@nRhV$T&XAdU<=jr z$21-s1`2Jh-eSThamCe*yxRl)0vjs%0jlJbXm(3q0wq`p#P`_ekbCSqa&2$LcC-UE zV~J_Yf_mva74iYUecq=SmgVGVdzTr+pHIo3&OCN_-hd59^$R=`Q?qQD29$sm0KDMl5rsg1VrY3^)ughP z3|h==Nf|95fD*$}5fSk1+OJ+2`Dej!5-1RgOGIW*aC)#*p;9Wb6cft?zyUq z%@FR7$5ROk;8I&GMy&F!Ml9h>Ct?bVoM9-?LLo24w8$^K!1ikt-csglJS5vK8HQPn zU}6VG;(>~PPRh=ou-}jf$i3Jc*wje0$OSqg{fu2GaEA3tec2ta2-zZo@-^-pN+ z>2%oc?Ikx1#6(iVrik(I0^Kn}N~O1wu9B@~^!1V7y;byH-w9OI7+#AAb!ddN)w-41 zUA%cT6Q1%OD*zhaFZLfk)#PLJ2F-SsW{P`s=|_nvQt3O+q2Fw9%ot!uBLzZ&+|nl! zK_NkdSts%_+BtRXR3m29Mh>UB7d0`24O%u~fG(HF=3e3H5eA+B)M*}2KqZ<*)cdAw zNPaXmFQ^L{i?z9pe3Xl3&wqcT8W3AUVSO_$TIMvJ{R6pzBT(<0rs}H>hayoJZ_FbY z$DXry-$uBaD#Fe~M#_c3?y6{Pfmi>%5$E^D71i$@__*IS=WO)-2xKn%z-K(T)SwIB zSfiRRmgmyyUekeRPMp?(R`U#A)t0Pf*L@>hZ(}i=ThJ-XkL&)iP1oRXwZTh2^8>@`m8aA43gbQJjA4VT z(C($PZXNe?;n8w=Yy_{k^E&e@+(ut8aAEr)-Fy2ap2G%mkfU9IzY%#zn-GQ=wr^GKJAGmPdKV_rm4# z?d3G1L*KP6i!qZi0?SP{O)J;;i12Q18%#bf2@RGf`ERNrJ-J8bI}#vs&!AMQrO^UU zjv~-YNzrxF_HOWaafQAc0R&$xe)-3-xrnA{2WywAJixn_PNkr?t~j%Zo1BfZr((); z1=Yal=a#a%ob=9uuOAO=W)}E^zXOiOZSVdA9r12(HV^DIN3sY?%fTGvy2$%kj!_3A zj-zl+m;xH1Kw((z>3q-pAP2i&AE)bsR-xCjayN0*Ca5ooh7By;Fyy@Y&kAuh{8p0+ z6hj3XW#p-6)b4E@l^nP%CPqIHQn;F;jS}Z45K%CV5S>WPicx~jFnlg`QoJgM8vKsx z5oY-Tkt|dQ%HQMg^>n5c8x{8;E)mEgX3J%7>$HZmIg+9tM605C?n!Hv4Lm3$Xd1D8 zw<}l=(*hkaSTTv#mXt>CAPW|aGvTmnZ1nWEobhQNuf~$th^*6lSAD*daZ|PT7LI)* zm=T6I2&hp;m6*(L^O?7z)XY^8`=(CvHc?)X_Ja+VvyV0$EX|#tIVJ*DI6uolY$)E<d;&um^2`;?9At$Kp+MWAle}yJPLG zpP7le^Wzcw2xwOpJAZVBLvX{xS@*Xk;4qh};{V=TR!3Kc{VLFwC;p+BV^wh13R$9T zgPcn4TH+tg7|6kWY#c1!w0&JqsUk)MY4hRP5depg<~>Y9X^mdnkb3pkmES!khi!oM zu{v(L%iX43z1d0L>FOe;*X(w{!X6n=j*~+Hhensm_DvFm^!yc1&%I3nMRhI}yEey$ ze%GdRD$-Cq=J_NBEOhK2IH)Azjyrv-JZBkJ)<5TU(-OT5_u$Bxdgwff z3c~wqa_q|DpCb@0(S)Y@jpaL84up8gQ^{X>W7Wudv4B?8ar%XlHA@YH7qSNSRSl2o`?7JbWGpP45{G?sQL;7OTIZbg z`kL1@JvttbnFM{U6=(Gk8ho!jgwZ&D}@s( zTL53gnyS3|?ZD~kVIsJR^?bS5d_K!)XC;;-xC%Pl`Ad+jw^q9}LPw~3Z#bKQg39|X z0-62^wo#BhT23S!w#(3%xQ>@#^1r#_6X=l74CU~pS{$&{E_0o5)BlrmmA z0LKhI788a7Utpns9Y=-t&)4jJ)Y@*PE2yQMs9@t&N9cvq@>D#s$g}F8a%wt*pnyEW*Ot@bw6CskyhaMs8898S7 z{W@B$i67eGvqf#|VY5o~wWkXSU3y@x7I&gP?iAIf@U-LzF+ewXSbAM9n??ZrvhZLV zw6JiS$vAMyFHYxMCpqGb2!lc(JdoOrJF-!pYf(Ya^eV}%HJp~9B?;PJ_G=Hk+%>>G zJ$ENK1TabV=|8yKqC$r1Mo&rRH3Csf_1TCOI?Yg(ywn(mMd|jv97AKp{Zog9#;OFuB_=!-Y0X z*;6937jvu?R8y`edBbx1um_E*QoIwd!+SdL%DL)nc+M?X+=6yY3=}iH(Ct_7bXs<( zNaS}c|~&rQrcbT5ADcOpkjH$%s47eb{wXI zZv*t!bm8;4K?_Bf42KI-J_%ob&0DuB?hcF)K4uC{_sooOLk_J*lZkHZV(IU84M;#s)b`XOp&_~vUo2=-=JXprEgQWvI{ru<0nyI{Myn2j7-~fh z!J0#uk7d6!pwyjR@uLE77SeIM1l^k)^hdW~}8=f&&NoZ4&uP$V+AhUdFR>{{ak*3^j$JPM2ZB4@&sA8N8nl>iHN_)Iq zr78WCPt`|iomV~~X3!jlUhzRtcA=|gANht&sBoW{AxA|a?X*S|Mz9VP%?T(me?!;U zrRgd+H3spw+=-tAQUVHJFJo^?#F^O=ZR7@JFq2JHuWdb*KJq|GLOH&%dM1W!QJ|@y z3{sp}Y@P6s-+LDEnf{LFE9&{Ia*u$S*KxOz-c$x{w7pb-NTx(W>&14j6fTqMcOuTy z5L;Sk^4glNt=Fj;o_$^K&0er!OrXIiYf%iX4{px;%!^*muK|<_>M4bm!XtE05jz$R zVO5Do4hA*@2FuzR2?bNov9-D{(Kdch#hkpSVi^vN1gfg<@W+nlK*!2m!}i_;;Q(jQ zfvBw>7T{#^79N9iWvFgQc8;QCalDQ)jiq!$h0V2 z9vvWfJkYlTQNU`s#@Bpm!bz?(yYc0OAQ{iY)%O_mg7BikXWDu;*5|_+NgbwH3r+Y3 zsg{7<;)^j}6*Xmgi3dp?mnk#hPV;k|&ELl7qyKc2bJnMSA+HgKrg z01Aa5`T#}M`|Zi|C@RGs%(7+HBvfF1`qq?Y!O@0#gNekzfXBbW1WPwkHC0!&z4{@; z<;ouy)P`vq9iWd`U}BazB|jo21eYRt0z6l78_8h$7ofENxz9229OBSC8^Aozf6@_3 zyZL38Ni-8f3`%UEUH~WVw0A3OppF(qDqUe`9S-ox?eH%&$ofguCSu>6bglId)tM60 z4&J%01epghu~w0w`A*^xV^qHttzg+IdUk~z%9rPnOUh!HPcxp0K$zp7@&dfyqlzIR zDaO-TiAX$*W1AU$dy2hASc>j(wd!W^6BK(_2fk9){By1%u&6#8UV#v{i&1JcB|>?1 zJ`qz$@oYGpmeSo3FbA4&PCt?k$t3>0INkdbt~o*v6ofRS&Kp6OCv7kw;X<3v=Dn zL@w5nSJ=oURkEY};3UGWkd~lwn2RS~#CPf8l_Mu;)!C@P_GmHCEpb0-#t2mo*VS-?R@}VT!fiMU6U~EN1~2uQV~<+C4hVj+{H$u(2o7q?`-D0tx#L zOIw@f^`gH$W?0ypl8LO8X_C56Eh_a@&}6<%19x8(^iwblEe4s+qgEJC9drPOW;|T` zlaWwNO>E}BNjz~PS}2uv){&!>Mn7Dx@pF_O=qo1%<)A7p+9 zkLZ}HE}R{8SI{AGCnG!pd^N9Utl%3wD`TMUmtD;QQLYr;gOlF%mgwcu9!9;`^VR(gNrH&dId={^cH%;M`PXN)UKazX~=Bn6V`9php|5*ruC!~%FZ zFfKZMgbJS$c(kLSxX937T*G1+(5#NJ zsx`H#sk+phR=kW(*e!H3HKes%>#P5w{{eP22LCep#e;!r&C-b^40o4p6U-TMxWXVO z(X##srz03~D`D*wG#*H|Y!!Mr3ku(Z@44?&Y33YOfrxVGSfJ9p_uxkBwAjm@)a=F2od#gzhz3!_Dad%(p9@cDpDEOlzrYNeV?vv`4?xPlGSdw)Ky64Tko%xQpEX=jvM?JN|VdN=f!C(788kR+h zpiCM>$%yT_`>99w&P?MVo>L+$o!4f!tL{9P-;l|l^{^i#CBl`%mS{iGdTs!c(Cc1s z*p|#dcyg^?opmZWdNBJy?RT%L6yg->pi*oBY>6&nkGRTtf(?Z~sI2K!_&I{NL=9~E z@73jT035hiCD(G|Eo9u_p79zXG_|WCR-j;ZZXM#XLJ162#pz>PH;Mc@0HTg&cs3{Z zoZ<_5wB>=W|^zjF6`GB(mByEa;kLy5W_>?b5f|tM?H!?Tp{3x6$8DE>_tcyJ6 z1X(LhZHQZ2O`{t+Q*wUl8vJix8@I7Lw$lBkhEHlJN8gocVo~ShJBd4{MbcRAwJ*57 zSLcJjDnbpjJ2WChnkto-S-*_WP(Sh{F;(itg%9ysgG!^q341o@AI$5UQQA{h9!nnP zbvq~(F^DQj2_JUROC8A@IxSUklpkIB288-Wdgmr}Wr}M`m>Qo+aqg}>%I$B7*JQ+! z!ASk&V_EZ)T{~+qHNMzcfT84+m+AE?$N8=f0Ey^;DG7jezTJ_+q|jzp6l%Wn#u_Xx zL6ATDodOE@?t%8u@w>s;eOQH0#rh_jADeXFBfNg0_aHl&6R)j2!uQdrwy$!Fpp@u;fQ zLiZnAo~~w;pcjQwu9(Nr?*hE4r~K%S&)}TgB4y03DNmNg*hWjgGwquUH5!-)fG1?2 zy$ezRE#aC(bV*UD&eXgCizw*%Lic9ICh^VYy>|~0r-8xdfZP1`N zn{k>U&!H*Fc}@*=wTcQSnB8Ub>m77hm*c+ak;j z0G=*nT$0U-%?<*&;e9Nj*R}BXeX|6XJ{BUmFaHjeEUjxoDgpZ~I~nJJ%>y&%b#rOd zzSpXJXDAH@{vqt%pE+D!Vr5?WN^kf>N8JK!^_pzEXmo&>W4!!z^rhWqZ|{CgTG?cj zd#JM8fLblKA3>I7>htT+6!{_ldW%*J& zM{iiGYBU(30ymh^EkC%?U*I6r(jKKkwrW_Po|lRX}A| zD#Gg-A#rb=MAJ?aXd!mi9Cb!H?T+%!zH_6fePrgG*#IJT?|~@nsThPh2d41X8qT?8 z|ISnb1NO5zvE{xNPxMA|gGRttVWCXp?)P`{a4)CbzWvPaq*%hW1w!>!lQ(BbvO|Gk zdAnn70M%<0WPHy0MMAu}4Fpy#c1FYqz&8ePbyg1}tH!orpKYa8$thYasp&nGbRJ&G^OWmJe{vzD>%9);%iq;T zE1{SME1ZCwq54EnijQ37ZT#DG(p9oJt2cj?z-1O8^GFV$T(q*wZAtdFtIiI4!H?c$>vXI_4+xZGx z+>YB7lhtmZ^Ur@wudxGAp#Z<_BS+7lgZ8>(rUU?4sTxBe9kQ>)(QsShi`R)Yl)WS$ zEt6f56;rQGMw76bJ=|Lr3xM(p+BYB%3HcI8Y2>8SwD3`zmO8%oTVjae3+8iAHbm>2 z8rc?-+?^^sTQhg7m2d^_zbb^aI98H{NfbK9#1ameTQD~Rk)pYsstpTWD)v%q=z&hF zqZQWoc&UDZ>mM;vIMeMl>%qKj899*aq1@oMg@?t3@I9p^^%-6`O~xG``OCJZG&G9o z4U>ji2UBo%cKmvzQ9i%uPQ)kjC;JfCtv?48gN>>FqT9#ajv4Km`u0s!lWvI1U7q%P z_@hPDXPs_^XKvIhm8Ol>t;G71YO)pWu#NZdFw-@w3&IhBTXl|y5xJI+old1OVqI5^jNbY`}`5hREl9JoeeCbln<4 zP}pe#gHbMnhEJkB6Q07-F+W{2yJq>M{t)^0IwC57;0OGZmn7Tu@bAG9(Ri0v_#^j% zP=g`pcAgjl7#H+Hot?US(dQbjqt=yQ?!}464yY(^peEt5YZ0tL&{2zPo z?}OYM_l^p;{lXapo`zHA&cl-l1Giz<9c4dK1^Z=npM1QXN~bYXZUtSG+<<;fA3crN z5}i~oX2$D-taom0OZwm_T~JBLhU%^c19_VLxPlubiD;mjn1&{Dud-!2`>hkpyL4Sc zbDA@lPZ~Lx*Jdd+))TFc&90m(CmqQdYi38MK&?Z=E4cI?pt+H`uOuZVByfb^=VJAD zVxPm`({Kh+1rSeDyJwDS52fh$Gkki@^PYjR$(S$|>cT(7o9fTiriD8>FUa;Z7J8rj z`jG8`Rg`>xjt|{7PhLNQ@~_F;e!BZ_C(;^gT5J!Tp^E}jK2g_BEjhoEw^r!_KfEdA z?S|~dM$A54m#@$Y_n%|=gQn$8QLRr}%E89gsoG#<8YOKOl4_k9;A z!?0GgbVuBx@`p9vM+#T>-&(ADeT#|>rb?^KNRO{NsocJXoYAuz0P68!J)jB)TKj<- zOU=hIy@zs-2Hf_^IgNh}^((s<6^;&k)UkPL!q*_C)g0cr)9ly18!q=Ag+s=W%r_f; z4sVL7uP1uuZDZ9!kAo+sRS3joeGosMTw95FdhmC{Tzv6>Rn%WO*R(4b1MXzTMJicM zg`e{uz8!yGqQHTN1ulsepFX!*q`bR3&c&1!gJH^XkhSz-Xuj5J8lHnNwB@@%!b=zr^F!9KQ zZ+#z|e^zx91hR#>!yDhYt)k1S3#9;_JAAHX0tMT-6nO=QrqN?Rd-yKkw#hYY{ z+m*N>mJh)kU)Ca^J}X6fIq3v-T>^gE~2d5|n%5~D&KjLFTJa@9_U4yw$#UD&qzV=096f%w)H$GrILi7ZA0N)dZ zYs?yk|IKu)k-(U;LB)u@gH(Ph^qQ0L1g(%LrrG7;*MIl8x7-wO{hV$PILcHp*`MkC zz2WR~Dy7Usd3e>k+;Ka0a@e0g_5O91*4O-9|kp2(Kxvjx1ESxx6b3a8yGI`(BwM_Rv`eNM$Q zj??w$Gdv^b{-R`2V7XGrcX`+fNb=PChbpP@j2qWyJvvd^3m|8i$_b0wL{4+E_wZoR z)~~{(jGD?1euQjAW)~GOMZOoMzdksFlu1@I-kF6K3kSeH@_<|ba4gOZGv$@gMb-=; zGM}V;z!8O%5`p~VYaXLti6l}8Vw%UW=EnLH!RPN<#NP@h$gm2PdMc17L-XPX3gm>* zUrz5rWczzo7k+7%Cvf^Z*kIRmv)SHI)Oksg((Cd$Ztej}iXqg8cTe7V!9S!+C3Kd6SCN!P4x!N@=A-~bxV&M|?dgwK?f6urTDjTaSq#imp znk#BW%i#?x>iW2qixkuo)0wfg>&Cc@NA*6hwMRAljtq|JIpy0GU^HzsO_2rDMvLk_ zh@0ABG2%ki0%(7iH`kvJCe?3qW&@*jLte}Tz!?xAUaCBvr1e4ZaXViy#_y=sEu7Q4 z^m=HMi}4vjkcTLq++0xly#Y3^Qx`|}L;ANUFG$8%qaIJ$QGwZ*0oQ^lAGumooj8~d zqf~W=W`DtQ#P#RDSWMCvbuySm3TMw|%K1!aotiI-e`Q(m-B5pi~BT~l4AhzegwKQQmDVvNC^C)J@Hs@#WvBN(RZIwy%2W=8;$aW#V zoH<)>P@QbUA}{2raI=b?Tu-tetyK3eq7{5gEVD-J84{wA;Db(c`QN7Ty$tKm9@k4> zUHlCht_)B`<Y2-V%L zFL%Ay7kl)yNXh#pa8gqI88P;l+Pg?Xgrk`j3jW|G2mG~;q``=9`2KuAnbZV*12RC0 zdau!_wCG_#MxmR(ka&34@6Rpt6IjqP1N!(_Znos*r?ru2{B%5anW?o$ERzF;-cVuS zL|^!5xYI={1{yZc0i%YMB>o6W-H$pMyaR}=T|dCy2S>|Evjwr@EHjFF z#7B7Dzg?{p)#?OyGSlywSu~B(VXdMM}d<5 z;9xO1d+!aW^C?zUob5&mc;{>F-T|nMyZbf}YH!@HlypI%Os{;;mZp8hQoutK8PkT` zwZOBmM!W4h$v5f{3Tdn__tylKCGAf!TIjKU%(m0-1!WLoNf+EF%IJsi_jtXUq?Y3} z>-@f$;4u}Ep+l{(Faa{5B^H@u@2oR|;H=Nn`0jr7Ty4!~9@ajoklOjn)SgUP2dh+Z zQbq4_xHv4%42@gKRp~S1QYoXSS;-D?lTezn|XwK$c2@6-5d z&Shlae&cMw$u4yn)}Eqp+}P(a`2j;X{Egi4s%EPUAD&BD;wu~S3@U6=iath+Po=Op z(*oCUz+u_^+cucBa@;yH?%!U%yWXT${Y=fC9|A=SsT-}#GY65EKA<=2<5G5CpVt+i zZt~u?4Kxbmr#@n_aN~mnT7QWL<#*8RN1LMMaloyF!iTLt?00pkyy`of+rft}(vBN6 z7@Wzj9qBI~?XL3%H0T85_W=iQdnbi1uKZ7n9`SFe3)-80R*FrE#X`#+_gZT6?t)Rw zHMG(Q*}&5({gp*}E8w4Zd9zt4*{RcvFs-?K^Q!L`?pVlhmd%1ELkp{z(zTgRbea^b zE+{c>!fp=t_{(QDK0zlBM$97zRTMZGe#o>@dN)S}sYT|<7D-CdV7tPv`)xSUnWIxW z$1xM|+H{{!rEb*Jow(ILy-%~?6uArDA56iZ;`Lz&SdbU#s{H7nS|Z)>g)ybG+lNV$ zfrZDeitU?=keE@p0_ETuUl@5Ft;88aMlE>e<#S;Rx~DUZDI5R;N}HWH69+r_-E3bG*Ea#_ocA@UKl@ja+f$+D*yTKCrl&dz+rR1EDX#t(4>e zgd>;3OIl4TH;hIx87{MNAwuU6sHq%InR|GYQw=NF&KhFRIjHj5mKlmyhMwDQr>73u zSXN<$SwXkvIT?68R6rYL4{oC@8o=;)H&;Harq&#N;*%jw0ysZ5w&ciivX*J*l|Hj* zjJu)Ym@%U%MVRJMCxXGDOEn{4rVY>jC0bFz`x|4ZEF8Q~1W1vj!`J1A$Qcfm-(xtu z!Gsi0Js6CE!nlMWvY!3>^6F-ajda8_b1}W8_`Y4x$(uxdB>Rdes!uXZ??a$ItQ|)H z0E;lIdU|I1eRCPZ!<(VjybiYXeA0ZSX-ZZ0!J-)`prC*pLH(Y`Ff0_>y80mmK~JeS5(MC@g#;R1?3-xcl}lKGvEqUdegz zgGn8l5qH4cSIcnvH+=nD36J5_C1OJ-@xyCIY1UrLpLlmf%zy>Dj7IV=-JkA<)WUNk zFa#812NoTqZNv>HQE3Lm2U6_}o${14Uq97b6ZjIOeg%1)z9{+=4#K}3S*dVpwI z#pyUsaHfWkS?0sJvN5vu_L$`lvEkPmi!W=@O>D*!U4KoT_Q6^o6Ejn%u^s5p3MPn< z*j?jdb`P{Ylx{~wXMZug&{7d{Lp#jtuBQkQxjdH-3|cy}nG$oIb;MPV)*6pn=y5wp zvpD~}Cb3Of$T=R|ZA`CDF>6KuV}#Snbv=He=Nu#lpHA3PZ?f?|!+AW+&CMOO08GnO za}0zk2YW;<-^w?$9gTDPmaksBmXsyY`aJgD z_^8(8{pjtws@qRrmQwhXLK zjF^NRqao*M%xl=WvsHYBk}LPQc;9yE9fsQ)oPNu9?X8F26QyUj80EcP-)@CD_LQU7 zMA6)WKf2@W;yNtKsz72bDcpKq*V_RwcwdkTHF&CRAKCB&{|Qw-KiG2}0WN+iQQR@r zF`Pl0)Nun8YME-(l6{0ky%w(w!Acz zrdZy5;<7}9D#(Bbc81$7$Jfe>G#uw>G#if?3fPi3&UYv>+~)tGyzR5~WjaJ57YQQ& zYu6Y`Y6mhH{9D52a@ETe&%JpETi5V?TB2Q*fbeIM;Ka2fM(OifuF~~6qdR)QT}Csv z)80K~(6MuIy}3{SEKm``MjsS4MagWTIF>X!0@K!lz+HYsKYH(q6q4~ z>lrH2O+i!D{yaS>@ZZf^i3@Ht=*0B*b9?GvpD|lvPi>}d;0CgSB?W^0u|U;HdZ@r& z!9_C{ybRV%()W}n!GW#D$uH3Ny=7o@&54N6BNRImuP3kY9DZ;=ur$jDSjlJ0(2WwB zWe=6j3|PbQ)*s{zOn;FP5dxiP@GxMU=}^Tsio$Zocr3T%UPVoaQ`= z*qR;a9#`XJ+n6`%-!a6wp}~dt@ykuC+@rU9n_%{}9}_#~v1(o(e7H!FDoxWr!9FGd z>C@xeZRrFD`JtdAcJ7S=ohC5Q8`EuJj{6=0GZ3;CDz_2eS6`)T;6onGr^@=9GS*Dl z^YW4NWM<|Qbj-pT6H^JsjVa&h)o;z?Z!|B0o(1}P;qrX(#w4JyAM|yNF>IhhY3l+u z8t#ho@U4btNM)`*_eOZrn6RmQ(aoDLao}9SiK{(xBXM=Ze5(q4ejwij2uCtqf`nPq zVQk+Wh)8nEpF9rjpu&z6_E0RC6t?_6bS+QI67Cegv%Cv=tlam4tCs0Snk^NRfWgDv z4nk4A&lc*LM)M^sQy&TV&Evg&SC)FJiw_xDf}x~I-w2yuM}?0Ilhp8ZQ||HlmtymD z-rMUj*lbw&{038n{8x}LbYVIKyi$*u=%-oQeWYpj($)R+MEJ9i6a?DPeh7oRs5i(zZqYMZJ6IiKqO_LR)z;E=?t80bF4s*h z)g7#{H%*+y(^VSn6gc~Q-mwRyKX;k-)rsFeD<&-G^Ov{rM0>Cjv%kG?xOanNQ&W6Z zq*~IpX^N-_tCq=hn5y?^ksLDG-IT^_$d8;f=(`CTFQ<@Z$Ab39I!&xg%nCDQbsj*Y zL1ZkZ);}luAsX_|Ll!eFp;_Vuok@ASE5{+}XKgrjY+R8o5^NVePjvBHJl%^QTHYWg zKgSGH=B2U_jm(+eN`2P<*K*GPCFngvqACK>E05~d^)b->Mfc-ao4{4oUPrWCn z>5`axu$va?bg-Y6)4DZ#>eh?>w=?#xechhMGTJ;aWB}4wNO|Te>$Z|c+h8WdkAOGa<*rVtdk)<>K#(`Q<*k6Z}>5McxG*wGZV&rqBmnxA7&sM*3vyI1` z1$%UfOLp+R7-lxx2*z#;@tD#xJqyf*g9PC%+unPgW9X23^nX`eg zxhH*;!htkbZ6ySKStYG0QYB;|e`aRAxP8LC@0$Op+`Ki`1Q*~=eDm@zMF&{xgAeXm z03?v0LosV*&@}=6Moh^<%%YgFr&<+gmW7~XYfX01%kn$y(=MK0w1|z%)`;!p%I_Uf z6a%Eu%+&fEmA}EC6F=7W4%Ki+wvN^0TB%Fx+Z5)&O+CE(EcFeL!P#fFbWML@liemtOjUXm>S$r`AQ@yQYLrX zsA#)P%^%Rlm>OSeI)%kOKaj%l|C1UZrkw&~5dkWqS%dctCmfmDFo8nGm!2}e{f@$k zOR|flq=^$F5z-fy?&=vTvhpL|Eo+aBa8|AiVM96$1?sTBY<))O4 z2Q2YZB(5_;b>$*4Gc8TjMu;M!5aFxrI;&?wz~VG%!i^N9tg7x~Yca(RDByHj0IK-I z#BRWPHast#yT7mFwaeDFyX{ebpPj@=jz1OySA(BF0G5ETqgauS{*Z)@H@RWKV zx_(gggXbJICrh6@b}pUsf3|z5{uT+>&vA@=w*6K=*RHm4LEGyGPu={FZey>vZ1hp< zhYMV+H<>szd@F6f3m*0Cj4xc?m&|e|IN1jzo7-TK+T;sqVWBc$a@-Cd!uw1FW#7Hf zx9E%ZDQLofxc9!w$EldnXbuYUawqPPioR9O@oR41(%Cua?qmcPc0A6;#ZW2ePIo}3 zlftQ2AB=(%8I%qhZ4JfIN$16abD4dz95gqywJQ>zB!|o+y4_;uu!Y2%vpHpM^|ny0 zWa>7j=I4+FTiA}vzrK-sor+%I%7{5>fTU6R`ZG=o%IU8esn^W4e9BxpdVYO8(WqAe7_9hFI@$IiDY=*M)_jX|Gj zkY}62L?Ok6M;7~Jj(0km<1YLgAlN9MNcqP&L2<-*=NF6&jxVPeQo>TWcRXXAZWl?Jz0K z+Slg?HdVpOO1mmY{N;|wo%5q>P5yYeiI|KIdKl9KBcmv2a2R-BFimWH)wf|?E@s`{ zu~J;UEgS3Sqwb4`*8IS8<_yuQ*p>dF0jo)7BT0;C?ii8`?Z&lMU&9gW`lgG7w&qXv zN--nv$8U&?kz1PF16LiA(+tIWjBXXHfhGvYyydvT;Egd?hk|W`Nn2ac;dTTHVnDuh z1dywI50S-2&PCIlUn=)0+Tk)7Dt$Hl{k$jEWGLV+`zM@k?69(sqvBnLsfVU>dT8X1Nc5WiAF)X2(HsE#(JiPuJ9+tT*CA z`mqhw0emt_HV(|oRbIGZ-y{U;r+ANCBmoqAj+UM|t33N{4Da6N>Oc4YQTHC;Z5(I% zIA&)1VzG+_7K`3H0T7)PtYYsJMXFK~)qAxhOO`D6USh{3E>WDsc3e{IH2ab`#g1dA zU3$I5mv(7)=j3up&WQ#6cNYLj$#P=*7yIu2@W~U2rihvEo0+e_@4sJD{>8I`&l&cm zP+%y7F{sV!X!m%TUe-9ywk$^%VY!tj#czKmy=naYX_ur}H<*S$Du0c0_Prm}@8U0r z`fw#agKO}M%C~ZX+sglC_M5uk*KOn5P&0zZ>~KS{!$@L^J&gc4{9pf)EtwG(p-oFBkeZu@|RoL9sbz4|sj_$0be_gZdz0_bB@d z5;QX7d7=qJJQOs26cqnLagVkBowNGV+y7lQJk>quhF=r;#Z5QVJ33+}yp zj10Go?tM(COE}xS1n-|&KN-Tzl>VvJlY##7nI&%6+ebGJu3YOo^rJ{5(c^7+DDwot z{Kun)$SnTePSdIP;sTfUMT%Et0EQR4Jrkq_AqnW&c4Nuq=3@9pqhrpf7mco2Fooe1 z4lIDB8I+&IS|CAymBWE!e@SKrlZ0E${rU)Ne)>@1gTA?&PBeASOus}U$Ood^KArQe|0E(By@Q6aQ_owTP zqA$J9@6j8U78+O1z>gOH@<&VrQBF*?vMp!l{kcW%Ua^p0n6Ilq zja7$;DyC*}uTv$vtl|mG51y%`5$KtVF1q#NW2d^1h=C=}xw-(~9{~xXt82Pz*?YVV z5Bu9_+-@4yH{SQQ$3(Fi%Uscg)~rEy+$p$AKTXfL`U%nMkt7(2=~LUvf4+bJ7@wTt zSB+e!2jhq5)~8Dcc(=W!&SWGN-`o*wjJJ*@Av@$u&yC3XT#&?W2XnUF9j!oy%q^}7 zWl4fN?joaNp02m1D$hBZzyl}dE<3{Up`PA#-AR!pvf^2_4>Tta915Cxs~6Q)IEsZf!(EZ zYf+PO%J2o>dT~op&TFa-18Bxa?L0LvSa%IwM4RTXEVjZF=qYb_1D}tZ1AOlm=c_r#{-Pm*-MF2~u2LOu%37m;Zdw=9P~0`}@W_hHvn9a`JS}8)3?ST;9~Tw&4O<4vtzC zI{-!5XSZj$J2RP~ZzKt{;m%E$i4K-!#XZX_=P-b;golVH6`w9uIfr%NY_Q-38>>}# zL)G?wwN3#Kc|7ixfgqTkMv$MadahWbM2k^!47sSzUxdcBwv}j=JNl# zldJ8pV#OAR>G-?zws`puQe~G77T@gNLs6R=~+E92Cl+KS9wTb$kRg>tC)rB$CP-7pVYTz!En+Nr=t)c(KbArS#> zVoEYcs`kE+$8NszGtKLpV3Gq2yY0SGu}A|~fHojQ_I(B?G(!ycf3{9FFt=;%+EG@3lrZO>ys?bip7*vDEdSFy7`VjBX}G!oc}F^$;kbEW~I)>zAw^ zp33|C;L0D2O9;=w{U`33bCEQdaQAdKZ*2S&ZQwm^QzVA~#uNYpZj_pgJ{05Mfw+kd zqx zM^MZ;w76JT#2-XIBOceK=W#Qu#gdTP0-_vawIZ9(q@}Zv_bRau`kC^ai^L@mZN~HE z7qFc;ehRb(;IpJUh-o|0c+(*cPpQpcXw={nMG3&0Jffb!6Mh^qgd|dx_bQM5CtO8* zTW4RKX+38aMUAS-`N*^&S!zKQT*aQ4qXip&aG?KSY=|@rqG(gI)4@KJa!45uVLDNoWq0xfdoMO}fB$2R$1(B$%sa+?aUi4k%{aR8x zqw_QKfhulNVG+4T?J{d2Y+a?XwdT6yD&XI}eshesI^8^_G=!${EYoU4ao&ss;YSP$C*AZ>TFglFRV@7KH6^yIj=w z3&&}y`SiWPK-Y;#)Ty@H0bui1axd*@H`YabRm1+QB-*vqp;YNOtNcxMCA5Nr&Vrs=#1YmI~CqB zWS0^M3;6U-+Ucg1=Pbgi{$}g5ZjH>;zEa z^>9ZlM;D5iZx9D8(DQB(G?Nxatwq8ALV!3{$ur}XWJ(oU@oYO>!Lm7f>S~_(!)!sI z{KubeA&bc;PpoX*f*1y-nmhuzQFKh@xyJa7H!o-6>*=Rm^p(r4W=~Gcg<4#=9`kJ5 zzS7+58gCe>!;oLB%jof-V2<=lk;te!UME1OKA~@(GCI2CE^8+0flX>I2;Ts&BEFPkviYAQ#(Lu2^%v6SqkYh6N6}6rGv`$A&cK=f#5(YU zx^b-vtCd_UTXuk2d0u%@WJx_x8peX!3M&_l`C=hbO=N4}2vru2+Ek)ex;K+Rg~+Q+ zAu1QESW+H(tf-<@1p*B~@x}o|#!Va!l;F;gbR^Tt=_2&DPn3>7e(WjvhcuF{5Xu)6 z0{v_p8O<10zRnzs4f}l~TUj??;EPw4cYW4mN_PxD1I*x1#JfE1;6dUp*wd2v{OP}V zUJ8N)Kd9uE-z*9e#nvAmT&Q3 z`G%GNA(04E4!48wP+fTv$4S9@FgA@D%ipDz_E?d_i7-dnvBC~1LeB?6I35)Pz!|1V zqS;@<`OH$z4X}`$>fqHi&!OGmF#dv0Ucect_&OyGS59@!!Qny7q$3ug-Oxf)0DZ?eVuhJ97e(ikVUGP@obBceOTsUb9iJ}Swg8JU58_rhW z{YoDnyfxrYrXkviI+i;cSP$kTt+vYzjx20AMDjMd>-j>DgAW#!Q&*o#>753@K4cBs zg1#1C0@45!7*@iDF;$o-%yf?!FAR1m|9R$$UKN*7Qhe^W6SpeS)UfX2MLCU%)*7mIYjLVWy?~i)wSA@< z1WEZt&Z+7&X;-m^=LyalPN)v0C{hW`!x+~pWfo9M=p{VYz^ zC;6PSg@TIhI5kZ5EBXm02TXOOgX|e1xn?XpK+8J{TdpgJ?ser~I+xiphGEJI$uPpi zW^)NUN{r}y6{njEge>3Z^AA0LsI zS-r-AU>)qR-x@QU1xGf8^)KC-$}dA0wVC23HY4~wYVRE#mgMg8C;VH)n0YNM3W6iZ z8Jcqf=0t={E`Ju?(B_>3|7OcY8-CEE`3s|GzDWwi(-pMic?OGxBAk}2tDKoa1wiKP zlyRjAWx?`lqhAYHf@f7;E$47V$?4458dZm~YqygWzI@FwZ$pW+^LiZ1L&$QlpCDFR z`+IRdvHs-xeQ$3Da7~N9V82@AFZ-!;DsmWNf`jL~`zLJ#8*6ZTJ;vrax@Bu38DC3F zu7al#^;MZm#@Pxp4KquSA#VueNP5lW`>UF1!En>u-2Juw8OrWAkV$UEd)>I@cI!Sn5v_ zoW#3s8yI*VBdrUvbe_PgyPAtf4vF>`}8L{GM{=+7&5@=0L(=U;U+9whbSD0ALhD(|plr9NjY4M1uMrN2*}JV~wmJrBi0O zX3NeMQ0(!HH4VlI#q&rRh>$^w^jo5lF)70lfuQPnj7#=zW51k>c%aLr-XE%b2zvxS zrsJ#C?y80=T@9$p_T{Yyl`(>xSt^NL`29ED6Sp0~h%)XMt;i8<*h^#oy3^cmj4LmA|-jUl8 zxfLr&-4QJ4kZn%u5bbo7{|b3Y4j>Za0PppraceZtt{3q-{KU#f(q<=liR1U>C+Uzh z^6Q@KoPaGkJXqLNr`KbszkLeTyddOaC|IUVU^HJngqc_%qMT=}*Up>FGPn=4Zk}@-2}+b~v@47B5%= zb0}Og(rX;^^53J$|EB*1`D>AVaBNVRj_ug> zFhsuIL2L8cjc?8E=+CoXu&{D#l#7K!{L1URL07nUxS}IGLmbp}bmv>Hqe|#e0YuML z!lS@hNF`eOTE)12OOyrngwT)ngih{9jvYIYYy(br=q8+t239Ox>-FAuDf(qiIz5WZ(=&v zl#iC8F^@0f&-K4GSLjdudy4jvNXhLEwZ-&i_hLP~P1D1*y1W0EtV|7>U*)1*Xa^+K zn6EO&RPED$E7VicQ%Ps4t);npgdQ(!3U=7qynC;<7%(Bh+Soue+4I)iA+I-V4RN9^ z5NqgisKBk>g5N~NXXuatU}Q`(kvzefHOws?A}=Ed#Y5e8R`+PAQYpkMkwdtG3+kVr zAgu$7RJai1`D&zGS~rjfEHEwN`Ffzn;W`&k^Izm;%@6(S@ByX)e4S;i&E;SHcHO5~ z!o&#Fho0byJ)X2RVBWAH))S627^3aLwZp$?d!l}))w}yq85ke?M(NQH_i_?saXrhr z_&Z$nC-yLxzx;6w_e9Izd*zqagJ8(2uL%^Q32 z+q|#*zN=voL0vdE4&jI4*orZ`!Em3_!2v&B(?%Xg>gc*Ven7 z*(AiYwOb)nol|d{+K;v5P@0b#YFu#eg4jC<%!j!Jr?N25J__^%z5zBKcL1s zWn_0i%$~GQ*&s=>ys}w5Z1h2UP{12KEtsKxjCG=*lqlIMHDw(|2t-_Wi|)QfXx#Y< zvcO_6ZVe$g)R0|ZA}7zq;#MO#&1TPoag*u<7fx2uxFgy#XI?<#4!i=5JDo|(6*O+m z`ddP02QP$>a^YkQl}y(5o!^I643w9&$&MI`KsCqt&;WOZxG2EfK!~=mDF_(W>yi)< zl54INVd9e@r+fiv8 z4s24wBGbW2SR^n?STujB}x(6kO@q_T3N7 z2Ul;tf)D3$V#7w6sf1QRVa4@oXw^5Y<{v8e^vjB#@7B;f-&{=>Dw@u`PEDVuC+oc0 zwK`u-yG((7P1=Qk#+_k(6mvr%*36~=U>HTW5DKYR>b661@;heBN8O&9m;dJL@@tBR zZyOG~y&hMnJ<3XIpHoa{hnEwS;^+I%>LS$;(Y499vn>>OG!U`^v!_5id5dtYGhX_h zL$MaLW-YFBVxr-}4-Yd39{&qzW@YEw;JR<^pQ^m?UA}Fe9_@X1D4)4b@kdR%$oW6> ze5oaHnexHVL8qeKocHrz z!wUiape@InV;zbdj&{XMV7gtsuFPeZy-F@*cH{Y0IPhv04C%s(oG!#qDC>0A82etS zoyB2l^?bilM_=jQNGl=bv9@TmLpy8dS;$=fZYBN;ms*3$*)Xd;iR76d)1AaI-IVT* z%BSlVA!{r~Os|FrwX(rHC`ln7z!!X2Ulw1~iBsXh6hdm{97<{%V^*FYeNyM~w3ndL zo20MPX4gc!p{U6=5(K7-l zx(6J*#EleJoZm{a5X5jskDdN4E}IP$OHd5Mj!l6JK~H+uhXq%9$0eAnW7E>|7h`7G z*<^HtrVJsMHBoQcw;WG#O+_cJKMDwgV7zZR;nVW~#eKe&!Ewe&kd!-M!SHw{5KJ_; z*`IKMB^?|^mj5i}1b`C=2ALk1!4aIm9aC#E*HE;cW!b?PMi z55$yiweHF{h+b|w2X^|^(92B=d98e|!uT34EC#=P?U_js-n(OKMs!SgkDM>UbF(XWZ_b&l5M6ig+Etcnsd8HPzK(?Ka2& zXKiLXYsdLQu9C>w2OZmY!ZdV1jt||086s*X%jdc8Rzkv_6i+~C2`(?LaqkFpKCxqH z3CmHKMGP56K~vp~n2bfb-^GnI-ZXq)%MmF6d)?qP{7?Hpk0%zq>Tdo4ir)~L9V@Pl!(uD|Pj{ zwHgDS5-H~cuRuyaSFAx5dq7$Yl%Cec{nLC6&{`vBTLhA>5EY^eoB~6%aM`1g`eOa2TaJDN zbz%j7teCux&{HCo<+#+_)_tcgM;+{#tlvwT83rc^9J4WYX9Bp4b=LQmNI`gP`|Jas zcnT%qs&fh)H92CM91p%Fa(rd)(3>aC{Bv^Vsk&htTXv`FtqaM2v_uhBwS6`_jHt%X zJ}=X5O{SN>H8Nc^(`(6`4><76lkou(`g6fkX0U6IkWwKDV{Q|@qCI6y4I#3xDfkaR z#9`h{aqn5T-VLdg6&F1w1G!^_3AZtZVt0JuOnWr>U-Rb6AHC*>`b|^9#}=OI9Y}qu z^?bPUR8P(Nyzf$;>VNpbHyLGvQ!Ou4pJ>)l*a?7haM?(o_C%|BZB-BWdo?|5eQREq z^LT1+-pTiLZ=ySu_@Wf6czplxlV0lIQ_$Q+wOSxKwZ7dmzd_Hz?=Rwtmlp;p7d(y1 z$x~%h8}zTDpjP`#vsGf_g`xkfhLCEupyy<(X?oZDB+8KqPMS+mhs@Yrtb?;!GAiXG zM6Ce$gIJ^8hz08LHSLtcsV6C#Wf^}b#f7$8?e@a383dRutDCp75}e|FUM98rxroi# zVoWl!6_G~KiwT}~#$W=xpCD*@Fbg3{CR&;J0Pk@i3Ssp-t(iL3Q5->HV~)l~v{?Ae zZwL>*QP-&(U*O%5^7HB61&~h-YO8VrD&5#ZsK#ueInHWcSZ#{RN0fu8L9}V@K3ex^ zB_65pm{$OQ2*p$C$^kOnIOab9u1y@6ntbo{CHTx%XTsUJuc6Is0XKS^FW&}7&>(@@ z(RwGg75=Mxru=g6$I4&2exUc3doQk^D8D34O&_Hdhj!)7n=g-L{5Xgd@A?$>r%0Wc zkLmH_Z{N86iS$HKOnF2Hc5mIFJMuxQV=x#!4Eldf@J+P9V<7dO)2FWToO*dbXSXkD zXxaciLYaaX=ILsGdYQg+_~qm!_f~q;9Xb;+j{i>aQ+K?{i1g>CSH~%}aoUh9=qVoO zlhe@=LkW4+PP>VQ$dDfyYT>Y)==DnageSkm>}*=;Jav~Tw5jJt zaj8G(RUu+ySUXh)O8onY`E02L2_oo)0Jd(vFiP`EG``i>h})#L2FV~s0Ypvh0}rk^ zyp)cc2M#@wFvdLDnU0=EN9qR(ksQr66!f+wr3<`Avr7kzcXeZ!6tU|QS7{M+>yp4$ zPfuX64F64$;l4LnhUZClzDbho(LAC-s+zvESl%3If{T&|DD#1CH7C#}(6a_^UY@^I zA>I#Ac%mosT{|p)UoLSt2O6Rd=E$;kOWP)lUN@Y1 zbEN$qy+F`c+#?fV5#w#V9-k?Zo*b#KD+bhevm*C96}fM!%`v};l0RQf|Fy_^nL$*H zi=i+w)Xbrr$?Gw5e_Ph_d<{S9^=5pz{x?Us&sB0ZtuA*pX``#ud-Yfr|FW*_EG*~0 ziNgO%5dIos%lU3Umi5|~&NVof`sQ+Dq=lnpC)Wkg@*?Ykh#F@YH+%;y?zZJ5#@Ys= za^lFwuk?S-?Gy_ySArh88uQ2&^dF9>cXD03XH8&x-${M8&e}?bNZMq3YN?T@d44s; zvEKgd=E-olshM=%f7czwJ1q_1;l)>&S)*KG4a530{&V7=bgNW+*~RNM|aMUw%=Kat)WN!X8=~newWQ2lZ!RW~#&E>ZuK>Ka2moJN(C}Fmnv>SZ*#(b~TVB)0Elb3Dt4q00LJ-EOc zfw{z6tegQ8Nm?IRoSmwO- z;LL^DEz5|R#~aH__q+@HL|Aj0K%hlx?goMd+@Q%bhLk+(B3|FC=zDsTfXv8X4KNtc&M{? zXtt3k;TPZ8FI{+9qx^#X_vI%m`JC$=et$DHTR`4AT-x58Xx(VFIF38%{f=~?E0D;$ z02!&@w8v$FOFVULAHZ9dRI9ZMdpM-*q3;dt;k=2L*R_-Ke?PC)0x(>8Sj^9ajLFxy z9Td=VB;6|Yb+tfH+s_lqex}}_PAc~OZ?tBOGd@&->b zI$x0g3S~!X8(z|&Zg`ER>^mwO{=wo(jW6H-T2*_Y*1Z>QD+Sf&J(q4_KOa{1GpZt; zyy2U<(0v#Ao85P>>&E^UPb;4^(9=D#k_EG+L-9d(U-;5fHUUa`&dtVC`H9!M_h&*0 zXIzk+(R9aO};X}G%-Ex)1G*rdB%T&h4 zs*PRg1(MvVahr$qRoMYBWT5xS|(A>fNe0{ zp5vBstRCrsU2hDBERy`N$!g<-NT`aFeEP5G%kY$P_Ajk5Vnkj+iE$1ihN^l+2I-9d zEQqm1oEVFH+K7zugXbR^UEI@Fth|!wi*OxM)=QNTX6^3lq7M*1CTcc2XX!bJU5La*$x9L1;>H$w*K7Mig>Ue!z`ALCOwXB@UNHv zB*k&%5ZT`|wf*ZPmY}Q>wTzr7F1LQMBn=IPdGoSexdOy~x zODmrF$Qx&^&mPz&;ukS{kcaU0V~)z3!f|Y9qPw|-2hv&!PC!oPh4TX0X%+v zU-5ba1#>%(d)6}`xxHvta~DDL$ZvYCb3oD@vw3F)Sqb@RJ#;i8%8=BDP=Ev^=_3Q~ zdpgG=z|xtyJ>jHnj6`%9MQ}{5+7LB&pti>bZI4U;5qo@P^znvvn$jEutu;y=8j&q; zWVi4FCG1eVg~egV{GNAfdtUbs*mIR5^;NxxHza@u)j#dPC|zT+naWVA0Dh ziw7@MkD`)eSLA{|r*X9OYgys{N1m4RH|3u#4)pxF;eTO66RDvyzB1CC;7EB!aG zd;dP4B7nQJo|;P6yw*~q_6_Uw@Hjf9vulXn7E@ZS!~0*!UU5!#5?pG)B^y9u2e5cB zNbwd&BmxAj88d7e{Z;RE4)9`K`D0L+CS-(}d}*FAct@|F^A3CBZI2SI-HUwksIrD# z=tgA?slT~~^S0VtUtLJMvJf0l28$ya{!?Y@idj~hx;p<-K(ls5mVi78smV3fpLXf= zs0}@&tflqrwdBv0$KUgt!8f&)L9s*fsuGgziiA#fLYK2LgJdBp{;|ctwC#Qfss6FG zWp?AMtkshz@QOREkE-tQ^}eb*tlVj@j)417N?CJ2!a5m8;snr(dwJGd8ts_Vb(*r(KR?*U$8KIVX)_%OpV<+TU@bclB>;m z00~yFCc8X@o-1yLz%ej2(nA1KEF?dxDGh(y#5M_l@r5l{2ib zZ$lfNw`88G8=|J~sPtUFu01{ditfaPeLbe_Yw8W{>+kyzuXC4^ov;bfXL%2m)<)>< z8`8!+U&pq=pYp8YHLz8$L3?s8s$)iQ_qTbjkKkqE# z>)U-`Au*vvueD(*xCuApIp0WBEfrgyTk$~$$%g8{mBbhEcclJkC z#>UmP+Rm)SAUdw=)(uq=wdd_^4PZ?}&aF{7MHYeeRT0*5RU{6n%8?RLD^s~P5K@1O zq#0lgVg^KIR_JeST!(CUs<)wKBzh;Khn(v#4!dYd z5cr0UaU&|V!j3khx87i|8$6|>?92tU=!%ETlHAZ)@jbeAdh7+PO|hA!*UT!SA_!}9 zf#+C^7dVHXWyp9J!si}%cYktu`J)q=68TsOpc1zBJ?lTiA)nWfDgVo2lm+;q4qwj< zGWb%1lrXn6ZQlrXAK#oE@n-L%&cXYfo#5-O5Ic8#h?aP$4cfannpSSw`ns@N! zDpbL;J2j`-BEQyM05YYx(HHb6mO*u+*BT7-`*=#($Jp!MN96CK1-!;ReWe36BD(w+ z+A9%?B`|fUmOzOkQNZhWmXLTzo*vgfSz*i?jiJZ-b5?%lp z`&(Qn=c}M7d)_tWG~4+O1d+hoaK>i!^Et#@BZ3Eb=|VQ>&yY6OWO$LgVJTXHpbd+S zw3`wr&;@mGews%M@=%OQV1f86S%noZ*u!0&d1_ zXlq{)8x>sUIDJoKgxTi{2Md9##ASL%C+y@(Ryq~3q=zs9$0O@ExO#8)9$bY42{U)Q zrp*2>@R(ZGRs12l9oAYi)OvQgAAJ|QTI;P^#NSpc>hkl3Ln|q2Y!?~}iK&9cCz&Pf zM=O7mEw~m4r3>n`kn;2ByTzg79e0TP4T@{61T|!{*Y?f^BW}T}L*fK>zmU!%(c7*xTyvrzQlWBhw@g z*T5r&NU;AIUKnDTAk8)u8E$8g3HJ5F#uiU|#pkP>lUtQ@GWU--DTP-%Dd@b>>fb#n zfyznw-MJ?Po&TWxwif7mssktg*kdAB+8*5AQm|bMkAdz|ogNIrAthd)kJZn|7h2$n z8d0bZhcs_>#$u38l^1Zjao~V!+L+z`)cYjDz^e@C zxE|B%1*;3G#EH7rGoQuYNj$Gc&0wBBL}T2m`9PHh$4t5%6srAAuRwuV02EVUdtnW* zyfzqwy^}X4pUJN(80v6km&xxZIavM!VGsGo5@Q!m)a#=hGKwA&i*foy zBlI}2#!?)84&erZ!;)s%YDHzmfh;W%>mBKPA6-%Yv%w><+)&p0+uww-^{quZlybNd zL37h*_SyEv*Y4@eBZ+8lq`~jYf2}Jv(XvV9YgYSd4D6NoZMqwDPigOuUrSy3D_)yL z(`a#l@Iw9m0tvAr!D?uSlqNVv0GR`int6 zT*Kn1mR_nH1=U96`Nk-%TQt~EWUsu2{D8r{`ey07?SlfJVySq%ZsH;gwcP0VAo#fX z>jojw(bS*0V%7}a1={G}eRx0gE_pU~`tj2rp_!>HLLLzthF=}e|JuO^9dXkUymgi( zM}jA?=eF38S;RTaRyTSnh!4nX2aNJj$89i;@FGGfX#Xd`;yd@;_Saus-1M%K`CQXJ zG>W$U!kMBOHgFYbY#tkfdc9?EXkzZjK0rPAb^vak!*ipY9-#rK#Wf~>?@Xr+d-!v zLlVW=Vt}C>IL|XU%bfmn{yw=qF4B6co-@)s^te$v&KONQcXR+BwA8Pdm^52^>iUjc zxw=+Il!$$(M>nEG1KZWNq1LmeHZaTKv&q=PXKS?zM7{7A?bP5kcxuI{R{m|ah*zM( z&x+=VT>t{SK6=ZR+-3q%i4(A)fN?F|uCA^VGuK`dXLdzPe6neFx~pj&>kJsM-Hvy} zI@_eyt9ka&u&4YVmdMe1vYPARYm`DLC&verBus3qs- zUmCK;H5NRZmZBY`7kY`%B6C^8fS1kl7b}Y;Ch_KWs&yP^^Y?~&7&zfTSnjOpQ@ zEg8CM&1ZkwY6}Jfhk`jnXKAR5j?n^~_0Oyo0x4@4n`WKw%MieAd0f(L?ERvqG$p#1*!r$4d?^YQ%Lo{LS_tB`yC9oeFH zhC_kQC%?WK3k4zG2@DRq8w5YG1o|HRn8QCL0f@s@yTAXv>%#h`u;)yMKpYPXOE|Z8 zqixKBc>x!<_j|HcjH8-_WBp(PG$w<*3 zC2(8cu%J(y+Hrv(BZ0b5Sl{L<8fk}wVSbx{yJ-iG`^+h^0K;fos?!njQ(ijUJJq@} z$yo_@*{mG(DEC|Kq0HeYbZxr6N)GP-sf#jley=O%bxh7RI+prhXB%bli`Dkh`9i`Q zYoq*A)sONl%=|iZ67I)e*3IY+*LFP*$)x%%{`s>Z&Ho4G53jWJYI)y>tBrnI(xzhk zv-8bDfAi$v{&oE!YoP^Odd0upf6RZie*0kphy$H)@8 zjuPRz;EFk8FlCQoy3VB~*$_yg*4bOPZwM0v02C!Lc8ft23K)4{cWiHL>wa^*=uSP{Xu$-t(QmRg z#@m=>nXR^^PF|RtWTR$M2--eY{-Zq%a6&II=tQd19#(Htq^EkDm}%`csXT^D%KwJ? ziT77$V;0#*t$nEGAuB#%)>Ls})bM^03!4h4y3pHQsD9U9dGITq(%C#YYNJ4ZTngiE zkJveku_ea?`(r^d(KL%%70YHi*0OtQlJ2A1;+A@I6g!F5?~WT;gMk-K%DW81YXhbF zm58KJfB~3b<=Sl#gXq7FogK%Y4EivG$>l!f&RuwE3&S%Fwy+P8xEP1!)x0Fxn%o|u z@w*ul5|BAsKjdP3MJdO+R)nY5TE@4=8(DK_wu42;p*MtDCT6lv#z!&3Tz9kLW7lCn zMTdy1b-s#q{M+SFbZ7~5yAfUfcgANSrHNMak_Oqpb{+UIME=1sTie`r+}1$iUzhdP zwmL&18sXR8;tzQuLuw$cOX6K9OMG1CIh(!Wyl;7S*po`t-I3@JCr8#U)#q3VyCAXi zh?H#dq>27?k24aaeRQmUMaSBDUWo@+ZIt6abtVk=p$;Wxa4vpB7e2+3sTt~ycD~fv zvJmu%aZpzxo?kOV|^gY|Z{ z`6!n+L!@tVJ7|d(oyz*xp6-G_)jg*R%`7DjcVCfLc&b3_K(-huU!Shey z2eByeC9ON*H5E%VfXZkH`}GBpD~>?tzI`YQosbhEcVLEiaCZ4dzwe=YAZa0P6KuTe zqcg)4SU*QE@ez8yaUX!rkrfkz1gU*?C${?FNZR8~9|&S^jyFb=tEb z3E=O-@wQy(=er%KXdZ53TzV!0zN$C9soX*T|NY%T&`ZSNR$W;A-9FV*uVgep?aGW^~4=a9Gm3KFg&7?_xfCnLeh5AuSXVf)RaQ#&; zOAUlo{17b)*N%*8CoIfy=YtmkgVAyOugd|a=ZEEM?wyL20ooKL>rX!tX6xj{2oq~G zgHikD%W&BS!=HHJs$=iI;a{4*v(s#XO$fQyI01$bg<&+P16Oi!T(1P3N+3j1fM!Tm zBm|Y`8f$XhVkiSA z`_^R0Co+2tbs3x0qhC`$Gf~QQiUI8%L4Sf@CBCfX=&R{U6=K9+HQH5Hh6QZ%f@)Cw zi$V<5h|LcJTi{pub-<7$ku7X?Bh=>MB}9q>H`t&!m^cN1!Gb_+EbCvlVtJ1wv!nT3 z$O&*85tR4x_N*h=EhogfMpvKmb0eb|Z+Biq@)&7!g+Q#U9r%tfD;&J@`UbprB)&Gw zvU-P8s^sXC*chr)_95$XHQbbQB`sU3QVY*3w_%>^C5!6B1ILC}whaWOM&844ax`B4 zwmdhP-egOpMvi+JgBf5TZBBSX2;eVrW`s@LbmykjlF^>nwRT`kbfs1XPfa=7_3=2z zF1^xM&$!L4mco){8rR43#H^etpk?&0X-T9IUt&zV@74|&a1uSP`} z%2$j|Rbc9vpk%H_ZfaTCWDFYIt?dNO4s^<3&zL|%V~XO)3t4nO3d>4ZKp791*bu%$ zLQA^Q)RvR7UvA0RY{ejlL=p07LNE(H0VgR}+KKCF3q=muMX{Y~lZl(9eAt0EnmIk0 z_i~1Pon|Xxz90vHGe9B?SKH2XE#On|7w9KiUOQc5V-L*FkJp}Om z9>l-eW;r^!p&4G2*cIeCcw&#?CWboBkXuS>?y6nK;5&6M>r6Vg%3Kzzo_7sSO&hc) ztH^2EZ(j&mtM&xnnMjADC5E--r&tKfroCI*JW@7y`s;o%dc6Z&o4+e(p&ecM_eZt8l2(mriq|*_)ppIm&BSv)*-AUd3x{vEVtNU^74$3w5 z`9-Y`i%7Y!YBYo|j!`RwJZD9swSTWNl~w?6d0?)w+SXSwZo`4B*0f%Qj#C0uf1w6~ zTa7i;Uq%ip)2|R|fghB3~6xh2vQ4!!t4GS=QOyI-;lV*taxfDpJAT*K*`9N`-wxZ;pCIy;l1qNP>o zD8)<0e5C*We=(D5)@Gb$^yQUHr%ye5B;WLT-YR?7{WWxDYTPbgJ$NN%BK<+od||i) zLcfs4@NtYX1?jF67Vx{t2mqu3SuWl->ktNq+S2W*w_6O}2xqoOz?vl5Gw3hf{L-ln z`G9?EE+;32PwS~WgORLgSiaYAe`@fOK%lf*UWH9!p(h#x{*mF!uL|oiJJ5T@o>s4b zfh@FICD&h1c46o-n;<4In)0|OI5R;x>+1%h-oXSPm8Lo!0b8zPIy||OH&c8!dQ5C; zYw9@G_42*6fTO$|LyFVDdwJwm!n#0PP`Oj1z=&30J1TZt9cHK!cj|Hr(8g+XwPK*$ zkvOs34_@k7rSEuRrrTApe&cblYc;x-a+*fTIq<@|2DbU$!NDW|oekQ1*ra;|K7-XM zH|rdm9a_YptYy*QGo$7;S6sA`*x|bZFn9h~tn-(6+sfT$%Z(YhHQi|FShcZ#Yu>r$ zbK6dFZT$v=#b^nPiSo2d`PJp$oVg0ST6uRDJ_jRpC@@b^3N)G#t)g;uf^OjJ%71+9 z^u3*141rQnykQzp8}3xD&-;QViRD%`V*d*|5}QT6il3XU*w+fMXpX?c=MvA>vY(a^s^qJ)azhrIO{cmE;s61uKa?## zoRLbq^0!jfahvNpeb6R(Oi_C4K>6dxNSkvkKTH~ytUVsK$p`{owwdylq-*kI^MjG5 zoy*Ahs570I~G^%}7mUhE5Jo4}inH zQ#V+XJx$vBq%&>I7W^^IgIWZ1t$pD&*f}l2uDqT=rESzQU78EUY#DuY-FwE$KbBkM zge5b4P3iG7y3Qwm6%h9mZ2Y7l7HJ%6ED<*Y2j~L3n^3x*!gur>t)FUqiVq{bGaXo( zzT(N;ZBMrG*^QrcZl~n&)^;ojD1f|=8-+^E#-@9W455gk<^IJv-M|8zeWhMgxkQ?G zhb>T6sb7)&LQAExey#UJz1o%UsX;m!ni9N@?koD<|KaEg%V3kBPnEd;Sw523W$y%7 z%F9VDr5G4Vs=TYi}kO!^-MFr2O~#r`|IQ5zNY2gxTpDJ;Er?` zVntuBl?zarpv{9%En7OeuA4LaJMZkNW81up!@BJwJA4w4F?K?7g`@%k;Z&yJ5CnZl zo9hB+q%w)!M0}{yBU>w_DE8G<`&iPffutmEU3I+yfwcODHB z{M+9y^{r*LjRpJ`48TV-$@e^va!u*i3?>?y0fr}iorYPxL^~YiUxp3q(n37Uj|$Dj zVlM0&nPBYzw3WiBC7G-6+*))d_&Zcygyc{=fb-Ldm5pemrizOe&L{yh547OFSO_of zKvayIRPC2hzoY&G_`8$5Cpu*ieD$R(c#kI-!$#d zFp^JJ!n$Q&9B32IX-?aX{pGf$ zGt++Xm+n>iz7NFr+nbmlKTe0)o}ClL9h@J>_Z{40%Iy5%&y$k}!0}b^T2ZhMkQ>3j ztjil3?+xv(gP^-ueo-1n0*;Y3(r7#;*+f^^VAj^ysAJG5cC*f<#$lQ^bQRm41ZSIe z&4I*feyFda01Fx&aZi;Wq_+E(g4Xg+#JFPbt^IXo>82osk?YH|w_eE7_{(5F@_7(p z3m`04FgKU~x~ak1^2@IpI{G=z%1chK$vSN**-zivFAmS@eLm2`&}3c3j;+HY=nloF z&MxM8kmeJMHR^J;%v|AoRIj#H+EJf7EHdsK$=)^;VSR(ecYK23etnURgHeRmA|&1U z^-}p;6Ryb7sV&uw@^p0_1RntE)l}kX1na5#*mXm~m zpnjRJbrK_o_6$fJ1}cPaGT#K2#0-Lpf{M&H|EPm70|Nk6f?aob+GAj3U|;~^gQs4l z$Mf5KW#Hyu0D(&}@*iOI-|xR4a<{QP1ghg;U;>E(0D=t;UH|}i+GAj3U|@UrdnW?} z*T=u#|CDmKF#tu70V6X2zd#3*0001Z+HF%?NK{c2UH3fhovaVh6hxLwJ_4)|OhaFa8jOW<+cM3T7|wlT;vrLav6zf}jX zb&>q9c=jmVx)**|8@2aRd&v1|+GuoTQb#VfM9-R2@Tzlzten5d-%se9qh+e*D0=6X(iPoNb?{3%xyixvK6!$(vjhdAf96v( zkB%Uhz4V)pGg%$eO|Pq|vBODV?|Eek66HPKyTCc*Io27!0QKz7^#A~P+GAi~5J7=4 z3=0^iFoiIyF<)W+$KuA)#qx{QjkSPv9_tp?H*9TeTiBi0UvZ>yeB#{3rN{MyJB@n| z_Z=QNo+6%Yyb8P*_{#V@1SA9lgrtP-33rLeiMWW&6IBqMAf_j_M?66Mp2Qi+J}Eh= z8PY1!OJss%&dD0dZj%#}3y|9)_eS19K2Cm>f{H?uB9mf*;vJ=Aq=Bp_r`$c<2=(3&uXuzBGu;RWIEBFZA3 zL|R4eijs(`iTV&77X2e8E0!zPEOt+vMZ8n|y@Y9rMv3c^Vv=qp=Or&mzLvt0qL7l3 zvLNMNsum6yk=mBJCG}mJOIk_Vth6KP8tE13$1*rF$}$#YJj-~NrI6*9)s(d>Yge{L zc2)M4>{B^1IWuzp<(B2X%CpJq$-9&H3IO00v>^Zh0RR920|4Iu2LJ#7000623;+fI z761SN#sB~S0001Z+KrGuO9Md=#eeHXiI7q(thP)cdWu3kL{P$6B~1!zgE0m}qRE}0 zpTf$|!+~v?Pd%JDP)pq z@G2)f8(w3Bnc-Jyz6`&S@@@E?s;e9Rpytv!{!G|%$DGq+q?m9?p?Za<%cFA6STBWg zKfc~^6Lp>gb~L{!Zp1*`kTa=<>iz9$#oCYh?2pnfw9DC3<$|dkO#k7*vqyv77)LtG zJYDG4<=Q5Nj?mem)ZOcc$2_P8KE$E?raGB6G{o!+2liG|dfH!TLn#NP{N;<89qz>p z#81NRAE1v$L;wJI+HK5Pl+JY=2Jp{sFf+zJc9IZM(fht*EJYd1pe%_}whYG1lw~re zqNI&b_T{QNcG;K8mUK?mgz8k*_Ju;_qTJTx{dd=M&iDH{=ec;KxSqcUs^xzY%9UM8 z*$>J|3FVbnL8>(AD#}nvWmQyFO?5S7s#&&DTOD=PQ(prO-Jp>hHFlFGnrh}|&9%_d zEn2zNZEn|E8+V9_OUTkzwszX=@Cm)`DmpFaBPr@#9R z@PL5^dC)@!d)Om}7;2c|MtIanc{W+)Wiz~QnP1E_&#T_B-s(`n9Ot}baYzkm=9=Z3 zknT+z{N+#AthCujj@V+9(H0ovWBHCc<`c)AaMG{F`rM~JvsHns7CPk%Un+FjZ)ST; zk;jcU&IHR%^n_xQlqfaXlb&+P)25o@8Phy#w-u&)&huVy#qahy?FT>FX1kyK>^&D; zwALBlJMSxB`_5V4hKeC0R0@?tl~6TQ3)Mr7kQr)*TA_BRV~4lxw97&7c-J8>`p_#j zhPn>h?*scnJ+FDo9}ZY!k=Ly=-x5ph3H4J8#!V?Mj3-H?l@#ZV&TkV-E1ggji{*4r z+BFfG71{A$6R}t0IVc5b(S0PTXNtN;K20ai9|Z~y>oCHyo1 literal 0 HcmV?d00001 diff --git a/static/editor.md/lib/sequence/danielbd.woff2 b/static/editor.md/lib/sequence/danielbd.woff2 new file mode 100755 index 0000000000000000000000000000000000000000..15ceb491207c9c121ba13eea5e90660736dace54 GIT binary patch literal 33744 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 Q{Ur+Hq1OSBLserF0Qp^#ga7~l literal 0 HcmV?d00001 diff --git a/static/editor.md/lib/sequence/sequence-diagram-min.css b/static/editor.md/lib/sequence/sequence-diagram-min.css new file mode 100755 index 00000000..7f9e2912 --- /dev/null +++ b/static/editor.md/lib/sequence/sequence-diagram-min.css @@ -0,0 +1,6 @@ +/** js sequence diagrams + * https://bramp.github.io/js-sequence-diagrams/ + * (c) 2012-2017 Andrew Brampton (bramp.net) + * Simplified BSD license. + */ +@font-face{font-family:'danielbd';src:url(danielbd.woff2) format('woff2'),url(danielbd.woff) format('woff');font-weight:normal;font-style:normal} \ No newline at end of file diff --git a/static/editor.md/lib/sequence/sequence-diagram-min.js b/static/editor.md/lib/sequence/sequence-diagram-min.js new file mode 100755 index 00000000..2903d8e5 --- /dev/null +++ b/static/editor.md/lib/sequence/sequence-diagram-min.js @@ -0,0 +1,9 @@ +/** js sequence diagrams 2.0.1 + * https://bramp.github.io/js-sequence-diagrams/ + * (c) 2012-2017 Andrew Brampton (bramp.net) + * @license Simplified BSD license. + */ +!function(){"use strict";function Diagram(){this.title=void 0,this.actors=[],this.signals=[]}function ParseError(message,hash){_.extend(this,hash),this.name="ParseError",this.message=message||""}function AssertException(message){this.message=message}function assert(exp,message){if(!exp)throw new AssertException(message)}function registerTheme(name,theme){Diagram.themes[name]=theme}function getCenterX(box){return box.x+box.width/2}function getCenterY(box){return box.y+box.height/2}function clamp(x,min,max){return xmax?max:x}function wobble(x1,y1,x2,y2){assert(_.all([x1,x2,y1,y2],_.isFinite),"x1,x2,y1,y2 must be numeric");var factor=Math.sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1))/25,r1=clamp(Math.random(),.2,.8),r2=clamp(Math.random(),.2,.8),xfactor=Math.random()>.5?factor:-factor,yfactor=Math.random()>.5?factor:-factor,p1={x:(x2-x1)*r1+x1+xfactor,y:(y2-y1)*r1+y1+yfactor},p2={x:(x2-x1)*r2+x1-xfactor,y:(y2-y1)*r2+y1-yfactor};return"C"+p1.x.toFixed(1)+","+p1.y.toFixed(1)+" "+p2.x.toFixed(1)+","+p2.y.toFixed(1)+" "+x2.toFixed(1)+","+y2.toFixed(1)}function handRect(x,y,w,h){return assert(_.all([x,y,w,h],_.isFinite),"x, y, w, h must be numeric"),"M"+x+","+y+wobble(x,y,x+w,y)+wobble(x+w,y,x+w,y+h)+wobble(x+w,y+h,x,y+h)+wobble(x,y+h,x,y)}function handLine(x1,y1,x2,y2){return assert(_.all([x1,x2,y1,y2],_.isFinite),"x1,x2,y1,y2 must be numeric"),"M"+x1.toFixed(1)+","+y1.toFixed(1)+wobble(x1,y1,x2,y2)}Diagram.prototype.getActor=function(alias,name){alias=alias.trim();var i,actors=this.actors;for(i in actors)if(actors[i].alias==alias)return actors[i];return i=actors.push(new Diagram.Actor(alias,name||alias,actors.length)),actors[i-1]},Diagram.prototype.getActorWithAlias=function(input){input=input.trim();var alias,name,s=/([\s\S]+) as (\S+)$/im.exec(input);return s?(name=s[1].trim(),alias=s[2].trim()):name=alias=input,this.getActor(alias,name)},Diagram.prototype.setTitle=function(title){this.title=title},Diagram.prototype.addSignal=function(signal){this.signals.push(signal)},Diagram.Actor=function(alias,name,index){this.alias=alias,this.name=name,this.index=index},Diagram.Signal=function(actorA,signaltype,actorB,message){this.type="Signal",this.actorA=actorA,this.actorB=actorB,this.linetype=3&signaltype,this.arrowtype=signaltype>>2&3,this.message=message},Diagram.Signal.prototype.isSelf=function(){return this.actorA.index==this.actorB.index},Diagram.Note=function(actor,placement,message){if(this.type="Note",this.actor=actor,this.placement=placement,this.message=message,this.hasManyActors()&&actor[0]==actor[1])throw new Error("Note should be over two different actors")},Diagram.Note.prototype.hasManyActors=function(){return _.isArray(this.actor)},Diagram.unescape=function(s){return s.trim().replace(/^"(.*)"$/m,"$1").replace(/\\n/gm,"\n")},Diagram.LINETYPE={SOLID:0,DOTTED:1},Diagram.ARROWTYPE={FILLED:0,OPEN:1},Diagram.PLACEMENT={LEFTOF:0,RIGHTOF:1,OVER:2},"function"!=typeof Object.getPrototypeOf&&("object"==typeof"test".__proto__?Object.getPrototypeOf=function(object){return object.__proto__}:Object.getPrototypeOf=function(object){return object.constructor.prototype});var parser=function(){function Parser(){this.yy={}}var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[5,8,9,13,15,24],$V1=[1,13],$V2=[1,17],$V3=[24,29,30],parser={trace:function(){},yy:{},symbols_:{error:2,start:3,document:4,EOF:5,line:6,statement:7,NL:8,participant:9,actor_alias:10,signal:11,note_statement:12,title:13,message:14,note:15,placement:16,actor:17,over:18,actor_pair:19,",":20,left_of:21,right_of:22,signaltype:23,ACTOR:24,linetype:25,arrowtype:26,LINE:27,DOTLINE:28,ARROW:29,OPENARROW:30,MESSAGE:31,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",8:"NL",9:"participant",13:"title",15:"note",18:"over",20:",",21:"left_of",22:"right_of",24:"ACTOR",27:"LINE",28:"DOTLINE",29:"ARROW",30:"OPENARROW",31:"MESSAGE"},productions_:[0,[3,2],[4,0],[4,2],[6,1],[6,1],[7,2],[7,1],[7,1],[7,2],[12,4],[12,4],[19,1],[19,3],[16,1],[16,1],[11,4],[17,1],[10,1],[23,2],[23,1],[25,1],[25,1],[26,1],[26,1],[14,1]],performAction:function(yytext,yyleng,yylineno,yy,yystate,$$,_$){var $0=$$.length-1;switch(yystate){case 1:return yy.parser.yy;case 4:break;case 6:$$[$0];break;case 7:case 8:yy.parser.yy.addSignal($$[$0]);break;case 9:yy.parser.yy.setTitle($$[$0]);break;case 10:this.$=new Diagram.Note($$[$0-1],$$[$0-2],$$[$0]);break;case 11:this.$=new Diagram.Note($$[$0-1],Diagram.PLACEMENT.OVER,$$[$0]);break;case 12:case 20:this.$=$$[$0];break;case 13:this.$=[$$[$0-2],$$[$0]];break;case 14:this.$=Diagram.PLACEMENT.LEFTOF;break;case 15:this.$=Diagram.PLACEMENT.RIGHTOF;break;case 16:this.$=new Diagram.Signal($$[$0-3],$$[$0-2],$$[$0-1],$$[$0]);break;case 17:this.$=yy.parser.yy.getActor(Diagram.unescape($$[$0]));break;case 18:this.$=yy.parser.yy.getActorWithAlias(Diagram.unescape($$[$0]));break;case 19:this.$=$$[$0-1]|$$[$0]<<2;break;case 21:this.$=Diagram.LINETYPE.SOLID;break;case 22:this.$=Diagram.LINETYPE.DOTTED;break;case 23:this.$=Diagram.ARROWTYPE.FILLED;break;case 24:this.$=Diagram.ARROWTYPE.OPEN;break;case 25:this.$=Diagram.unescape($$[$0].substring(1))}},table:[o($V0,[2,2],{3:1,4:2}),{1:[3]},{5:[1,3],6:4,7:5,8:[1,6],9:[1,7],11:8,12:9,13:[1,10],15:[1,12],17:11,24:$V1},{1:[2,1]},o($V0,[2,3]),o($V0,[2,4]),o($V0,[2,5]),{10:14,24:[1,15]},o($V0,[2,7]),o($V0,[2,8]),{14:16,31:$V2},{23:18,25:19,27:[1,20],28:[1,21]},{16:22,18:[1,23],21:[1,24],22:[1,25]},o([20,27,28,31],[2,17]),o($V0,[2,6]),o($V0,[2,18]),o($V0,[2,9]),o($V0,[2,25]),{17:26,24:$V1},{24:[2,20],26:27,29:[1,28],30:[1,29]},o($V3,[2,21]),o($V3,[2,22]),{17:30,24:$V1},{17:32,19:31,24:$V1},{24:[2,14]},{24:[2,15]},{14:33,31:$V2},{24:[2,19]},{24:[2,23]},{24:[2,24]},{14:34,31:$V2},{14:35,31:$V2},{20:[1,36],31:[2,12]},o($V0,[2,16]),o($V0,[2,10]),o($V0,[2,11]),{17:37,24:$V1},{31:[2,13]}],defaultActions:{3:[2,1],24:[2,14],25:[2,15],27:[2,19],28:[2,23],29:[2,24],37:[2,13]},parseError:function(str,hash){if(!hash.recoverable)throw new Error(str);this.trace(str)},parse:function(input){function lex(){var token;return token=lexer.lex()||EOF,"number"!=typeof token&&(token=self.symbols_[token]||token),token}var self=this,stack=[0],vstack=[null],lstack=[],table=this.table,yytext="",yylineno=0,yyleng=0,recovering=0,TERROR=2,EOF=1,args=lstack.slice.call(arguments,1),lexer=Object.create(this.lexer),sharedState={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(sharedState.yy[k]=this.yy[k]);lexer.setInput(input,sharedState.yy),sharedState.yy.lexer=lexer,sharedState.yy.parser=this,"undefined"==typeof lexer.yylloc&&(lexer.yylloc={});var yyloc=lexer.yylloc;lstack.push(yyloc);var ranges=lexer.options&&lexer.options.ranges;"function"==typeof sharedState.yy.parseError?this.parseError=sharedState.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var symbol,preErrorSymbol,state,action,r,p,len,newState,expected,yyval={};;){if(state=stack[stack.length-1],this.defaultActions[state]?action=this.defaultActions[state]:(null!==symbol&&"undefined"!=typeof symbol||(symbol=lex()),action=table[state]&&table[state][symbol]),"undefined"==typeof action||!action.length||!action[0]){var errStr="";expected=[];for(p in table[state])this.terminals_[p]&&p>TERROR&&expected.push("'"+this.terminals_[p]+"'");errStr=lexer.showPosition?"Parse error on line "+(yylineno+1)+":\n"+lexer.showPosition()+"\nExpecting "+expected.join(", ")+", got '"+(this.terminals_[symbol]||symbol)+"'":"Parse error on line "+(yylineno+1)+": Unexpected "+(symbol==EOF?"end of input":"'"+(this.terminals_[symbol]||symbol)+"'"),this.parseError(errStr,{text:lexer.match,token:this.terminals_[symbol]||symbol,line:lexer.yylineno,loc:yyloc,expected:expected})}if(action[0]instanceof Array&&action.length>1)throw new Error("Parse Error: multiple actions possible at state: "+state+", token: "+symbol);switch(action[0]){case 1:stack.push(symbol),vstack.push(lexer.yytext),lstack.push(lexer.yylloc),stack.push(action[1]),symbol=null,preErrorSymbol?(symbol=preErrorSymbol,preErrorSymbol=null):(yyleng=lexer.yyleng,yytext=lexer.yytext,yylineno=lexer.yylineno,yyloc=lexer.yylloc,recovering>0&&recovering--);break;case 2:if(len=this.productions_[action[1]][1],yyval.$=vstack[vstack.length-len],yyval._$={first_line:lstack[lstack.length-(len||1)].first_line,last_line:lstack[lstack.length-1].last_line,first_column:lstack[lstack.length-(len||1)].first_column,last_column:lstack[lstack.length-1].last_column},ranges&&(yyval._$.range=[lstack[lstack.length-(len||1)].range[0],lstack[lstack.length-1].range[1]]),r=this.performAction.apply(yyval,[yytext,yyleng,yylineno,sharedState.yy,action[1],vstack,lstack].concat(args)),"undefined"!=typeof r)return r;len&&(stack=stack.slice(0,-1*len*2),vstack=vstack.slice(0,-1*len),lstack=lstack.slice(0,-1*len)),stack.push(this.productions_[action[1]][0]),vstack.push(yyval.$),lstack.push(yyval._$),newState=table[stack[stack.length-2]][stack[stack.length-1]],stack.push(newState);break;case 3:return!0}}return!0}},lexer=function(){var lexer={EOF:1,parseError:function(str,hash){if(!this.yy.parser)throw new Error(str);this.yy.parser.parseError(str,hash)},setInput:function(input,yy){return this.yy=yy||this.yy||{},this._input=input,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ch=this._input[0];this.yytext+=ch,this.yyleng++,this.offset++,this.match+=ch,this.matched+=ch;var lines=ch.match(/(?:\r\n?|\n).*/g);return lines?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ch},unput:function(ch){var len=ch.length,lines=ch.split(/(?:\r\n?|\n)/g);this._input=ch+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-len),this.offset-=len;var oldLines=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),lines.length-1&&(this.yylineno-=lines.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:lines?(lines.length===oldLines.length?this.yylloc.first_column:0)+oldLines[oldLines.length-lines.length].length-lines[0].length:this.yylloc.first_column-len},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-len]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var past=this.matched.substr(0,this.matched.length-this.match.length);return(past.length>20?"...":"")+past.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var next=this.match;return next.length<20&&(next+=this._input.substr(0,20-next.length)),(next.substr(0,20)+(next.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var pre=this.pastInput(),c=new Array(pre.length+1).join("-");return pre+this.upcomingInput()+"\n"+c+"^"},test_match:function(match,indexed_rule){var token,lines,backup;if(this.options.backtrack_lexer&&(backup={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(backup.yylloc.range=this.yylloc.range.slice(0))),lines=match[0].match(/(?:\r\n?|\n).*/g),lines&&(this.yylineno+=lines.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:lines?lines[lines.length-1].length-lines[lines.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+match[0].length},this.yytext+=match[0],this.match+=match[0],this.matches=match,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(match[0].length),this.matched+=match[0],token=this.performAction.call(this,this.yy,this,indexed_rule,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),token)return token;if(this._backtrack){for(var k in backup)this[k]=backup[k];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var token,match,tempMatch,index;this._more||(this.yytext="",this.match="");for(var rules=this._currentRules(),i=0;imatch[0].length)){if(match=tempMatch,index=i,this.options.backtrack_lexer){if(token=this.test_match(tempMatch,rules[i]),token!==!1)return token;if(this._backtrack){match=!1;continue}return!1}if(!this.options.flex)break}return match?(token=this.test_match(match,rules[index]),token!==!1&&token):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var r=this.next();return r?r:this.lex()},begin:function(condition){this.conditionStack.push(condition)},popState:function(){var n=this.conditionStack.length-1;return n>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(n){return n=this.conditionStack.length-1-Math.abs(n||0),n>=0?this.conditionStack[n]:"INITIAL"},pushState:function(condition){this.begin(condition)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(yy,yy_,$avoiding_name_collisions,YY_START){switch($avoiding_name_collisions){case 0:return 8;case 1:break;case 2:break;case 3:return 9;case 4:return 21;case 5:return 22;case 6:return 18;case 7:return 15;case 8:return 13;case 9:return 20;case 10:return 24;case 11:return 24;case 12:return 28;case 13:return 27;case 14:return 30;case 15:return 29;case 16:return 31;case 17:return 5;case 18:return"INVALID"}},rules:[/^(?:[\r\n]+)/i,/^(?:\s+)/i,/^(?:#[^\r\n]*)/i,/^(?:participant\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:title\b)/i,/^(?:,)/i,/^(?:[^\->:,\r\n"]+)/i,/^(?:"[^"]+")/i,/^(?:--)/i,/^(?:-)/i,/^(?:>>)/i,/^(?:>)/i,/^(?:[^\r\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18],inclusive:!0}}};return lexer}();return parser.lexer=lexer,Parser.prototype=parser,parser.Parser=Parser,new Parser}();"undefined"!=typeof require&&"undefined"!=typeof exports&&(exports.parser=parser,exports.Parser=parser.Parser,exports.parse=function(){return parser.parse.apply(parser,arguments)},exports.main=function(args){args[1]||(console.log("Usage: "+args[0]+" FILE"),process.exit(1));var source=require("fs").readFileSync(require("path").normalize(args[1]),"utf8");return exports.parser.parse(source)},"undefined"!=typeof module&&require.main===module&&exports.main(process.argv.slice(1))),ParseError.prototype=new Error,Diagram.ParseError=ParseError,Diagram.parse=function(input){parser.yy=new Diagram,parser.yy.parseError=function(message,hash){throw new ParseError(message,hash)};var diagram=parser.parse(input);return delete diagram.parseError,diagram};var DIAGRAM_MARGIN=10,ACTOR_MARGIN=10,ACTOR_PADDING=10,SIGNAL_MARGIN=5,SIGNAL_PADDING=5,NOTE_MARGIN=10,NOTE_PADDING=5,NOTE_OVERLAP=15,TITLE_MARGIN=0,TITLE_PADDING=5,SELF_SIGNAL_WIDTH=20,PLACEMENT=Diagram.PLACEMENT,LINETYPE=Diagram.LINETYPE,ARROWTYPE=Diagram.ARROWTYPE,ALIGN_LEFT=0,ALIGN_CENTER=1;AssertException.prototype.toString=function(){return"AssertException: "+this.message},String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")}),Diagram.themes={};var BaseTheme=function(diagram,options){this.init(diagram,options)};if(_.extend(BaseTheme.prototype,{init:function(diagram,options){this.diagram=diagram,this.actorsHeight_=0,this.signalsHeight_=0,this.title_=void 0},setupPaper:function(container){},draw:function(container){this.setupPaper(container),this.layout();var titleHeight=this.title_?this.title_.height:0,y=DIAGRAM_MARGIN+titleHeight;this.drawTitle(),this.drawActors(y),this.drawSignals(y+this.actorsHeight_)},layout:function(){function actorEnsureDistance(a,b,d){assert(a=actors.length?(a=actors[a],a.paddingRight=Math.max(d,a.paddingRight)):(a=actors[a],a.distances[b]=Math.max(d,a.distances[b]?a.distances[b]:0))}var diagram=this.diagram,font=this.font_,actors=diagram.actors,signals=diagram.signals;if(diagram.width=0,diagram.height=0,diagram.title){var title=this.title_={},bb=this.textBBox(diagram.title,font);title.textBB=bb,title.message=diagram.title,title.width=bb.width+2*(TITLE_PADDING+TITLE_MARGIN),title.height=bb.height+2*(TITLE_PADDING+TITLE_MARGIN),title.x=DIAGRAM_MARGIN,title.y=DIAGRAM_MARGIN,diagram.width+=title.width,diagram.height+=title.height}_.each(actors,function(a){var bb=this.textBBox(a.name,font);a.textBB=bb,a.x=0,a.y=0,a.width=bb.width+2*(ACTOR_PADDING+ACTOR_MARGIN),a.height=bb.height+2*(ACTOR_PADDING+ACTOR_MARGIN),a.distances=[],a.paddingRight=0,this.actorsHeight_=Math.max(a.height,this.actorsHeight_)},this),_.each(signals,function(s){var a,b,bb=this.textBBox(s.message,font);s.textBB=bb,s.width=bb.width,s.height=bb.height;var extraWidth=0;if("Signal"==s.type)s.width+=2*(SIGNAL_MARGIN+SIGNAL_PADDING),s.height+=2*(SIGNAL_MARGIN+SIGNAL_PADDING),s.isSelf()?(a=s.actorA.index,b=a+1,s.width+=SELF_SIGNAL_WIDTH):(a=Math.min(s.actorA.index,s.actorB.index),b=Math.max(s.actorA.index,s.actorB.index));else{if("Note"!=s.type)throw new Error("Unhandled signal type:"+s.type);if(s.width+=2*(NOTE_MARGIN+NOTE_PADDING),s.height+=2*(NOTE_MARGIN+NOTE_PADDING),extraWidth=2*ACTOR_MARGIN,s.placement==PLACEMENT.LEFTOF)b=s.actor.index,a=b-1;else if(s.placement==PLACEMENT.RIGHTOF)a=s.actor.index,b=a+1;else if(s.placement==PLACEMENT.OVER&&s.hasManyActors())a=Math.min(s.actor[0].index,s.actor[1].index),b=Math.max(s.actor[0].index,s.actor[1].index),extraWidth=-(2*NOTE_PADDING+2*NOTE_OVERLAP);else if(s.placement==PLACEMENT.OVER)return a=s.actor.index,actorEnsureDistance(a-1,a,s.width/2),actorEnsureDistance(a,a+1,s.width/2),void(this.signalsHeight_+=s.height)}actorEnsureDistance(a,b,s.width+extraWidth),this.signalsHeight_+=s.height},this);var actorsX=0;return _.each(actors,function(a){a.x=Math.max(actorsX,a.x),_.each(a.distances,function(distance,b){"undefined"!=typeof distance&&(b=actors[b],distance=Math.max(distance,a.width/2,b.width/2),b.x=Math.max(b.x,a.x+a.width/2+distance-b.width/2))}),actorsX=a.x+a.width+a.paddingRight},this),diagram.width=Math.max(actorsX,diagram.width),diagram.width+=2*DIAGRAM_MARGIN,diagram.height+=2*DIAGRAM_MARGIN+2*this.actorsHeight_+this.signalsHeight_,this},textBBox:function(text,font){},drawTitle:function(){var title=this.title_;title&&this.drawTextBox(title,title.message,TITLE_MARGIN,TITLE_PADDING,this.font_,ALIGN_LEFT)},drawActors:function(offsetY){var y=offsetY;_.each(this.diagram.actors,function(a){this.drawActor(a,y,this.actorsHeight_),this.drawActor(a,y+this.actorsHeight_+this.signalsHeight_,this.actorsHeight_);var aX=getCenterX(a);this.drawLine(aX,y+this.actorsHeight_-ACTOR_MARGIN,aX,y+this.actorsHeight_+ACTOR_MARGIN+this.signalsHeight_)},this)},drawActor:function(actor,offsetY,height){actor.y=offsetY,actor.height=height,this.drawTextBox(actor,actor.name,ACTOR_MARGIN,ACTOR_PADDING,this.font_,ALIGN_CENTER)},drawSignals:function(offsetY){var y=offsetY;_.each(this.diagram.signals,function(s){"Signal"==s.type?s.isSelf()?this.drawSelfSignal(s,y):this.drawSignal(s,y):"Note"==s.type&&this.drawNote(s,y),y+=s.height},this)},drawSelfSignal:function(signal,offsetY){assert(signal.isSelf(),"signal must be a self signal");var textBB=signal.textBB,aX=getCenterX(signal.actorA),x=aX+SELF_SIGNAL_WIDTH+SIGNAL_PADDING,y=offsetY+SIGNAL_PADDING+signal.height/2+textBB.y;this.drawText(x,y,signal.message,this.font_,ALIGN_LEFT);var y1=offsetY+SIGNAL_MARGIN+SIGNAL_PADDING,y2=y1+signal.height-2*SIGNAL_MARGIN-SIGNAL_PADDING;this.drawLine(aX,y1,aX+SELF_SIGNAL_WIDTH,y1,signal.linetype),this.drawLine(aX+SELF_SIGNAL_WIDTH,y1,aX+SELF_SIGNAL_WIDTH,y2,signal.linetype),this.drawLine(aX+SELF_SIGNAL_WIDTH,y2,aX,y2,signal.linetype,signal.arrowtype)},drawSignal:function(signal,offsetY){var aX=getCenterX(signal.actorA),bX=getCenterX(signal.actorB),x=(bX-aX)/2+aX,y=offsetY+SIGNAL_MARGIN+2*SIGNAL_PADDING;this.drawText(x,y,signal.message,this.font_,ALIGN_CENTER),y=offsetY+signal.height-SIGNAL_MARGIN-SIGNAL_PADDING,this.drawLine(aX,y,bX,y,signal.linetype,signal.arrowtype)},drawNote:function(note,offsetY){note.y=offsetY;var actorA=note.hasManyActors()?note.actor[0]:note.actor,aX=getCenterX(actorA);switch(note.placement){case PLACEMENT.RIGHTOF:note.x=aX+ACTOR_MARGIN;break;case PLACEMENT.LEFTOF:note.x=aX-ACTOR_MARGIN-note.width;break;case PLACEMENT.OVER:if(note.hasManyActors()){var bX=getCenterX(note.actor[1]),overlap=NOTE_OVERLAP+NOTE_PADDING;note.x=Math.min(aX,bX)-overlap,note.width=Math.max(aX,bX)+overlap-note.x}else note.x=aX-note.width/2;break;default:throw new Error("Unhandled note placement: "+note.placement)}return this.drawTextBox(note,note.message,NOTE_MARGIN,NOTE_PADDING,this.font_,ALIGN_LEFT)},drawTextBox:function(box,text,margin,padding,font,align){var x=box.x+margin,y=box.y+margin,w=box.width-2*margin,h=box.height-2*margin;return this.drawRect(x,y,w,h),align==ALIGN_CENTER?(x=getCenterX(box),y=getCenterY(box)):(x+=padding,y+=padding),this.drawText(x,y,text,font,align)}}),"undefined"!=typeof Snap){var xmlns="http://www.w3.org/2000/svg",LINE={stroke:"#000000","stroke-width":2,fill:"none"},RECT={stroke:"#000000","stroke-width":2,fill:"#fff"},LOADED_FONTS={},SnapTheme=function(diagram,options,resume){_.defaults(options,{"css-class":"simple","font-size":16,"font-family":"Andale Mono, monospace"}),this.init(diagram,options,resume)};_.extend(SnapTheme.prototype,BaseTheme.prototype,{init:function(diagram,options,resume){BaseTheme.prototype.init.call(this,diagram),this.paper_=void 0,this.cssClass_=options["css-class"]||void 0,this.font_={"font-size":options["font-size"],"font-family":options["font-family"]};var a=this.arrowTypes_={};a[ARROWTYPE.FILLED]="Block",a[ARROWTYPE.OPEN]="Open";var l=this.lineTypes_={};l[LINETYPE.SOLID]="",l[LINETYPE.DOTTED]="6,2";var that=this;this.waitForFont(function(){resume(that)})},waitForFont:function(callback){var fontFamily=this.font_["font-family"];if("undefined"==typeof WebFont)throw new Error("WebFont is required (https://github.com/typekit/webfontloader).");return LOADED_FONTS[fontFamily]?void callback():void WebFont.load({custom:{families:[fontFamily]},classes:!1,active:function(){LOADED_FONTS[fontFamily]=!0,callback()},inactive:function(){LOADED_FONTS[fontFamily]=!0,callback()}})},addDescription:function(svg,description){var desc=document.createElementNS(xmlns,"desc");desc.appendChild(document.createTextNode(description)),svg.appendChild(desc)},setupPaper:function(container){var svg=document.createElementNS(xmlns,"svg");container.appendChild(svg),this.addDescription(svg,this.diagram.title||""),this.paper_=Snap(svg),this.paper_.addClass("sequence"),this.cssClass_&&this.paper_.addClass(this.cssClass_),this.beginGroup();var a=this.arrowMarkers_={},arrow=this.paper_.path("M 0 0 L 5 2.5 L 0 5 z");a[ARROWTYPE.FILLED]=arrow.marker(0,0,5,5,5,2.5).attr({id:"markerArrowBlock"}),arrow=this.paper_.path("M 9.6,8 1.92,16 0,13.7 5.76,8 0,2.286 1.92,0 9.6,8 z"),a[ARROWTYPE.OPEN]=arrow.marker(0,0,9.6,16,9.6,8).attr({markerWidth:"4",id:"markerArrowOpen"})},layout:function(){BaseTheme.prototype.layout.call(this),this.paper_.attr({width:this.diagram.width+"px",height:this.diagram.height+"px"})},textBBox:function(text,font){var t=this.createText(text,font),bb=t.getBBox();return t.remove(),bb},pushToStack:function(element){return this._stack.push(element),element},beginGroup:function(){this._stack=[]},finishGroup:function(){var g=this.paper_.group.apply(this.paper_,this._stack);return this.beginGroup(),g},createText:function(text,font){text=_.invoke(text.split("\n"),"trim");var t=this.paper_.text(0,0,text);return t.attr(font||{}),text.length>1&&t.selectAll("tspan:nth-child(n+2)").attr({dy:"1.2em",x:0}),t},drawLine:function(x1,y1,x2,y2,linetype,arrowhead){var line=this.paper_.line(x1,y1,x2,y2).attr(LINE);return void 0!==linetype&&line.attr("strokeDasharray",this.lineTypes_[linetype]),void 0!==arrowhead&&line.attr("markerEnd",this.arrowMarkers_[arrowhead]),this.pushToStack(line)},drawRect:function(x,y,w,h){var rect=this.paper_.rect(x,y,w,h).attr(RECT);return this.pushToStack(rect)},drawText:function(x,y,text,font,align){var t=this.createText(text,font),bb=t.getBBox();return align==ALIGN_CENTER&&(x-=bb.width/2,y-=bb.height/2),t.attr({x:x-bb.x,y:y-bb.y}),t.selectAll("tspan").attr({x:x}),this.pushToStack(t),t},drawTitle:function(){return this.beginGroup(),BaseTheme.prototype.drawTitle.call(this),this.finishGroup().addClass("title")},drawActor:function(actor,offsetY,height){return this.beginGroup(),BaseTheme.prototype.drawActor.call(this,actor,offsetY,height),this.finishGroup().addClass("actor")},drawSignal:function(signal,offsetY){return this.beginGroup(),BaseTheme.prototype.drawSignal.call(this,signal,offsetY),this.finishGroup().addClass("signal")},drawSelfSignal:function(signal,offsetY){return this.beginGroup(),BaseTheme.prototype.drawSelfSignal.call(this,signal,offsetY),this.finishGroup().addClass("signal")},drawNote:function(note,offsetY){return this.beginGroup(),BaseTheme.prototype.drawNote.call(this,note,offsetY),this.finishGroup().addClass("note")}});var SnapHandTheme=function(diagram,options,resume){_.defaults(options,{"css-class":"hand","font-size":16,"font-family":"danielbd"}),this.init(diagram,options,resume)};_.extend(SnapHandTheme.prototype,SnapTheme.prototype,{drawLine:function(x1,y1,x2,y2,linetype,arrowhead){var line=this.paper_.path(handLine(x1,y1,x2,y2)).attr(LINE);return void 0!==linetype&&line.attr("strokeDasharray",this.lineTypes_[linetype]),void 0!==arrowhead&&line.attr("markerEnd",this.arrowMarkers_[arrowhead]),this.pushToStack(line)},drawRect:function(x,y,w,h){var rect=this.paper_.path(handRect(x,y,w,h)).attr(RECT);return this.pushToStack(rect)}}),registerTheme("snapSimple",SnapTheme),registerTheme("snapHand",SnapHandTheme)}if("undefined"!=typeof Raphael){var LINE={stroke:"#000000","stroke-width":2,fill:"none"},RECT={stroke:"#000000","stroke-width":2,fill:"#fff"};Raphael.fn.line=function(x1,y1,x2,y2){return assert(_.all([x1,x2,y1,y2],_.isFinite),"x1,x2,y1,y2 must be numeric"),this.path("M{0},{1} L{2},{3}",x1,y1,x2,y2)};var RaphaelTheme=function(diagram,options,resume){this.init(diagram,_.defaults(options,{"font-size":16,"font-family":"Andale Mono, monospace"}),resume)};_.extend(RaphaelTheme.prototype,BaseTheme.prototype,{init:function(diagram,options,resume){BaseTheme.prototype.init.call(this,diagram),this.paper_=void 0,this.font_={"font-size":options["font-size"],"font-family":options["font-family"]};var a=this.arrowTypes_={};a[ARROWTYPE.FILLED]="block",a[ARROWTYPE.OPEN]="open";var l=this.lineTypes_={};l[LINETYPE.SOLID]="",l[LINETYPE.DOTTED]="-",resume(this)},setupPaper:function(container){this.paper_=new Raphael(container,320,200),this.paper_.setStart()},draw:function(container){BaseTheme.prototype.draw.call(this,container),this.paper_.setFinish()},layout:function(){BaseTheme.prototype.layout.call(this),this.paper_.setSize(this.diagram.width,this.diagram.height)},cleanText:function(text){return text=_.invoke(text.split("\n"),"trim"),text.join("\n")},textBBox:function(text,font){text=this.cleanText(text),font=font||{};var p;font.obj_?p=this.paper_.print(0,0,text,font.obj_,font["font-size"]):(p=this.paper_.text(0,0,text),p.attr(font));var bb=p.getBBox();return p.remove(),bb},drawLine:function(x1,y1,x2,y2,linetype,arrowhead){var line=this.paper_.line(x1,y1,x2,y2).attr(LINE);return void 0!==arrowhead&&line.attr("arrow-end",this.arrowTypes_[arrowhead]+"-wide-long"),void 0!==arrowhead&&line.attr("stroke-dasharray",this.lineTypes_[linetype]),line},drawRect:function(x,y,w,h){return this.paper_.rect(x,y,w,h).attr(RECT)},drawText:function(x,y,text,font,align){text=this.cleanText(text),font=font||{},align=align||ALIGN_LEFT;var paper=this.paper_,bb=this.textBBox(text,font);align==ALIGN_CENTER&&(x-=bb.width/2,y-=bb.height/2);var t;return font.obj_?t=paper.print(x-bb.x,y-bb.y,text,font.obj_,font["font-size"]):(t=paper.text(x-bb.x-bb.width/2,y-bb.y,text),t.attr(font),t.attr({"text-anchor":"start"})),t}});var RaphaelHandTheme=function(diagram,options,resume){this.init(diagram,_.defaults(options,{"font-size":16,"font-family":"daniel"}),resume)};_.extend(RaphaelHandTheme.prototype,RaphaelTheme.prototype,{setupPaper:function(container){RaphaelTheme.prototype.setupPaper.call(this,container),this.font_.obj_=this.paper_.getFont("daniel")},drawLine:function(x1,y1,x2,y2,linetype,arrowhead){var line=this.paper_.path(handLine(x1,y1,x2,y2)).attr(LINE);return void 0!==arrowhead&&line.attr("arrow-end",this.arrowTypes_[arrowhead]+"-wide-long"),void 0!==arrowhead&&line.attr("stroke-dasharray",this.lineTypes_[linetype]),line},drawRect:function(x,y,w,h){return this.paper_.path(handRect(x,y,w,h)).attr(RECT)}}),registerTheme("raphaelSimple",RaphaelTheme),registerTheme("raphaelHand",RaphaelHandTheme)}if("undefined"!=typeof Raphael&&Raphael.registerFont({w:209,face:{"font-family":"Daniel","font-weight":700,"font-stretch":"normal","units-per-em":"360","panose-1":"2 11 8 0 0 0 0 0 0 0",ascent:"288",descent:"-72","x-height":"7",bbox:"-92.0373 -310.134 519 184.967","underline-thickness":"3.51562","underline-position":"-25.1367","unicode-range":"U+0009-U+F002"},glyphs:{" ":{w:179},"\t":{w:179},"\r":{w:179},"!":{d:"66,-306v9,3,18,11,19,24v-18,73,-20,111,-37,194v0,10,2,34,-12,34v-12,0,-18,-9,-18,-28v0,-85,23,-136,38,-214v1,-7,4,-10,10,-10xm25,-30v15,-1,28,34,5,35v-11,-1,-38,-36,-5,-35",w:115},'"':{d:"91,-214v-32,3,-25,-40,-20,-68v3,-16,7,-25,12,-27v35,13,14,56,8,95xm8,-231v4,-31,1,-40,18,-75v37,7,11,51,11,79v-3,3,-4,8,-5,13v-17,4,-16,-10,-24,-17",w:117},"#":{d:"271,-64v-30,26,-96,-7,-102,51v-6,2,-13,2,-24,-2v-2,-11,10,-21,2,-28v-14,5,-48,0,-48,22v0,23,-11,14,-29,10v-7,-6,6,-19,-1,-24r-32,4v-19,-8,-15,-24,5,-28r33,-6v4,0,24,-23,11,-27v-26,0,-63,14,-74,-10v3,-1,9,-17,16,-10v15,-8,81,4,89,-30v8,-14,16,-34,24,-38v23,9,24,38,5,49v37,24,55,-38,72,-43v19,10,20,23,-1,45v2,8,23,1,29,4v3,3,6,6,10,11v-14,13,-20,12,-45,12v-17,0,-16,17,-19,29v18,-7,49,3,67,-2v4,0,8,4,12,11xm161,-104v-30,-1,-44,10,-44,37v14,1,24,0,40,-5v0,-1,3,-10,8,-26v0,-4,-1,-6,-4,-6",w:285},$:{d:"164,-257v29,4,1,42,-3,50v5,5,38,13,41,24v8,4,6,15,-2,21v-18,3,-36,-17,-49,-17v-17,1,-31,40,-28,48v5,4,8,8,9,10v13,1,35,37,28,44v-10,21,-36,20,-65,28v-10,10,-12,40,-17,51v-9,-3,-28,1,-18,-17v0,-13,5,-24,-1,-35v-18,1,-59,-10,-42,-29v21,0,56,16,55,-16v5,-4,9,-18,9,-26v-14,-15,-55,-41,-53,-65v2,-33,56,-19,98,-26v10,-14,31,-43,38,-45xm93,-152v11,-10,15,-15,14,-29v-17,-3,-37,1,-43,6v10,12,20,19,29,23xm111,-103v-8,1,-11,12,-10,22v10,0,28,2,27,-8v0,-4,-13,-15,-17,-14",w:225},"%":{d:"181,-96v24,-7,67,-13,104,1v14,18,21,19,22,44v-13,43,-99,61,-146,36v-9,-9,-22,-11,-32,-29v0,-27,24,-53,52,-52xm139,-185v-9,68,-138,73,-131,-5v0,-3,3,-9,9,-17v13,1,27,1,17,-16v5,-39,63,0,93,-6v36,1,80,-9,102,11v15,32,12,32,-8,56v-16,21,-103,78,-152,125r-14,28v-23,11,-25,-7,-29,-20v34,-71,133,-98,171,-162v-13,-12,-52,-5,-61,1v0,1,1,3,3,5xm38,-190v0,34,55,29,70,8v0,-14,-20,-11,-32,-14v-14,-3,-24,-9,-40,-10v1,0,5,11,2,16xm172,-53v12,27,90,18,102,-5v-18,-7,-32,-10,-40,-10v-29,3,-57,-4,-62,15", +w:308},"&":{d:"145,-82v17,-8,47,-15,71,-26v13,2,25,12,9,23v-23,7,-40,16,-53,27r0,6v13,8,30,21,36,38v0,8,-4,12,-11,12v-19,0,-43,-39,-59,-44v-30,12,-65,29,-97,32v-32,3,-45,-41,-23,-63v21,-20,52,-26,70,-48v-4,-31,-12,-47,9,-73v13,-16,20,-29,23,-39v15,-15,32,-22,51,-22v30,9,62,64,32,96v-2,3,-47,42,-69,48v-15,8,-11,9,0,22v6,7,10,11,11,11xm114,-138v25,-13,62,-38,74,-62v0,-9,-10,-31,-20,-29v-28,7,-60,42,-60,75v0,10,2,15,6,16xm99,-91v-18,10,-54,18,-59,45v26,5,61,-12,77,-22v-1,-5,-13,-23,-18,-23",w:253},"'":{d:"36,-182v-36,7,-34,-61,-17,-80v15,1,21,19,21,20r-1,-1v0,0,-1,12,-5,35v1,5,3,17,2,26",w:63},"(":{d:"130,-306v13,2,23,43,-1,43v-49,43,-77,77,-90,148v5,49,27,67,64,101v4,14,5,6,2,19r-15,0v-35,-17,-79,-58,-79,-120v0,-58,66,-176,119,-191",w:120},")":{d:"108,-138v-2,73,-48,120,-98,153v-17,-5,-16,-20,-6,-31v52,-64,73,-62,74,-135v1,-42,-40,-98,-58,-128v0,-5,-1,-12,-2,-22v18,-18,25,0,42,27v25,39,50,66,48,136",w:120},"*":{d:"121,-271v15,-5,36,-8,40,9v-5,10,-31,19,-47,31v0,11,34,43,14,53v-18,8,-24,-24,-34,-20v-4,10,-4,19,-12,41v-25,7,-15,-30,-17,-47v-13,-1,-17,9,-46,30r-10,0v-20,-32,37,-43,54,-64v-10,-11,-36,-33,-16,-51v3,0,14,8,33,24v8,-10,26,-39,32,-42v14,7,15,23,9,36",w:177},"+":{d:"163,-64v-7,22,-65,2,-77,21v-2,10,-6,21,-11,35v-20,4,-21,-12,-19,-29v3,-23,-44,6,-39,-27v-8,-22,36,-8,49,-18v8,-13,6,-36,24,-40v19,-4,14,32,11,39v18,3,19,2,54,8v2,1,5,5,8,11",w:170},",":{d:"25,63v-26,21,-48,-2,-22,-24v14,-12,35,-40,35,-69v3,-2,3,-11,12,-9v35,17,5,88,-25,102",w:97},"-":{d:"57,-94v19,4,55,-5,54,17v-15,23,-54,20,-91,15v-4,2,-13,-10,-11,-16v-1,-22,28,-15,48,-16",w:124},".":{d:"40,-48v21,20,21,44,-4,44v-33,0,-26,-24,-10,-44r14,0",w:67},"/":{d:"21,20v-22,-45,21,-95,41,-126v38,-57,115,-158,193,-201v2,0,4,3,7,11v11,29,-15,34,-25,55v-81,56,-189,208,-197,261r-19,0",w:275},0:{d:"78,-237v70,-47,269,-41,270,59v0,34,-11,53,-29,76v-13,35,-30,32,-85,64v-6,2,-10,6,-7,8v-73,14,-98,38,-173,1v-7,-13,-52,-48,-46,-88v9,-57,27,-75,70,-120xm123,-38v100,0,202,-46,195,-153v-32,-55,-144,-73,-211,-35v-16,34,-68,54,-53,108v6,25,1,22,-3,39v6,24,41,41,72,41",w:353},1:{d:"39,-208v0,-14,6,-59,29,-39v3,4,6,13,10,24r-22,128r8,87v-4,6,-9,3,-16,2v-44,-38,-9,-137,-9,-202",w:93},2:{d:"88,-35v47,-10,119,-24,168,-9v0,12,-23,13,-35,16v1,1,3,1,5,1v-74,8,-118,23,-194,23v-14,0,-20,-13,-21,-28v55,-40,83,-61,123,-104v26,-13,65,-67,71,-102v-1,-9,-11,-16,-22,-16v-20,-1,-120,29,-156,49v-10,-2,-30,-20,-10,-28v50,-21,111,-51,178,-48v25,10,44,22,36,39v12,30,-19,64,-34,83v-39,48,-37,39,-115,109v0,5,-3,8,-8,11v4,3,8,4,14,4",w:265},3:{d:"188,-282v34,-10,74,25,47,51v-19,32,-55,50,-92,70v28,14,116,25,108,70v8,14,-49,40,-63,48v-29,9,-130,22,-168,42v-6,-5,-19,-7,-12,-22v56,-36,175,-21,210,-76v-9,-20,-88,-42,-97,-33v-20,-1,-41,2,-56,-7r5,-21v56,-25,103,-36,137,-78v1,-1,2,-5,4,-11v-15,-14,-56,7,-79,0v-10,9,-73,22,-92,31v-11,-4,-28,-23,-13,-30v50,-22,96,-26,154,-37v0,-1,8,3,7,3",w:260},4:{d:"79,-249v-7,17,-29,75,-33,96v0,6,3,8,8,8v43,-2,111,6,141,-6v17,-47,20,-100,63,-148v9,4,16,7,21,10v-17,31,-44,95,-51,141v7,4,24,-4,23,10v-1,16,-29,12,-31,23v-10,22,-9,69,-7,103v-3,2,-7,5,-10,9v-47,-11,-23,-74,-16,-114v0,-4,-2,-6,-7,-6v-65,2,-89,13,-162,4v-22,-22,-2,-53,5,-76v16,-15,17,-57,35,-70v6,-1,21,11,21,16",w:267},5:{d:"185,-272v30,7,45,-8,53,18v1,16,-17,18,-34,14v0,0,-95,-11,-129,1v-6,9,-24,33,-29,54v76,10,171,5,214,47v11,11,22,30,5,52v-14,12,-30,14,-34,27v-26,11,-141,63,-157,60v-16,-2,-25,-19,-4,-27v48,-18,128,-39,170,-86v4,-14,-65,-41,-85,-41r-92,0v-10,-4,-66,-1,-57,-23v0,-23,23,-51,35,-83v11,-28,133,-10,144,-13",w:284},6:{d:"70,-64v9,-51,63,-74,123,-71v43,2,109,3,111,41r-25,47v0,1,1,2,2,3v-5,0,-39,10,-41,20v-15,3,-22,4,-22,11v-39,1,-77,20,-119,13v-42,-7,-35,-9,-77,-46v-56,-118,94,-201,176,-229v7,0,21,8,20,15v-2,17,-23,15,-43,24v-69,31,-119,72,-134,145v-5,25,36,68,78,64v59,-6,128,-18,153,-61v-7,-14,-13,-9,-32,-21v-67,-15,-118,-5,-150,43r0,12v-13,4,-17,-3,-20,-10",w:310},7:{d:"37,-228v33,-14,173,-17,181,-19v28,-1,24,31,9,45v-17,15,-45,49,-59,69v-17,26,-55,67,-61,113v-10,13,-9,14,-14,20v-33,-13,-20,-25,-11,-53v16,-48,73,-115,109,-156v2,-7,5,-14,-10,-12v-26,4,-54,6,-76,13v-23,-5,-83,31,-94,-9v2,-8,18,-19,26,-11",w:245},8:{d:"57,-236v40,-50,166,-51,213,-10v22,28,10,63,-22,78r-35,17v8,5,54,24,53,44v-5,14,-4,33,-18,42v-13,13,-35,18,-44,34v-60,27,-190,49,-194,-42v7,-41,17,-54,59,-70r0,-4v-32,-9,-73,-62,-26,-85v4,0,8,-2,14,-4xm142,-160v24,-2,160,-31,99,-72v-28,-18,-108,-33,-146,-5v-16,12,-28,30,-33,59v24,12,37,20,80,18xm41,-62v30,65,189,6,199,-37v3,-14,-60,-30,-74,-30v-70,0,-118,10,-125,67",w:290},9:{d:"11,-192v15,-49,119,-61,161,-23v16,15,27,55,11,79v-20,62,-51,79,-96,118v-10,4,-45,27,-50,6v9,-15,66,-52,98,-99v-7,-7,-8,-3,-25,0v-49,-11,-96,-25,-99,-81xm145,-131v7,-5,13,-34,13,-41v-2,-51,-104,-38,-114,-6v-2,10,37,35,46,35v23,1,43,-1,55,12",w:198},":":{d:"39,-125v15,-8,40,-1,40,15v0,15,-6,22,-19,22v-13,0,-29,-21,-21,-37xm66,-17v-8,27,-51,19,-46,-8v-1,-6,8,-22,14,-20v29,0,30,6,32,28",w:95},";":{d:"56,-93v2,-30,37,-22,40,2v0,2,-1,7,-3,15v-13,8,-15,6,-27,4xm64,-44v11,-11,30,-4,32,14v-21,39,-63,71,-92,85v-5,0,-11,-2,-18,-8v11,-23,36,-36,50,-61v11,-7,19,-20,28,-30",w:107},"<":{d:"166,-202v12,0,29,15,24,29v0,4,-119,64,-120,73v15,21,89,64,91,86v2,29,-18,12,-30,15v-27,-29,-59,-54,-95,-75v-18,-10,-25,-13,-24,-41",w:176},"=":{d:"125,-121v18,7,55,-9,69,14v0,17,-45,26,-135,26v-18,0,-27,-7,-27,-21v-1,-37,60,-5,93,-19xm138,-71v20,0,48,-1,50,16v-13,24,-86,32,-131,29v-29,-2,-43,-10,-43,-24v-7,-23,36,-14,39,-17v27,6,57,-4,85,-4",w:196},">":{d:"4,-14v20,-48,77,-59,118,-94v-16,-19,-58,-52,-81,-75v-11,-7,-15,-38,-1,-40v33,16,83,71,121,105v26,23,-6,35,-41,53v-29,16,-56,28,-73,54v-21,15,-16,20,-34,15v-3,0,-9,-16,-9,-18",w:174},"?":{d:"105,-291v57,-13,107,-4,107,39v0,67,-136,85,-155,137v-1,6,10,23,-4,23v-23,1,-33,-35,-23,-57v31,-41,124,-60,149,-103v-8,-21,-72,-5,-88,-1v-23,6,-59,39,-71,8v0,0,-1,0,1,-17v10,-4,45,-20,84,-29xm80,-25v-6,4,-8,39,-24,22v-24,3,-22,-21,-13,-35v17,-7,29,5,37,13",w:216},"@":{d:"218,-207v23,8,42,14,47,37v44,68,-27,137,-87,85r1,0v0,2,-59,19,-61,17v-35,0,-42,-47,-17,-68r0,-4v-19,-1,-45,37,-49,40v-37,76,58,72,121,62v11,-2,34,-13,36,3v-14,31,-69,31,-114,33v-51,2,-99,-41,-80,-92v2,-30,22,-40,42,-63v35,-20,91,-53,161,-50xm217,-101v23,0,35,-19,35,-41v0,-43,-75,-41,-102,-19v36,3,55,16,62,41v-6,5,-6,19,5,19xm127,-110v8,5,51,-15,28,-16v-4,0,-25,4,-28,16",w:291},A:{d:"97,-81v-23,-10,-39,38,-52,60v-8,6,-8,6,-22,18v-22,-7,-23,-37,-4,-49v7,-8,11,-15,15,-23r-1,1v-14,-26,23,-29,31,-40v1,-1,15,-29,26,-36v17,-31,39,-58,54,-92v16,-20,20,-51,41,-66v29,5,34,62,45,92v9,64,21,103,49,155v-3,25,-44,11,-54,0v-34,-12,-97,-29,-128,-20xm107,-118v20,6,80,10,111,17v6,-7,-4,-15,-7,-24v-11,-28,-9,-92,-30,-117v-9,9,-19,44,-34,55v-9,23,-27,40,-40,69",w:294},B:{d:"256,-179v41,10,115,34,91,91v-6,3,-14,12,-19,20v-37,19,-50,34,-63,25v-9,10,-12,11,-34,13r3,-3v-4,-4,-12,-4,-18,0v0,0,2,2,5,4v-21,14,-26,6,-44,15v-4,0,-7,-2,-8,-5v-6,11,-20,-5,-18,11v-36,4,-91,35,-114,4v-7,-62,-10,-138,4,-199v-1,-19,-37,2,-37,-27v0,-8,2,-13,6,-15v68,-31,231,-92,311,-39v8,12,12,20,12,25v-8,42,-32,49,-77,80xm79,-160v72,-17,135,-39,184,-70v20,-13,31,-23,31,-27v1,-6,-30,-13,-38,-12v-54,0,-116,13,-186,41v11,21,1,48,9,68xm262,-43v0,-4,3,-6,-4,-5v0,1,1,2,4,5xm211,-140v-34,7,-94,24,-139,15v-6,20,-4,56,-4,82v0,29,43,1,56,2v48,-11,108,-25,154,-48v20,-10,32,-17,32,-25v0,-18,-33,-26,-99,-26xm195,-20v6,1,6,-2,5,-7v-3,2,-7,2,-5,7",w:364},C:{d:"51,-114v-12,75,96,76,166,71r145,-10v9,2,9,5,9,18v-37,18,-85,28,-109,22v-18,10,-47,10,-71,10v-29,0,-68,1,-105,-11v-6,-1,-10,-3,-10,-8v-33,-13,-48,-33,-66,-59v-19,-114,146,-150,224,-177v35,0,88,-31,99,7v-1,29,-49,14,-76,28v-55,8,-115,35,-175,71v-13,8,-23,21,-31,38",w:376},D:{d:"312,-78v-2,1,-3,7,-10,5v6,-3,10,-4,10,-5xm4,-252v2,-27,83,-38,106,-39v130,-7,267,1,291,109v0,0,-2,8,-3,25v-5,9,-4,28,-23,34v-4,4,-2,5,-7,0v-3,3,-15,7,-5,10v0,0,-10,14,-13,2v-11,1,-8,5,-20,14v1,2,7,3,9,1v-4,13,-22,13,-11,4v0,-3,1,-6,-3,-5v-40,29,-103,38,-141,65v10,6,22,-7,34,-3v-41,20,-127,44,-171,46v-21,1,-47,-33,-11,-39v15,-2,43,-6,56,-11v-16,-101,-5,-130,9,-207v2,0,4,-1,6,-3v-16,-17,-91,38,-103,-3xm297,-69v-7,3,-17,8,-25,7v1,1,3,2,5,2v-4,2,-11,5,-23,9v4,-11,30,-21,43,-18xm240,-51v10,0,12,2,0,6r0,-6xm220,-36v-1,-3,4,-6,6,-3v0,1,-2,1,-6,3xm125,-48v16,6,137,-46,155,-53v29,-18,101,-44,82,-93v-21,-53,-84,-61,-168,-67v-20,7,-50,3,-77,8v33,54,-12,132,8,205xm159,-22v-4,-1,-15,-5,-15,2v7,-1,12,-2,15,-2",w:381},E:{d:"45,-219v-19,-36,34,-41,63,-36v44,-10,133,-8,194,-15v3,2,38,11,52,15v-73,19,-171,21,-246,38v-9,11,-16,32,-20,61v35,11,133,-6,183,3v1,6,2,7,3,14v-46,24,-118,16,-193,27v-15,13,-22,52,-22,66v60,1,121,-20,188,-20v22,10,53,-7,74,5v16,29,-23,26,-43,32v-73,4,-139,13,-216,27r-52,-10v-4,-22,23,-69,26,-98v-3,0,-10,-15,-12,-24v20,-12,34,-23,35,-67v2,-1,5,-5,5,-7v0,-4,-14,-11,-19,-11",w:353},F:{d:"270,-258v13,2,59,6,48,34v-78,-3,-143,1,-212,22v-10,16,-21,43,-24,69r145,-9v8,3,29,-3,16,21v-14,-1,-59,13,-60,7v-12,13,-67,18,-108,21v-2,1,-4,3,-7,6v-2,23,-8,43,-7,69v1,28,-30,11,-40,5r10,-80r-26,-14v5,-10,10,-33,28,-25v21,-3,15,-46,26,-59v-1,-3,-32,-13,-28,-24v2,-22,45,-16,59,-30v47,4,99,-14,151,-9v5,-3,25,-3,29,-4",w:236},G:{d:"311,-168v53,0,94,57,74,110v-31,37,-71,34,-136,52v-13,-7,-41,10,-57,7v-73,-1,-122,-17,-162,-59v-49,-51,-24,-80,5,-130v35,-61,138,-93,214,-106v16,4,42,-1,40,21v-5,40,-39,2,-73,21v-76,19,-162,65,-177,142v28,103,237,76,312,29v2,-3,3,-7,3,-13v-10,-35,-37,-43,-87,-45v-16,-13,-53,-9,-78,1v-4,-3,-5,-7,-5,-11v17,-29,73,-17,108,-24v12,4,18,5,19,5",w:391},H:{d:"300,-268v18,12,19,32,4,51v-35,44,-34,140,-46,217v-1,5,-5,13,-11,12v-6,1,-19,-14,-18,-27r7,-106v-28,7,-76,22,-116,14v-18,2,-36,6,-55,3v-43,-8,-14,53,-33,75v-29,1,-26,-67,-21,-97v5,-31,28,-73,43,-98v2,2,7,3,14,3v13,33,-11,48,-13,78v61,4,118,2,176,2v8,0,13,-6,15,-20v4,-47,21,-87,54,-107",w:288},I:{d:"63,-266v34,10,-4,105,-8,128r-24,126v-2,2,-3,1,-9,6v-12,-10,-12,-15,-12,-47v0,-93,9,-156,28,-188v10,-17,19,-25,25,-25",w:79},J:{d:"235,-291v26,11,31,104,31,142v0,37,-2,95,-32,126v-33,34,-121,26,-167,1v-18,-11,-54,-29,-59,-59v0,-3,5,-15,16,-14v31,36,90,57,162,51v63,-30,56,-148,32,-226v-1,-16,11,-13,17,-21",w:282},K:{d:"212,-219v17,-5,80,-60,80,-19v0,9,-2,14,-5,16r-132,78v-34,23,-54,32,-21,50v39,21,74,23,124,41v5,2,7,5,7,9v-4,24,-55,15,-79,8v-67,-19,-98,-36,-116,-83v9,-24,38,-35,66,-61v7,-4,49,-30,76,-39xm47,-194v11,-20,11,-45,31,-55v2,2,4,3,6,0v29,39,-21,96,-18,128v-17,24,-15,62,-29,113v-4,3,-10,7,-19,11v-12,-13,-10,-28,-8,-53v3,-31,17,-79,37,-144",w:270},L:{d:"84,-43v58,0,179,-27,242,-4v3,17,-29,24,-40,26v-85,-4,-202,46,-268,3v-24,-16,-2,-33,-4,-57v26,-76,38,-108,86,-191v14,-7,26,-50,45,-32v6,22,5,31,-12,46v-20,39,-50,82,-67,142v-7,6,-19,46,-19,54v0,9,12,13,37,13",w:331},M:{d:"174,-236v-1,52,-11,92,-7,143v10,5,15,-12,22,-18v42,-55,90,-130,136,-174r15,-18v42,2,32,53,11,80v-12,58,-54,143,-34,210v0,3,-3,12,-9,10v-31,-5,-32,-57,-27,-92v4,-27,12,-58,25,-93v-5,-10,5,-19,6,-30v-46,44,-66,110,-129,172v-11,10,-18,15,-22,15v-34,6,-28,-103,-28,-152v-28,22,-65,119,-96,170v-9,15,-34,3,-31,-19v30,-64,91,-177,139,-229v12,-1,29,13,29,25",w:343},N:{d:"248,-20v-3,17,-37,18,-43,3v-24,-35,-53,-145,-80,-203v-32,40,-55,120,-92,174v-13,3,-26,-13,-27,-22r87,-171v4,-13,20,-57,42,-32v42,48,46,139,82,198v29,-45,46,-88,65,-153v12,-19,23,-42,38,-60v27,-1,14,18,4,44v-6,46,-32,68,-37,121v-15,29,-33,69,-39,101",w:307},O:{d:"240,-268v85,1,163,29,150,125v13,7,-12,18,-5,26v-23,63,-133,112,-228,124v-80,-16,-171,-56,-148,-153v11,-47,20,-43,53,-83v17,-9,39,-22,73,-29v45,-10,81,-10,105,-10xm363,-156v16,-51,-62,-85,-111,-79v-25,-11,-50,8,-81,0v-15,10,-70,16,-85,31v6,20,-27,24,-39,45v-42,75,40,128,115,128v56,0,209,-71,201,-125",w:383},P:{d:"70,-225v-7,-12,-36,16,-49,19v-4,0,-9,-5,-14,-17v21,-47,114,-55,172,-59v41,-3,132,33,99,87v-21,34,-72,59,-144,80v-2,16,-79,3,-74,46v3,25,-5,47,-10,68v-22,-1,-23,-29,-22,-56v2,-25,-20,-32,-8,-50v21,-5,10,-35,25,-57v6,-28,14,-48,25,-61xm71,-229v47,14,-2,50,-1,99v41,-3,113,-37,173,-76v5,-9,8,-14,8,-15v-28,-47,-125,-29,-180,-8",w:252},Q:{d:"374,-217v20,59,-11,127,-48,156r30,38v-1,6,-8,16,-14,9v-3,0,-19,-9,-47,-26v-72,35,-173,75,-236,12v-70,-40,-67,-213,26,-217r8,5v24,-20,72,-48,112,-38v21,-4,22,-1,50,-2v66,-2,94,20,119,63xm296,-88v13,5,61,-49,63,-84v4,-62,-54,-78,-119,-76v-14,-6,-49,5,-71,3v-42,16,-89,41,-93,94v-9,11,1,25,-7,38v-12,-19,-7,-67,-1,-88v-56,30,-37,137,19,155v27,17,92,19,119,0v12,-2,29,-9,52,-20v2,-2,3,-3,3,-6v-11,-12,-46,-27,-54,-56v0,-13,3,-19,9,-19v18,1,60,52,80,59",w:379},R:{d:"100,-275v96,-23,196,-10,208,78v-3,18,-17,52,-49,62v-14,20,-54,23,-79,40v-2,0,-14,2,-36,6v-40,8,-30,14,-3,33v37,27,52,30,118,55v16,6,31,23,12,27v-58,-2,-104,-29,-143,-61v-14,-3,-16,-15,-39,-27v-23,-19,-28,-12,-15,-38v63,-19,111,-15,163,-53v27,-20,43,-36,43,-49v0,-64,-120,-62,-173,-38v-9,4,-38,9,-40,18v-10,32,-16,70,-13,116v-10,21,-8,47,-6,75v2,31,-9,29,-27,22v-9,-55,5,-140,15,-190v-8,-6,-24,10,-24,-11v0,-34,16,-34,42,-55v2,-1,17,-4,46,-10",w:297},S:{d:"13,-3v-7,-3,-22,-18,-5,-22v68,-15,119,-32,154,-45v51,-19,39,-34,3,-53v-46,-25,-82,-30,-121,-64v-33,-29,-50,-35,-25,-58v37,-20,119,-29,181,-29v29,0,44,6,44,18v-9,26,-62,6,-104,14v-17,2,-72,6,-92,16v37,53,132,58,180,111v8,9,11,20,11,30v-4,17,-23,35,-42,34v-21,16,-17,1,-49,17v-14,7,-41,9,-56,20v-25,-3,-49,10,-79,11",w:234},T:{d:"141,-3v-36,-6,1,-49,-3,-79v10,-19,6,-35,15,-64r26,-85v-51,-9,-100,10,-141,14v-16,2,-30,-26,-11,-32v26,-8,143,-8,179,-19r12,6v67,-2,142,-1,200,-1v8,0,14,3,19,10v-18,16,-74,3,-103,14v-48,-4,-60,4,-113,7v-42,22,-36,130,-58,187v1,12,-9,44,-22,42",w:277},U:{d:"365,-262v13,56,-22,104,-36,141v-19,22,-30,38,-57,56v-4,18,-60,35,-78,50v-53,28,-142,0,-161,-34v-31,-56,-37,-108,-11,-164v17,-33,29,-50,48,-29v-2,2,-3,7,-4,13v-44,36,-38,149,7,174v30,26,55,19,102,4v56,-17,66,-34,120,-76v12,-24,56,-68,46,-122r0,-16v0,1,-1,3,-1,6v4,-13,11,-10,25,-3",w:368},V:{d:"246,-258v21,-22,31,-26,44,-8v1,1,-12,22,-28,35v-15,25,-41,38,-56,69v-13,15,-20,31,-28,57v-15,13,-11,29,-27,72v3,21,-5,24,-27,27v-33,-45,-54,-118,-84,-167v-5,-26,-18,-50,-25,-76v-3,-12,24,-8,29,-5v8,13,18,52,26,70r52,115v9,-2,4,-9,10,-21r25,-47v25,-44,46,-76,89,-121",w:234},W:{d:"31,-213v16,46,17,106,41,151v31,-35,49,-89,76,-127v30,-15,39,27,52,56v10,22,21,48,35,67v2,0,4,-1,5,-3v16,-28,50,-76,79,-121v14,-21,40,-63,64,-83r5,8v-30,58,-76,110,-97,173v-18,28,-25,37,-33,63v-11,1,-16,25,-30,15v-21,-31,-44,-89,-62,-131v0,-2,-1,-3,-5,-5v-17,11,-16,36,-31,50v-20,33,-20,84,-68,94v-24,-19,-23,-81,-39,-111v-1,-15,-29,-94,-10,-108v9,2,12,5,18,12",w:331},X:{d:"143,-183v43,-25,69,-36,126,-62v22,-10,86,-10,56,21v-51,3,-158,61,-154,64v10,15,41,30,50,52v27,17,46,60,70,82v9,14,-6,30,-24,20v-35,-43,-75,-100,-116,-132v-48,13,-100,47,-118,94v-1,49,-26,34,-27,4v-1,-26,13,-27,17,-48v22,-27,68,-55,90,-77v-9,-12,-60,-39,-79,-57v-6,-10,-6,-25,12,-25",w:312},Y:{d:"216,-240v19,-14,42,10,22,26v-54,66,-121,109,-156,197v-8,21,-11,15,-30,4v3,-37,27,-61,33,-76v12,-12,15,-19,32,-42v-8,-6,-40,5,-45,5v-48,-6,-69,-65,-56,-113v14,0,13,-1,24,7v2,33,12,75,42,73v36,-2,102,-57,134,-81",w:189},Z:{d:"60,-255v66,12,200,-34,240,21v-13,42,-63,62,-98,89v-19,15,-47,33,-82,55v-25,16,-47,32,-66,47v58,24,129,-6,208,-6v23,0,36,12,13,19v-33,2,-53,5,-86,10v-32,18,-88,15,-135,15v-9,-1,-55,-1,-48,-29v1,-24,30,-24,40,-41v64,-50,151,-86,208,-147v-38,-17,-155,12,-198,-4v0,0,-11,-33,4,-29",w:310},"[":{d:"72,-258r-15,250v30,4,55,-3,80,-6v7,-1,8,17,9,23v-28,15,-73,23,-121,21v-7,0,-10,-6,-10,-17v0,-60,25,-193,22,-288v0,-16,13,-20,33,-19v9,-3,34,-12,51,-12v16,0,15,16,19,29v-16,7,-48,10,-68,19",w:151},"\\":{d:"236,38v20,-18,-8,-74,-13,-90v-44,-78,-112,-190,-200,-253v-2,0,-5,4,-7,12v-11,31,13,36,24,58v74,61,174,219,180,273r16,0",w:257},"]":{d:"133,-258v-23,-13,-84,6,-85,-32v0,-10,5,-15,14,-15v0,0,30,2,90,7v10,1,15,13,15,36v2,7,-8,59,-13,112r-11,125v-9,48,9,90,-59,71v-20,-4,-39,-1,-59,-4v-5,-10,-25,-12,-14,-30v8,-3,61,-13,78,-8v14,1,8,-7,10,-17v15,-69,21,-166,34,-245",w:171},"^":{d:"68,-306v20,15,47,36,58,60v-1,4,0,7,-9,7v-26,0,-47,-38,-49,-32v-15,9,-41,50,-54,30v-2,-31,17,-23,33,-51v8,-9,15,-14,21,-14",w:135},_:{d:"11,15v-8,33,18,45,50,34r205,2r197,-5v11,-5,14,-9,7,-28v-95,-21,-258,-10,-376,-10v-25,0,-72,-3,-83,7",w:485},"`":{d:"75,-264v16,8,56,14,39,43v-30,-8,-65,-23,-105,-44v-1,-3,-3,-28,5,-25v16,5,44,17,61,26",w:129},a:{d:"124,-56v10,4,59,41,65,50v1,7,-6,17,-12,17r-60,-30v-22,2,-42,21,-65,19v-33,4,-68,-67,-15,-81v41,-27,96,-39,110,9v0,6,-4,12,-11,16v-33,-25,-67,-5,-88,12v10,16,61,-18,76,-12",w:196},b:{d:"80,-140v69,1,123,0,134,52v5,26,-71,71,-97,70v-11,11,-88,22,-94,22v-11,-3,-26,-18,-6,-24v19,-5,-2,-19,-1,-35v1,-18,11,-36,-5,-47v-6,-17,-6,-21,14,-32v6,-45,18,-89,28,-124v2,-7,8,-12,17,-15v5,3,10,11,16,28v-12,27,-13,63,-23,96v0,6,6,9,17,9xm87,-107v-40,-9,-31,31,-39,54v8,15,0,25,12,22v30,-8,60,-18,88,-32v39,-18,49,-33,-1,-42v-20,-4,-45,-7,-60,-2",w:217},c:{d:"128,-123v29,-7,37,29,12,33v-27,-4,-40,6,-79,25v-8,4,-13,11,-16,22v30,32,91,3,134,11v5,13,-8,26,-22,19v-51,25,-139,28,-150,-30v6,-50,69,-82,121,-80",w:194},d:{d:"224,-201v0,-35,-17,-111,24,-94v7,86,-2,119,0,197v-4,2,-8,21,-18,16v-62,-7,-154,-8,-185,29v6,17,28,26,51,26v16,0,100,-15,132,-18v7,5,-6,20,-10,22v-24,8,-122,42,-163,25v-32,-5,-62,-53,-36,-80v35,-37,118,-46,198,-43v1,-22,7,-49,7,-80",w:265},e:{d:"4,-57v0,-58,51,-71,110,-74v33,-1,45,16,59,35v1,14,2,39,-7,42v-24,-2,-73,13,-99,11v-2,2,-2,3,-2,3v0,3,12,8,37,15v21,0,69,9,31,22v-9,14,-34,6,-56,6v-27,-5,-73,-28,-73,-60xm123,-102v-22,2,-68,5,-65,26v24,-2,66,5,79,-6v-5,-13,-1,-13,-14,-20",w:182},f:{d:"6,-59v6,-29,53,-4,53,-43v0,-64,29,-118,84,-150v45,-25,167,-24,155,51v-1,2,-7,6,0,6r-10,2v-45,-58,-165,-39,-186,39v-7,26,-11,42,-9,62v44,8,95,-21,135,-7v-12,25,-39,21,-76,30v-19,5,-18,7,-54,19v-2,8,15,32,17,35v-6,25,-26,26,-40,-5r-15,-24v-41,10,-44,12,-54,-15",w:234},g:{d:"132,-97v30,27,21,75,30,117v-12,31,-11,66,-36,103v-32,46,-105,83,-167,39v-31,-21,-49,-29,-51,-75v-2,-37,77,-50,121,-57v37,-6,68,-10,95,-11v7,-6,3,-32,4,-46v0,0,-1,1,-1,2v0,-18,-5,-31,-14,-45v-44,5,-79,20,-94,-18v3,-54,73,-54,125,-50v12,7,12,13,4,25v-30,-11,-76,8,-90,20v23,3,50,-16,74,-4xm-34,121v60,53,168,1,159,-86v-47,-7,-93,24,-142,30v-12,7,-45,19,-42,29v0,10,8,19,25,27",w:188},h:{d:"100,-310v11,-2,10,19,11,20v-11,52,-40,133,-53,189v-6,30,-9,37,-9,47v27,0,113,-34,143,-34v42,0,31,47,39,79v0,4,-5,17,-16,16v4,2,11,3,4,6v-24,-1,-28,-34,-25,-64v-1,-1,-2,-3,-5,-5v-51,0,-110,38,-162,51v-9,1,-15,-15,-16,-23v17,-89,39,-141,71,-264v0,-9,6,-19,18,-18",w:251},i:{d:"62,-209v7,18,9,23,-5,38v-23,-6,-21,-18,-11,-36v2,0,8,-1,16,-2xm34,-7v-18,-21,-8,-73,-1,-106v7,-10,20,-8,23,6v-1,36,7,72,-2,104v-8,2,-8,0,-20,-4",w:80},j:{d:"88,-191v5,28,-18,40,-28,21v0,-20,12,-29,28,-21xm82,-99v28,-1,16,35,16,61v0,60,-19,150,-35,202v-12,8,-19,31,-35,16v-32,-7,-43,-19,-56,-44r2,-17v11,4,49,45,61,18v10,-55,27,-107,30,-171v0,-16,0,-59,17,-65",w:120},k:{d:"59,-66v33,26,114,37,155,62v8,-4,22,-2,19,-17v0,-4,-12,-11,-30,-24v-36,-25,-54,-22,-99,-33v14,-21,119,-13,103,-63r-16,-7r-123,47r25,-93v-3,-15,16,-49,18,-81v1,-15,-21,-14,-25,-3v-31,82,-49,168,-75,257v2,2,22,30,27,10v2,-5,4,-9,9,-11v4,-16,4,-15,12,-44",w:236},l:{d:"66,-300v21,-6,37,23,30,55v-10,51,-28,135,-28,208v0,11,6,36,-13,37v-29,-5,-30,-48,-25,-83r28,-177v-6,-17,1,-29,8,-40",w:102},m:{d:"348,-59v-2,21,0,57,3,73v-17,3,-30,-1,-32,-16v-8,-7,-5,-44,-13,-70v-35,3,-82,49,-111,70v-12,8,-40,4,-39,-15r2,-56v-1,-13,4,-28,-8,-29v-35,8,-79,72,-115,87v-6,2,-20,-18,-21,-22v1,-20,14,-105,39,-64r8,15v17,-14,72,-56,93,-54v27,3,49,40,43,80v24,-2,66,-55,124,-53v11,14,28,23,27,54",w:368},n:{d:"121,-136v37,6,62,54,62,111v0,32,-16,25,-31,17v-18,-30,-5,-45,-22,-85v-37,-13,-71,55,-92,65v-20,-3,-39,-39,-21,-62v2,-12,3,-15,11,-30v12,-8,20,11,29,12",w:194},o:{d:"108,-139v52,-24,104,18,104,63v0,59,-66,67,-114,83v-52,-2,-115,-50,-80,-105v23,-18,52,-35,90,-41xm45,-60v16,54,125,16,131,-23v-12,-59,-129,-8,-131,23",w:217},p:{d:"82,14v-10,12,-8,117,-24,142v-15,2,-19,0,-29,-13v0,-76,9,-113,22,-192v14,-27,35,-6,37,13v0,8,-3,21,-7,38v2,2,3,2,4,2v26,-9,116,-33,126,-72v-7,-17,-24,-33,-49,-31v-40,3,-116,13,-116,47v-5,7,-2,17,-16,20v-17,-12,-18,-20,-12,-38v8,-25,74,-61,110,-59v55,-15,113,15,118,70v-15,52,-84,79,-146,83v-5,0,-11,-4,-18,-10",w:251},q:{d:"144,-147v27,-8,89,-3,97,31v-9,29,-42,-4,-73,1v-32,6,-118,20,-111,49v0,7,13,13,21,13v21,0,78,-24,104,-34v2,0,9,8,22,21v1,1,1,2,1,5v-27,90,-22,70,-43,203v11,15,-15,54,-33,33v-6,-8,-10,-20,-3,-28v1,-72,5,-114,15,-172v-35,3,-35,10,-59,8v-41,-4,-98,-41,-56,-85v33,-34,59,-27,118,-45",w:248},r:{d:"242,-117v2,22,5,10,-14,23v-73,-7,-166,-23,-174,56v-8,6,-3,20,-8,36v-29,10,-40,-9,-33,-46v6,-31,7,-69,32,-55v58,-37,66,-42,175,-19v3,5,15,4,22,5",w:229},s:{d:"154,-151v19,1,27,24,13,32v-4,1,-22,4,-53,7v-16,8,-22,-2,-39,9v23,21,89,16,96,62v-13,24,-85,35,-124,42v-9,-3,-18,-3,-27,0v-6,-4,-21,-16,-8,-25v30,-6,83,-13,102,-24v-17,-16,-80,-33,-97,-48v-3,-2,-4,-7,-4,-15v-6,-6,3,-13,15,-18v22,-9,94,-23,126,-22",w:188},t:{d:"85,-150v10,-41,35,-126,65,-134v4,1,24,19,11,36v-17,22,-29,57,-36,104v26,8,50,-7,73,5v14,0,22,3,22,9v-1,19,-44,18,-57,23v-10,1,-46,0,-54,10v-10,24,-4,67,-20,98v-21,-3,-26,1,-26,-20v0,-9,2,-36,8,-81v-15,-13,-81,9,-77,-27v4,-38,71,6,91,-23",w:194},u:{d:"207,-136v-1,-2,11,-14,14,-13v6,0,10,7,10,22v-3,40,-23,56,-40,82v-13,19,-62,43,-93,43v-67,-2,-111,-75,-71,-133v26,-3,21,29,19,49v-1,27,26,44,57,42v41,-2,93,-55,104,-92",w:242},v:{d:"24,-127r52,71v42,-16,70,-54,124,-65v5,4,8,7,8,11v-8,19,-4,8,-33,32v0,1,-1,3,-1,5v-61,45,-93,68,-97,68v-40,-15,-50,-72,-68,-100v6,-14,10,-22,15,-22",w:214},w:{d:"15,-139v38,-2,27,57,45,86v30,2,67,-66,101,-78v26,6,36,69,60,78v47,-35,51,-54,119,-104v3,0,7,-2,15,-4v19,23,-9,28,-21,49v-33,28,-68,90,-107,109v-10,6,-52,-47,-72,-71v-20,17,-85,74,-97,73v-38,7,-41,-98,-52,-122v0,-1,3,-7,9,-16",w:325},x:{d:"95,-124v22,-13,78,-32,99,-31v16,0,23,6,23,18v0,22,-17,11,-49,21v-3,0,-45,20,-42,24v0,1,2,4,8,10v20,24,49,41,44,80v-35,3,-27,-9,-60,-44v-40,-43,-37,-26,-79,9v-1,1,-2,3,-3,8v-12,8,-28,10,-27,-11v-6,-8,45,-65,48,-65v-17,-21,-61,-52,-24,-68v9,0,48,37,62,49",w:223},y:{d:"44,-65v22,33,70,4,99,-8v5,-4,28,-15,41,-31r17,0v25,47,-26,70,-40,114v-5,4,-9,8,-10,21v-16,12,-11,33,-27,51v-5,18,-12,43,-23,71v-1,-1,-2,34,-18,29v-12,1,-22,-12,-22,-23v20,-70,24,-65,68,-177v-47,16,-111,8,-116,-39v-11,-13,-7,-62,8,-62v18,0,22,26,23,54",w:216},z:{d:"189,-43v9,-1,46,-6,41,12v0,7,-5,13,-15,14v-45,6,-148,24,-181,13v0,-3,-5,-8,-14,-15v5,-44,66,-46,90,-85v-15,-18,-84,21,-84,-14v0,-10,5,-17,14,-18v33,-3,79,-13,109,-3v4,-2,14,11,12,15v0,23,-26,51,-78,84v28,10,73,-3,106,-3",w:244},"{":{d:"94,-303v27,-9,90,-14,79,26v-20,17,-55,-5,-87,13v-4,1,-6,4,-6,8v33,42,31,44,7,85v-6,10,-13,16,-13,13v5,6,17,17,15,31r-33,78v7,35,28,49,57,63r49,0v7,42,-51,41,-86,20v-43,-13,-51,-51,-56,-89v-2,-25,25,-54,27,-71v-3,-4,-46,-5,-41,-21v2,-10,-3,-29,11,-25v2,0,51,-17,52,-38v4,-3,-25,-23,-25,-49v0,-41,8,-30,50,-44",w:179},"|":{d:"30,-308v26,5,14,50,15,80v5,78,-8,153,-3,225v-2,15,-1,31,-11,36v-8,-3,-25,-22,-25,-32r9,-183v0,-40,0,-78,1,-112v0,-4,9,-15,14,-14",w:63},"}":{d:"47,-298v34,-17,118,-18,112,36v6,25,-76,98,-69,103v4,16,39,7,44,28v7,34,-34,17,-37,39v8,29,49,83,23,123v-15,23,-43,26,-73,46v-34,8,-43,11,-49,-17v1,-15,30,-15,33,-20v24,-12,70,-27,55,-61v-14,-33,-37,-68,-19,-103v-46,-50,46,-100,60,-141v-10,-16,-68,6,-77,-12",w:143},"~":{d:"7,-254v2,-6,59,-50,67,-46v11,-1,35,19,46,26v5,0,27,-10,66,-31v21,8,-1,25,-7,38v-27,21,-48,31,-65,31v-24,-11,-37,-39,-65,-9v-7,7,-26,36,-42,11v3,-5,-3,-17,0,-20",w:199}," ":{w:179},"¡":{d:"86,-197v8,16,-7,41,-24,25v-11,-11,-4,-16,-3,-29v13,0,15,-2,27,4xm46,-107v4,-8,11,-16,23,-7v19,26,-5,57,-6,87v-7,0,-5,18,-9,28v0,14,-17,52,-11,70v-2,7,-15,28,-25,12v-4,-6,-15,-7,-6,-16v2,-39,14,-96,34,-174",w:95},"¢":{d:"105,-188v13,-12,14,-18,26,-15v7,23,7,15,-3,49v6,0,18,14,17,20v-3,5,-12,19,-26,13v-14,1,-14,5,-16,21v10,10,46,-13,38,18v-9,17,-23,16,-54,20v-17,16,-4,55,-29,60v-37,-10,19,-64,-24,-71v-20,-10,-37,-47,-6,-62v23,-20,73,-4,77,-53xm65,-101v4,-9,7,-8,3,-13v-14,4,-22,10,-3,13",w:154},"£":{d:"153,-170v3,22,62,0,49,39v-18,6,-31,12,-58,9v-12,-1,-17,30,-23,39v19,26,50,56,91,35v9,-2,27,-13,27,4v0,27,-27,39,-58,42v-32,-5,-59,-19,-78,-39v-6,1,-35,44,-57,39v-25,0,-37,-15,-37,-46v0,-41,43,-53,73,-50v4,1,12,-18,12,-21v-7,-15,-49,0,-44,-30v-2,-31,31,-16,60,-19v16,-30,25,-119,93,-113v16,2,75,16,50,44v-4,5,-7,7,-12,8v-18,-12,-32,-18,-41,-18v-35,-1,-38,52,-47,77xm43,-45v4,5,12,-2,11,-9v-1,2,-12,1,-11,9",w:242},"¤":{d:"308,-133r-200,16v-2,1,-6,4,-10,10v70,-2,144,-14,211,-8v3,0,8,4,13,8v-1,4,-3,9,-9,17v-57,11,-164,6,-219,25v26,32,112,25,173,25v9,0,35,2,35,19v0,9,-4,13,-12,14v-115,12,-146,23,-211,-19v-12,-4,-22,-9,-25,-27v-6,-29,-61,3,-43,-49v17,-1,36,7,42,-12v-32,7,-36,-39,-11,-40v29,14,63,-25,73,-30v52,-25,72,-44,142,-44v23,0,21,41,-1,39v-35,-3,-61,9,-102,31v2,2,5,4,8,4v18,-6,101,-9,115,-9v7,0,55,13,31,30",w:312},"€":{d:"308,-133r-200,16v-2,1,-6,4,-10,10v70,-2,144,-14,211,-8v3,0,8,4,13,8v-1,4,-3,9,-9,17v-57,11,-164,6,-219,25v26,32,112,25,173,25v9,0,35,2,35,19v0,9,-4,13,-12,14v-115,12,-146,23,-211,-19v-12,-4,-22,-9,-25,-27v-6,-29,-61,3,-43,-49v17,-1,36,7,42,-12v-32,7,-36,-39,-11,-40v29,14,63,-25,73,-30v52,-25,72,-44,142,-44v23,0,21,41,-1,39v-35,-3,-61,9,-102,31v2,2,5,4,8,4v18,-6,101,-9,115,-9v7,0,55,13,31,30",w:312},"¥":{d:"31,-248v30,-3,64,64,74,59v37,-22,77,-65,107,-82v20,-11,34,18,21,32v-28,19,-52,38,-70,57v-18,8,-40,21,-35,60v2,19,39,7,64,7v25,0,16,21,2,27v-36,16,-46,8,-68,18v6,11,101,-20,66,24v-21,11,-42,12,-75,20v-2,1,-5,6,-10,18v-8,3,-11,10,-24,8v-7,-17,-2,-18,-9,-26v-13,5,-39,3,-53,-2v-10,-17,-7,-27,0,-34v23,-1,45,1,64,-5v-11,-7,-28,-4,-64,-6v-13,-8,-15,-24,-6,-35v33,-2,102,9,76,-37v-14,-14,-33,-38,-60,-66v-10,-10,-8,-28,0,-37",w:219},"§":{d:"141,-115v12,10,29,36,28,56v-4,68,-129,69,-152,16v-1,-12,-10,-22,8,-23v17,3,47,21,67,23v16,1,40,-8,38,-21v-8,-49,-119,-30,-117,-85v1,-28,15,-45,-3,-64v-1,-53,55,-61,103,-62v15,-5,6,-5,20,-2v16,17,23,27,23,30v-1,26,-29,7,-45,7v-21,0,-51,2,-62,17v19,14,87,8,97,43v18,14,16,57,-5,65xm64,-147r57,17v10,-28,-22,-43,-47,-44v-25,-1,-35,19,-10,27",w:174},"¨":{d:"124,-259v0,9,-4,13,-12,13v-18,0,-22,-21,-17,-35v19,-1,30,1,29,22xm23,-285v7,2,30,9,29,18v1,10,-9,19,-18,19v-19,0,-28,-26,-11,-37",w:136},"©":{d:"102,-29v-74,5,-124,-84,-70,-140v22,-22,53,-35,97,-38v46,-4,88,49,74,100v0,44,-51,75,-101,78xm96,-66v42,-3,75,-23,75,-69v0,-23,-4,-38,-44,-38v-16,0,-33,6,-49,20v36,-4,55,-12,62,20v-5,16,-49,1,-50,21v10,15,53,-14,54,11v0,18,-14,27,-42,27v-22,1,-46,-11,-46,-31v0,-25,7,-39,20,-44v-1,-1,-2,-2,-3,-2v-51,22,-32,89,23,85",w:217},"ª":{d:"6,-265v1,-31,58,-53,80,-22v-11,14,25,28,25,36v-2,8,-15,12,-27,10v-22,-29,-68,19,-78,-24xm52,-281v-8,1,-24,10,-9,13v11,1,24,-10,9,-13",w:117},"«":{d:"191,-64v16,6,87,37,53,63v-39,-9,-71,-28,-107,-40v-14,-13,-13,-34,10,-47v27,-15,48,-55,84,-62v9,-2,21,10,21,18r-13,21v-16,5,-44,22,-51,41v0,4,1,6,3,6xm71,-65v17,6,87,35,55,62v-39,-8,-66,-27,-108,-40v-14,-13,-13,-36,10,-46v23,-18,50,-56,84,-63v9,-2,21,10,21,18r-13,22v-20,6,-32,17,-51,37v0,3,-1,11,2,10",w:265},"¬":{d:"141,-99v47,7,103,-3,149,6v14,24,18,15,10,39v-10,34,-7,31,-26,76v-4,6,-15,8,-16,21v-4,2,-4,1,-13,5v-22,-33,-4,-33,16,-104v-5,-9,-28,-4,-38,-6r-183,4v-14,0,-41,-29,-17,-36v31,-9,82,5,118,-5",w:315},"®":{d:"75,-194v78,-29,116,9,130,84v-2,42,-22,47,-57,67v-74,20,-161,-19,-129,-110v6,-18,29,-34,57,-40xm46,-86v51,36,84,21,129,-15v7,-15,0,-39,-10,-49v-13,-37,-49,-26,-86,-18v-28,7,-49,46,-33,82xm72,-123v-5,-43,68,-57,75,-14v-17,26,-18,17,3,32v2,25,-25,18,-45,7r-4,-4v-1,8,-3,20,-12,24v-10,-3,-21,-34,-17,-45xm112,-135v-10,-1,-20,13,-9,14v6,-6,9,-11,9,-14",w:217},"¯":{d:"63,-295v28,-7,73,10,105,7v11,1,6,8,5,19v-37,21,-72,11,-136,11v-23,0,-31,-14,-27,-36v12,-15,40,0,53,-1",w:183},"°":{d:"106,-268v0,36,-35,38,-51,46v-48,5,-60,-58,-25,-78v33,-11,76,-9,76,32xm38,-257v16,7,39,2,38,-17v-13,-9,-28,-1,-32,11v-5,3,-7,0,-6,6",w:114},"±":{d:"93,-163v-7,46,76,-4,46,47v-14,6,-27,13,-38,8v-24,2,-14,28,-28,44r-14,0v-7,-12,-5,-15,-7,-33v-12,-7,-41,-1,-37,-24v2,-11,23,-17,36,-14r28,-38v4,0,9,4,14,10xm113,-27v-12,18,-58,27,-85,24v-16,2,-22,-23,-13,-36v28,-7,85,-11,98,12",w:151},"´":{d:"52,-284v29,-11,50,-34,62,-14v3,12,-86,54,-94,56v-14,0,-16,-12,-12,-23v11,-5,25,-11,44,-19",w:120},"¶":{d:"121,-237v21,-9,44,-13,63,-1v-1,7,5,6,7,11r-4,190v-2,33,4,39,-15,40v-16,1,-10,-20,-10,-33r4,-161v0,-17,-1,-34,-16,-25v2,10,1,23,1,35v-9,46,-6,75,-15,156v-3,4,-7,5,-12,5v-17,-10,-3,-89,-10,-115v-43,14,-98,10,-101,-29v-4,-53,59,-63,104,-75v3,1,4,2,4,2xm95,-204v2,9,-30,50,1,50v35,0,23,-13,29,-43v0,-1,-2,-7,-4,-15v-12,-1,-14,2,-26,8",w:206},"¸":{d:"74,16v32,2,49,14,55,36v-3,7,-14,31,-29,33v-28,4,-57,11,-88,14v-19,-6,-13,-31,8,-33v20,-1,59,-5,73,-14v-17,-14,-68,8,-53,-37v9,-10,2,-28,24,-30v8,8,13,17,10,31",w:129},"º":{d:"13,-273v1,-31,56,-41,83,-18v36,8,14,48,-9,52v-35,6,-64,-5,-74,-34xm81,-269v-7,-7,-20,-11,-29,-6v5,13,13,11,29,6",w:128},"»":{d:"120,-129v9,-33,48,-10,64,5v9,20,86,52,50,86v-36,11,-66,31,-107,40v-6,-7,-9,-13,-9,-17v-2,-13,50,-46,63,-46v11,-18,-33,-42,-48,-47xm1,-128v10,-33,46,-8,64,6v8,19,86,50,51,85v-40,13,-69,30,-108,40v-6,-7,-8,-12,-8,-16v-2,-14,50,-46,63,-47v7,-13,-9,-20,-19,-30v-10,-9,-20,-15,-30,-17",w:252},"¿":{d:"181,-247v3,1,31,2,29,15v-4,22,-37,27,-41,4v1,-5,7,-20,12,-19xm161,-34v-45,-1,-105,19,-124,51v0,11,18,17,54,17v39,0,82,-13,112,4v-10,35,-58,31,-100,31v-47,0,-80,-10,-99,-31v-10,-56,22,-73,64,-90v8,-3,32,-9,74,-18v21,-15,7,-62,22,-92v-1,-5,-1,-11,4,-12v16,0,24,7,24,22v-8,30,-8,73,-17,111v-3,5,-7,7,-14,7",w:213},"À":{d:"161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm150,-268v14,10,54,14,37,41v-28,-7,-62,-22,-100,-42v-2,-3,-2,-26,5,-23v16,4,42,17,58,24"},"Á":{d:"161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm84,-250v31,-5,83,-53,100,-31v0,5,-11,15,-35,28v-16,5,-51,28,-53,25v-14,1,-16,-11,-12,-22"},"Â":{d:"161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm202,-219v-27,-6,-40,-26,-61,-37v-21,7,-39,46,-65,23v-2,-4,-3,-10,-4,-14v19,-4,43,-32,61,-43v27,6,40,22,62,37v12,8,18,17,18,25v0,6,-3,9,-11,9"},"Ã":{d:"161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm100,-285v26,-19,54,19,69,22v4,0,15,-5,34,-13v23,-9,22,-17,31,-12v3,11,-9,9,-7,21v-26,20,-46,30,-59,30v-3,3,-50,-26,-49,-29v-12,1,-31,35,-51,32v-3,-8,-5,-14,-5,-18v10,-9,16,-17,37,-33"},"Ä":{d:"161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm187,-259v0,8,-4,13,-12,13v-18,0,-21,-20,-16,-34v18,-1,28,2,28,21xm90,-284v7,3,28,11,28,18v0,9,-9,18,-18,17v-17,0,-25,-24,-10,-35"},"Å":{d:"161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm112,-239v-31,-17,-9,-61,29,-56v12,2,22,3,33,12v24,39,-30,62,-62,44xm119,-262v2,14,41,8,41,-4v0,-4,-8,-6,-24,-9v-10,-2,-17,10,-17,13"},"Æ":{d:"335,-259v0,30,-102,12,-122,34v10,21,2,79,16,100v24,-6,59,-13,86,-16v23,-2,32,21,13,26r-103,29v-3,22,-4,38,8,43v28,-5,60,-6,86,-14v5,-1,14,7,14,11v6,16,-90,40,-107,40v-29,0,-39,-19,-32,-46v-2,-4,0,-26,-9,-28v-29,2,-58,6,-88,6v-31,0,-40,74,-82,73v-18,-23,4,-37,12,-50v40,-65,112,-126,165,-207v20,-17,69,-11,112,-13v21,0,31,4,31,12xm123,-111v28,1,44,-2,67,-10v-4,-22,5,-49,-7,-65v-3,6,-65,61,-60,75",w:348},"Ç":{d:"48,-108v-12,70,90,71,159,67r138,-9v9,-1,7,9,7,17v-37,16,-80,27,-103,21v-14,9,-40,3,-67,9v-30,0,-64,1,-100,-10v-6,-1,-10,-4,-10,-8v-32,-12,-46,-31,-63,-56v-16,-61,47,-103,83,-121v82,-42,118,-45,200,-60v21,-4,36,34,11,37v-90,11,-148,31,-225,77v-12,8,-23,20,-30,36xm172,18v29,4,47,14,53,35v-2,7,-14,31,-27,31v-28,7,-55,9,-84,14v-18,-5,-13,-32,7,-32v21,0,55,-5,69,-13v-16,-14,-63,10,-50,-35v9,-10,1,-27,23,-29v7,8,11,16,9,29", +w:331},"È":{d:"49,-160v1,-4,-10,-9,-15,-8v-15,-35,32,-30,57,-31r142,-8v2,1,30,7,40,10v-52,16,-133,17,-190,30v-7,9,-12,24,-15,47v26,10,102,-6,141,3v1,3,1,6,2,10v-36,18,-92,12,-149,21v-11,9,-16,41,-16,51v55,-1,111,-21,168,-13v15,-8,48,1,31,18v-53,16,-130,13,-198,29r-39,-8v-4,-19,17,-53,20,-76v-1,0,-7,-11,-9,-18v18,-7,22,-28,30,-57xm184,-236v6,9,5,13,0,23v-28,-7,-62,-21,-100,-41v-3,-2,-3,-27,5,-23v34,11,60,25,95,41",w:252},"É":{d:"49,-160v1,-4,-10,-9,-15,-8v-15,-35,32,-30,57,-31r142,-8v2,1,30,7,40,10v-52,16,-133,17,-190,30v-7,9,-12,24,-15,47v26,10,102,-6,141,3v1,3,1,6,2,10v-36,18,-92,12,-149,21v-11,9,-16,41,-16,51v55,-1,111,-21,168,-13v15,-8,48,1,31,18v-53,16,-130,13,-198,29r-39,-8v-4,-19,17,-53,20,-76v-1,0,-7,-11,-9,-18v18,-7,22,-28,30,-57xm133,-248v27,-11,48,-32,59,-14v3,11,-79,52,-88,53v-14,1,-16,-11,-12,-21v10,-4,23,-11,41,-18",w:252},"Ê":{d:"49,-160v1,-4,-10,-9,-15,-8v-15,-35,32,-30,57,-31r142,-8v2,1,30,7,40,10v-52,16,-133,17,-190,30v-7,9,-12,24,-15,47v26,10,102,-6,141,3v1,3,1,6,2,10v-36,18,-92,12,-149,21v-11,9,-16,41,-16,51v55,-1,111,-21,168,-13v15,-8,48,1,31,18v-53,16,-130,13,-198,29r-39,-8v-4,-19,17,-53,20,-76v-1,0,-7,-11,-9,-18v18,-7,22,-28,30,-57xm199,-211v-27,-6,-39,-26,-60,-37v-21,7,-40,47,-65,22v-2,-7,-2,-7,-4,-13v18,-5,44,-31,61,-43v27,6,41,22,62,37v12,9,18,17,18,25v0,6,-4,9,-12,9",w:252},"Ë":{d:"49,-160v1,-4,-10,-9,-15,-8v-15,-35,32,-30,57,-31r142,-8v2,1,30,7,40,10v-52,16,-133,17,-190,30v-7,9,-12,24,-15,47v26,10,102,-6,141,3v1,3,1,6,2,10v-36,18,-92,12,-149,21v-11,9,-17,41,-17,51v55,0,112,-21,169,-13v15,-8,48,1,31,18v-53,16,-130,13,-198,29r-39,-8v-3,-21,17,-53,20,-76v-1,0,-7,-11,-9,-18v18,-7,22,-28,30,-57xm191,-236v0,8,-4,13,-12,13v-17,0,-19,-19,-16,-34v18,-1,29,1,28,21xm95,-261v7,3,29,9,28,18v0,7,-9,17,-18,17v-18,0,-26,-25,-10,-35",w:252},"Ì":{d:"33,-5v-9,-6,-9,-12,-9,-36v0,-71,8,-119,22,-144v8,-13,14,-20,19,-20v27,20,-11,87,-10,120r-15,76v-1,1,-4,2,-7,4xm72,-247v7,6,55,15,36,40v-28,-7,-61,-21,-99,-41v-3,-2,-3,-27,5,-23v18,3,41,17,58,24",w:111},"Í":{d:"26,-5v-9,-6,-9,-12,-9,-36v0,-71,7,-119,21,-144v8,-13,14,-20,19,-20v28,19,-7,89,-10,120v-2,21,-8,47,-14,76v-2,1,-2,0,-7,4xm6,-233v31,-6,83,-53,101,-31v2,11,-80,53,-89,53v-14,1,-14,-11,-12,-22",w:104},"Î":{d:"53,-9v-15,7,-16,-3,-16,-32v0,-71,7,-119,21,-144v8,-13,14,-20,19,-20v28,19,-7,89,-10,120v-2,21,-8,47,-14,76xm137,-209v-27,-6,-40,-26,-61,-37v-8,0,-9,4,-13,10v-11,13,-50,37,-56,0v18,-5,43,-32,61,-43v28,5,40,21,62,36v12,9,18,17,18,25v0,6,-4,9,-11,9",w:144},"Ï":{d:"33,-5v-9,-6,-9,-12,-9,-36v0,-71,8,-119,22,-144v8,-13,14,-20,19,-20v27,20,-11,87,-10,120r-15,76v-1,1,-4,2,-7,4xm111,-222v0,8,-4,12,-12,12v-18,0,-19,-19,-16,-33v18,-1,29,1,28,21xm15,-247v8,2,29,9,28,17v0,21,-37,24,-36,1v0,-7,2,-13,8,-18",w:110},"Ñ":{d:"224,-182v1,-17,15,-24,22,-38v20,0,13,10,3,33v-3,36,-25,52,-28,94v-10,24,-30,55,-29,82r-19,7v-32,-8,-36,-70,-58,-111v-2,-23,-7,-27,-19,-54v-28,36,-41,93,-71,133v-9,5,-20,-9,-20,-17r73,-149v9,-24,31,-5,36,7v19,41,31,98,53,139v22,-35,34,-69,50,-118v2,-3,3,-3,7,-8xm203,-257v22,-8,41,-24,65,-26v3,11,-8,9,-7,21v-26,20,-46,31,-59,31v-2,3,-49,-27,-49,-29v-11,0,-32,31,-46,32v-11,-2,-12,-21,-4,-23v4,-6,28,-30,48,-34v17,-4,43,28,52,28",w:219},"Ò":{d:"62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm161,-262v14,10,52,13,37,41v-28,-7,-62,-21,-100,-41v-3,-3,-3,-26,5,-24v16,5,42,17,58,24",w:273},"Ó":{d:"62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm142,-250v27,-11,47,-32,59,-14v2,11,-80,53,-89,53v-13,1,-15,-11,-12,-21v10,-5,24,-11,42,-18",w:273},"Ô":{d:"62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm157,-282v17,18,52,34,54,63v-24,12,-52,-36,-53,-29r-42,34v-23,-4,-6,-31,5,-34v1,1,27,-37,36,-34",w:273},"Õ":{d:"62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm116,-270v26,-19,54,19,69,22v4,0,15,-5,34,-13v23,-10,22,-16,31,-12v3,11,-8,9,-7,21v-45,28,-47,42,-88,16v-29,-19,-12,-20,-43,2v-8,5,-12,18,-23,15v-13,-3,-12,-20,-4,-23v4,-6,14,-15,31,-28",w:273},"Ö":{d:"62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm197,-229v0,8,-4,13,-12,13v-17,0,-19,-19,-16,-34v18,-1,29,1,28,21xm101,-254v7,3,28,9,27,18v1,8,-8,17,-17,17v-18,0,-26,-24,-10,-35",w:273},"Ø":{d:"76,-211v41,-13,100,-22,140,-3v26,-19,40,-29,44,-29v10,0,15,7,15,20v0,15,-23,23,-30,35v23,39,29,114,-21,139v-36,19,-102,35,-147,18v-14,-5,-29,29,-46,35v-25,-13,-19,-24,3,-56v-9,-17,-28,-27,-28,-60v0,-38,23,-72,70,-99xm107,-66v55,15,125,-12,123,-70v0,-16,-5,-25,-13,-29r-110,95r0,4xm39,-108v-1,3,17,31,22,27v8,-6,109,-90,123,-106v-15,-11,-43,1,-63,2v-33,10,-80,35,-82,77",w:270},"Ù":{d:"281,-202v6,67,-30,121,-71,152v-3,14,-47,26,-60,39v-41,20,-110,1,-125,-26v-24,-44,-28,-84,-8,-127v12,-26,23,-38,37,-22v-2,2,-3,5,-3,10v-34,26,-30,116,5,134v22,32,86,-1,109,-8v38,-28,104,-64,97,-149v2,-10,7,-8,19,-3xm151,-243v14,10,54,14,37,41v-28,-7,-61,-22,-99,-42v-3,-2,-4,-25,4,-23v16,5,42,17,58,24",w:262},"Ú":{d:"281,-202v6,67,-30,121,-71,152v-3,14,-47,26,-60,39v-41,20,-110,1,-125,-26v-24,-44,-28,-84,-8,-127v12,-26,23,-38,37,-22v-2,2,-3,5,-3,10v-34,26,-30,116,5,134v22,32,86,-1,109,-8v38,-28,104,-64,97,-149v2,-10,7,-8,19,-3xm194,-265v3,-1,11,4,11,6v3,12,-81,52,-89,54v-14,0,-13,-9,-12,-22",w:262},"Û":{d:"281,-202v6,67,-30,121,-71,152v-3,14,-47,26,-60,39v-41,20,-110,1,-125,-26v-24,-44,-28,-84,-8,-127v12,-26,23,-38,37,-22v-2,2,-3,5,-3,10v-34,26,-30,116,5,134v22,32,86,-1,109,-8v38,-28,104,-64,97,-149v2,-10,7,-8,19,-3xm150,-266v24,11,58,27,73,46v0,5,-3,6,-10,6v-28,2,-61,-30,-63,-25v-10,0,-57,40,-69,23v3,-10,-8,-15,8,-19v17,-1,34,-29,61,-31",w:262},"Ü":{d:"281,-202v6,67,-30,121,-71,152v-3,14,-47,26,-60,39v-41,20,-110,1,-125,-26v-24,-44,-28,-84,-8,-127v12,-26,23,-38,37,-22v-2,2,-3,5,-3,10v-34,26,-29,116,5,134v22,32,86,-1,109,-8v38,-28,104,-64,97,-149v2,-10,7,-8,19,-3xm197,-227v0,8,-4,13,-12,13v-18,0,-21,-20,-16,-34v18,-1,28,2,28,21xm101,-252v7,3,27,10,27,18v0,8,-9,18,-18,17v-18,-1,-24,-25,-9,-35",w:262},"ß":{d:"33,10v-29,4,-28,-32,-16,-70v18,-58,17,-137,56,-176v12,-24,46,-58,82,-43v20,8,47,24,47,54v0,30,-62,59,-67,90v33,23,56,33,63,63v-18,21,-22,36,-48,54v-24,17,-27,41,-53,16v-2,-19,7,-35,24,-42v15,-13,26,-22,34,-40v-13,-17,-78,-29,-56,-70v-3,-27,64,-54,66,-86v-8,-25,-41,-4,-52,8v-29,30,-47,83,-51,141v-17,25,-8,71,-29,101"},"à":{d:"118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm99,-137v7,6,56,14,37,40v-28,-7,-62,-21,-100,-41v-2,-3,-2,-26,5,-23v16,4,42,17,58,24",w:173},"á":{d:"118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm32,-117v24,-3,85,-55,101,-32v3,11,-80,53,-89,53v-13,2,-14,-10,-12,-21",w:173},"â":{d:"118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm147,-97v-27,-6,-39,-26,-60,-37v-21,7,-38,46,-65,23v-2,-5,-3,-10,-4,-14v18,-4,43,-31,61,-42v28,5,40,21,62,36v12,8,18,17,18,25v0,6,-4,9,-12,9",w:173},"ã":{d:"118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm114,-136v22,-8,41,-24,64,-26v3,11,-7,10,-7,21v-26,20,-45,30,-58,30v-3,3,-49,-26,-49,-28v-10,-1,-32,35,-51,31v-12,-32,8,-29,32,-51v24,-21,54,20,69,23",w:173},"ä":{d:"118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-32,5,-66,-64,-15,-77v39,-26,92,-36,104,9v0,6,-3,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm142,-119v0,8,-4,13,-12,13v-18,0,-21,-20,-16,-34v18,-1,28,2,28,21xm46,-144v7,3,28,9,27,18v1,8,-9,18,-18,17v-18,-1,-25,-25,-9,-35",w:173},"å":{d:"118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm54,-101v-37,-20,-9,-71,34,-65v13,1,25,3,38,13v27,45,-34,73,-72,52xm61,-128v4,20,48,7,49,-5v0,-5,-9,-7,-28,-10v-12,-2,-21,11,-21,15",w:173},"æ":{d:"145,-44r33,7v2,42,-59,29,-85,16v-6,7,-35,24,-48,15v-19,2,-35,-21,-33,-37v2,-24,5,-19,28,-36v-6,-8,-45,3,-33,-21v21,-22,58,-12,85,-1v6,-5,35,-28,45,-15v20,-4,36,17,36,35v0,23,-4,21,-28,37xm111,-72v12,3,49,-16,19,-17v-5,0,-20,12,-19,17xm74,-50v-14,-4,-48,16,-19,17v4,1,19,-14,19,-17",w:184},"ç":{d:"108,-118v30,-6,56,21,25,33v-24,-6,-39,5,-75,23v-7,4,-12,12,-15,22v31,28,86,3,128,9v3,28,-29,16,-44,28v-53,15,-106,10,-120,-37v0,-48,62,-70,101,-78xm92,18v23,4,45,12,48,32v-2,6,-12,28,-25,28v-24,6,-50,10,-77,13v-16,-4,-11,-28,7,-29v17,-1,51,-4,63,-12v-14,-15,-57,10,-46,-32v9,-8,0,-25,21,-26v6,6,12,14,9,26",w:171},"è":{d:"108,-124v42,-3,70,39,50,73v-22,-1,-70,12,-94,10v-1,1,-2,3,-2,3v0,3,12,7,35,14v18,0,64,7,30,21v-10,14,-31,6,-53,6v-26,-7,-70,-26,-70,-58v0,-54,48,-65,104,-69xm130,-78v-2,-35,-66,-13,-77,3v16,6,62,6,77,-3xm95,-166v7,6,54,14,37,40v-28,-7,-62,-21,-100,-41v-3,-3,-3,-26,5,-24v16,5,42,18,58,25",w:161},"é":{d:"108,-124v42,-3,70,39,50,73v-22,-1,-70,12,-94,10v-1,1,-2,3,-2,3v0,3,12,7,35,14v18,0,64,7,30,21v-10,14,-31,6,-53,6v-26,-7,-70,-26,-70,-58v0,-54,48,-65,104,-69xm130,-78v-2,-35,-66,-13,-77,3v16,6,62,6,77,-3xm76,-169v26,-11,48,-32,59,-14v3,10,-80,53,-89,53v-14,1,-14,-10,-12,-21v15,-7,16,-7,42,-18",w:161},"ê":{d:"108,-124v42,-3,70,39,50,73v-22,-1,-70,12,-94,10v-1,1,-2,3,-2,3v0,3,12,7,35,14v18,0,64,7,30,21v-10,14,-31,6,-53,6v-26,-7,-70,-26,-70,-58v0,-54,48,-65,104,-69xm130,-78v-2,-35,-66,-13,-77,3v16,6,62,6,77,-3xm145,-129v-27,-6,-39,-26,-60,-37v-8,0,-10,4,-14,10v-11,15,-51,34,-56,0v17,-4,44,-32,61,-43v28,5,41,21,63,36v12,8,17,17,17,25v0,6,-3,9,-11,9",w:161},"ë":{d:"108,-124v42,-3,70,39,50,73v-22,-1,-70,12,-94,10r-3,3v0,3,12,7,36,14v18,0,64,7,30,21v-10,14,-31,6,-53,6v-26,-7,-67,-27,-71,-58v7,-52,48,-65,105,-69xm130,-78v-2,-35,-66,-13,-77,3v16,6,62,6,77,-3xm140,-144v0,8,-4,12,-12,12v-18,0,-19,-19,-16,-33v18,-1,29,1,28,21xm44,-169v7,3,28,9,28,17v0,9,-9,18,-18,18v-18,0,-25,-24,-10,-35",w:161},"ì":{d:"57,-98v22,5,13,50,11,95v-7,1,-11,2,-20,-4v1,-7,-12,-18,-10,-24v4,-22,-2,-64,19,-67xm70,-139v14,10,54,14,37,41v-28,-7,-61,-22,-99,-42v-3,-2,-3,-25,5,-23v15,5,41,17,57,24",w:109},"í":{d:"59,-98v20,4,15,53,10,95v-6,1,-11,2,-19,-4v1,-7,-12,-18,-10,-24v4,-22,-4,-65,19,-67xm50,-139v27,-11,49,-32,59,-14v3,11,-80,53,-89,53v-14,1,-14,-12,-11,-22v15,-7,14,-6,41,-17",w:105},"î":{d:"72,-98v20,5,12,51,10,95v-6,2,-13,1,-20,-4v1,-8,-12,-18,-10,-24v4,-22,-3,-65,20,-67xm134,-94v-26,-7,-39,-25,-60,-37v-7,0,-9,4,-13,10v-14,15,-51,34,-56,-1v18,-4,45,-33,61,-43v27,6,40,22,62,37v12,8,18,17,18,25v0,6,-4,9,-12,9",w:143},"ï":{d:"55,-97v19,5,15,53,10,95v-17,5,-26,-14,-30,-28v6,-20,-3,-65,20,-67xm110,-118v0,8,-4,13,-12,13v-17,0,-19,-19,-16,-34v18,-1,29,1,28,21xm14,-143v6,3,28,8,28,17v0,9,-9,18,-18,18v-18,0,-25,-24,-10,-35",w:107},"ñ":{d:"115,-129v34,6,59,50,59,105v0,31,-15,24,-30,17v-15,-29,-5,-42,-20,-81v-35,-13,-68,52,-88,61v-20,-4,-38,-36,-19,-59v0,-12,3,-14,10,-28v11,-8,18,11,27,12xm117,-166v22,-7,41,-23,64,-26v3,11,-7,10,-7,21v-26,20,-45,30,-58,30v-3,3,-49,-26,-49,-28v-10,-1,-32,35,-51,31v-5,-12,-8,-16,0,-23v4,-6,28,-29,48,-33v17,-3,43,28,53,28",w:171},"ò":{d:"102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm115,-181v14,10,51,13,37,40v-28,-7,-62,-21,-100,-41v-3,-2,-3,-26,5,-23v16,5,42,17,58,24",w:191},"ó":{d:"102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm49,-154v24,-3,85,-55,101,-32v3,11,-80,53,-89,53v-14,0,-13,-8,-12,-21",w:191},"ô":{d:"102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm110,-177v-22,6,-38,45,-65,22v-2,-4,-3,-9,-4,-13v18,-4,43,-32,61,-43v27,6,40,21,62,36v12,9,18,17,18,25v1,11,-15,10,-23,7",w:191},"õ":{d:"102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm58,-199v26,-21,54,18,69,22v4,0,15,-5,34,-13v22,-9,21,-16,31,-13v3,11,-9,9,-7,22v-26,20,-46,30,-59,30v-2,4,-49,-28,-49,-29v-11,0,-32,31,-46,32v-12,-3,-13,-21,-4,-23v4,-6,14,-15,31,-28",w:191},"ö":{d:"102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm161,-160v0,8,-4,13,-12,13v-17,0,-19,-19,-16,-34v18,-1,29,1,28,21xm65,-185v7,3,28,9,28,18v0,7,-9,18,-18,17v-18,1,-25,-24,-10,-35",w:191},"÷":{d:"167,-158v-4,3,-7,9,-10,20v-23,4,-34,-8,-29,-31v14,-6,18,1,39,11xm78,-72v-53,11,-53,12,-69,-15v-1,-12,11,-17,22,-14v71,-13,151,-18,230,-24v11,1,21,16,23,28v-28,20,-90,11,-126,16v-36,5,-62,5,-80,9xm123,-40v19,-17,41,-1,41,17v0,13,-6,19,-17,19v-15,0,-29,-14,-24,-36",w:293},"ø":{d:"76,-136v17,7,33,-8,51,0v9,-6,21,-13,36,-21v23,22,-13,31,3,50v11,13,4,21,14,35v-4,5,-1,14,-4,23v-14,23,-45,41,-84,39v-12,2,-29,28,-41,38v-2,-11,-34,-10,-15,-30v3,-7,5,-11,5,-11v-15,-24,-60,-54,-22,-89v23,-21,25,-32,57,-34xm102,-54v18,1,50,-19,30,-32v-12,7,-22,18,-30,32xm85,-92v-14,3,-26,8,-38,17v2,20,17,13,26,0v6,-8,12,-13,12,-17",w:188},"ù":{d:"196,-129v-1,-4,12,-13,15,-13v6,0,8,7,8,21v0,24,-7,25,-13,45v-7,7,-14,21,-24,29v-9,24,-61,45,-89,45v-63,0,-105,-72,-67,-126v24,-3,19,27,18,46v-1,26,23,42,54,40v38,-3,88,-51,98,-87xm126,-166v7,6,56,14,37,40v-28,-7,-62,-22,-100,-42v-2,-3,-2,-26,5,-23v16,4,42,18,58,25",w:213},"ú":{d:"196,-129v-1,-4,12,-13,15,-13v6,0,8,7,8,21v0,24,-7,25,-13,45v-7,7,-14,21,-24,29v-9,24,-61,45,-89,45v-63,0,-105,-72,-67,-126v24,-3,19,27,18,46v-1,26,23,42,54,40v38,-3,88,-51,98,-87xm106,-174v26,-11,48,-32,59,-14v3,11,-81,53,-89,54v-13,1,-15,-12,-11,-22v15,-7,14,-7,41,-18",w:213},"û":{d:"196,-129v-1,-4,12,-13,15,-13v6,0,8,7,8,21v0,24,-7,25,-13,45v-7,7,-14,21,-24,29v-9,24,-61,45,-89,45v-63,0,-105,-72,-67,-126v24,-3,19,27,18,46v-1,26,23,42,54,40v38,-3,88,-51,98,-87xm172,-143v-27,-6,-39,-26,-60,-37v-8,0,-10,4,-14,10v-11,15,-49,35,-56,0v17,-4,44,-32,61,-43v27,6,41,21,63,36v12,9,17,17,17,25v0,6,-3,9,-11,9",w:213},"ü":{d:"196,-129v-1,-4,12,-13,15,-13v6,0,8,7,8,21v0,24,-7,25,-13,45v-7,7,-14,21,-24,29v-9,24,-61,45,-89,45v-63,0,-105,-72,-67,-126v24,-3,19,27,18,46v-1,26,23,42,54,40v38,-3,88,-51,98,-87xm168,-161v0,8,-3,13,-11,13v-17,0,-20,-19,-17,-34v18,-1,29,1,28,21xm72,-186v7,3,29,9,28,18v0,7,-9,18,-18,17v-18,1,-25,-24,-10,-35",w:213},"ÿ":{d:"118,85v-11,11,-11,38,-22,61v-2,-1,-2,31,-17,27v-11,0,-21,-10,-21,-22v20,-66,23,-61,64,-168v-22,1,-38,16,-58,4v-22,4,-51,-16,-51,-42v-11,-13,-7,-59,7,-58v16,1,21,24,22,51v21,33,66,5,94,-7v4,-3,26,-14,38,-29r17,0v23,44,-23,59,-34,102v-6,9,-13,9,-13,26v-15,6,-12,33,-27,48v0,2,1,4,1,7xm158,-136v0,8,-4,13,-12,13v-18,0,-21,-20,-16,-34v18,-1,29,1,28,21xm62,-161v7,3,28,9,27,18v1,8,-8,17,-17,17v-18,0,-26,-24,-10,-35",w:190},"ı":{d:"43,-103v21,4,16,56,11,100v-7,2,-11,1,-20,-5v0,-7,-13,-18,-11,-25v4,-23,-3,-68,20,-70",w:80},"Œ":{d:"247,-243v71,4,161,-7,245,-8v17,0,27,6,27,17v-8,27,-70,14,-104,23v-3,1,-52,0,-65,7r0,4v16,16,17,29,17,65v32,10,74,-14,99,16v-14,25,-76,17,-127,24v-17,18,-55,32,-75,51v85,0,128,-3,204,-11v15,-2,21,11,20,29v-78,24,-177,12,-270,24v-24,3,-24,-29,-48,-15v-46,7,-70,4,-105,-4v-19,-18,-42,-22,-52,-55v-10,-34,0,-47,12,-78v-18,-59,48,-78,105,-84v17,-18,103,-13,117,-5xm125,-45v76,-9,186,-43,209,-105v-26,-67,-137,-83,-217,-54v3,34,-45,25,-60,58v-41,48,5,108,68,101",w:492},"œ":{d:"185,-54v25,28,107,-17,104,33v-12,12,-60,14,-87,14v0,0,1,1,2,1v-11,1,-39,-9,-50,-17v-28,17,-75,32,-114,7v-22,-14,-34,-11,-34,-41v0,-36,33,-49,48,-75v29,-16,72,-3,95,11v12,-9,48,-27,59,-26v30,0,64,15,65,40v0,7,-6,20,-20,37v-29,1,-44,11,-68,16xm226,-106v-21,-7,-41,-2,-48,13v14,1,42,-7,48,-13xm132,-87v-21,-35,-94,11,-92,24v-2,14,43,21,61,21v25,0,36,-20,31,-45",w:295},"Ÿ":{d:"176,-189v35,20,-25,54,-39,72v-26,34,-57,57,-74,104v-10,15,-4,14,-23,3r0,-10v19,-44,27,-46,50,-81v-9,-5,-24,4,-34,4v-38,0,-54,-50,-44,-87v21,-5,18,19,22,35v4,18,15,27,29,27v41,0,60,-39,113,-67xm153,-222v0,8,-3,12,-11,12v-18,0,-21,-19,-16,-33v18,-1,28,2,27,21xm57,-247v8,2,29,9,28,17v0,21,-37,24,-36,1v0,-7,2,-13,8,-18",w:135},"ƒ":{d:"115,-262v-23,6,-39,63,-38,96v1,3,57,2,54,16v1,22,-45,15,-51,30v3,34,12,68,10,103v14,17,-18,53,-28,63v-48,8,-89,5,-95,-37v20,-5,77,21,83,-18v17,-29,-4,-61,0,-98v0,-5,-3,-10,-7,-17v-33,4,-43,-17,-25,-37v10,-4,27,5,27,-10v0,-43,15,-77,32,-109v12,-7,16,-22,38,-20v11,1,51,35,25,55v-9,1,-16,-17,-25,-17",w:145},"ˆ":{d:"144,-220v-29,0,-41,-27,-63,-39v-8,0,-11,5,-15,11v-17,12,-32,31,-54,13v-2,-5,-3,-9,-4,-14v20,-5,45,-33,64,-45v28,6,43,23,65,38v12,9,19,19,19,27v0,6,-4,9,-12,9",w:165},"ˇ":{d:"39,-286v33,46,63,-4,96,-16v6,0,9,6,9,19v0,24,-49,46,-77,46v-32,0,-52,-28,-59,-48v0,-25,23,-17,31,-1",w:153},"˘":{d:"65,-269v20,-11,45,-31,74,-36v20,30,-42,40,-59,66v-5,6,-11,8,-18,8v-8,-3,-45,-32,-51,-54v5,-24,14,-13,34,1",w:158},"˙":{d:"23,-302v15,-13,32,1,32,18v1,22,-36,29,-39,4v0,0,3,-7,7,-22",w:70},"˚":{d:"23,-225v-43,-24,-11,-85,41,-78v16,2,31,4,46,17v32,54,-41,86,-87,61xm33,-257v2,20,57,11,57,-6v0,-6,-11,-9,-33,-12v-14,-2,-24,13,-24,18",w:123},"˛":{d:"82,-5v-8,12,-16,55,-21,75v0,4,2,7,7,7v6,0,22,-7,50,-20v8,0,12,7,12,20v-2,22,-6,14,-27,30v-15,12,-26,16,-30,16v-47,-8,-59,-14,-56,-75v8,-27,12,-54,25,-77v19,-21,35,15,40,24",w:138},"˜":{d:"47,-300v26,-21,57,19,72,23v4,0,16,-5,36,-14v24,-10,22,-16,32,-13v3,12,-7,11,-7,23v-27,21,-48,32,-62,32v-3,2,-52,-27,-51,-31v-12,-2,-34,40,-54,33v-4,-13,-8,-18,1,-24v5,-7,16,-15,33,-29",w:186},"˝":{d:"91,-249v15,-11,38,-53,57,-29v0,9,0,14,-3,23v-2,3,-20,22,-54,55v-5,5,-10,8,-16,8v-17,2,-6,-22,-7,-31v-1,0,-2,0,-4,1v-17,21,-29,31,-50,27v-5,-18,-3,-15,3,-27v23,-27,40,-46,48,-59v7,-12,31,3,29,9v-1,14,-3,24,-13,31v4,4,9,-1,10,-8",w:151},"–":{d:"6,-66v-8,-72,79,-21,146,-39v37,-10,79,7,111,0v9,8,14,13,14,17v2,26,-72,13,-99,21v-83,4,-124,21,-172,1",w:282},"—":{d:"175,-106v86,-9,201,1,286,-1v11,6,13,11,6,30v-118,15,-246,10,-377,10v-25,0,-73,3,-82,-8r-2,-26v11,-13,32,-9,52,-7v38,3,84,-5,117,2",w:485},"‘":{d:"73,-262v-10,7,-41,39,-38,69v-15,13,-27,-16,-28,-28v-2,-20,51,-83,66,-83v20,0,25,41,0,42",w:95},"’":{d:"74,-300v13,31,-1,99,-44,101v-13,0,-19,-5,-19,-15v6,-10,31,-34,35,-59v2,-11,1,-32,11,-32v6,0,11,2,17,5",w:90},"‚":{d:"25,63v-26,21,-48,-2,-22,-24v14,-12,35,-40,35,-69v3,-2,3,-11,12,-9v35,17,5,88,-25,102",w:97},"“":{d:"66,-261v-21,5,-37,51,-22,77v0,4,-2,6,-7,6v-31,-9,-38,-62,-12,-94v12,-15,21,-28,31,-34v16,-1,19,24,22,34v10,-11,22,-32,43,-23v-2,8,4,16,5,19v-6,11,-51,53,-29,74v-12,21,-30,5,-33,-17v-6,-13,9,-28,2,-42",w:118},"”":{d:"120,-294v12,3,30,26,19,34v2,15,-40,70,-55,66v-40,-10,10,-51,14,-64v3,-3,8,-31,22,-36xm70,-306v14,3,26,34,16,49v-19,30,-31,45,-58,59v-12,-11,-33,-17,-7,-36v13,-19,36,-27,36,-59v0,-5,9,-13,13,-13",w:148},"„":{d:"25,63v-26,21,-48,-2,-22,-24v11,-9,36,-41,35,-69v3,-2,4,-12,12,-9v36,14,5,89,-25,102xm84,64v-24,20,-45,-1,-21,-24v21,-20,32,-35,35,-69v3,-2,3,-11,12,-9v36,17,9,86,-26,102",w:135},"†":{d:"22,-286v15,6,5,-20,19,-19v9,-3,15,21,17,22v6,1,12,3,20,6v3,10,5,16,-9,16v-34,-10,-6,51,-34,52v-20,-7,11,-47,-15,-49v-14,3,-25,-5,-17,-24v7,-2,14,-4,19,-4",w:77},"‡":{d:"102,-284v16,2,42,-2,33,18v-7,15,-42,1,-38,30v3,3,31,1,30,11v4,15,-29,19,-36,24v-2,18,-4,24,-16,29r-25,-26v-25,7,-53,3,-42,-25v4,-10,70,0,51,-22v-17,4,-41,12,-39,-15v-5,-16,39,-18,44,-20v4,-2,7,-10,10,-24v19,-3,23,6,28,20",w:145},"•":{d:"130,-114v0,47,-124,54,-120,-8r6,-31v44,-28,64,-34,104,0v8,6,10,20,10,39",w:139},"…":{d:"244,-24v-1,21,-38,32,-41,3v-2,-19,23,-22,34,-17v0,7,0,15,7,14xm113,-24v0,-22,28,-21,38,-8v5,34,-39,40,-38,8xm35,-2v-10,-2,-36,-17,-18,-29v-1,-15,17,-17,31,-6v7,17,6,33,-13,35",w:258},"‰":{d:"398,-131v58,-1,87,13,72,65v-1,30,-66,63,-99,65v-56,3,-99,-58,-62,-102v2,2,5,2,8,2v20,-16,51,-17,81,-30xm202,-279v33,0,94,-24,95,18v-7,31,-33,27,-54,55v-36,32,-71,74,-112,99v-18,18,-40,34,-51,58v-19,14,-25,37,-56,40v-17,2,-25,-29,-10,-40v15,-11,40,-37,52,-52r87,-72v-51,13,-100,6,-116,-27v1,-5,-6,-30,-9,-36v-3,-5,22,-41,27,-39v29,2,16,34,5,49v0,15,14,23,42,23v42,0,59,-31,28,-38v-17,-4,-53,3,-50,-23v0,-7,1,-12,4,-16v16,-9,36,4,49,5v0,0,23,-4,69,-4xm222,-118v33,-2,55,18,50,57v-29,36,-48,45,-96,50v-27,-5,-56,-17,-58,-51v13,-37,64,-43,104,-56xm335,-61v13,44,101,7,108,-31v-11,-3,-20,-4,-30,-4v-18,-1,-82,18,-78,35xm225,-244v-18,0,-29,-1,-46,3v7,15,6,28,0,43v15,-14,34,-30,46,-46xm164,-53v26,5,59,-10,76,-26v-17,-16,-49,2,-67,14v1,8,-8,6,-9,12",w:485},"‹":{d:"64,-107v9,17,86,17,87,43v0,11,-4,16,-13,16v-36,-11,-70,-22,-109,-31v-19,-4,-18,-14,-9,-36v59,-56,93,-84,101,-84v17,0,19,20,13,29",w:159},"›":{d:"41,-181v26,27,112,44,70,91r-82,60v-20,3,-25,-23,-13,-32r70,-51r-66,-46v-5,-6,-4,-28,5,-29v4,2,9,4,16,7",w:137},"⁄":{d:"193,-305v7,6,17,31,3,41v-10,7,-12,13,-21,25v-79,56,-190,209,-197,260r-18,0v-23,-19,9,-70,15,-85v52,-83,121,-179,218,-241",w:120},"™":{d:"213,-307v28,9,11,49,7,75v-1,4,-4,6,-11,6v-7,1,-11,-14,-11,-34v-14,-6,-34,34,-46,28v-2,0,-10,-9,-24,-27v-10,7,-3,36,-27,31v-15,-24,-3,-27,1,-48v-6,-7,-27,-1,-31,3v-3,14,-7,30,-11,51v-5,10,-29,9,-24,-12v-5,-8,1,-18,3,-35v-13,6,-33,2,-29,-18v20,-17,64,-17,100,-19v28,-1,29,30,45,39v11,-6,35,-32,58,-40",w:239},"∆":{d:"18,-1v-24,-30,8,-48,25,-71v14,-19,34,-28,40,-56v20,-35,29,-14,57,4v9,39,43,62,57,102v0,16,-34,17,-50,14v-28,2,-72,4,-129,7xm139,-47r-22,-52v-12,-5,-12,15,-24,27v-7,6,-14,16,-23,28v23,1,36,-1,69,-3",w:199},"∙":{d:"57,-77v6,18,-7,21,-19,23v-34,6,-25,-40,-9,-43v18,-3,29,8,28,20",w:67},"√":{d:"364,-218v43,-21,80,-51,104,-32v-3,19,-24,21,-44,40v-41,15,-78,53,-136,78r-137,98v-20,16,-79,66,-91,68v-3,1,-25,-11,-24,-13v-4,-28,-43,-61,-30,-85v26,-15,42,19,58,32r295,-188v0,1,2,2,5,2",w:474},"∞":{d:"322,-72v-4,22,-54,41,-76,41v-43,0,-83,-17,-114,-35v-46,19,-125,53,-128,-18v-1,-14,10,-22,13,-35v29,-10,62,-31,97,-4v37,28,47,5,75,-8v40,-19,73,-10,114,1v13,1,18,55,19,58xm228,-69v15,0,62,-12,61,-25v-19,-23,-89,-10,-105,11v0,2,1,4,2,4v28,6,42,10,42,10xm75,-102v-13,2,-41,4,-44,19v0,4,3,7,10,7v21,0,40,-6,54,-17v-9,-6,-16,-9,-20,-9",w:330},"∫":{d:"62,-151v-7,-70,20,-130,63,-150v28,1,39,10,70,23v20,8,6,33,-6,35v-29,-13,-45,-20,-49,-20v-20,-4,-45,51,-43,70v8,60,5,129,5,189v0,62,-27,93,-79,93v-37,-1,-71,-14,-63,-57v21,0,79,34,91,-2v16,-3,14,-64,21,-85v-2,-31,-1,-74,-10,-96",w:156},"≈":{d:"133,-112v21,15,48,-30,78,-17v3,3,5,7,5,9v-8,30,-47,45,-76,45v-19,0,-64,-48,-90,-21r-29,20v-6,-1,-17,-16,-15,-32v24,-17,70,-42,107,-21v4,4,10,9,20,17xm138,-57v28,2,48,-25,76,-26v13,30,-21,42,-40,53v-41,24,-77,-15,-114,-23v-15,14,-46,32,-49,-1v-3,-9,27,-28,54,-30",w:223},"≠":{d:"48,-130v29,11,49,-57,60,-50v25,6,7,27,-1,46v22,5,29,7,21,22v-18,2,-48,-1,-50,15v9,8,53,-7,54,10v-4,22,-46,20,-72,24v-7,13,-18,32,-34,57v-8,6,-15,-3,-13,-14v-1,-9,15,-39,14,-45v-30,5,-24,-17,-13,-25v12,-1,36,4,29,-13v-14,0,-47,6,-36,-12v0,-18,27,-13,41,-15",w:140},"≤":{d:"73,-109v10,15,87,16,87,42v0,11,-5,16,-13,16v-36,-11,-69,-24,-109,-31v-18,-8,-18,-13,-9,-36v59,-56,93,-83,101,-83v16,0,18,17,14,28v-27,24,-42,35,-71,64xm10,-29v35,-12,117,-26,148,-3v1,2,-5,19,-8,18r-124,15v-16,2,-26,-18,-16,-30",w:168},"≥":{d:"115,-174v20,7,53,36,20,57v-19,11,-91,68,-82,59v-18,3,-25,-22,-13,-31v15,-10,14,-10,70,-51r-50,-37v-5,-4,-5,-27,4,-28v16,7,40,17,51,31xm14,-32v33,-10,86,-14,127,-10v12,12,5,23,-11,27v-49,9,-82,13,-99,13v-22,0,-24,-16,-17,-30",w:163},"◊":{d:"76,-158v48,-8,64,11,100,36v28,19,-5,39,-22,54v-15,13,-40,32,-48,49v-17,5,-12,0,-27,-16v-6,-6,-86,-31,-68,-53r2,-9v27,-23,48,-44,63,-61xm93,-65v12,-2,35,-31,41,-38v-5,-10,-16,-14,-34,-24v-12,12,-36,29,-40,44v19,11,30,18,33,18",w:199}}}),"undefined"==typeof Raphael&&"undefined"==typeof Snap)throw new Error("Raphael or Snap.svg is required to be included.");if(_.isEmpty(Diagram.themes))throw new Error("No themes were registered. Please call registerTheme(...).");Diagram.themes.hand=Diagram.themes.snapHand||Diagram.themes.raphaelHand,Diagram.themes.simple=Diagram.themes.snapSimple||Diagram.themes.raphaelSimple,Diagram.prototype.drawSVG=function(container,options){var defaultOptions={theme:"hand"};if(options=_.defaults(options||{},defaultOptions),!(options.theme in Diagram.themes))throw new Error("Unsupported theme: "+options.theme);var div=_.isString(container)?document.getElementById(container):container;if(null===div||!div.tagName)throw new Error("Invalid container: "+container);var Theme=Diagram.themes[options.theme];new Theme(this,options,function(drawing){drawing.draw(div)})},"undefined"!=typeof jQuery&&!function($){$.fn.sequenceDiagram=function(options){return this.each(function(){var $this=$(this),diagram=Diagram.parse($this.text());$this.html(""),diagram.drawSVG(this,options)})}}(jQuery);var root="object"==typeof self&&self.self==self&&self||"object"==typeof global&&global.global==global&&global;"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=Diagram),exports.Diagram=Diagram):root.Diagram=Diagram}(); +//# sourceMappingURL=sequence-diagram.js \ No newline at end of file diff --git a/static/editor.md/lib/sequence/sequence-diagram-min.js.map b/static/editor.md/lib/sequence/sequence-diagram-min.js.map new file mode 100755 index 00000000..cd0daa29 --- /dev/null +++ b/static/editor.md/lib/sequence/sequence-diagram-min.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["dist/sequence-diagram.js"],"names":["Diagram","this","title","undefined","actors","signals","ParseError","message","hash","_","extend","name","AssertException","assert","exp","registerTheme","theme","themes","getCenterX","box","x","width","getCenterY","y","height","clamp","min","max","wobble","x1","y1","x2","y2","all","isFinite","factor","Math","sqrt","r1","random","r2","xfactor","yfactor","p1","p2","toFixed","handRect","w","h","handLine","prototype","getActor","alias","trim","i","push","Actor","length","getActorWithAlias","input","s","exec","setTitle","addSignal","signal","index","Signal","actorA","signaltype","actorB","type","linetype","arrowtype","isSelf","Note","actor","placement","hasManyActors","Error","isArray","unescape","replace","LINETYPE","SOLID","DOTTED","ARROWTYPE","FILLED","OPEN","PLACEMENT","LEFTOF","RIGHTOF","OVER","Object","getPrototypeOf","__proto__","object","constructor","parser","Parser","yy","o","k","v","l","$V0","$V1","$V2","$V3","trace","symbols_","error","start","document","EOF","line","statement","NL","participant","actor_alias","note_statement","note","over","actor_pair",",","left_of","right_of","ACTOR","LINE","DOTLINE","ARROW","OPENARROW","MESSAGE","$accept","$end","terminals_","2","5","8","9","13","15","18","20","21","22","24","27","28","29","30","31","productions_","performAction","yytext","yyleng","yylineno","yystate","$$","_$","$0","$","substring","table","3","4","1","6","7","11","12","17","10","14","23","25","16","26","19","defaultActions","37","parseError","str","recoverable","parse","lex","token","lexer","self","stack","vstack","lstack","recovering","TERROR","args","slice","call","arguments","create","sharedState","hasOwnProperty","setInput","yylloc","yyloc","ranges","options","symbol","preErrorSymbol","state","action","r","p","len","newState","expected","yyval","errStr","showPosition","join","text","match","loc","Array","first_line","last_line","first_column","last_column","range","apply","concat","_input","_more","_backtrack","done","matched","conditionStack","offset","ch","lines","unput","split","substr","oldLines","more","reject","backtrack_lexer","less","n","pastInput","past","upcomingInput","next","pre","c","test_match","indexed_rule","backup","matches","tempMatch","rules","_currentRules","flex","begin","condition","popState","pop","conditions","INITIAL","topState","abs","pushState","stateStackSize","case-insensitive","yy_","$avoiding_name_collisions","YY_START","inclusive","require","exports","main","console","log","process","exit","source","readFileSync","normalize","module","argv","diagram","DIAGRAM_MARGIN","ACTOR_MARGIN","ACTOR_PADDING","SIGNAL_MARGIN","SIGNAL_PADDING","NOTE_MARGIN","NOTE_PADDING","NOTE_OVERLAP","TITLE_MARGIN","TITLE_PADDING","SELF_SIGNAL_WIDTH","ALIGN_LEFT","ALIGN_CENTER","toString","String","BaseTheme","init","actorsHeight_","signalsHeight_","title_","setupPaper","container","draw","layout","titleHeight","drawTitle","drawActors","drawSignals","actorEnsureDistance","a","b","d","paddingRight","distances","font","font_","bb","textBBox","textBB","each","extraWidth","actorsX","distance","drawTextBox","offsetY","drawActor","aX","drawLine","drawSelfSignal","drawSignal","drawNote","drawText","bX","overlap","margin","padding","align","drawRect","Snap","xmlns","stroke","stroke-width","fill","RECT","LOADED_FONTS","SnapTheme","resume","defaults","css-class","font-size","font-family","paper_","cssClass_","arrowTypes_","lineTypes_","that","waitForFont","callback","fontFamily","WebFont","load","custom","families","classes","active","inactive","addDescription","svg","description","desc","createElementNS","appendChild","createTextNode","addClass","beginGroup","arrowMarkers_","arrow","path","marker","attr","id","markerWidth","t","createText","getBBox","remove","pushToStack","element","_stack","finishGroup","g","group","invoke","selectAll","dy","arrowhead","rect","SnapHandTheme","Raphael","fn","RaphaelTheme","setStart","setFinish","setSize","cleanText","obj_","print","paper","text-anchor","RaphaelHandTheme","getFont","registerFont","face","font-weight","font-stretch","units-per-em","panose-1","ascent","descent","x-height","bbox","underline-thickness","underline-position","unicode-range","glyphs"," ","\t","\r","!","\"","#","%","&","'","(",")","*","+","-",".","/","0",":",";","<","=",">","?","@","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","[","\\","]","^","`","e","f","j","m","q","u","z","{","|","}","~"," ","¡","¢","£","¤","€","¥","§","¨","©","ª","«","¬","®","¯","°","±","´","¶","¸","º","»","¿","À","Á","Â","Ã","Ä","Å","Æ","Ç","È","É","Ê","Ë","Ì","Í","Î","Ï","Ñ","Ò","Ó","Ô","Õ","Ö","Ø","Ù","Ú","Û","Ü","ß","à","á","â","ã","ä","å","æ","ç","è","é","ê","ë","ì","í","î","ï","ñ","ò","ó","ô","õ","ö","÷","ø","ù","ú","û","ü","ÿ","ı","Œ","œ","Ÿ","ƒ","ˆ","ˇ","˘","˙","˚","˛","˜","˝","–","—","‘","’","‚","“","”","„","†","‡","•","…","‰","‹","›","⁄","™","∆","∙","√","∞","∫","≈","≠","≤","≥","◊","isEmpty","hand","snapHand","raphaelHand","simple","snapSimple","raphaelSimple","drawSVG","defaultOptions","div","isString","getElementById","tagName","Theme","drawing","jQuery","sequenceDiagram","$this","html","root","global"],"mappings":"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R,EAAK,KAET2Z,GACI1I,EAAK,+WACLjR,EAAK,KAET4Z,GACI3I,EAAK,ioBACLjR,EAAK,KAET6Z,GACI5I,EAAK,yQACLjR,EAAK,KAET8Z,GACI7I,EAAK,msBACLjR,EAAK,KAET+Z,GACI9I,EAAK,wXACLjR,EAAK,KAETga,GACI/I,EAAK,+TACLjR,EAAK,KAETia,GACIhJ,EAAK,qVACLjR,EAAK,KAETka,GACIjJ,EAAK,+RACLjR,EAAK,KAETma,GACIlJ,EAAK,uHACLjR,EAAK,IAEToa,GACInJ,EAAK,iLACLjR,EAAK,KAETqa,GACIpJ,EAAK,iVACLjR,EAAK,KAETsa,GACIrJ,EAAK,iNACLjR,EAAK,KAETua,GACItJ,EAAK,iWACLjR,EAAK,KAETwa,GACIvJ,EAAK,2PACLjR,EAAK,KAETya,GACIxJ,EAAK,8SACLjR,EAAK,KAET0a,GACIzJ,EAAK,sUACLjR,EAAK,KAET2a,GACI1J,EAAK,kcACLjR,EAAK,KAET4a,GACI3J,EAAK,4bACLjR,EAAK,KAET6a,GACI5J,EAAK,4TACLjR,EAAK,KAET8a,GACI7J,EAAK,oPACLjR,EAAK,KAET+a,GACI9J,EAAK,0RACLjR,EAAK,KAETgb,GACI/J,EAAK,4QACLjR,EAAK,KAETib,GACIhK,EAAK,0WACLjR,EAAK,KAETkb,GACIjK,EAAK,4RACLjR,EAAK,KAETmb,GACIlK,EAAK,oNACLjR,EAAK,KAETob,GACInK,EAAK,uRACLjR,EAAK,KAETqb,KACIpK,EAAK,8LACLjR,EAAK,KAETsb,MACIrK,EAAK,yHACLjR,EAAK,KAETub,KACItK,EAAK,qOACLjR,EAAK,KAETwb,KACIvK,EAAK,4HACLjR,EAAK,KAETtC,GACIuT,EAAK,sGACLjR,EAAK,KAETyb,KACIxK,EAAK,uFACLjR,EAAK,KAET+Q,GACIE,EAAK,6KACLjR,EAAK,KAETgR,GACIC,EAAK,4VACLjR,EAAK,KAET6M,GACIoE,EAAK,qJACLjR,EAAK,KAETiR,GACIA,EAAK,yOACLjR,EAAK,KAET0b,GACIzK,EAAK,+OACLjR,EAAK,KAET2b,GACI1K,EAAK,qQACLjR,EAAK,KAETgW,GACI/E,EAAK,wXACLjR,EAAK,KAETC,GACIgR,EAAK,uQACLjR,EAAK,KAETO,GACI0Q,EAAK,kJACLjR,EAAK,IAET4b,GACI3K,EAAK,4MACLjR,EAAK,KAETsD,GACI2N,EAAK,6PACLjR,EAAK,KAETwD,GACIyN,EAAK,sHACLjR,EAAK,KAET6b,GACI5K,EAAK,wRACLjR,EAAK,KAETuM,GACI0E,EAAK,yJACLjR,EAAK,KAETqD,GACI4N,EAAK,uJACLjR,EAAK,KAETmK,GACI8G,EAAK,uTACLjR,EAAK,KAET8b,GACI7K,EAAK,wRACLjR,EAAK,KAETkK,GACI+G,EAAK,kJACLjR,EAAK,KAETa,GACIoQ,EAAK,wPACLjR,EAAK,KAETwV,GACIvE,EAAK,+OACLjR,EAAK,KAET+b,GACI9K,EAAK,yKACLjR,EAAK,KAETuD,GACI0N,EAAK,qJACLjR,EAAK,KAETA,GACIiR,EAAK,mOACLjR,EAAK,KAET3B,GACI4S,EAAK,+PACLjR,EAAK,KAETxB,GACIyS,EAAK,6PACLjR,EAAK,KAETgc,GACI/K,EAAK,8NACLjR,EAAK,KAETic,KACIhL,EAAK,sTACLjR,EAAK,KAETkc,KACIjL,EAAK,mIACLjR,EAAK,IAETmc,KACIlL,EAAK,mQACLjR,EAAK,KAEToc,KACInL,EAAK,kKACLjR,EAAK,KAETqc,KACIrc,EAAK,KAETsc,KACIrL,EAAK,+MACLjR,EAAK,IAETuc,KACItL,EAAK,+QACLjR,EAAK,KAETwc,KACIvL,EAAK,uZACLjR,EAAK,KAETyc,KACIxL,EAAK,4YACLjR,EAAK,KAET0c,KACIzL,EAAK,4YACLjR,EAAK,KAET2c,KACI1L,EAAK,qaACLjR,EAAK,KAET4c,KACI3L,EAAK,oVACLjR,EAAK,KAET6c,KACI5L,EAAK,mIACLjR,EAAK,KAET8c,KACI7L,EAAK,6TACLjR,EAAK,KAET+c,KACI9L,EAAK,uIACLjR,EAAK,KAETgd,KACI/L,EAAK,+SACLjR,EAAK,KAETid,KACIhM,EAAK,8LACLjR,EAAK,KAETkd,KACIjM,EAAK,6VACLjR,EAAK,KAETmd,KACIlM,EAAK,wGACLjR,EAAK,KAETod,KACInM,EAAK,qIACLjR,EAAK,KAETqd,KACIpM,EAAK,oOACLjR,EAAK,KAETsd,KACIrM,EAAK,4FACLjR,EAAK,KAETud,KACItM,EAAK,4UACLjR,EAAK,KAETwd,KACIvM,EAAK,iKACLjR,EAAK,KAETyd,KACIxM,EAAK,kHACLjR,EAAK,KAET0d,KACIzM,EAAK,0RACLjR,EAAK,KAET2d,KACI1M,EAAK,iTACLjR,EAAK,KAET4d,KACI3M,EAAK,qWAET4M,KACI5M,EAAK,uWAET6M,KACI7M,EAAK,2ZAET8M,KACI9M,EAAK,qcAET+M,KACI/M,EAAK,+YAETgN,KACIhN,EAAK,kZAETiN,KACIjN,EAAK,8YACLjR,EAAK,KAETme,KACIlN,EAAK;AACLjR,EAAK,KAEToe,KACInN,EAAK,mZACLjR,EAAK,KAETqe,KACIpN,EAAK,0ZACLjR,EAAK,KAETse,KACIrN,EAAK,2cACLjR,EAAK,KAETue,KACItN,EAAK,8bACLjR,EAAK,KAETwe,KACIvN,EAAK,oMACLjR,EAAK,KAETye,KACIxN,EAAK,iMACLjR,EAAK,KAET0e,KACIzN,EAAK,wPACLjR,EAAK,KAET2e,KACI1N,EAAK,6OACLjR,EAAK,KAET4e,KACI3N,EAAK,8aACLjR,EAAK,KAET6e,KACI5N,EAAK,+TACLjR,EAAK,KAET8e,KACI7N,EAAK,mUACLjR,EAAK,KAET+e,KACI9N,EAAK,uUACLjR,EAAK,KAETgf,KACI/N,EAAK,iaACLjR,EAAK,KAETif,KACIhO,EAAK,yWACLjR,EAAK,KAETkf,KACIjO,EAAK,mXACLjR,EAAK,KAETmf,KACIlO,EAAK,+SACLjR,EAAK,KAETof,KACInO,EAAK,yRACLjR,EAAK,KAETqf,KACIpO,EAAK,oVACLjR,EAAK,KAETsf,KACIrO,EAAK,2VACLjR,EAAK,KAETuf,KACItO,EAAK,gUAETuO,KACIvO,EAAK,mRACLjR,EAAK,KAETyf,KACIxO,EAAK,qQACLjR,EAAK,KAET0f,KACIzO,EA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","file":"dist/sequence-diagram-min.js"} \ No newline at end of file diff --git a/static/editor.md/lib/sequence/sequence-diagram-raphael-min.js b/static/editor.md/lib/sequence/sequence-diagram-raphael-min.js new file mode 100755 index 00000000..e6e706cd --- /dev/null +++ b/static/editor.md/lib/sequence/sequence-diagram-raphael-min.js @@ -0,0 +1,9 @@ +/** js sequence diagrams 2.0.1 + * https://bramp.github.io/js-sequence-diagrams/ + * (c) 2012-2017 Andrew Brampton (bramp.net) + * @license Simplified BSD license. + */ +!function(){"use strict";function Diagram(){this.title=void 0,this.actors=[],this.signals=[]}function ParseError(message,hash){_.extend(this,hash),this.name="ParseError",this.message=message||""}function AssertException(message){this.message=message}function assert(exp,message){if(!exp)throw new AssertException(message)}function registerTheme(name,theme){Diagram.themes[name]=theme}function getCenterX(box){return box.x+box.width/2}function getCenterY(box){return box.y+box.height/2}function clamp(x,min,max){return xmax?max:x}function wobble(x1,y1,x2,y2){assert(_.all([x1,x2,y1,y2],_.isFinite),"x1,x2,y1,y2 must be numeric");var factor=Math.sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1))/25,r1=clamp(Math.random(),.2,.8),r2=clamp(Math.random(),.2,.8),xfactor=Math.random()>.5?factor:-factor,yfactor=Math.random()>.5?factor:-factor,p1={x:(x2-x1)*r1+x1+xfactor,y:(y2-y1)*r1+y1+yfactor},p2={x:(x2-x1)*r2+x1-xfactor,y:(y2-y1)*r2+y1-yfactor};return"C"+p1.x.toFixed(1)+","+p1.y.toFixed(1)+" "+p2.x.toFixed(1)+","+p2.y.toFixed(1)+" "+x2.toFixed(1)+","+y2.toFixed(1)}function handRect(x,y,w,h){return assert(_.all([x,y,w,h],_.isFinite),"x, y, w, h must be numeric"),"M"+x+","+y+wobble(x,y,x+w,y)+wobble(x+w,y,x+w,y+h)+wobble(x+w,y+h,x,y+h)+wobble(x,y+h,x,y)}function handLine(x1,y1,x2,y2){return assert(_.all([x1,x2,y1,y2],_.isFinite),"x1,x2,y1,y2 must be numeric"),"M"+x1.toFixed(1)+","+y1.toFixed(1)+wobble(x1,y1,x2,y2)}Diagram.prototype.getActor=function(alias,name){alias=alias.trim();var i,actors=this.actors;for(i in actors)if(actors[i].alias==alias)return actors[i];return i=actors.push(new Diagram.Actor(alias,name||alias,actors.length)),actors[i-1]},Diagram.prototype.getActorWithAlias=function(input){input=input.trim();var alias,name,s=/([\s\S]+) as (\S+)$/im.exec(input);return s?(name=s[1].trim(),alias=s[2].trim()):name=alias=input,this.getActor(alias,name)},Diagram.prototype.setTitle=function(title){this.title=title},Diagram.prototype.addSignal=function(signal){this.signals.push(signal)},Diagram.Actor=function(alias,name,index){this.alias=alias,this.name=name,this.index=index},Diagram.Signal=function(actorA,signaltype,actorB,message){this.type="Signal",this.actorA=actorA,this.actorB=actorB,this.linetype=3&signaltype,this.arrowtype=signaltype>>2&3,this.message=message},Diagram.Signal.prototype.isSelf=function(){return this.actorA.index==this.actorB.index},Diagram.Note=function(actor,placement,message){if(this.type="Note",this.actor=actor,this.placement=placement,this.message=message,this.hasManyActors()&&actor[0]==actor[1])throw new Error("Note should be over two different actors")},Diagram.Note.prototype.hasManyActors=function(){return _.isArray(this.actor)},Diagram.unescape=function(s){return s.trim().replace(/^"(.*)"$/m,"$1").replace(/\\n/gm,"\n")},Diagram.LINETYPE={SOLID:0,DOTTED:1},Diagram.ARROWTYPE={FILLED:0,OPEN:1},Diagram.PLACEMENT={LEFTOF:0,RIGHTOF:1,OVER:2},"function"!=typeof Object.getPrototypeOf&&("object"==typeof"test".__proto__?Object.getPrototypeOf=function(object){return object.__proto__}:Object.getPrototypeOf=function(object){return object.constructor.prototype});var parser=function(){function Parser(){this.yy={}}var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[5,8,9,13,15,24],$V1=[1,13],$V2=[1,17],$V3=[24,29,30],parser={trace:function(){},yy:{},symbols_:{error:2,start:3,document:4,EOF:5,line:6,statement:7,NL:8,participant:9,actor_alias:10,signal:11,note_statement:12,title:13,message:14,note:15,placement:16,actor:17,over:18,actor_pair:19,",":20,left_of:21,right_of:22,signaltype:23,ACTOR:24,linetype:25,arrowtype:26,LINE:27,DOTLINE:28,ARROW:29,OPENARROW:30,MESSAGE:31,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",8:"NL",9:"participant",13:"title",15:"note",18:"over",20:",",21:"left_of",22:"right_of",24:"ACTOR",27:"LINE",28:"DOTLINE",29:"ARROW",30:"OPENARROW",31:"MESSAGE"},productions_:[0,[3,2],[4,0],[4,2],[6,1],[6,1],[7,2],[7,1],[7,1],[7,2],[12,4],[12,4],[19,1],[19,3],[16,1],[16,1],[11,4],[17,1],[10,1],[23,2],[23,1],[25,1],[25,1],[26,1],[26,1],[14,1]],performAction:function(yytext,yyleng,yylineno,yy,yystate,$$,_$){var $0=$$.length-1;switch(yystate){case 1:return yy.parser.yy;case 4:break;case 6:$$[$0];break;case 7:case 8:yy.parser.yy.addSignal($$[$0]);break;case 9:yy.parser.yy.setTitle($$[$0]);break;case 10:this.$=new Diagram.Note($$[$0-1],$$[$0-2],$$[$0]);break;case 11:this.$=new Diagram.Note($$[$0-1],Diagram.PLACEMENT.OVER,$$[$0]);break;case 12:case 20:this.$=$$[$0];break;case 13:this.$=[$$[$0-2],$$[$0]];break;case 14:this.$=Diagram.PLACEMENT.LEFTOF;break;case 15:this.$=Diagram.PLACEMENT.RIGHTOF;break;case 16:this.$=new Diagram.Signal($$[$0-3],$$[$0-2],$$[$0-1],$$[$0]);break;case 17:this.$=yy.parser.yy.getActor(Diagram.unescape($$[$0]));break;case 18:this.$=yy.parser.yy.getActorWithAlias(Diagram.unescape($$[$0]));break;case 19:this.$=$$[$0-1]|$$[$0]<<2;break;case 21:this.$=Diagram.LINETYPE.SOLID;break;case 22:this.$=Diagram.LINETYPE.DOTTED;break;case 23:this.$=Diagram.ARROWTYPE.FILLED;break;case 24:this.$=Diagram.ARROWTYPE.OPEN;break;case 25:this.$=Diagram.unescape($$[$0].substring(1))}},table:[o($V0,[2,2],{3:1,4:2}),{1:[3]},{5:[1,3],6:4,7:5,8:[1,6],9:[1,7],11:8,12:9,13:[1,10],15:[1,12],17:11,24:$V1},{1:[2,1]},o($V0,[2,3]),o($V0,[2,4]),o($V0,[2,5]),{10:14,24:[1,15]},o($V0,[2,7]),o($V0,[2,8]),{14:16,31:$V2},{23:18,25:19,27:[1,20],28:[1,21]},{16:22,18:[1,23],21:[1,24],22:[1,25]},o([20,27,28,31],[2,17]),o($V0,[2,6]),o($V0,[2,18]),o($V0,[2,9]),o($V0,[2,25]),{17:26,24:$V1},{24:[2,20],26:27,29:[1,28],30:[1,29]},o($V3,[2,21]),o($V3,[2,22]),{17:30,24:$V1},{17:32,19:31,24:$V1},{24:[2,14]},{24:[2,15]},{14:33,31:$V2},{24:[2,19]},{24:[2,23]},{24:[2,24]},{14:34,31:$V2},{14:35,31:$V2},{20:[1,36],31:[2,12]},o($V0,[2,16]),o($V0,[2,10]),o($V0,[2,11]),{17:37,24:$V1},{31:[2,13]}],defaultActions:{3:[2,1],24:[2,14],25:[2,15],27:[2,19],28:[2,23],29:[2,24],37:[2,13]},parseError:function(str,hash){if(!hash.recoverable)throw new Error(str);this.trace(str)},parse:function(input){function lex(){var token;return token=lexer.lex()||EOF,"number"!=typeof token&&(token=self.symbols_[token]||token),token}var self=this,stack=[0],vstack=[null],lstack=[],table=this.table,yytext="",yylineno=0,yyleng=0,recovering=0,TERROR=2,EOF=1,args=lstack.slice.call(arguments,1),lexer=Object.create(this.lexer),sharedState={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(sharedState.yy[k]=this.yy[k]);lexer.setInput(input,sharedState.yy),sharedState.yy.lexer=lexer,sharedState.yy.parser=this,"undefined"==typeof lexer.yylloc&&(lexer.yylloc={});var yyloc=lexer.yylloc;lstack.push(yyloc);var ranges=lexer.options&&lexer.options.ranges;"function"==typeof sharedState.yy.parseError?this.parseError=sharedState.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var symbol,preErrorSymbol,state,action,r,p,len,newState,expected,yyval={};;){if(state=stack[stack.length-1],this.defaultActions[state]?action=this.defaultActions[state]:(null!==symbol&&"undefined"!=typeof symbol||(symbol=lex()),action=table[state]&&table[state][symbol]),"undefined"==typeof action||!action.length||!action[0]){var errStr="";expected=[];for(p in table[state])this.terminals_[p]&&p>TERROR&&expected.push("'"+this.terminals_[p]+"'");errStr=lexer.showPosition?"Parse error on line "+(yylineno+1)+":\n"+lexer.showPosition()+"\nExpecting "+expected.join(", ")+", got '"+(this.terminals_[symbol]||symbol)+"'":"Parse error on line "+(yylineno+1)+": Unexpected "+(symbol==EOF?"end of input":"'"+(this.terminals_[symbol]||symbol)+"'"),this.parseError(errStr,{text:lexer.match,token:this.terminals_[symbol]||symbol,line:lexer.yylineno,loc:yyloc,expected:expected})}if(action[0]instanceof Array&&action.length>1)throw new Error("Parse Error: multiple actions possible at state: "+state+", token: "+symbol);switch(action[0]){case 1:stack.push(symbol),vstack.push(lexer.yytext),lstack.push(lexer.yylloc),stack.push(action[1]),symbol=null,preErrorSymbol?(symbol=preErrorSymbol,preErrorSymbol=null):(yyleng=lexer.yyleng,yytext=lexer.yytext,yylineno=lexer.yylineno,yyloc=lexer.yylloc,recovering>0&&recovering--);break;case 2:if(len=this.productions_[action[1]][1],yyval.$=vstack[vstack.length-len],yyval._$={first_line:lstack[lstack.length-(len||1)].first_line,last_line:lstack[lstack.length-1].last_line,first_column:lstack[lstack.length-(len||1)].first_column,last_column:lstack[lstack.length-1].last_column},ranges&&(yyval._$.range=[lstack[lstack.length-(len||1)].range[0],lstack[lstack.length-1].range[1]]),r=this.performAction.apply(yyval,[yytext,yyleng,yylineno,sharedState.yy,action[1],vstack,lstack].concat(args)),"undefined"!=typeof r)return r;len&&(stack=stack.slice(0,-1*len*2),vstack=vstack.slice(0,-1*len),lstack=lstack.slice(0,-1*len)),stack.push(this.productions_[action[1]][0]),vstack.push(yyval.$),lstack.push(yyval._$),newState=table[stack[stack.length-2]][stack[stack.length-1]],stack.push(newState);break;case 3:return!0}}return!0}},lexer=function(){var lexer={EOF:1,parseError:function(str,hash){if(!this.yy.parser)throw new Error(str);this.yy.parser.parseError(str,hash)},setInput:function(input,yy){return this.yy=yy||this.yy||{},this._input=input,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ch=this._input[0];this.yytext+=ch,this.yyleng++,this.offset++,this.match+=ch,this.matched+=ch;var lines=ch.match(/(?:\r\n?|\n).*/g);return lines?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ch},unput:function(ch){var len=ch.length,lines=ch.split(/(?:\r\n?|\n)/g);this._input=ch+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-len),this.offset-=len;var oldLines=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),lines.length-1&&(this.yylineno-=lines.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:lines?(lines.length===oldLines.length?this.yylloc.first_column:0)+oldLines[oldLines.length-lines.length].length-lines[0].length:this.yylloc.first_column-len},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-len]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var past=this.matched.substr(0,this.matched.length-this.match.length);return(past.length>20?"...":"")+past.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var next=this.match;return next.length<20&&(next+=this._input.substr(0,20-next.length)),(next.substr(0,20)+(next.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var pre=this.pastInput(),c=new Array(pre.length+1).join("-");return pre+this.upcomingInput()+"\n"+c+"^"},test_match:function(match,indexed_rule){var token,lines,backup;if(this.options.backtrack_lexer&&(backup={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(backup.yylloc.range=this.yylloc.range.slice(0))),lines=match[0].match(/(?:\r\n?|\n).*/g),lines&&(this.yylineno+=lines.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:lines?lines[lines.length-1].length-lines[lines.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+match[0].length},this.yytext+=match[0],this.match+=match[0],this.matches=match,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(match[0].length),this.matched+=match[0],token=this.performAction.call(this,this.yy,this,indexed_rule,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),token)return token;if(this._backtrack){for(var k in backup)this[k]=backup[k];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var token,match,tempMatch,index;this._more||(this.yytext="",this.match="");for(var rules=this._currentRules(),i=0;imatch[0].length)){if(match=tempMatch,index=i,this.options.backtrack_lexer){if(token=this.test_match(tempMatch,rules[i]),token!==!1)return token;if(this._backtrack){match=!1;continue}return!1}if(!this.options.flex)break}return match?(token=this.test_match(match,rules[index]),token!==!1&&token):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var r=this.next();return r?r:this.lex()},begin:function(condition){this.conditionStack.push(condition)},popState:function(){var n=this.conditionStack.length-1;return n>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(n){return n=this.conditionStack.length-1-Math.abs(n||0),n>=0?this.conditionStack[n]:"INITIAL"},pushState:function(condition){this.begin(condition)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(yy,yy_,$avoiding_name_collisions,YY_START){switch($avoiding_name_collisions){case 0:return 8;case 1:break;case 2:break;case 3:return 9;case 4:return 21;case 5:return 22;case 6:return 18;case 7:return 15;case 8:return 13;case 9:return 20;case 10:return 24;case 11:return 24;case 12:return 28;case 13:return 27;case 14:return 30;case 15:return 29;case 16:return 31;case 17:return 5;case 18:return"INVALID"}},rules:[/^(?:[\r\n]+)/i,/^(?:\s+)/i,/^(?:#[^\r\n]*)/i,/^(?:participant\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:title\b)/i,/^(?:,)/i,/^(?:[^\->:,\r\n"]+)/i,/^(?:"[^"]+")/i,/^(?:--)/i,/^(?:-)/i,/^(?:>>)/i,/^(?:>)/i,/^(?:[^\r\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18],inclusive:!0}}};return lexer}();return parser.lexer=lexer,Parser.prototype=parser,parser.Parser=Parser,new Parser}();"undefined"!=typeof require&&"undefined"!=typeof exports&&(exports.parser=parser,exports.Parser=parser.Parser,exports.parse=function(){return parser.parse.apply(parser,arguments)},exports.main=function(args){args[1]||(console.log("Usage: "+args[0]+" FILE"),process.exit(1));var source=require("fs").readFileSync(require("path").normalize(args[1]),"utf8");return exports.parser.parse(source)},"undefined"!=typeof module&&require.main===module&&exports.main(process.argv.slice(1))),ParseError.prototype=new Error,Diagram.ParseError=ParseError,Diagram.parse=function(input){parser.yy=new Diagram,parser.yy.parseError=function(message,hash){throw new ParseError(message,hash)};var diagram=parser.parse(input);return delete diagram.parseError,diagram};var DIAGRAM_MARGIN=10,ACTOR_MARGIN=10,ACTOR_PADDING=10,SIGNAL_MARGIN=5,SIGNAL_PADDING=5,NOTE_MARGIN=10,NOTE_PADDING=5,NOTE_OVERLAP=15,TITLE_MARGIN=0,TITLE_PADDING=5,SELF_SIGNAL_WIDTH=20,PLACEMENT=Diagram.PLACEMENT,LINETYPE=Diagram.LINETYPE,ARROWTYPE=Diagram.ARROWTYPE,ALIGN_LEFT=0,ALIGN_CENTER=1;AssertException.prototype.toString=function(){return"AssertException: "+this.message},String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")}),Diagram.themes={};var BaseTheme=function(diagram,options){this.init(diagram,options)};if(_.extend(BaseTheme.prototype,{init:function(diagram,options){this.diagram=diagram,this.actorsHeight_=0,this.signalsHeight_=0,this.title_=void 0},setupPaper:function(container){},draw:function(container){this.setupPaper(container),this.layout();var titleHeight=this.title_?this.title_.height:0,y=DIAGRAM_MARGIN+titleHeight;this.drawTitle(),this.drawActors(y),this.drawSignals(y+this.actorsHeight_)},layout:function(){function actorEnsureDistance(a,b,d){assert(a=actors.length?(a=actors[a],a.paddingRight=Math.max(d,a.paddingRight)):(a=actors[a],a.distances[b]=Math.max(d,a.distances[b]?a.distances[b]:0))}var diagram=this.diagram,font=this.font_,actors=diagram.actors,signals=diagram.signals;if(diagram.width=0,diagram.height=0,diagram.title){var title=this.title_={},bb=this.textBBox(diagram.title,font);title.textBB=bb,title.message=diagram.title,title.width=bb.width+2*(TITLE_PADDING+TITLE_MARGIN),title.height=bb.height+2*(TITLE_PADDING+TITLE_MARGIN),title.x=DIAGRAM_MARGIN,title.y=DIAGRAM_MARGIN,diagram.width+=title.width,diagram.height+=title.height}_.each(actors,function(a){var bb=this.textBBox(a.name,font);a.textBB=bb,a.x=0,a.y=0,a.width=bb.width+2*(ACTOR_PADDING+ACTOR_MARGIN),a.height=bb.height+2*(ACTOR_PADDING+ACTOR_MARGIN),a.distances=[],a.paddingRight=0,this.actorsHeight_=Math.max(a.height,this.actorsHeight_)},this),_.each(signals,function(s){var a,b,bb=this.textBBox(s.message,font);s.textBB=bb,s.width=bb.width,s.height=bb.height;var extraWidth=0;if("Signal"==s.type)s.width+=2*(SIGNAL_MARGIN+SIGNAL_PADDING),s.height+=2*(SIGNAL_MARGIN+SIGNAL_PADDING),s.isSelf()?(a=s.actorA.index,b=a+1,s.width+=SELF_SIGNAL_WIDTH):(a=Math.min(s.actorA.index,s.actorB.index),b=Math.max(s.actorA.index,s.actorB.index));else{if("Note"!=s.type)throw new Error("Unhandled signal type:"+s.type);if(s.width+=2*(NOTE_MARGIN+NOTE_PADDING),s.height+=2*(NOTE_MARGIN+NOTE_PADDING),extraWidth=2*ACTOR_MARGIN,s.placement==PLACEMENT.LEFTOF)b=s.actor.index,a=b-1;else if(s.placement==PLACEMENT.RIGHTOF)a=s.actor.index,b=a+1;else if(s.placement==PLACEMENT.OVER&&s.hasManyActors())a=Math.min(s.actor[0].index,s.actor[1].index),b=Math.max(s.actor[0].index,s.actor[1].index),extraWidth=-(2*NOTE_PADDING+2*NOTE_OVERLAP);else if(s.placement==PLACEMENT.OVER)return a=s.actor.index,actorEnsureDistance(a-1,a,s.width/2),actorEnsureDistance(a,a+1,s.width/2),void(this.signalsHeight_+=s.height)}actorEnsureDistance(a,b,s.width+extraWidth),this.signalsHeight_+=s.height},this);var actorsX=0;return _.each(actors,function(a){a.x=Math.max(actorsX,a.x),_.each(a.distances,function(distance,b){"undefined"!=typeof distance&&(b=actors[b],distance=Math.max(distance,a.width/2,b.width/2),b.x=Math.max(b.x,a.x+a.width/2+distance-b.width/2))}),actorsX=a.x+a.width+a.paddingRight},this),diagram.width=Math.max(actorsX,diagram.width),diagram.width+=2*DIAGRAM_MARGIN,diagram.height+=2*DIAGRAM_MARGIN+2*this.actorsHeight_+this.signalsHeight_,this},textBBox:function(text,font){},drawTitle:function(){var title=this.title_;title&&this.drawTextBox(title,title.message,TITLE_MARGIN,TITLE_PADDING,this.font_,ALIGN_LEFT)},drawActors:function(offsetY){var y=offsetY;_.each(this.diagram.actors,function(a){this.drawActor(a,y,this.actorsHeight_),this.drawActor(a,y+this.actorsHeight_+this.signalsHeight_,this.actorsHeight_);var aX=getCenterX(a);this.drawLine(aX,y+this.actorsHeight_-ACTOR_MARGIN,aX,y+this.actorsHeight_+ACTOR_MARGIN+this.signalsHeight_)},this)},drawActor:function(actor,offsetY,height){actor.y=offsetY,actor.height=height,this.drawTextBox(actor,actor.name,ACTOR_MARGIN,ACTOR_PADDING,this.font_,ALIGN_CENTER)},drawSignals:function(offsetY){var y=offsetY;_.each(this.diagram.signals,function(s){"Signal"==s.type?s.isSelf()?this.drawSelfSignal(s,y):this.drawSignal(s,y):"Note"==s.type&&this.drawNote(s,y),y+=s.height},this)},drawSelfSignal:function(signal,offsetY){assert(signal.isSelf(),"signal must be a self signal");var textBB=signal.textBB,aX=getCenterX(signal.actorA),x=aX+SELF_SIGNAL_WIDTH+SIGNAL_PADDING,y=offsetY+SIGNAL_PADDING+signal.height/2+textBB.y;this.drawText(x,y,signal.message,this.font_,ALIGN_LEFT);var y1=offsetY+SIGNAL_MARGIN+SIGNAL_PADDING,y2=y1+signal.height-2*SIGNAL_MARGIN-SIGNAL_PADDING;this.drawLine(aX,y1,aX+SELF_SIGNAL_WIDTH,y1,signal.linetype),this.drawLine(aX+SELF_SIGNAL_WIDTH,y1,aX+SELF_SIGNAL_WIDTH,y2,signal.linetype),this.drawLine(aX+SELF_SIGNAL_WIDTH,y2,aX,y2,signal.linetype,signal.arrowtype)},drawSignal:function(signal,offsetY){var aX=getCenterX(signal.actorA),bX=getCenterX(signal.actorB),x=(bX-aX)/2+aX,y=offsetY+SIGNAL_MARGIN+2*SIGNAL_PADDING;this.drawText(x,y,signal.message,this.font_,ALIGN_CENTER),y=offsetY+signal.height-SIGNAL_MARGIN-SIGNAL_PADDING,this.drawLine(aX,y,bX,y,signal.linetype,signal.arrowtype)},drawNote:function(note,offsetY){note.y=offsetY;var actorA=note.hasManyActors()?note.actor[0]:note.actor,aX=getCenterX(actorA);switch(note.placement){case PLACEMENT.RIGHTOF:note.x=aX+ACTOR_MARGIN;break;case PLACEMENT.LEFTOF:note.x=aX-ACTOR_MARGIN-note.width;break;case PLACEMENT.OVER:if(note.hasManyActors()){var bX=getCenterX(note.actor[1]),overlap=NOTE_OVERLAP+NOTE_PADDING;note.x=Math.min(aX,bX)-overlap,note.width=Math.max(aX,bX)+overlap-note.x}else note.x=aX-note.width/2;break;default:throw new Error("Unhandled note placement: "+note.placement)}return this.drawTextBox(note,note.message,NOTE_MARGIN,NOTE_PADDING,this.font_,ALIGN_LEFT)},drawTextBox:function(box,text,margin,padding,font,align){var x=box.x+margin,y=box.y+margin,w=box.width-2*margin,h=box.height-2*margin;return this.drawRect(x,y,w,h),align==ALIGN_CENTER?(x=getCenterX(box),y=getCenterY(box)):(x+=padding,y+=padding),this.drawText(x,y,text,font,align)}}),"undefined"!=typeof Raphael){var LINE={stroke:"#000000","stroke-width":2,fill:"none"},RECT={stroke:"#000000","stroke-width":2,fill:"#fff"};Raphael.fn.line=function(x1,y1,x2,y2){return assert(_.all([x1,x2,y1,y2],_.isFinite),"x1,x2,y1,y2 must be numeric"),this.path("M{0},{1} L{2},{3}",x1,y1,x2,y2)};var RaphaelTheme=function(diagram,options,resume){this.init(diagram,_.defaults(options,{"font-size":16,"font-family":"Andale Mono, monospace"}),resume)};_.extend(RaphaelTheme.prototype,BaseTheme.prototype,{init:function(diagram,options,resume){BaseTheme.prototype.init.call(this,diagram),this.paper_=void 0,this.font_={"font-size":options["font-size"],"font-family":options["font-family"]};var a=this.arrowTypes_={};a[ARROWTYPE.FILLED]="block",a[ARROWTYPE.OPEN]="open";var l=this.lineTypes_={};l[LINETYPE.SOLID]="",l[LINETYPE.DOTTED]="-",resume(this)},setupPaper:function(container){this.paper_=new Raphael(container,320,200),this.paper_.setStart()},draw:function(container){BaseTheme.prototype.draw.call(this,container),this.paper_.setFinish()},layout:function(){BaseTheme.prototype.layout.call(this),this.paper_.setSize(this.diagram.width,this.diagram.height)},cleanText:function(text){return text=_.invoke(text.split("\n"),"trim"),text.join("\n")},textBBox:function(text,font){text=this.cleanText(text),font=font||{};var p;font.obj_?p=this.paper_.print(0,0,text,font.obj_,font["font-size"]):(p=this.paper_.text(0,0,text),p.attr(font));var bb=p.getBBox();return p.remove(),bb},drawLine:function(x1,y1,x2,y2,linetype,arrowhead){var line=this.paper_.line(x1,y1,x2,y2).attr(LINE);return void 0!==arrowhead&&line.attr("arrow-end",this.arrowTypes_[arrowhead]+"-wide-long"),void 0!==arrowhead&&line.attr("stroke-dasharray",this.lineTypes_[linetype]),line},drawRect:function(x,y,w,h){return this.paper_.rect(x,y,w,h).attr(RECT)},drawText:function(x,y,text,font,align){text=this.cleanText(text),font=font||{},align=align||ALIGN_LEFT;var paper=this.paper_,bb=this.textBBox(text,font);align==ALIGN_CENTER&&(x-=bb.width/2,y-=bb.height/2);var t;return font.obj_?t=paper.print(x-bb.x,y-bb.y,text,font.obj_,font["font-size"]):(t=paper.text(x-bb.x-bb.width/2,y-bb.y,text),t.attr(font),t.attr({"text-anchor":"start"})),t}});var RaphaelHandTheme=function(diagram,options,resume){this.init(diagram,_.defaults(options,{"font-size":16,"font-family":"daniel"}),resume)};_.extend(RaphaelHandTheme.prototype,RaphaelTheme.prototype,{setupPaper:function(container){RaphaelTheme.prototype.setupPaper.call(this,container),this.font_.obj_=this.paper_.getFont("daniel")},drawLine:function(x1,y1,x2,y2,linetype,arrowhead){var line=this.paper_.path(handLine(x1,y1,x2,y2)).attr(LINE);return void 0!==arrowhead&&line.attr("arrow-end",this.arrowTypes_[arrowhead]+"-wide-long"),void 0!==arrowhead&&line.attr("stroke-dasharray",this.lineTypes_[linetype]),line},drawRect:function(x,y,w,h){return this.paper_.path(handRect(x,y,w,h)).attr(RECT)}}),registerTheme("raphaelSimple",RaphaelTheme),registerTheme("raphaelHand",RaphaelHandTheme)}if("undefined"!=typeof Raphael&&Raphael.registerFont({w:209,face:{"font-family":"Daniel","font-weight":700,"font-stretch":"normal","units-per-em":"360","panose-1":"2 11 8 0 0 0 0 0 0 0",ascent:"288",descent:"-72","x-height":"7",bbox:"-92.0373 -310.134 519 184.967","underline-thickness":"3.51562","underline-position":"-25.1367","unicode-range":"U+0009-U+F002"},glyphs:{" ":{w:179},"\t":{w:179},"\r":{w:179},"!":{d:"66,-306v9,3,18,11,19,24v-18,73,-20,111,-37,194v0,10,2,34,-12,34v-12,0,-18,-9,-18,-28v0,-85,23,-136,38,-214v1,-7,4,-10,10,-10xm25,-30v15,-1,28,34,5,35v-11,-1,-38,-36,-5,-35",w:115},'"':{d:"91,-214v-32,3,-25,-40,-20,-68v3,-16,7,-25,12,-27v35,13,14,56,8,95xm8,-231v4,-31,1,-40,18,-75v37,7,11,51,11,79v-3,3,-4,8,-5,13v-17,4,-16,-10,-24,-17",w:117},"#":{d:"271,-64v-30,26,-96,-7,-102,51v-6,2,-13,2,-24,-2v-2,-11,10,-21,2,-28v-14,5,-48,0,-48,22v0,23,-11,14,-29,10v-7,-6,6,-19,-1,-24r-32,4v-19,-8,-15,-24,5,-28r33,-6v4,0,24,-23,11,-27v-26,0,-63,14,-74,-10v3,-1,9,-17,16,-10v15,-8,81,4,89,-30v8,-14,16,-34,24,-38v23,9,24,38,5,49v37,24,55,-38,72,-43v19,10,20,23,-1,45v2,8,23,1,29,4v3,3,6,6,10,11v-14,13,-20,12,-45,12v-17,0,-16,17,-19,29v18,-7,49,3,67,-2v4,0,8,4,12,11xm161,-104v-30,-1,-44,10,-44,37v14,1,24,0,40,-5v0,-1,3,-10,8,-26v0,-4,-1,-6,-4,-6",w:285},$:{d:"164,-257v29,4,1,42,-3,50v5,5,38,13,41,24v8,4,6,15,-2,21v-18,3,-36,-17,-49,-17v-17,1,-31,40,-28,48v5,4,8,8,9,10v13,1,35,37,28,44v-10,21,-36,20,-65,28v-10,10,-12,40,-17,51v-9,-3,-28,1,-18,-17v0,-13,5,-24,-1,-35v-18,1,-59,-10,-42,-29v21,0,56,16,55,-16v5,-4,9,-18,9,-26v-14,-15,-55,-41,-53,-65v2,-33,56,-19,98,-26v10,-14,31,-43,38,-45xm93,-152v11,-10,15,-15,14,-29v-17,-3,-37,1,-43,6v10,12,20,19,29,23xm111,-103v-8,1,-11,12,-10,22v10,0,28,2,27,-8v0,-4,-13,-15,-17,-14",w:225},"%":{d:"181,-96v24,-7,67,-13,104,1v14,18,21,19,22,44v-13,43,-99,61,-146,36v-9,-9,-22,-11,-32,-29v0,-27,24,-53,52,-52xm139,-185v-9,68,-138,73,-131,-5v0,-3,3,-9,9,-17v13,1,27,1,17,-16v5,-39,63,0,93,-6v36,1,80,-9,102,11v15,32,12,32,-8,56v-16,21,-103,78,-152,125r-14,28v-23,11,-25,-7,-29,-20v34,-71,133,-98,171,-162v-13,-12,-52,-5,-61,1v0,1,1,3,3,5xm38,-190v0,34,55,29,70,8v0,-14,-20,-11,-32,-14v-14,-3,-24,-9,-40,-10v1,0,5,11,2,16xm172,-53v12,27,90,18,102,-5v-18,-7,-32,-10,-40,-10v-29,3,-57,-4,-62,15",w:308},"&":{d:"145,-82v17,-8,47,-15,71,-26v13,2,25,12,9,23v-23,7,-40,16,-53,27r0,6v13,8,30,21,36,38v0,8,-4,12,-11,12v-19,0,-43,-39,-59,-44v-30,12,-65,29,-97,32v-32,3,-45,-41,-23,-63v21,-20,52,-26,70,-48v-4,-31,-12,-47,9,-73v13,-16,20,-29,23,-39v15,-15,32,-22,51,-22v30,9,62,64,32,96v-2,3,-47,42,-69,48v-15,8,-11,9,0,22v6,7,10,11,11,11xm114,-138v25,-13,62,-38,74,-62v0,-9,-10,-31,-20,-29v-28,7,-60,42,-60,75v0,10,2,15,6,16xm99,-91v-18,10,-54,18,-59,45v26,5,61,-12,77,-22v-1,-5,-13,-23,-18,-23",w:253},"'":{d:"36,-182v-36,7,-34,-61,-17,-80v15,1,21,19,21,20r-1,-1v0,0,-1,12,-5,35v1,5,3,17,2,26",w:63},"(":{d:"130,-306v13,2,23,43,-1,43v-49,43,-77,77,-90,148v5,49,27,67,64,101v4,14,5,6,2,19r-15,0v-35,-17,-79,-58,-79,-120v0,-58,66,-176,119,-191",w:120},")":{d:"108,-138v-2,73,-48,120,-98,153v-17,-5,-16,-20,-6,-31v52,-64,73,-62,74,-135v1,-42,-40,-98,-58,-128v0,-5,-1,-12,-2,-22v18,-18,25,0,42,27v25,39,50,66,48,136",w:120},"*":{d:"121,-271v15,-5,36,-8,40,9v-5,10,-31,19,-47,31v0,11,34,43,14,53v-18,8,-24,-24,-34,-20v-4,10,-4,19,-12,41v-25,7,-15,-30,-17,-47v-13,-1,-17,9,-46,30r-10,0v-20,-32,37,-43,54,-64v-10,-11,-36,-33,-16,-51v3,0,14,8,33,24v8,-10,26,-39,32,-42v14,7,15,23,9,36",w:177},"+":{d:"163,-64v-7,22,-65,2,-77,21v-2,10,-6,21,-11,35v-20,4,-21,-12,-19,-29v3,-23,-44,6,-39,-27v-8,-22,36,-8,49,-18v8,-13,6,-36,24,-40v19,-4,14,32,11,39v18,3,19,2,54,8v2,1,5,5,8,11",w:170},",":{d:"25,63v-26,21,-48,-2,-22,-24v14,-12,35,-40,35,-69v3,-2,3,-11,12,-9v35,17,5,88,-25,102",w:97},"-":{d:"57,-94v19,4,55,-5,54,17v-15,23,-54,20,-91,15v-4,2,-13,-10,-11,-16v-1,-22,28,-15,48,-16",w:124},".":{d:"40,-48v21,20,21,44,-4,44v-33,0,-26,-24,-10,-44r14,0",w:67},"/":{d:"21,20v-22,-45,21,-95,41,-126v38,-57,115,-158,193,-201v2,0,4,3,7,11v11,29,-15,34,-25,55v-81,56,-189,208,-197,261r-19,0",w:275},0:{d:"78,-237v70,-47,269,-41,270,59v0,34,-11,53,-29,76v-13,35,-30,32,-85,64v-6,2,-10,6,-7,8v-73,14,-98,38,-173,1v-7,-13,-52,-48,-46,-88v9,-57,27,-75,70,-120xm123,-38v100,0,202,-46,195,-153v-32,-55,-144,-73,-211,-35v-16,34,-68,54,-53,108v6,25,1,22,-3,39v6,24,41,41,72,41",w:353},1:{d:"39,-208v0,-14,6,-59,29,-39v3,4,6,13,10,24r-22,128r8,87v-4,6,-9,3,-16,2v-44,-38,-9,-137,-9,-202",w:93},2:{d:"88,-35v47,-10,119,-24,168,-9v0,12,-23,13,-35,16v1,1,3,1,5,1v-74,8,-118,23,-194,23v-14,0,-20,-13,-21,-28v55,-40,83,-61,123,-104v26,-13,65,-67,71,-102v-1,-9,-11,-16,-22,-16v-20,-1,-120,29,-156,49v-10,-2,-30,-20,-10,-28v50,-21,111,-51,178,-48v25,10,44,22,36,39v12,30,-19,64,-34,83v-39,48,-37,39,-115,109v0,5,-3,8,-8,11v4,3,8,4,14,4",w:265},3:{d:"188,-282v34,-10,74,25,47,51v-19,32,-55,50,-92,70v28,14,116,25,108,70v8,14,-49,40,-63,48v-29,9,-130,22,-168,42v-6,-5,-19,-7,-12,-22v56,-36,175,-21,210,-76v-9,-20,-88,-42,-97,-33v-20,-1,-41,2,-56,-7r5,-21v56,-25,103,-36,137,-78v1,-1,2,-5,4,-11v-15,-14,-56,7,-79,0v-10,9,-73,22,-92,31v-11,-4,-28,-23,-13,-30v50,-22,96,-26,154,-37v0,-1,8,3,7,3",w:260},4:{d:"79,-249v-7,17,-29,75,-33,96v0,6,3,8,8,8v43,-2,111,6,141,-6v17,-47,20,-100,63,-148v9,4,16,7,21,10v-17,31,-44,95,-51,141v7,4,24,-4,23,10v-1,16,-29,12,-31,23v-10,22,-9,69,-7,103v-3,2,-7,5,-10,9v-47,-11,-23,-74,-16,-114v0,-4,-2,-6,-7,-6v-65,2,-89,13,-162,4v-22,-22,-2,-53,5,-76v16,-15,17,-57,35,-70v6,-1,21,11,21,16",w:267},5:{d:"185,-272v30,7,45,-8,53,18v1,16,-17,18,-34,14v0,0,-95,-11,-129,1v-6,9,-24,33,-29,54v76,10,171,5,214,47v11,11,22,30,5,52v-14,12,-30,14,-34,27v-26,11,-141,63,-157,60v-16,-2,-25,-19,-4,-27v48,-18,128,-39,170,-86v4,-14,-65,-41,-85,-41r-92,0v-10,-4,-66,-1,-57,-23v0,-23,23,-51,35,-83v11,-28,133,-10,144,-13",w:284},6:{d:"70,-64v9,-51,63,-74,123,-71v43,2,109,3,111,41r-25,47v0,1,1,2,2,3v-5,0,-39,10,-41,20v-15,3,-22,4,-22,11v-39,1,-77,20,-119,13v-42,-7,-35,-9,-77,-46v-56,-118,94,-201,176,-229v7,0,21,8,20,15v-2,17,-23,15,-43,24v-69,31,-119,72,-134,145v-5,25,36,68,78,64v59,-6,128,-18,153,-61v-7,-14,-13,-9,-32,-21v-67,-15,-118,-5,-150,43r0,12v-13,4,-17,-3,-20,-10",w:310},7:{d:"37,-228v33,-14,173,-17,181,-19v28,-1,24,31,9,45v-17,15,-45,49,-59,69v-17,26,-55,67,-61,113v-10,13,-9,14,-14,20v-33,-13,-20,-25,-11,-53v16,-48,73,-115,109,-156v2,-7,5,-14,-10,-12v-26,4,-54,6,-76,13v-23,-5,-83,31,-94,-9v2,-8,18,-19,26,-11",w:245},8:{d:"57,-236v40,-50,166,-51,213,-10v22,28,10,63,-22,78r-35,17v8,5,54,24,53,44v-5,14,-4,33,-18,42v-13,13,-35,18,-44,34v-60,27,-190,49,-194,-42v7,-41,17,-54,59,-70r0,-4v-32,-9,-73,-62,-26,-85v4,0,8,-2,14,-4xm142,-160v24,-2,160,-31,99,-72v-28,-18,-108,-33,-146,-5v-16,12,-28,30,-33,59v24,12,37,20,80,18xm41,-62v30,65,189,6,199,-37v3,-14,-60,-30,-74,-30v-70,0,-118,10,-125,67", +w:290},9:{d:"11,-192v15,-49,119,-61,161,-23v16,15,27,55,11,79v-20,62,-51,79,-96,118v-10,4,-45,27,-50,6v9,-15,66,-52,98,-99v-7,-7,-8,-3,-25,0v-49,-11,-96,-25,-99,-81xm145,-131v7,-5,13,-34,13,-41v-2,-51,-104,-38,-114,-6v-2,10,37,35,46,35v23,1,43,-1,55,12",w:198},":":{d:"39,-125v15,-8,40,-1,40,15v0,15,-6,22,-19,22v-13,0,-29,-21,-21,-37xm66,-17v-8,27,-51,19,-46,-8v-1,-6,8,-22,14,-20v29,0,30,6,32,28",w:95},";":{d:"56,-93v2,-30,37,-22,40,2v0,2,-1,7,-3,15v-13,8,-15,6,-27,4xm64,-44v11,-11,30,-4,32,14v-21,39,-63,71,-92,85v-5,0,-11,-2,-18,-8v11,-23,36,-36,50,-61v11,-7,19,-20,28,-30",w:107},"<":{d:"166,-202v12,0,29,15,24,29v0,4,-119,64,-120,73v15,21,89,64,91,86v2,29,-18,12,-30,15v-27,-29,-59,-54,-95,-75v-18,-10,-25,-13,-24,-41",w:176},"=":{d:"125,-121v18,7,55,-9,69,14v0,17,-45,26,-135,26v-18,0,-27,-7,-27,-21v-1,-37,60,-5,93,-19xm138,-71v20,0,48,-1,50,16v-13,24,-86,32,-131,29v-29,-2,-43,-10,-43,-24v-7,-23,36,-14,39,-17v27,6,57,-4,85,-4",w:196},">":{d:"4,-14v20,-48,77,-59,118,-94v-16,-19,-58,-52,-81,-75v-11,-7,-15,-38,-1,-40v33,16,83,71,121,105v26,23,-6,35,-41,53v-29,16,-56,28,-73,54v-21,15,-16,20,-34,15v-3,0,-9,-16,-9,-18",w:174},"?":{d:"105,-291v57,-13,107,-4,107,39v0,67,-136,85,-155,137v-1,6,10,23,-4,23v-23,1,-33,-35,-23,-57v31,-41,124,-60,149,-103v-8,-21,-72,-5,-88,-1v-23,6,-59,39,-71,8v0,0,-1,0,1,-17v10,-4,45,-20,84,-29xm80,-25v-6,4,-8,39,-24,22v-24,3,-22,-21,-13,-35v17,-7,29,5,37,13",w:216},"@":{d:"218,-207v23,8,42,14,47,37v44,68,-27,137,-87,85r1,0v0,2,-59,19,-61,17v-35,0,-42,-47,-17,-68r0,-4v-19,-1,-45,37,-49,40v-37,76,58,72,121,62v11,-2,34,-13,36,3v-14,31,-69,31,-114,33v-51,2,-99,-41,-80,-92v2,-30,22,-40,42,-63v35,-20,91,-53,161,-50xm217,-101v23,0,35,-19,35,-41v0,-43,-75,-41,-102,-19v36,3,55,16,62,41v-6,5,-6,19,5,19xm127,-110v8,5,51,-15,28,-16v-4,0,-25,4,-28,16",w:291},A:{d:"97,-81v-23,-10,-39,38,-52,60v-8,6,-8,6,-22,18v-22,-7,-23,-37,-4,-49v7,-8,11,-15,15,-23r-1,1v-14,-26,23,-29,31,-40v1,-1,15,-29,26,-36v17,-31,39,-58,54,-92v16,-20,20,-51,41,-66v29,5,34,62,45,92v9,64,21,103,49,155v-3,25,-44,11,-54,0v-34,-12,-97,-29,-128,-20xm107,-118v20,6,80,10,111,17v6,-7,-4,-15,-7,-24v-11,-28,-9,-92,-30,-117v-9,9,-19,44,-34,55v-9,23,-27,40,-40,69",w:294},B:{d:"256,-179v41,10,115,34,91,91v-6,3,-14,12,-19,20v-37,19,-50,34,-63,25v-9,10,-12,11,-34,13r3,-3v-4,-4,-12,-4,-18,0v0,0,2,2,5,4v-21,14,-26,6,-44,15v-4,0,-7,-2,-8,-5v-6,11,-20,-5,-18,11v-36,4,-91,35,-114,4v-7,-62,-10,-138,4,-199v-1,-19,-37,2,-37,-27v0,-8,2,-13,6,-15v68,-31,231,-92,311,-39v8,12,12,20,12,25v-8,42,-32,49,-77,80xm79,-160v72,-17,135,-39,184,-70v20,-13,31,-23,31,-27v1,-6,-30,-13,-38,-12v-54,0,-116,13,-186,41v11,21,1,48,9,68xm262,-43v0,-4,3,-6,-4,-5v0,1,1,2,4,5xm211,-140v-34,7,-94,24,-139,15v-6,20,-4,56,-4,82v0,29,43,1,56,2v48,-11,108,-25,154,-48v20,-10,32,-17,32,-25v0,-18,-33,-26,-99,-26xm195,-20v6,1,6,-2,5,-7v-3,2,-7,2,-5,7",w:364},C:{d:"51,-114v-12,75,96,76,166,71r145,-10v9,2,9,5,9,18v-37,18,-85,28,-109,22v-18,10,-47,10,-71,10v-29,0,-68,1,-105,-11v-6,-1,-10,-3,-10,-8v-33,-13,-48,-33,-66,-59v-19,-114,146,-150,224,-177v35,0,88,-31,99,7v-1,29,-49,14,-76,28v-55,8,-115,35,-175,71v-13,8,-23,21,-31,38",w:376},D:{d:"312,-78v-2,1,-3,7,-10,5v6,-3,10,-4,10,-5xm4,-252v2,-27,83,-38,106,-39v130,-7,267,1,291,109v0,0,-2,8,-3,25v-5,9,-4,28,-23,34v-4,4,-2,5,-7,0v-3,3,-15,7,-5,10v0,0,-10,14,-13,2v-11,1,-8,5,-20,14v1,2,7,3,9,1v-4,13,-22,13,-11,4v0,-3,1,-6,-3,-5v-40,29,-103,38,-141,65v10,6,22,-7,34,-3v-41,20,-127,44,-171,46v-21,1,-47,-33,-11,-39v15,-2,43,-6,56,-11v-16,-101,-5,-130,9,-207v2,0,4,-1,6,-3v-16,-17,-91,38,-103,-3xm297,-69v-7,3,-17,8,-25,7v1,1,3,2,5,2v-4,2,-11,5,-23,9v4,-11,30,-21,43,-18xm240,-51v10,0,12,2,0,6r0,-6xm220,-36v-1,-3,4,-6,6,-3v0,1,-2,1,-6,3xm125,-48v16,6,137,-46,155,-53v29,-18,101,-44,82,-93v-21,-53,-84,-61,-168,-67v-20,7,-50,3,-77,8v33,54,-12,132,8,205xm159,-22v-4,-1,-15,-5,-15,2v7,-1,12,-2,15,-2",w:381},E:{d:"45,-219v-19,-36,34,-41,63,-36v44,-10,133,-8,194,-15v3,2,38,11,52,15v-73,19,-171,21,-246,38v-9,11,-16,32,-20,61v35,11,133,-6,183,3v1,6,2,7,3,14v-46,24,-118,16,-193,27v-15,13,-22,52,-22,66v60,1,121,-20,188,-20v22,10,53,-7,74,5v16,29,-23,26,-43,32v-73,4,-139,13,-216,27r-52,-10v-4,-22,23,-69,26,-98v-3,0,-10,-15,-12,-24v20,-12,34,-23,35,-67v2,-1,5,-5,5,-7v0,-4,-14,-11,-19,-11",w:353},F:{d:"270,-258v13,2,59,6,48,34v-78,-3,-143,1,-212,22v-10,16,-21,43,-24,69r145,-9v8,3,29,-3,16,21v-14,-1,-59,13,-60,7v-12,13,-67,18,-108,21v-2,1,-4,3,-7,6v-2,23,-8,43,-7,69v1,28,-30,11,-40,5r10,-80r-26,-14v5,-10,10,-33,28,-25v21,-3,15,-46,26,-59v-1,-3,-32,-13,-28,-24v2,-22,45,-16,59,-30v47,4,99,-14,151,-9v5,-3,25,-3,29,-4",w:236},G:{d:"311,-168v53,0,94,57,74,110v-31,37,-71,34,-136,52v-13,-7,-41,10,-57,7v-73,-1,-122,-17,-162,-59v-49,-51,-24,-80,5,-130v35,-61,138,-93,214,-106v16,4,42,-1,40,21v-5,40,-39,2,-73,21v-76,19,-162,65,-177,142v28,103,237,76,312,29v2,-3,3,-7,3,-13v-10,-35,-37,-43,-87,-45v-16,-13,-53,-9,-78,1v-4,-3,-5,-7,-5,-11v17,-29,73,-17,108,-24v12,4,18,5,19,5",w:391},H:{d:"300,-268v18,12,19,32,4,51v-35,44,-34,140,-46,217v-1,5,-5,13,-11,12v-6,1,-19,-14,-18,-27r7,-106v-28,7,-76,22,-116,14v-18,2,-36,6,-55,3v-43,-8,-14,53,-33,75v-29,1,-26,-67,-21,-97v5,-31,28,-73,43,-98v2,2,7,3,14,3v13,33,-11,48,-13,78v61,4,118,2,176,2v8,0,13,-6,15,-20v4,-47,21,-87,54,-107",w:288},I:{d:"63,-266v34,10,-4,105,-8,128r-24,126v-2,2,-3,1,-9,6v-12,-10,-12,-15,-12,-47v0,-93,9,-156,28,-188v10,-17,19,-25,25,-25",w:79},J:{d:"235,-291v26,11,31,104,31,142v0,37,-2,95,-32,126v-33,34,-121,26,-167,1v-18,-11,-54,-29,-59,-59v0,-3,5,-15,16,-14v31,36,90,57,162,51v63,-30,56,-148,32,-226v-1,-16,11,-13,17,-21",w:282},K:{d:"212,-219v17,-5,80,-60,80,-19v0,9,-2,14,-5,16r-132,78v-34,23,-54,32,-21,50v39,21,74,23,124,41v5,2,7,5,7,9v-4,24,-55,15,-79,8v-67,-19,-98,-36,-116,-83v9,-24,38,-35,66,-61v7,-4,49,-30,76,-39xm47,-194v11,-20,11,-45,31,-55v2,2,4,3,6,0v29,39,-21,96,-18,128v-17,24,-15,62,-29,113v-4,3,-10,7,-19,11v-12,-13,-10,-28,-8,-53v3,-31,17,-79,37,-144",w:270},L:{d:"84,-43v58,0,179,-27,242,-4v3,17,-29,24,-40,26v-85,-4,-202,46,-268,3v-24,-16,-2,-33,-4,-57v26,-76,38,-108,86,-191v14,-7,26,-50,45,-32v6,22,5,31,-12,46v-20,39,-50,82,-67,142v-7,6,-19,46,-19,54v0,9,12,13,37,13",w:331},M:{d:"174,-236v-1,52,-11,92,-7,143v10,5,15,-12,22,-18v42,-55,90,-130,136,-174r15,-18v42,2,32,53,11,80v-12,58,-54,143,-34,210v0,3,-3,12,-9,10v-31,-5,-32,-57,-27,-92v4,-27,12,-58,25,-93v-5,-10,5,-19,6,-30v-46,44,-66,110,-129,172v-11,10,-18,15,-22,15v-34,6,-28,-103,-28,-152v-28,22,-65,119,-96,170v-9,15,-34,3,-31,-19v30,-64,91,-177,139,-229v12,-1,29,13,29,25",w:343},N:{d:"248,-20v-3,17,-37,18,-43,3v-24,-35,-53,-145,-80,-203v-32,40,-55,120,-92,174v-13,3,-26,-13,-27,-22r87,-171v4,-13,20,-57,42,-32v42,48,46,139,82,198v29,-45,46,-88,65,-153v12,-19,23,-42,38,-60v27,-1,14,18,4,44v-6,46,-32,68,-37,121v-15,29,-33,69,-39,101",w:307},O:{d:"240,-268v85,1,163,29,150,125v13,7,-12,18,-5,26v-23,63,-133,112,-228,124v-80,-16,-171,-56,-148,-153v11,-47,20,-43,53,-83v17,-9,39,-22,73,-29v45,-10,81,-10,105,-10xm363,-156v16,-51,-62,-85,-111,-79v-25,-11,-50,8,-81,0v-15,10,-70,16,-85,31v6,20,-27,24,-39,45v-42,75,40,128,115,128v56,0,209,-71,201,-125",w:383},P:{d:"70,-225v-7,-12,-36,16,-49,19v-4,0,-9,-5,-14,-17v21,-47,114,-55,172,-59v41,-3,132,33,99,87v-21,34,-72,59,-144,80v-2,16,-79,3,-74,46v3,25,-5,47,-10,68v-22,-1,-23,-29,-22,-56v2,-25,-20,-32,-8,-50v21,-5,10,-35,25,-57v6,-28,14,-48,25,-61xm71,-229v47,14,-2,50,-1,99v41,-3,113,-37,173,-76v5,-9,8,-14,8,-15v-28,-47,-125,-29,-180,-8",w:252},Q:{d:"374,-217v20,59,-11,127,-48,156r30,38v-1,6,-8,16,-14,9v-3,0,-19,-9,-47,-26v-72,35,-173,75,-236,12v-70,-40,-67,-213,26,-217r8,5v24,-20,72,-48,112,-38v21,-4,22,-1,50,-2v66,-2,94,20,119,63xm296,-88v13,5,61,-49,63,-84v4,-62,-54,-78,-119,-76v-14,-6,-49,5,-71,3v-42,16,-89,41,-93,94v-9,11,1,25,-7,38v-12,-19,-7,-67,-1,-88v-56,30,-37,137,19,155v27,17,92,19,119,0v12,-2,29,-9,52,-20v2,-2,3,-3,3,-6v-11,-12,-46,-27,-54,-56v0,-13,3,-19,9,-19v18,1,60,52,80,59",w:379},R:{d:"100,-275v96,-23,196,-10,208,78v-3,18,-17,52,-49,62v-14,20,-54,23,-79,40v-2,0,-14,2,-36,6v-40,8,-30,14,-3,33v37,27,52,30,118,55v16,6,31,23,12,27v-58,-2,-104,-29,-143,-61v-14,-3,-16,-15,-39,-27v-23,-19,-28,-12,-15,-38v63,-19,111,-15,163,-53v27,-20,43,-36,43,-49v0,-64,-120,-62,-173,-38v-9,4,-38,9,-40,18v-10,32,-16,70,-13,116v-10,21,-8,47,-6,75v2,31,-9,29,-27,22v-9,-55,5,-140,15,-190v-8,-6,-24,10,-24,-11v0,-34,16,-34,42,-55v2,-1,17,-4,46,-10",w:297},S:{d:"13,-3v-7,-3,-22,-18,-5,-22v68,-15,119,-32,154,-45v51,-19,39,-34,3,-53v-46,-25,-82,-30,-121,-64v-33,-29,-50,-35,-25,-58v37,-20,119,-29,181,-29v29,0,44,6,44,18v-9,26,-62,6,-104,14v-17,2,-72,6,-92,16v37,53,132,58,180,111v8,9,11,20,11,30v-4,17,-23,35,-42,34v-21,16,-17,1,-49,17v-14,7,-41,9,-56,20v-25,-3,-49,10,-79,11",w:234},T:{d:"141,-3v-36,-6,1,-49,-3,-79v10,-19,6,-35,15,-64r26,-85v-51,-9,-100,10,-141,14v-16,2,-30,-26,-11,-32v26,-8,143,-8,179,-19r12,6v67,-2,142,-1,200,-1v8,0,14,3,19,10v-18,16,-74,3,-103,14v-48,-4,-60,4,-113,7v-42,22,-36,130,-58,187v1,12,-9,44,-22,42",w:277},U:{d:"365,-262v13,56,-22,104,-36,141v-19,22,-30,38,-57,56v-4,18,-60,35,-78,50v-53,28,-142,0,-161,-34v-31,-56,-37,-108,-11,-164v17,-33,29,-50,48,-29v-2,2,-3,7,-4,13v-44,36,-38,149,7,174v30,26,55,19,102,4v56,-17,66,-34,120,-76v12,-24,56,-68,46,-122r0,-16v0,1,-1,3,-1,6v4,-13,11,-10,25,-3",w:368},V:{d:"246,-258v21,-22,31,-26,44,-8v1,1,-12,22,-28,35v-15,25,-41,38,-56,69v-13,15,-20,31,-28,57v-15,13,-11,29,-27,72v3,21,-5,24,-27,27v-33,-45,-54,-118,-84,-167v-5,-26,-18,-50,-25,-76v-3,-12,24,-8,29,-5v8,13,18,52,26,70r52,115v9,-2,4,-9,10,-21r25,-47v25,-44,46,-76,89,-121",w:234},W:{d:"31,-213v16,46,17,106,41,151v31,-35,49,-89,76,-127v30,-15,39,27,52,56v10,22,21,48,35,67v2,0,4,-1,5,-3v16,-28,50,-76,79,-121v14,-21,40,-63,64,-83r5,8v-30,58,-76,110,-97,173v-18,28,-25,37,-33,63v-11,1,-16,25,-30,15v-21,-31,-44,-89,-62,-131v0,-2,-1,-3,-5,-5v-17,11,-16,36,-31,50v-20,33,-20,84,-68,94v-24,-19,-23,-81,-39,-111v-1,-15,-29,-94,-10,-108v9,2,12,5,18,12",w:331},X:{d:"143,-183v43,-25,69,-36,126,-62v22,-10,86,-10,56,21v-51,3,-158,61,-154,64v10,15,41,30,50,52v27,17,46,60,70,82v9,14,-6,30,-24,20v-35,-43,-75,-100,-116,-132v-48,13,-100,47,-118,94v-1,49,-26,34,-27,4v-1,-26,13,-27,17,-48v22,-27,68,-55,90,-77v-9,-12,-60,-39,-79,-57v-6,-10,-6,-25,12,-25",w:312},Y:{d:"216,-240v19,-14,42,10,22,26v-54,66,-121,109,-156,197v-8,21,-11,15,-30,4v3,-37,27,-61,33,-76v12,-12,15,-19,32,-42v-8,-6,-40,5,-45,5v-48,-6,-69,-65,-56,-113v14,0,13,-1,24,7v2,33,12,75,42,73v36,-2,102,-57,134,-81",w:189},Z:{d:"60,-255v66,12,200,-34,240,21v-13,42,-63,62,-98,89v-19,15,-47,33,-82,55v-25,16,-47,32,-66,47v58,24,129,-6,208,-6v23,0,36,12,13,19v-33,2,-53,5,-86,10v-32,18,-88,15,-135,15v-9,-1,-55,-1,-48,-29v1,-24,30,-24,40,-41v64,-50,151,-86,208,-147v-38,-17,-155,12,-198,-4v0,0,-11,-33,4,-29",w:310},"[":{d:"72,-258r-15,250v30,4,55,-3,80,-6v7,-1,8,17,9,23v-28,15,-73,23,-121,21v-7,0,-10,-6,-10,-17v0,-60,25,-193,22,-288v0,-16,13,-20,33,-19v9,-3,34,-12,51,-12v16,0,15,16,19,29v-16,7,-48,10,-68,19",w:151},"\\":{d:"236,38v20,-18,-8,-74,-13,-90v-44,-78,-112,-190,-200,-253v-2,0,-5,4,-7,12v-11,31,13,36,24,58v74,61,174,219,180,273r16,0",w:257},"]":{d:"133,-258v-23,-13,-84,6,-85,-32v0,-10,5,-15,14,-15v0,0,30,2,90,7v10,1,15,13,15,36v2,7,-8,59,-13,112r-11,125v-9,48,9,90,-59,71v-20,-4,-39,-1,-59,-4v-5,-10,-25,-12,-14,-30v8,-3,61,-13,78,-8v14,1,8,-7,10,-17v15,-69,21,-166,34,-245",w:171},"^":{d:"68,-306v20,15,47,36,58,60v-1,4,0,7,-9,7v-26,0,-47,-38,-49,-32v-15,9,-41,50,-54,30v-2,-31,17,-23,33,-51v8,-9,15,-14,21,-14",w:135},_:{d:"11,15v-8,33,18,45,50,34r205,2r197,-5v11,-5,14,-9,7,-28v-95,-21,-258,-10,-376,-10v-25,0,-72,-3,-83,7",w:485},"`":{d:"75,-264v16,8,56,14,39,43v-30,-8,-65,-23,-105,-44v-1,-3,-3,-28,5,-25v16,5,44,17,61,26",w:129},a:{d:"124,-56v10,4,59,41,65,50v1,7,-6,17,-12,17r-60,-30v-22,2,-42,21,-65,19v-33,4,-68,-67,-15,-81v41,-27,96,-39,110,9v0,6,-4,12,-11,16v-33,-25,-67,-5,-88,12v10,16,61,-18,76,-12",w:196},b:{d:"80,-140v69,1,123,0,134,52v5,26,-71,71,-97,70v-11,11,-88,22,-94,22v-11,-3,-26,-18,-6,-24v19,-5,-2,-19,-1,-35v1,-18,11,-36,-5,-47v-6,-17,-6,-21,14,-32v6,-45,18,-89,28,-124v2,-7,8,-12,17,-15v5,3,10,11,16,28v-12,27,-13,63,-23,96v0,6,6,9,17,9xm87,-107v-40,-9,-31,31,-39,54v8,15,0,25,12,22v30,-8,60,-18,88,-32v39,-18,49,-33,-1,-42v-20,-4,-45,-7,-60,-2",w:217},c:{d:"128,-123v29,-7,37,29,12,33v-27,-4,-40,6,-79,25v-8,4,-13,11,-16,22v30,32,91,3,134,11v5,13,-8,26,-22,19v-51,25,-139,28,-150,-30v6,-50,69,-82,121,-80",w:194},d:{d:"224,-201v0,-35,-17,-111,24,-94v7,86,-2,119,0,197v-4,2,-8,21,-18,16v-62,-7,-154,-8,-185,29v6,17,28,26,51,26v16,0,100,-15,132,-18v7,5,-6,20,-10,22v-24,8,-122,42,-163,25v-32,-5,-62,-53,-36,-80v35,-37,118,-46,198,-43v1,-22,7,-49,7,-80",w:265},e:{d:"4,-57v0,-58,51,-71,110,-74v33,-1,45,16,59,35v1,14,2,39,-7,42v-24,-2,-73,13,-99,11v-2,2,-2,3,-2,3v0,3,12,8,37,15v21,0,69,9,31,22v-9,14,-34,6,-56,6v-27,-5,-73,-28,-73,-60xm123,-102v-22,2,-68,5,-65,26v24,-2,66,5,79,-6v-5,-13,-1,-13,-14,-20",w:182},f:{d:"6,-59v6,-29,53,-4,53,-43v0,-64,29,-118,84,-150v45,-25,167,-24,155,51v-1,2,-7,6,0,6r-10,2v-45,-58,-165,-39,-186,39v-7,26,-11,42,-9,62v44,8,95,-21,135,-7v-12,25,-39,21,-76,30v-19,5,-18,7,-54,19v-2,8,15,32,17,35v-6,25,-26,26,-40,-5r-15,-24v-41,10,-44,12,-54,-15",w:234},g:{d:"132,-97v30,27,21,75,30,117v-12,31,-11,66,-36,103v-32,46,-105,83,-167,39v-31,-21,-49,-29,-51,-75v-2,-37,77,-50,121,-57v37,-6,68,-10,95,-11v7,-6,3,-32,4,-46v0,0,-1,1,-1,2v0,-18,-5,-31,-14,-45v-44,5,-79,20,-94,-18v3,-54,73,-54,125,-50v12,7,12,13,4,25v-30,-11,-76,8,-90,20v23,3,50,-16,74,-4xm-34,121v60,53,168,1,159,-86v-47,-7,-93,24,-142,30v-12,7,-45,19,-42,29v0,10,8,19,25,27",w:188},h:{d:"100,-310v11,-2,10,19,11,20v-11,52,-40,133,-53,189v-6,30,-9,37,-9,47v27,0,113,-34,143,-34v42,0,31,47,39,79v0,4,-5,17,-16,16v4,2,11,3,4,6v-24,-1,-28,-34,-25,-64v-1,-1,-2,-3,-5,-5v-51,0,-110,38,-162,51v-9,1,-15,-15,-16,-23v17,-89,39,-141,71,-264v0,-9,6,-19,18,-18",w:251},i:{d:"62,-209v7,18,9,23,-5,38v-23,-6,-21,-18,-11,-36v2,0,8,-1,16,-2xm34,-7v-18,-21,-8,-73,-1,-106v7,-10,20,-8,23,6v-1,36,7,72,-2,104v-8,2,-8,0,-20,-4",w:80},j:{d:"88,-191v5,28,-18,40,-28,21v0,-20,12,-29,28,-21xm82,-99v28,-1,16,35,16,61v0,60,-19,150,-35,202v-12,8,-19,31,-35,16v-32,-7,-43,-19,-56,-44r2,-17v11,4,49,45,61,18v10,-55,27,-107,30,-171v0,-16,0,-59,17,-65",w:120},k:{d:"59,-66v33,26,114,37,155,62v8,-4,22,-2,19,-17v0,-4,-12,-11,-30,-24v-36,-25,-54,-22,-99,-33v14,-21,119,-13,103,-63r-16,-7r-123,47r25,-93v-3,-15,16,-49,18,-81v1,-15,-21,-14,-25,-3v-31,82,-49,168,-75,257v2,2,22,30,27,10v2,-5,4,-9,9,-11v4,-16,4,-15,12,-44",w:236},l:{d:"66,-300v21,-6,37,23,30,55v-10,51,-28,135,-28,208v0,11,6,36,-13,37v-29,-5,-30,-48,-25,-83r28,-177v-6,-17,1,-29,8,-40",w:102},m:{d:"348,-59v-2,21,0,57,3,73v-17,3,-30,-1,-32,-16v-8,-7,-5,-44,-13,-70v-35,3,-82,49,-111,70v-12,8,-40,4,-39,-15r2,-56v-1,-13,4,-28,-8,-29v-35,8,-79,72,-115,87v-6,2,-20,-18,-21,-22v1,-20,14,-105,39,-64r8,15v17,-14,72,-56,93,-54v27,3,49,40,43,80v24,-2,66,-55,124,-53v11,14,28,23,27,54",w:368},n:{d:"121,-136v37,6,62,54,62,111v0,32,-16,25,-31,17v-18,-30,-5,-45,-22,-85v-37,-13,-71,55,-92,65v-20,-3,-39,-39,-21,-62v2,-12,3,-15,11,-30v12,-8,20,11,29,12",w:194},o:{d:"108,-139v52,-24,104,18,104,63v0,59,-66,67,-114,83v-52,-2,-115,-50,-80,-105v23,-18,52,-35,90,-41xm45,-60v16,54,125,16,131,-23v-12,-59,-129,-8,-131,23",w:217},p:{d:"82,14v-10,12,-8,117,-24,142v-15,2,-19,0,-29,-13v0,-76,9,-113,22,-192v14,-27,35,-6,37,13v0,8,-3,21,-7,38v2,2,3,2,4,2v26,-9,116,-33,126,-72v-7,-17,-24,-33,-49,-31v-40,3,-116,13,-116,47v-5,7,-2,17,-16,20v-17,-12,-18,-20,-12,-38v8,-25,74,-61,110,-59v55,-15,113,15,118,70v-15,52,-84,79,-146,83v-5,0,-11,-4,-18,-10",w:251},q:{d:"144,-147v27,-8,89,-3,97,31v-9,29,-42,-4,-73,1v-32,6,-118,20,-111,49v0,7,13,13,21,13v21,0,78,-24,104,-34v2,0,9,8,22,21v1,1,1,2,1,5v-27,90,-22,70,-43,203v11,15,-15,54,-33,33v-6,-8,-10,-20,-3,-28v1,-72,5,-114,15,-172v-35,3,-35,10,-59,8v-41,-4,-98,-41,-56,-85v33,-34,59,-27,118,-45",w:248},r:{d:"242,-117v2,22,5,10,-14,23v-73,-7,-166,-23,-174,56v-8,6,-3,20,-8,36v-29,10,-40,-9,-33,-46v6,-31,7,-69,32,-55v58,-37,66,-42,175,-19v3,5,15,4,22,5",w:229},s:{d:"154,-151v19,1,27,24,13,32v-4,1,-22,4,-53,7v-16,8,-22,-2,-39,9v23,21,89,16,96,62v-13,24,-85,35,-124,42v-9,-3,-18,-3,-27,0v-6,-4,-21,-16,-8,-25v30,-6,83,-13,102,-24v-17,-16,-80,-33,-97,-48v-3,-2,-4,-7,-4,-15v-6,-6,3,-13,15,-18v22,-9,94,-23,126,-22",w:188},t:{d:"85,-150v10,-41,35,-126,65,-134v4,1,24,19,11,36v-17,22,-29,57,-36,104v26,8,50,-7,73,5v14,0,22,3,22,9v-1,19,-44,18,-57,23v-10,1,-46,0,-54,10v-10,24,-4,67,-20,98v-21,-3,-26,1,-26,-20v0,-9,2,-36,8,-81v-15,-13,-81,9,-77,-27v4,-38,71,6,91,-23",w:194},u:{d:"207,-136v-1,-2,11,-14,14,-13v6,0,10,7,10,22v-3,40,-23,56,-40,82v-13,19,-62,43,-93,43v-67,-2,-111,-75,-71,-133v26,-3,21,29,19,49v-1,27,26,44,57,42v41,-2,93,-55,104,-92",w:242},v:{d:"24,-127r52,71v42,-16,70,-54,124,-65v5,4,8,7,8,11v-8,19,-4,8,-33,32v0,1,-1,3,-1,5v-61,45,-93,68,-97,68v-40,-15,-50,-72,-68,-100v6,-14,10,-22,15,-22",w:214},w:{d:"15,-139v38,-2,27,57,45,86v30,2,67,-66,101,-78v26,6,36,69,60,78v47,-35,51,-54,119,-104v3,0,7,-2,15,-4v19,23,-9,28,-21,49v-33,28,-68,90,-107,109v-10,6,-52,-47,-72,-71v-20,17,-85,74,-97,73v-38,7,-41,-98,-52,-122v0,-1,3,-7,9,-16",w:325},x:{d:"95,-124v22,-13,78,-32,99,-31v16,0,23,6,23,18v0,22,-17,11,-49,21v-3,0,-45,20,-42,24v0,1,2,4,8,10v20,24,49,41,44,80v-35,3,-27,-9,-60,-44v-40,-43,-37,-26,-79,9v-1,1,-2,3,-3,8v-12,8,-28,10,-27,-11v-6,-8,45,-65,48,-65v-17,-21,-61,-52,-24,-68v9,0,48,37,62,49",w:223},y:{d:"44,-65v22,33,70,4,99,-8v5,-4,28,-15,41,-31r17,0v25,47,-26,70,-40,114v-5,4,-9,8,-10,21v-16,12,-11,33,-27,51v-5,18,-12,43,-23,71v-1,-1,-2,34,-18,29v-12,1,-22,-12,-22,-23v20,-70,24,-65,68,-177v-47,16,-111,8,-116,-39v-11,-13,-7,-62,8,-62v18,0,22,26,23,54",w:216},z:{d:"189,-43v9,-1,46,-6,41,12v0,7,-5,13,-15,14v-45,6,-148,24,-181,13v0,-3,-5,-8,-14,-15v5,-44,66,-46,90,-85v-15,-18,-84,21,-84,-14v0,-10,5,-17,14,-18v33,-3,79,-13,109,-3v4,-2,14,11,12,15v0,23,-26,51,-78,84v28,10,73,-3,106,-3",w:244},"{":{d:"94,-303v27,-9,90,-14,79,26v-20,17,-55,-5,-87,13v-4,1,-6,4,-6,8v33,42,31,44,7,85v-6,10,-13,16,-13,13v5,6,17,17,15,31r-33,78v7,35,28,49,57,63r49,0v7,42,-51,41,-86,20v-43,-13,-51,-51,-56,-89v-2,-25,25,-54,27,-71v-3,-4,-46,-5,-41,-21v2,-10,-3,-29,11,-25v2,0,51,-17,52,-38v4,-3,-25,-23,-25,-49v0,-41,8,-30,50,-44",w:179},"|":{d:"30,-308v26,5,14,50,15,80v5,78,-8,153,-3,225v-2,15,-1,31,-11,36v-8,-3,-25,-22,-25,-32r9,-183v0,-40,0,-78,1,-112v0,-4,9,-15,14,-14",w:63},"}":{d:"47,-298v34,-17,118,-18,112,36v6,25,-76,98,-69,103v4,16,39,7,44,28v7,34,-34,17,-37,39v8,29,49,83,23,123v-15,23,-43,26,-73,46v-34,8,-43,11,-49,-17v1,-15,30,-15,33,-20v24,-12,70,-27,55,-61v-14,-33,-37,-68,-19,-103v-46,-50,46,-100,60,-141v-10,-16,-68,6,-77,-12",w:143},"~":{d:"7,-254v2,-6,59,-50,67,-46v11,-1,35,19,46,26v5,0,27,-10,66,-31v21,8,-1,25,-7,38v-27,21,-48,31,-65,31v-24,-11,-37,-39,-65,-9v-7,7,-26,36,-42,11v3,-5,-3,-17,0,-20",w:199}," ":{w:179},"¡":{d:"86,-197v8,16,-7,41,-24,25v-11,-11,-4,-16,-3,-29v13,0,15,-2,27,4xm46,-107v4,-8,11,-16,23,-7v19,26,-5,57,-6,87v-7,0,-5,18,-9,28v0,14,-17,52,-11,70v-2,7,-15,28,-25,12v-4,-6,-15,-7,-6,-16v2,-39,14,-96,34,-174",w:95},"¢":{d:"105,-188v13,-12,14,-18,26,-15v7,23,7,15,-3,49v6,0,18,14,17,20v-3,5,-12,19,-26,13v-14,1,-14,5,-16,21v10,10,46,-13,38,18v-9,17,-23,16,-54,20v-17,16,-4,55,-29,60v-37,-10,19,-64,-24,-71v-20,-10,-37,-47,-6,-62v23,-20,73,-4,77,-53xm65,-101v4,-9,7,-8,3,-13v-14,4,-22,10,-3,13",w:154},"£":{d:"153,-170v3,22,62,0,49,39v-18,6,-31,12,-58,9v-12,-1,-17,30,-23,39v19,26,50,56,91,35v9,-2,27,-13,27,4v0,27,-27,39,-58,42v-32,-5,-59,-19,-78,-39v-6,1,-35,44,-57,39v-25,0,-37,-15,-37,-46v0,-41,43,-53,73,-50v4,1,12,-18,12,-21v-7,-15,-49,0,-44,-30v-2,-31,31,-16,60,-19v16,-30,25,-119,93,-113v16,2,75,16,50,44v-4,5,-7,7,-12,8v-18,-12,-32,-18,-41,-18v-35,-1,-38,52,-47,77xm43,-45v4,5,12,-2,11,-9v-1,2,-12,1,-11,9",w:242},"¤":{d:"308,-133r-200,16v-2,1,-6,4,-10,10v70,-2,144,-14,211,-8v3,0,8,4,13,8v-1,4,-3,9,-9,17v-57,11,-164,6,-219,25v26,32,112,25,173,25v9,0,35,2,35,19v0,9,-4,13,-12,14v-115,12,-146,23,-211,-19v-12,-4,-22,-9,-25,-27v-6,-29,-61,3,-43,-49v17,-1,36,7,42,-12v-32,7,-36,-39,-11,-40v29,14,63,-25,73,-30v52,-25,72,-44,142,-44v23,0,21,41,-1,39v-35,-3,-61,9,-102,31v2,2,5,4,8,4v18,-6,101,-9,115,-9v7,0,55,13,31,30",w:312},"€":{d:"308,-133r-200,16v-2,1,-6,4,-10,10v70,-2,144,-14,211,-8v3,0,8,4,13,8v-1,4,-3,9,-9,17v-57,11,-164,6,-219,25v26,32,112,25,173,25v9,0,35,2,35,19v0,9,-4,13,-12,14v-115,12,-146,23,-211,-19v-12,-4,-22,-9,-25,-27v-6,-29,-61,3,-43,-49v17,-1,36,7,42,-12v-32,7,-36,-39,-11,-40v29,14,63,-25,73,-30v52,-25,72,-44,142,-44v23,0,21,41,-1,39v-35,-3,-61,9,-102,31v2,2,5,4,8,4v18,-6,101,-9,115,-9v7,0,55,13,31,30",w:312},"¥":{d:"31,-248v30,-3,64,64,74,59v37,-22,77,-65,107,-82v20,-11,34,18,21,32v-28,19,-52,38,-70,57v-18,8,-40,21,-35,60v2,19,39,7,64,7v25,0,16,21,2,27v-36,16,-46,8,-68,18v6,11,101,-20,66,24v-21,11,-42,12,-75,20v-2,1,-5,6,-10,18v-8,3,-11,10,-24,8v-7,-17,-2,-18,-9,-26v-13,5,-39,3,-53,-2v-10,-17,-7,-27,0,-34v23,-1,45,1,64,-5v-11,-7,-28,-4,-64,-6v-13,-8,-15,-24,-6,-35v33,-2,102,9,76,-37v-14,-14,-33,-38,-60,-66v-10,-10,-8,-28,0,-37",w:219},"§":{d:"141,-115v12,10,29,36,28,56v-4,68,-129,69,-152,16v-1,-12,-10,-22,8,-23v17,3,47,21,67,23v16,1,40,-8,38,-21v-8,-49,-119,-30,-117,-85v1,-28,15,-45,-3,-64v-1,-53,55,-61,103,-62v15,-5,6,-5,20,-2v16,17,23,27,23,30v-1,26,-29,7,-45,7v-21,0,-51,2,-62,17v19,14,87,8,97,43v18,14,16,57,-5,65xm64,-147r57,17v10,-28,-22,-43,-47,-44v-25,-1,-35,19,-10,27",w:174},"¨":{d:"124,-259v0,9,-4,13,-12,13v-18,0,-22,-21,-17,-35v19,-1,30,1,29,22xm23,-285v7,2,30,9,29,18v1,10,-9,19,-18,19v-19,0,-28,-26,-11,-37",w:136},"©":{d:"102,-29v-74,5,-124,-84,-70,-140v22,-22,53,-35,97,-38v46,-4,88,49,74,100v0,44,-51,75,-101,78xm96,-66v42,-3,75,-23,75,-69v0,-23,-4,-38,-44,-38v-16,0,-33,6,-49,20v36,-4,55,-12,62,20v-5,16,-49,1,-50,21v10,15,53,-14,54,11v0,18,-14,27,-42,27v-22,1,-46,-11,-46,-31v0,-25,7,-39,20,-44v-1,-1,-2,-2,-3,-2v-51,22,-32,89,23,85",w:217},"ª":{d:"6,-265v1,-31,58,-53,80,-22v-11,14,25,28,25,36v-2,8,-15,12,-27,10v-22,-29,-68,19,-78,-24xm52,-281v-8,1,-24,10,-9,13v11,1,24,-10,9,-13",w:117},"«":{d:"191,-64v16,6,87,37,53,63v-39,-9,-71,-28,-107,-40v-14,-13,-13,-34,10,-47v27,-15,48,-55,84,-62v9,-2,21,10,21,18r-13,21v-16,5,-44,22,-51,41v0,4,1,6,3,6xm71,-65v17,6,87,35,55,62v-39,-8,-66,-27,-108,-40v-14,-13,-13,-36,10,-46v23,-18,50,-56,84,-63v9,-2,21,10,21,18r-13,22v-20,6,-32,17,-51,37v0,3,-1,11,2,10",w:265},"¬":{d:"141,-99v47,7,103,-3,149,6v14,24,18,15,10,39v-10,34,-7,31,-26,76v-4,6,-15,8,-16,21v-4,2,-4,1,-13,5v-22,-33,-4,-33,16,-104v-5,-9,-28,-4,-38,-6r-183,4v-14,0,-41,-29,-17,-36v31,-9,82,5,118,-5",w:315},"®":{d:"75,-194v78,-29,116,9,130,84v-2,42,-22,47,-57,67v-74,20,-161,-19,-129,-110v6,-18,29,-34,57,-40xm46,-86v51,36,84,21,129,-15v7,-15,0,-39,-10,-49v-13,-37,-49,-26,-86,-18v-28,7,-49,46,-33,82xm72,-123v-5,-43,68,-57,75,-14v-17,26,-18,17,3,32v2,25,-25,18,-45,7r-4,-4v-1,8,-3,20,-12,24v-10,-3,-21,-34,-17,-45xm112,-135v-10,-1,-20,13,-9,14v6,-6,9,-11,9,-14",w:217},"¯":{d:"63,-295v28,-7,73,10,105,7v11,1,6,8,5,19v-37,21,-72,11,-136,11v-23,0,-31,-14,-27,-36v12,-15,40,0,53,-1",w:183},"°":{d:"106,-268v0,36,-35,38,-51,46v-48,5,-60,-58,-25,-78v33,-11,76,-9,76,32xm38,-257v16,7,39,2,38,-17v-13,-9,-28,-1,-32,11v-5,3,-7,0,-6,6",w:114},"±":{d:"93,-163v-7,46,76,-4,46,47v-14,6,-27,13,-38,8v-24,2,-14,28,-28,44r-14,0v-7,-12,-5,-15,-7,-33v-12,-7,-41,-1,-37,-24v2,-11,23,-17,36,-14r28,-38v4,0,9,4,14,10xm113,-27v-12,18,-58,27,-85,24v-16,2,-22,-23,-13,-36v28,-7,85,-11,98,12",w:151},"´":{d:"52,-284v29,-11,50,-34,62,-14v3,12,-86,54,-94,56v-14,0,-16,-12,-12,-23v11,-5,25,-11,44,-19",w:120},"¶":{d:"121,-237v21,-9,44,-13,63,-1v-1,7,5,6,7,11r-4,190v-2,33,4,39,-15,40v-16,1,-10,-20,-10,-33r4,-161v0,-17,-1,-34,-16,-25v2,10,1,23,1,35v-9,46,-6,75,-15,156v-3,4,-7,5,-12,5v-17,-10,-3,-89,-10,-115v-43,14,-98,10,-101,-29v-4,-53,59,-63,104,-75v3,1,4,2,4,2xm95,-204v2,9,-30,50,1,50v35,0,23,-13,29,-43v0,-1,-2,-7,-4,-15v-12,-1,-14,2,-26,8",w:206},"¸":{d:"74,16v32,2,49,14,55,36v-3,7,-14,31,-29,33v-28,4,-57,11,-88,14v-19,-6,-13,-31,8,-33v20,-1,59,-5,73,-14v-17,-14,-68,8,-53,-37v9,-10,2,-28,24,-30v8,8,13,17,10,31",w:129},"º":{d:"13,-273v1,-31,56,-41,83,-18v36,8,14,48,-9,52v-35,6,-64,-5,-74,-34xm81,-269v-7,-7,-20,-11,-29,-6v5,13,13,11,29,6",w:128},"»":{d:"120,-129v9,-33,48,-10,64,5v9,20,86,52,50,86v-36,11,-66,31,-107,40v-6,-7,-9,-13,-9,-17v-2,-13,50,-46,63,-46v11,-18,-33,-42,-48,-47xm1,-128v10,-33,46,-8,64,6v8,19,86,50,51,85v-40,13,-69,30,-108,40v-6,-7,-8,-12,-8,-16v-2,-14,50,-46,63,-47v7,-13,-9,-20,-19,-30v-10,-9,-20,-15,-30,-17",w:252},"¿":{d:"181,-247v3,1,31,2,29,15v-4,22,-37,27,-41,4v1,-5,7,-20,12,-19xm161,-34v-45,-1,-105,19,-124,51v0,11,18,17,54,17v39,0,82,-13,112,4v-10,35,-58,31,-100,31v-47,0,-80,-10,-99,-31v-10,-56,22,-73,64,-90v8,-3,32,-9,74,-18v21,-15,7,-62,22,-92v-1,-5,-1,-11,4,-12v16,0,24,7,24,22v-8,30,-8,73,-17,111v-3,5,-7,7,-14,7",w:213},"À":{d:"161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm150,-268v14,10,54,14,37,41v-28,-7,-62,-22,-100,-42v-2,-3,-2,-26,5,-23v16,4,42,17,58,24"},"Á":{d:"161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm84,-250v31,-5,83,-53,100,-31v0,5,-11,15,-35,28v-16,5,-51,28,-53,25v-14,1,-16,-11,-12,-22"},"Â":{d:"161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm202,-219v-27,-6,-40,-26,-61,-37v-21,7,-39,46,-65,23v-2,-4,-3,-10,-4,-14v19,-4,43,-32,61,-43v27,6,40,22,62,37v12,8,18,17,18,25v0,6,-3,9,-11,9"},"Ã":{d:"161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm100,-285v26,-19,54,19,69,22v4,0,15,-5,34,-13v23,-9,22,-17,31,-12v3,11,-9,9,-7,21v-26,20,-46,30,-59,30v-3,3,-50,-26,-49,-29v-12,1,-31,35,-51,32v-3,-8,-5,-14,-5,-18v10,-9,16,-17,37,-33"},"Ä":{d:"161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm187,-259v0,8,-4,13,-12,13v-18,0,-21,-20,-16,-34v18,-1,28,2,28,21xm90,-284v7,3,28,11,28,18v0,9,-9,18,-18,17v-17,0,-25,-24,-10,-35"},"Å":{d:"161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm112,-239v-31,-17,-9,-61,29,-56v12,2,22,3,33,12v24,39,-30,62,-62,44xm119,-262v2,14,41,8,41,-4v0,-4,-8,-6,-24,-9v-10,-2,-17,10,-17,13"},"Æ":{d:"335,-259v0,30,-102,12,-122,34v10,21,2,79,16,100v24,-6,59,-13,86,-16v23,-2,32,21,13,26r-103,29v-3,22,-4,38,8,43v28,-5,60,-6,86,-14v5,-1,14,7,14,11v6,16,-90,40,-107,40v-29,0,-39,-19,-32,-46v-2,-4,0,-26,-9,-28v-29,2,-58,6,-88,6v-31,0,-40,74,-82,73v-18,-23,4,-37,12,-50v40,-65,112,-126,165,-207v20,-17,69,-11,112,-13v21,0,31,4,31,12xm123,-111v28,1,44,-2,67,-10v-4,-22,5,-49,-7,-65v-3,6,-65,61,-60,75",w:348},"Ç":{d:"48,-108v-12,70,90,71,159,67r138,-9v9,-1,7,9,7,17v-37,16,-80,27,-103,21v-14,9,-40,3,-67,9v-30,0,-64,1,-100,-10v-6,-1,-10,-4,-10,-8v-32,-12,-46,-31,-63,-56v-16,-61,47,-103,83,-121v82,-42,118,-45,200,-60v21,-4,36,34,11,37v-90,11,-148,31,-225,77v-12,8,-23,20,-30,36xm172,18v29,4,47,14,53,35v-2,7,-14,31,-27,31v-28,7,-55,9,-84,14v-18,-5,-13,-32,7,-32v21,0,55,-5,69,-13v-16,-14,-63,10,-50,-35v9,-10,1,-27,23,-29v7,8,11,16,9,29",w:331},"È":{d:"49,-160v1,-4,-10,-9,-15,-8v-15,-35,32,-30,57,-31r142,-8v2,1,30,7,40,10v-52,16,-133,17,-190,30v-7,9,-12,24,-15,47v26,10,102,-6,141,3v1,3,1,6,2,10v-36,18,-92,12,-149,21v-11,9,-16,41,-16,51v55,-1,111,-21,168,-13v15,-8,48,1,31,18v-53,16,-130,13,-198,29r-39,-8v-4,-19,17,-53,20,-76v-1,0,-7,-11,-9,-18v18,-7,22,-28,30,-57xm184,-236v6,9,5,13,0,23v-28,-7,-62,-21,-100,-41v-3,-2,-3,-27,5,-23v34,11,60,25,95,41",w:252},"É":{d:"49,-160v1,-4,-10,-9,-15,-8v-15,-35,32,-30,57,-31r142,-8v2,1,30,7,40,10v-52,16,-133,17,-190,30v-7,9,-12,24,-15,47v26,10,102,-6,141,3v1,3,1,6,2,10v-36,18,-92,12,-149,21v-11,9,-16,41,-16,51v55,-1,111,-21,168,-13v15,-8,48,1,31,18v-53,16,-130,13,-198,29r-39,-8v-4,-19,17,-53,20,-76v-1,0,-7,-11,-9,-18v18,-7,22,-28,30,-57xm133,-248v27,-11,48,-32,59,-14v3,11,-79,52,-88,53v-14,1,-16,-11,-12,-21v10,-4,23,-11,41,-18",w:252},"Ê":{d:"49,-160v1,-4,-10,-9,-15,-8v-15,-35,32,-30,57,-31r142,-8v2,1,30,7,40,10v-52,16,-133,17,-190,30v-7,9,-12,24,-15,47v26,10,102,-6,141,3v1,3,1,6,2,10v-36,18,-92,12,-149,21v-11,9,-16,41,-16,51v55,-1,111,-21,168,-13v15,-8,48,1,31,18v-53,16,-130,13,-198,29r-39,-8v-4,-19,17,-53,20,-76v-1,0,-7,-11,-9,-18v18,-7,22,-28,30,-57xm199,-211v-27,-6,-39,-26,-60,-37v-21,7,-40,47,-65,22v-2,-7,-2,-7,-4,-13v18,-5,44,-31,61,-43v27,6,41,22,62,37v12,9,18,17,18,25v0,6,-4,9,-12,9",w:252},"Ë":{d:"49,-160v1,-4,-10,-9,-15,-8v-15,-35,32,-30,57,-31r142,-8v2,1,30,7,40,10v-52,16,-133,17,-190,30v-7,9,-12,24,-15,47v26,10,102,-6,141,3v1,3,1,6,2,10v-36,18,-92,12,-149,21v-11,9,-17,41,-17,51v55,0,112,-21,169,-13v15,-8,48,1,31,18v-53,16,-130,13,-198,29r-39,-8v-3,-21,17,-53,20,-76v-1,0,-7,-11,-9,-18v18,-7,22,-28,30,-57xm191,-236v0,8,-4,13,-12,13v-17,0,-19,-19,-16,-34v18,-1,29,1,28,21xm95,-261v7,3,29,9,28,18v0,7,-9,17,-18,17v-18,0,-26,-25,-10,-35",w:252},"Ì":{d:"33,-5v-9,-6,-9,-12,-9,-36v0,-71,8,-119,22,-144v8,-13,14,-20,19,-20v27,20,-11,87,-10,120r-15,76v-1,1,-4,2,-7,4xm72,-247v7,6,55,15,36,40v-28,-7,-61,-21,-99,-41v-3,-2,-3,-27,5,-23v18,3,41,17,58,24",w:111},"Í":{d:"26,-5v-9,-6,-9,-12,-9,-36v0,-71,7,-119,21,-144v8,-13,14,-20,19,-20v28,19,-7,89,-10,120v-2,21,-8,47,-14,76v-2,1,-2,0,-7,4xm6,-233v31,-6,83,-53,101,-31v2,11,-80,53,-89,53v-14,1,-14,-11,-12,-22",w:104},"Î":{d:"53,-9v-15,7,-16,-3,-16,-32v0,-71,7,-119,21,-144v8,-13,14,-20,19,-20v28,19,-7,89,-10,120v-2,21,-8,47,-14,76xm137,-209v-27,-6,-40,-26,-61,-37v-8,0,-9,4,-13,10v-11,13,-50,37,-56,0v18,-5,43,-32,61,-43v28,5,40,21,62,36v12,9,18,17,18,25v0,6,-4,9,-11,9",w:144},"Ï":{d:"33,-5v-9,-6,-9,-12,-9,-36v0,-71,8,-119,22,-144v8,-13,14,-20,19,-20v27,20,-11,87,-10,120r-15,76v-1,1,-4,2,-7,4xm111,-222v0,8,-4,12,-12,12v-18,0,-19,-19,-16,-33v18,-1,29,1,28,21xm15,-247v8,2,29,9,28,17v0,21,-37,24,-36,1v0,-7,2,-13,8,-18",w:110},"Ñ":{d:"224,-182v1,-17,15,-24,22,-38v20,0,13,10,3,33v-3,36,-25,52,-28,94v-10,24,-30,55,-29,82r-19,7v-32,-8,-36,-70,-58,-111v-2,-23,-7,-27,-19,-54v-28,36,-41,93,-71,133v-9,5,-20,-9,-20,-17r73,-149v9,-24,31,-5,36,7v19,41,31,98,53,139v22,-35,34,-69,50,-118v2,-3,3,-3,7,-8xm203,-257v22,-8,41,-24,65,-26v3,11,-8,9,-7,21v-26,20,-46,31,-59,31v-2,3,-49,-27,-49,-29v-11,0,-32,31,-46,32v-11,-2,-12,-21,-4,-23v4,-6,28,-30,48,-34v17,-4,43,28,52,28",w:219},"Ò":{d:"62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm161,-262v14,10,52,13,37,41v-28,-7,-62,-21,-100,-41v-3,-3,-3,-26,5,-24v16,5,42,17,58,24",w:273},"Ó":{d:"62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm142,-250v27,-11,47,-32,59,-14v2,11,-80,53,-89,53v-13,1,-15,-11,-12,-21v10,-5,24,-11,42,-18",w:273},"Ô":{d:"62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm157,-282v17,18,52,34,54,63v-24,12,-52,-36,-53,-29r-42,34v-23,-4,-6,-31,5,-34v1,1,27,-37,36,-34",w:273},"Õ":{ +d:"62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm116,-270v26,-19,54,19,69,22v4,0,15,-5,34,-13v23,-10,22,-16,31,-12v3,11,-8,9,-7,21v-45,28,-47,42,-88,16v-29,-19,-12,-20,-43,2v-8,5,-12,18,-23,15v-13,-3,-12,-20,-4,-23v4,-6,14,-15,31,-28",w:273},"Ö":{d:"62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm197,-229v0,8,-4,13,-12,13v-17,0,-19,-19,-16,-34v18,-1,29,1,28,21xm101,-254v7,3,28,9,27,18v1,8,-8,17,-17,17v-18,0,-26,-24,-10,-35",w:273},"Ø":{d:"76,-211v41,-13,100,-22,140,-3v26,-19,40,-29,44,-29v10,0,15,7,15,20v0,15,-23,23,-30,35v23,39,29,114,-21,139v-36,19,-102,35,-147,18v-14,-5,-29,29,-46,35v-25,-13,-19,-24,3,-56v-9,-17,-28,-27,-28,-60v0,-38,23,-72,70,-99xm107,-66v55,15,125,-12,123,-70v0,-16,-5,-25,-13,-29r-110,95r0,4xm39,-108v-1,3,17,31,22,27v8,-6,109,-90,123,-106v-15,-11,-43,1,-63,2v-33,10,-80,35,-82,77",w:270},"Ù":{d:"281,-202v6,67,-30,121,-71,152v-3,14,-47,26,-60,39v-41,20,-110,1,-125,-26v-24,-44,-28,-84,-8,-127v12,-26,23,-38,37,-22v-2,2,-3,5,-3,10v-34,26,-30,116,5,134v22,32,86,-1,109,-8v38,-28,104,-64,97,-149v2,-10,7,-8,19,-3xm151,-243v14,10,54,14,37,41v-28,-7,-61,-22,-99,-42v-3,-2,-4,-25,4,-23v16,5,42,17,58,24",w:262},"Ú":{d:"281,-202v6,67,-30,121,-71,152v-3,14,-47,26,-60,39v-41,20,-110,1,-125,-26v-24,-44,-28,-84,-8,-127v12,-26,23,-38,37,-22v-2,2,-3,5,-3,10v-34,26,-30,116,5,134v22,32,86,-1,109,-8v38,-28,104,-64,97,-149v2,-10,7,-8,19,-3xm194,-265v3,-1,11,4,11,6v3,12,-81,52,-89,54v-14,0,-13,-9,-12,-22",w:262},"Û":{d:"281,-202v6,67,-30,121,-71,152v-3,14,-47,26,-60,39v-41,20,-110,1,-125,-26v-24,-44,-28,-84,-8,-127v12,-26,23,-38,37,-22v-2,2,-3,5,-3,10v-34,26,-30,116,5,134v22,32,86,-1,109,-8v38,-28,104,-64,97,-149v2,-10,7,-8,19,-3xm150,-266v24,11,58,27,73,46v0,5,-3,6,-10,6v-28,2,-61,-30,-63,-25v-10,0,-57,40,-69,23v3,-10,-8,-15,8,-19v17,-1,34,-29,61,-31",w:262},"Ü":{d:"281,-202v6,67,-30,121,-71,152v-3,14,-47,26,-60,39v-41,20,-110,1,-125,-26v-24,-44,-28,-84,-8,-127v12,-26,23,-38,37,-22v-2,2,-3,5,-3,10v-34,26,-29,116,5,134v22,32,86,-1,109,-8v38,-28,104,-64,97,-149v2,-10,7,-8,19,-3xm197,-227v0,8,-4,13,-12,13v-18,0,-21,-20,-16,-34v18,-1,28,2,28,21xm101,-252v7,3,27,10,27,18v0,8,-9,18,-18,17v-18,-1,-24,-25,-9,-35",w:262},"ß":{d:"33,10v-29,4,-28,-32,-16,-70v18,-58,17,-137,56,-176v12,-24,46,-58,82,-43v20,8,47,24,47,54v0,30,-62,59,-67,90v33,23,56,33,63,63v-18,21,-22,36,-48,54v-24,17,-27,41,-53,16v-2,-19,7,-35,24,-42v15,-13,26,-22,34,-40v-13,-17,-78,-29,-56,-70v-3,-27,64,-54,66,-86v-8,-25,-41,-4,-52,8v-29,30,-47,83,-51,141v-17,25,-8,71,-29,101"},"à":{d:"118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm99,-137v7,6,56,14,37,40v-28,-7,-62,-21,-100,-41v-2,-3,-2,-26,5,-23v16,4,42,17,58,24",w:173},"á":{d:"118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm32,-117v24,-3,85,-55,101,-32v3,11,-80,53,-89,53v-13,2,-14,-10,-12,-21",w:173},"â":{d:"118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm147,-97v-27,-6,-39,-26,-60,-37v-21,7,-38,46,-65,23v-2,-5,-3,-10,-4,-14v18,-4,43,-31,61,-42v28,5,40,21,62,36v12,8,18,17,18,25v0,6,-4,9,-12,9",w:173},"ã":{d:"118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm114,-136v22,-8,41,-24,64,-26v3,11,-7,10,-7,21v-26,20,-45,30,-58,30v-3,3,-49,-26,-49,-28v-10,-1,-32,35,-51,31v-12,-32,8,-29,32,-51v24,-21,54,20,69,23",w:173},"ä":{d:"118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-32,5,-66,-64,-15,-77v39,-26,92,-36,104,9v0,6,-3,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm142,-119v0,8,-4,13,-12,13v-18,0,-21,-20,-16,-34v18,-1,28,2,28,21xm46,-144v7,3,28,9,27,18v1,8,-9,18,-18,17v-18,-1,-25,-25,-9,-35",w:173},"å":{d:"118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm54,-101v-37,-20,-9,-71,34,-65v13,1,25,3,38,13v27,45,-34,73,-72,52xm61,-128v4,20,48,7,49,-5v0,-5,-9,-7,-28,-10v-12,-2,-21,11,-21,15",w:173},"æ":{d:"145,-44r33,7v2,42,-59,29,-85,16v-6,7,-35,24,-48,15v-19,2,-35,-21,-33,-37v2,-24,5,-19,28,-36v-6,-8,-45,3,-33,-21v21,-22,58,-12,85,-1v6,-5,35,-28,45,-15v20,-4,36,17,36,35v0,23,-4,21,-28,37xm111,-72v12,3,49,-16,19,-17v-5,0,-20,12,-19,17xm74,-50v-14,-4,-48,16,-19,17v4,1,19,-14,19,-17",w:184},"ç":{d:"108,-118v30,-6,56,21,25,33v-24,-6,-39,5,-75,23v-7,4,-12,12,-15,22v31,28,86,3,128,9v3,28,-29,16,-44,28v-53,15,-106,10,-120,-37v0,-48,62,-70,101,-78xm92,18v23,4,45,12,48,32v-2,6,-12,28,-25,28v-24,6,-50,10,-77,13v-16,-4,-11,-28,7,-29v17,-1,51,-4,63,-12v-14,-15,-57,10,-46,-32v9,-8,0,-25,21,-26v6,6,12,14,9,26",w:171},"è":{d:"108,-124v42,-3,70,39,50,73v-22,-1,-70,12,-94,10v-1,1,-2,3,-2,3v0,3,12,7,35,14v18,0,64,7,30,21v-10,14,-31,6,-53,6v-26,-7,-70,-26,-70,-58v0,-54,48,-65,104,-69xm130,-78v-2,-35,-66,-13,-77,3v16,6,62,6,77,-3xm95,-166v7,6,54,14,37,40v-28,-7,-62,-21,-100,-41v-3,-3,-3,-26,5,-24v16,5,42,18,58,25",w:161},"é":{d:"108,-124v42,-3,70,39,50,73v-22,-1,-70,12,-94,10v-1,1,-2,3,-2,3v0,3,12,7,35,14v18,0,64,7,30,21v-10,14,-31,6,-53,6v-26,-7,-70,-26,-70,-58v0,-54,48,-65,104,-69xm130,-78v-2,-35,-66,-13,-77,3v16,6,62,6,77,-3xm76,-169v26,-11,48,-32,59,-14v3,10,-80,53,-89,53v-14,1,-14,-10,-12,-21v15,-7,16,-7,42,-18",w:161},"ê":{d:"108,-124v42,-3,70,39,50,73v-22,-1,-70,12,-94,10v-1,1,-2,3,-2,3v0,3,12,7,35,14v18,0,64,7,30,21v-10,14,-31,6,-53,6v-26,-7,-70,-26,-70,-58v0,-54,48,-65,104,-69xm130,-78v-2,-35,-66,-13,-77,3v16,6,62,6,77,-3xm145,-129v-27,-6,-39,-26,-60,-37v-8,0,-10,4,-14,10v-11,15,-51,34,-56,0v17,-4,44,-32,61,-43v28,5,41,21,63,36v12,8,17,17,17,25v0,6,-3,9,-11,9",w:161},"ë":{d:"108,-124v42,-3,70,39,50,73v-22,-1,-70,12,-94,10r-3,3v0,3,12,7,36,14v18,0,64,7,30,21v-10,14,-31,6,-53,6v-26,-7,-67,-27,-71,-58v7,-52,48,-65,105,-69xm130,-78v-2,-35,-66,-13,-77,3v16,6,62,6,77,-3xm140,-144v0,8,-4,12,-12,12v-18,0,-19,-19,-16,-33v18,-1,29,1,28,21xm44,-169v7,3,28,9,28,17v0,9,-9,18,-18,18v-18,0,-25,-24,-10,-35",w:161},"ì":{d:"57,-98v22,5,13,50,11,95v-7,1,-11,2,-20,-4v1,-7,-12,-18,-10,-24v4,-22,-2,-64,19,-67xm70,-139v14,10,54,14,37,41v-28,-7,-61,-22,-99,-42v-3,-2,-3,-25,5,-23v15,5,41,17,57,24",w:109},"í":{d:"59,-98v20,4,15,53,10,95v-6,1,-11,2,-19,-4v1,-7,-12,-18,-10,-24v4,-22,-4,-65,19,-67xm50,-139v27,-11,49,-32,59,-14v3,11,-80,53,-89,53v-14,1,-14,-12,-11,-22v15,-7,14,-6,41,-17",w:105},"î":{d:"72,-98v20,5,12,51,10,95v-6,2,-13,1,-20,-4v1,-8,-12,-18,-10,-24v4,-22,-3,-65,20,-67xm134,-94v-26,-7,-39,-25,-60,-37v-7,0,-9,4,-13,10v-14,15,-51,34,-56,-1v18,-4,45,-33,61,-43v27,6,40,22,62,37v12,8,18,17,18,25v0,6,-4,9,-12,9",w:143},"ï":{d:"55,-97v19,5,15,53,10,95v-17,5,-26,-14,-30,-28v6,-20,-3,-65,20,-67xm110,-118v0,8,-4,13,-12,13v-17,0,-19,-19,-16,-34v18,-1,29,1,28,21xm14,-143v6,3,28,8,28,17v0,9,-9,18,-18,18v-18,0,-25,-24,-10,-35",w:107},"ñ":{d:"115,-129v34,6,59,50,59,105v0,31,-15,24,-30,17v-15,-29,-5,-42,-20,-81v-35,-13,-68,52,-88,61v-20,-4,-38,-36,-19,-59v0,-12,3,-14,10,-28v11,-8,18,11,27,12xm117,-166v22,-7,41,-23,64,-26v3,11,-7,10,-7,21v-26,20,-45,30,-58,30v-3,3,-49,-26,-49,-28v-10,-1,-32,35,-51,31v-5,-12,-8,-16,0,-23v4,-6,28,-29,48,-33v17,-3,43,28,53,28",w:171},"ò":{d:"102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm115,-181v14,10,51,13,37,40v-28,-7,-62,-21,-100,-41v-3,-2,-3,-26,5,-23v16,5,42,17,58,24",w:191},"ó":{d:"102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm49,-154v24,-3,85,-55,101,-32v3,11,-80,53,-89,53v-14,0,-13,-8,-12,-21",w:191},"ô":{d:"102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm110,-177v-22,6,-38,45,-65,22v-2,-4,-3,-9,-4,-13v18,-4,43,-32,61,-43v27,6,40,21,62,36v12,9,18,17,18,25v1,11,-15,10,-23,7",w:191},"õ":{d:"102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm58,-199v26,-21,54,18,69,22v4,0,15,-5,34,-13v22,-9,21,-16,31,-13v3,11,-9,9,-7,22v-26,20,-46,30,-59,30v-2,4,-49,-28,-49,-29v-11,0,-32,31,-46,32v-12,-3,-13,-21,-4,-23v4,-6,14,-15,31,-28",w:191},"ö":{d:"102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm161,-160v0,8,-4,13,-12,13v-17,0,-19,-19,-16,-34v18,-1,29,1,28,21xm65,-185v7,3,28,9,28,18v0,7,-9,18,-18,17v-18,1,-25,-24,-10,-35",w:191},"÷":{d:"167,-158v-4,3,-7,9,-10,20v-23,4,-34,-8,-29,-31v14,-6,18,1,39,11xm78,-72v-53,11,-53,12,-69,-15v-1,-12,11,-17,22,-14v71,-13,151,-18,230,-24v11,1,21,16,23,28v-28,20,-90,11,-126,16v-36,5,-62,5,-80,9xm123,-40v19,-17,41,-1,41,17v0,13,-6,19,-17,19v-15,0,-29,-14,-24,-36",w:293},"ø":{d:"76,-136v17,7,33,-8,51,0v9,-6,21,-13,36,-21v23,22,-13,31,3,50v11,13,4,21,14,35v-4,5,-1,14,-4,23v-14,23,-45,41,-84,39v-12,2,-29,28,-41,38v-2,-11,-34,-10,-15,-30v3,-7,5,-11,5,-11v-15,-24,-60,-54,-22,-89v23,-21,25,-32,57,-34xm102,-54v18,1,50,-19,30,-32v-12,7,-22,18,-30,32xm85,-92v-14,3,-26,8,-38,17v2,20,17,13,26,0v6,-8,12,-13,12,-17",w:188},"ù":{d:"196,-129v-1,-4,12,-13,15,-13v6,0,8,7,8,21v0,24,-7,25,-13,45v-7,7,-14,21,-24,29v-9,24,-61,45,-89,45v-63,0,-105,-72,-67,-126v24,-3,19,27,18,46v-1,26,23,42,54,40v38,-3,88,-51,98,-87xm126,-166v7,6,56,14,37,40v-28,-7,-62,-22,-100,-42v-2,-3,-2,-26,5,-23v16,4,42,18,58,25",w:213},"ú":{d:"196,-129v-1,-4,12,-13,15,-13v6,0,8,7,8,21v0,24,-7,25,-13,45v-7,7,-14,21,-24,29v-9,24,-61,45,-89,45v-63,0,-105,-72,-67,-126v24,-3,19,27,18,46v-1,26,23,42,54,40v38,-3,88,-51,98,-87xm106,-174v26,-11,48,-32,59,-14v3,11,-81,53,-89,54v-13,1,-15,-12,-11,-22v15,-7,14,-7,41,-18",w:213},"û":{d:"196,-129v-1,-4,12,-13,15,-13v6,0,8,7,8,21v0,24,-7,25,-13,45v-7,7,-14,21,-24,29v-9,24,-61,45,-89,45v-63,0,-105,-72,-67,-126v24,-3,19,27,18,46v-1,26,23,42,54,40v38,-3,88,-51,98,-87xm172,-143v-27,-6,-39,-26,-60,-37v-8,0,-10,4,-14,10v-11,15,-49,35,-56,0v17,-4,44,-32,61,-43v27,6,41,21,63,36v12,9,17,17,17,25v0,6,-3,9,-11,9",w:213},"ü":{d:"196,-129v-1,-4,12,-13,15,-13v6,0,8,7,8,21v0,24,-7,25,-13,45v-7,7,-14,21,-24,29v-9,24,-61,45,-89,45v-63,0,-105,-72,-67,-126v24,-3,19,27,18,46v-1,26,23,42,54,40v38,-3,88,-51,98,-87xm168,-161v0,8,-3,13,-11,13v-17,0,-20,-19,-17,-34v18,-1,29,1,28,21xm72,-186v7,3,29,9,28,18v0,7,-9,18,-18,17v-18,1,-25,-24,-10,-35",w:213},"ÿ":{d:"118,85v-11,11,-11,38,-22,61v-2,-1,-2,31,-17,27v-11,0,-21,-10,-21,-22v20,-66,23,-61,64,-168v-22,1,-38,16,-58,4v-22,4,-51,-16,-51,-42v-11,-13,-7,-59,7,-58v16,1,21,24,22,51v21,33,66,5,94,-7v4,-3,26,-14,38,-29r17,0v23,44,-23,59,-34,102v-6,9,-13,9,-13,26v-15,6,-12,33,-27,48v0,2,1,4,1,7xm158,-136v0,8,-4,13,-12,13v-18,0,-21,-20,-16,-34v18,-1,29,1,28,21xm62,-161v7,3,28,9,27,18v1,8,-8,17,-17,17v-18,0,-26,-24,-10,-35",w:190},"ı":{d:"43,-103v21,4,16,56,11,100v-7,2,-11,1,-20,-5v0,-7,-13,-18,-11,-25v4,-23,-3,-68,20,-70",w:80},"Œ":{d:"247,-243v71,4,161,-7,245,-8v17,0,27,6,27,17v-8,27,-70,14,-104,23v-3,1,-52,0,-65,7r0,4v16,16,17,29,17,65v32,10,74,-14,99,16v-14,25,-76,17,-127,24v-17,18,-55,32,-75,51v85,0,128,-3,204,-11v15,-2,21,11,20,29v-78,24,-177,12,-270,24v-24,3,-24,-29,-48,-15v-46,7,-70,4,-105,-4v-19,-18,-42,-22,-52,-55v-10,-34,0,-47,12,-78v-18,-59,48,-78,105,-84v17,-18,103,-13,117,-5xm125,-45v76,-9,186,-43,209,-105v-26,-67,-137,-83,-217,-54v3,34,-45,25,-60,58v-41,48,5,108,68,101",w:492},"œ":{d:"185,-54v25,28,107,-17,104,33v-12,12,-60,14,-87,14v0,0,1,1,2,1v-11,1,-39,-9,-50,-17v-28,17,-75,32,-114,7v-22,-14,-34,-11,-34,-41v0,-36,33,-49,48,-75v29,-16,72,-3,95,11v12,-9,48,-27,59,-26v30,0,64,15,65,40v0,7,-6,20,-20,37v-29,1,-44,11,-68,16xm226,-106v-21,-7,-41,-2,-48,13v14,1,42,-7,48,-13xm132,-87v-21,-35,-94,11,-92,24v-2,14,43,21,61,21v25,0,36,-20,31,-45",w:295},"Ÿ":{d:"176,-189v35,20,-25,54,-39,72v-26,34,-57,57,-74,104v-10,15,-4,14,-23,3r0,-10v19,-44,27,-46,50,-81v-9,-5,-24,4,-34,4v-38,0,-54,-50,-44,-87v21,-5,18,19,22,35v4,18,15,27,29,27v41,0,60,-39,113,-67xm153,-222v0,8,-3,12,-11,12v-18,0,-21,-19,-16,-33v18,-1,28,2,27,21xm57,-247v8,2,29,9,28,17v0,21,-37,24,-36,1v0,-7,2,-13,8,-18",w:135},"ƒ":{d:"115,-262v-23,6,-39,63,-38,96v1,3,57,2,54,16v1,22,-45,15,-51,30v3,34,12,68,10,103v14,17,-18,53,-28,63v-48,8,-89,5,-95,-37v20,-5,77,21,83,-18v17,-29,-4,-61,0,-98v0,-5,-3,-10,-7,-17v-33,4,-43,-17,-25,-37v10,-4,27,5,27,-10v0,-43,15,-77,32,-109v12,-7,16,-22,38,-20v11,1,51,35,25,55v-9,1,-16,-17,-25,-17",w:145},"ˆ":{d:"144,-220v-29,0,-41,-27,-63,-39v-8,0,-11,5,-15,11v-17,12,-32,31,-54,13v-2,-5,-3,-9,-4,-14v20,-5,45,-33,64,-45v28,6,43,23,65,38v12,9,19,19,19,27v0,6,-4,9,-12,9",w:165},"ˇ":{d:"39,-286v33,46,63,-4,96,-16v6,0,9,6,9,19v0,24,-49,46,-77,46v-32,0,-52,-28,-59,-48v0,-25,23,-17,31,-1",w:153},"˘":{d:"65,-269v20,-11,45,-31,74,-36v20,30,-42,40,-59,66v-5,6,-11,8,-18,8v-8,-3,-45,-32,-51,-54v5,-24,14,-13,34,1",w:158},"˙":{d:"23,-302v15,-13,32,1,32,18v1,22,-36,29,-39,4v0,0,3,-7,7,-22",w:70},"˚":{d:"23,-225v-43,-24,-11,-85,41,-78v16,2,31,4,46,17v32,54,-41,86,-87,61xm33,-257v2,20,57,11,57,-6v0,-6,-11,-9,-33,-12v-14,-2,-24,13,-24,18",w:123},"˛":{d:"82,-5v-8,12,-16,55,-21,75v0,4,2,7,7,7v6,0,22,-7,50,-20v8,0,12,7,12,20v-2,22,-6,14,-27,30v-15,12,-26,16,-30,16v-47,-8,-59,-14,-56,-75v8,-27,12,-54,25,-77v19,-21,35,15,40,24",w:138},"˜":{d:"47,-300v26,-21,57,19,72,23v4,0,16,-5,36,-14v24,-10,22,-16,32,-13v3,12,-7,11,-7,23v-27,21,-48,32,-62,32v-3,2,-52,-27,-51,-31v-12,-2,-34,40,-54,33v-4,-13,-8,-18,1,-24v5,-7,16,-15,33,-29",w:186},"˝":{d:"91,-249v15,-11,38,-53,57,-29v0,9,0,14,-3,23v-2,3,-20,22,-54,55v-5,5,-10,8,-16,8v-17,2,-6,-22,-7,-31v-1,0,-2,0,-4,1v-17,21,-29,31,-50,27v-5,-18,-3,-15,3,-27v23,-27,40,-46,48,-59v7,-12,31,3,29,9v-1,14,-3,24,-13,31v4,4,9,-1,10,-8",w:151},"–":{d:"6,-66v-8,-72,79,-21,146,-39v37,-10,79,7,111,0v9,8,14,13,14,17v2,26,-72,13,-99,21v-83,4,-124,21,-172,1",w:282},"—":{d:"175,-106v86,-9,201,1,286,-1v11,6,13,11,6,30v-118,15,-246,10,-377,10v-25,0,-73,3,-82,-8r-2,-26v11,-13,32,-9,52,-7v38,3,84,-5,117,2",w:485},"‘":{d:"73,-262v-10,7,-41,39,-38,69v-15,13,-27,-16,-28,-28v-2,-20,51,-83,66,-83v20,0,25,41,0,42",w:95},"’":{d:"74,-300v13,31,-1,99,-44,101v-13,0,-19,-5,-19,-15v6,-10,31,-34,35,-59v2,-11,1,-32,11,-32v6,0,11,2,17,5",w:90},"‚":{d:"25,63v-26,21,-48,-2,-22,-24v14,-12,35,-40,35,-69v3,-2,3,-11,12,-9v35,17,5,88,-25,102",w:97},"“":{d:"66,-261v-21,5,-37,51,-22,77v0,4,-2,6,-7,6v-31,-9,-38,-62,-12,-94v12,-15,21,-28,31,-34v16,-1,19,24,22,34v10,-11,22,-32,43,-23v-2,8,4,16,5,19v-6,11,-51,53,-29,74v-12,21,-30,5,-33,-17v-6,-13,9,-28,2,-42",w:118},"”":{d:"120,-294v12,3,30,26,19,34v2,15,-40,70,-55,66v-40,-10,10,-51,14,-64v3,-3,8,-31,22,-36xm70,-306v14,3,26,34,16,49v-19,30,-31,45,-58,59v-12,-11,-33,-17,-7,-36v13,-19,36,-27,36,-59v0,-5,9,-13,13,-13",w:148},"„":{d:"25,63v-26,21,-48,-2,-22,-24v11,-9,36,-41,35,-69v3,-2,4,-12,12,-9v36,14,5,89,-25,102xm84,64v-24,20,-45,-1,-21,-24v21,-20,32,-35,35,-69v3,-2,3,-11,12,-9v36,17,9,86,-26,102",w:135},"†":{d:"22,-286v15,6,5,-20,19,-19v9,-3,15,21,17,22v6,1,12,3,20,6v3,10,5,16,-9,16v-34,-10,-6,51,-34,52v-20,-7,11,-47,-15,-49v-14,3,-25,-5,-17,-24v7,-2,14,-4,19,-4",w:77},"‡":{d:"102,-284v16,2,42,-2,33,18v-7,15,-42,1,-38,30v3,3,31,1,30,11v4,15,-29,19,-36,24v-2,18,-4,24,-16,29r-25,-26v-25,7,-53,3,-42,-25v4,-10,70,0,51,-22v-17,4,-41,12,-39,-15v-5,-16,39,-18,44,-20v4,-2,7,-10,10,-24v19,-3,23,6,28,20",w:145},"•":{d:"130,-114v0,47,-124,54,-120,-8r6,-31v44,-28,64,-34,104,0v8,6,10,20,10,39",w:139},"…":{d:"244,-24v-1,21,-38,32,-41,3v-2,-19,23,-22,34,-17v0,7,0,15,7,14xm113,-24v0,-22,28,-21,38,-8v5,34,-39,40,-38,8xm35,-2v-10,-2,-36,-17,-18,-29v-1,-15,17,-17,31,-6v7,17,6,33,-13,35",w:258},"‰":{d:"398,-131v58,-1,87,13,72,65v-1,30,-66,63,-99,65v-56,3,-99,-58,-62,-102v2,2,5,2,8,2v20,-16,51,-17,81,-30xm202,-279v33,0,94,-24,95,18v-7,31,-33,27,-54,55v-36,32,-71,74,-112,99v-18,18,-40,34,-51,58v-19,14,-25,37,-56,40v-17,2,-25,-29,-10,-40v15,-11,40,-37,52,-52r87,-72v-51,13,-100,6,-116,-27v1,-5,-6,-30,-9,-36v-3,-5,22,-41,27,-39v29,2,16,34,5,49v0,15,14,23,42,23v42,0,59,-31,28,-38v-17,-4,-53,3,-50,-23v0,-7,1,-12,4,-16v16,-9,36,4,49,5v0,0,23,-4,69,-4xm222,-118v33,-2,55,18,50,57v-29,36,-48,45,-96,50v-27,-5,-56,-17,-58,-51v13,-37,64,-43,104,-56xm335,-61v13,44,101,7,108,-31v-11,-3,-20,-4,-30,-4v-18,-1,-82,18,-78,35xm225,-244v-18,0,-29,-1,-46,3v7,15,6,28,0,43v15,-14,34,-30,46,-46xm164,-53v26,5,59,-10,76,-26v-17,-16,-49,2,-67,14v1,8,-8,6,-9,12",w:485},"‹":{d:"64,-107v9,17,86,17,87,43v0,11,-4,16,-13,16v-36,-11,-70,-22,-109,-31v-19,-4,-18,-14,-9,-36v59,-56,93,-84,101,-84v17,0,19,20,13,29",w:159},"›":{d:"41,-181v26,27,112,44,70,91r-82,60v-20,3,-25,-23,-13,-32r70,-51r-66,-46v-5,-6,-4,-28,5,-29v4,2,9,4,16,7",w:137},"⁄":{d:"193,-305v7,6,17,31,3,41v-10,7,-12,13,-21,25v-79,56,-190,209,-197,260r-18,0v-23,-19,9,-70,15,-85v52,-83,121,-179,218,-241",w:120},"™":{d:"213,-307v28,9,11,49,7,75v-1,4,-4,6,-11,6v-7,1,-11,-14,-11,-34v-14,-6,-34,34,-46,28v-2,0,-10,-9,-24,-27v-10,7,-3,36,-27,31v-15,-24,-3,-27,1,-48v-6,-7,-27,-1,-31,3v-3,14,-7,30,-11,51v-5,10,-29,9,-24,-12v-5,-8,1,-18,3,-35v-13,6,-33,2,-29,-18v20,-17,64,-17,100,-19v28,-1,29,30,45,39v11,-6,35,-32,58,-40",w:239},"∆":{d:"18,-1v-24,-30,8,-48,25,-71v14,-19,34,-28,40,-56v20,-35,29,-14,57,4v9,39,43,62,57,102v0,16,-34,17,-50,14v-28,2,-72,4,-129,7xm139,-47r-22,-52v-12,-5,-12,15,-24,27v-7,6,-14,16,-23,28v23,1,36,-1,69,-3",w:199},"∙":{d:"57,-77v6,18,-7,21,-19,23v-34,6,-25,-40,-9,-43v18,-3,29,8,28,20",w:67},"√":{d:"364,-218v43,-21,80,-51,104,-32v-3,19,-24,21,-44,40v-41,15,-78,53,-136,78r-137,98v-20,16,-79,66,-91,68v-3,1,-25,-11,-24,-13v-4,-28,-43,-61,-30,-85v26,-15,42,19,58,32r295,-188v0,1,2,2,5,2",w:474},"∞":{d:"322,-72v-4,22,-54,41,-76,41v-43,0,-83,-17,-114,-35v-46,19,-125,53,-128,-18v-1,-14,10,-22,13,-35v29,-10,62,-31,97,-4v37,28,47,5,75,-8v40,-19,73,-10,114,1v13,1,18,55,19,58xm228,-69v15,0,62,-12,61,-25v-19,-23,-89,-10,-105,11v0,2,1,4,2,4v28,6,42,10,42,10xm75,-102v-13,2,-41,4,-44,19v0,4,3,7,10,7v21,0,40,-6,54,-17v-9,-6,-16,-9,-20,-9",w:330},"∫":{d:"62,-151v-7,-70,20,-130,63,-150v28,1,39,10,70,23v20,8,6,33,-6,35v-29,-13,-45,-20,-49,-20v-20,-4,-45,51,-43,70v8,60,5,129,5,189v0,62,-27,93,-79,93v-37,-1,-71,-14,-63,-57v21,0,79,34,91,-2v16,-3,14,-64,21,-85v-2,-31,-1,-74,-10,-96",w:156},"≈":{d:"133,-112v21,15,48,-30,78,-17v3,3,5,7,5,9v-8,30,-47,45,-76,45v-19,0,-64,-48,-90,-21r-29,20v-6,-1,-17,-16,-15,-32v24,-17,70,-42,107,-21v4,4,10,9,20,17xm138,-57v28,2,48,-25,76,-26v13,30,-21,42,-40,53v-41,24,-77,-15,-114,-23v-15,14,-46,32,-49,-1v-3,-9,27,-28,54,-30",w:223},"≠":{d:"48,-130v29,11,49,-57,60,-50v25,6,7,27,-1,46v22,5,29,7,21,22v-18,2,-48,-1,-50,15v9,8,53,-7,54,10v-4,22,-46,20,-72,24v-7,13,-18,32,-34,57v-8,6,-15,-3,-13,-14v-1,-9,15,-39,14,-45v-30,5,-24,-17,-13,-25v12,-1,36,4,29,-13v-14,0,-47,6,-36,-12v0,-18,27,-13,41,-15",w:140},"≤":{d:"73,-109v10,15,87,16,87,42v0,11,-5,16,-13,16v-36,-11,-69,-24,-109,-31v-18,-8,-18,-13,-9,-36v59,-56,93,-83,101,-83v16,0,18,17,14,28v-27,24,-42,35,-71,64xm10,-29v35,-12,117,-26,148,-3v1,2,-5,19,-8,18r-124,15v-16,2,-26,-18,-16,-30",w:168},"≥":{d:"115,-174v20,7,53,36,20,57v-19,11,-91,68,-82,59v-18,3,-25,-22,-13,-31v15,-10,14,-10,70,-51r-50,-37v-5,-4,-5,-27,4,-28v16,7,40,17,51,31xm14,-32v33,-10,86,-14,127,-10v12,12,5,23,-11,27v-49,9,-82,13,-99,13v-22,0,-24,-16,-17,-30",w:163},"◊":{d:"76,-158v48,-8,64,11,100,36v28,19,-5,39,-22,54v-15,13,-40,32,-48,49v-17,5,-12,0,-27,-16v-6,-6,-86,-31,-68,-53r2,-9v27,-23,48,-44,63,-61xm93,-65v12,-2,35,-31,41,-38v-5,-10,-16,-14,-34,-24v-12,12,-36,29,-40,44v19,11,30,18,33,18",w:199}}}),"undefined"==typeof Raphael&&"undefined"==typeof Snap)throw new Error("Raphael or Snap.svg is required to be included.");if(_.isEmpty(Diagram.themes))throw new Error("No themes were registered. Please call registerTheme(...).");Diagram.themes.hand=Diagram.themes.snapHand||Diagram.themes.raphaelHand,Diagram.themes.simple=Diagram.themes.snapSimple||Diagram.themes.raphaelSimple,Diagram.prototype.drawSVG=function(container,options){var defaultOptions={theme:"hand"};if(options=_.defaults(options||{},defaultOptions),!(options.theme in Diagram.themes))throw new Error("Unsupported theme: "+options.theme);var div=_.isString(container)?document.getElementById(container):container;if(null===div||!div.tagName)throw new Error("Invalid container: "+container);var Theme=Diagram.themes[options.theme];new Theme(this,options,function(drawing){drawing.draw(div)})},"undefined"!=typeof jQuery&&!function($){$.fn.sequenceDiagram=function(options){return this.each(function(){var $this=$(this),diagram=Diagram.parse($this.text());$this.html(""),diagram.drawSVG(this,options)})}}(jQuery);var root="object"==typeof self&&self.self==self&&self||"object"==typeof global&&global.global==global&&global;"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=Diagram),exports.Diagram=Diagram):root.Diagram=Diagram}(); +//# sourceMappingURL=sequence-diagram-raphael.js \ No newline at end of file diff --git a/static/editor.md/lib/sequence/sequence-diagram-raphael-min.js.map b/static/editor.md/lib/sequence/sequence-diagram-raphael-min.js.map new file mode 100755 index 00000000..acb62a6a --- /dev/null +++ b/static/editor.md/lib/sequence/sequence-diagram-raphael-min.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["dist/sequence-diagram-raphael.js"],"names":["Diagram","this","title","undefined","actors","signals","ParseError","message","hash","_","extend","name","AssertException","assert","exp","registerTheme","theme","themes","getCenterX","box","x","width","getCenterY","y","height","clamp","min","max","wobble","x1","y1","x2","y2","all","isFinite","factor","Math","sqrt","r1","random","r2","xfactor","yfactor","p1","p2","toFixed","handRect","w","h","handLine","prototype","getActor","alias","trim","i","push","Actor","length","getActorWithAlias","input","s","exec","setTitle","addSignal","signal","index","Signal","actorA","signaltype","actorB","type","linetype","arrowtype","isSelf","Note","actor","placement","hasManyActors","Error","isArray","unescape","replace","LINETYPE","SOLID","DOTTED","ARROWTYPE","FILLED","OPEN","PLACEMENT","LEFTOF","RIGHTOF","OVER","Object","getPrototypeOf","__proto__","object","constructor","parser","Parser","yy","o","k","v","l","$V0","$V1","$V2","$V3","trace","symbols_","error","start","document","EOF","line","statement","NL","participant","actor_alias","note_statement","note","over","actor_pair",",","left_of","right_of","ACTOR","LINE","DOTLINE","ARROW","OPENARROW","MESSAGE","$accept","$end","terminals_","2","5","8","9","13","15","18","20","21","22","24","27","28","29","30","31","productions_","performAction","yytext","yyleng","yylineno","yystate","$$","_$","$0","$","substring","table","3","4","1","6","7","11","12","17","10","14","23","25","16","26","19","defaultActions","37","parseError","str","recoverable","parse","lex","token","lexer","self","stack","vstack","lstack","recovering","TERROR","args","slice","call","arguments","create","sharedState","hasOwnProperty","setInput","yylloc","yyloc","ranges","options","symbol","preErrorSymbol","state","action","r","p","len","newState","expected","yyval","errStr","showPosition","join","text","match","loc","Array","first_line","last_line","first_column","last_column","range","apply","concat","_input","_more","_backtrack","done","matched","conditionStack","offset","ch","lines","unput","split","substr","oldLines","more","reject","backtrack_lexer","less","n","pastInput","past","upcomingInput","next","pre","c","test_match","indexed_rule","backup","matches","tempMatch","rules","_currentRules","flex","begin","condition","popState","pop","conditions","INITIAL","topState","abs","pushState","stateStackSize","case-insensitive","yy_","$avoiding_name_collisions","YY_START","inclusive","require","exports","main","console","log","process","exit","source","readFileSync","normalize","module","argv","diagram","DIAGRAM_MARGIN","ACTOR_MARGIN","ACTOR_PADDING","SIGNAL_MARGIN","SIGNAL_PADDING","NOTE_MARGIN","NOTE_PADDING","NOTE_OVERLAP","TITLE_MARGIN","TITLE_PADDING","SELF_SIGNAL_WIDTH","ALIGN_LEFT","ALIGN_CENTER","toString","String","BaseTheme","init","actorsHeight_","signalsHeight_","title_","setupPaper","container","draw","layout","titleHeight","drawTitle","drawActors","drawSignals","actorEnsureDistance","a","b","d","paddingRight","distances","font","font_","bb","textBBox","textBB","each","extraWidth","actorsX","distance","drawTextBox","offsetY","drawActor","aX","drawLine","drawSelfSignal","drawSignal","drawNote","drawText","bX","overlap","margin","padding","align","drawRect","Raphael","stroke","stroke-width","fill","RECT","fn","path","RaphaelTheme","resume","defaults","font-size","font-family","paper_","arrowTypes_","lineTypes_","setStart","setFinish","setSize","cleanText","invoke","obj_","print","attr","getBBox","remove","arrowhead","rect","paper","t","text-anchor","RaphaelHandTheme","getFont","registerFont","face","font-weight","font-stretch","units-per-em","panose-1","ascent","descent","x-height","bbox","underline-thickness","underline-position","unicode-range","glyphs"," ","\t","\r","!","\"","#","%","&","'","(",")","*","+","-",".","/","0",":",";","<","=",">","?","@","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","[","\\","]","^","`","e","f","g","j","m","q","u","z","{","|","}","~"," ","¡","¢","£","¤","€","¥","§","¨","©","ª","«","¬","®","¯","°","±","´","¶","¸","º","»","¿","À","Á","Â","Ã","Ä","Å","Æ","Ç","È","É","Ê","Ë","Ì","Í","Î","Ï","Ñ","Ò","Ó","Ô","Õ","Ö","Ø","Ù","Ú","Û","Ü","ß","à","á","â","ã","ä","å","æ","ç","è","é","ê","ë","ì","í","î","ï","ñ","ò","ó","ô","õ","ö","÷","ø","ù","ú","û","ü","ÿ","ı","Œ","œ","Ÿ","ƒ","ˆ","ˇ","˘","˙","˚","˛","˜","˝","–","—","‘","’","‚","“","”","„","†","‡","•","…","‰","‹","›","⁄","™","∆","∙","√","∞","∫","≈","≠","≤","≥","◊","Snap","isEmpty","hand","snapHand","raphaelHand","simple","snapSimple","raphaelSimple","drawSVG","defaultOptions","div","isString","getElementById","tagName","Theme","drawing","jQuery","sequenceDiagram","$this","html","root","global"],"mappings":"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ACItF,EAAK,yFACLjR,EAAK,KAETwW,KACIvF,EAAK,sDACLjR,EAAK,IAETyW,KACIxF,EAAK,wHACLjR,EAAK,KAET0W,GACIzF,EAAK,0QACLjR,EAAK,KAETsH,GACI2J,EAAK,iGACLjR,EAAK,IAETwF,GACIyL,EAAK,2UACLjR,EAAK,KAEToH,GACI6J,EAAK,sVACLjR,EAAK,KAETqH,GACI4J,EAAK,0TACLjR,EAAK,KAETyF,GACIwL,EAAK,+SACLjR,EAAK,KAETuH,GACI0J,EAAK,yVACLjR,EAAK,KAETwH,GACIyJ,EAAK,+OACLjR,EAAK,KAET0F,GACIuL,EAAK;AACLjR,EAAK,KAET2F,GACIsL,EAAK,kPACLjR,EAAK,KAET2W,KACI1F,EAAK,mIACLjR,EAAK,IAET4W,KACI3F,EAAK,wKACLjR,EAAK,KAET6W,KACI5F,EAAK,qIACLjR,EAAK,KAET8W,KACI7F,EAAK,sMACLjR,EAAK,KAET+W,KACI9F,EAAK,gLACLjR,EAAK,KAETgX,KACI/F,EAAK,iQACLjR,EAAK,KAETiX,KACIhG,EAAK,sXACLjR,EAAK,KAETkX,GACIjG,EAAK,+WACLjR,EAAK,KAETmX,GACIlG,EAAK,ioBACLjR,EAAK,KAEToX,GACInG,EAAK,yQACLjR,EAAK,KAETqX,GACIpG,EAAK,msBACLjR,EAAK,KAETsX,GACIrG,EAAK,wXACLjR,EAAK,KAETuX,GACItG,EAAK,+TACLjR,EAAK,KAETwX,GACIvG,EAAK,qVACLjR,EAAK,KAETyX,GACIxG,EAAK,+RACLjR,EAAK,KAET0X,GACIzG,EAAK,uHACLjR,EAAK,IAET2X,GACI1G,EAAK,iLACLjR,EAAK,KAET4X,GACI3G,EAAK,iVACLjR,EAAK,KAET6X,GACI5G,EAAK,iNACLjR,EAAK,KAET8X,GACI7G,EAAK,iWACLjR,EAAK,KAET+X,GACI9G,EAAK,2PACLjR,EAAK,KAETgY,GACI/G,EAAK,8SACLjR,EAAK,KAETiY,GACIhH,EAAK,sUACLjR,EAAK,KAETkY,GACIjH,EAAK,kcACLjR,EAAK,KAETmY,GACIlH,EAAK,4bAC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2cACLjR,EAAK,KAET+b,KACI9K,EAAK,8bACLjR,EAAK,KAETgc,KACI/K,EAAK,oMACLjR,EAAK,KAETic,KACIhL,EAAK,iMACLjR,EAAK,KAETkc,KACIjL,EAAK,wPACLjR,EAAK,KAETmc,KACIlL,EAAK,6OACLjR,EAAK,KAEToc,KACInL,EAAK,8aACLjR,EAAK,KAETqc,KACIpL,EAAK,+TACLjR,EAAK,KAETsc,KACIrL,EAAK,mUACLjR,EAAK,KAETuc,KACItL,EAAK,uUACLjR,EAAK,KAETwc;AACIvL,EAAK,iaACLjR,EAAK,KAETyc,KACIxL,EAAK,yWACLjR,EAAK,KAET0c,KACIzL,EAAK,mXACLjR,EAAK,KAET2c,KACI1L,EAAK,+SACLjR,EAAK,KAET4c,KACI3L,EAAK,yRACLjR,EAAK,KAET6c,KACI5L,EAAK,oVACLjR,EAAK,KAET8c,KACI7L,EAAK,2VACLjR,EAAK,KAET+c,KACI9L,EAAK,gUAET+L,KACI/L,EAAK,mRACLjR,EAAK,KAETid,KACIhM,EAAK,qQACLjR,EAAK,KAETkd,KACIjM,EAAK,2UACLjR,EAAK,KAETmd,KACIlM,EAAK,oVACLjR,EAAK,KAETod,KACInM,EAAK,4SACLjR,EAAK,KAETqd,KACIpM,EAAK,kUACLjR,EAAK,KAETsd,KACIrM,EAAK,2RACLjR,EAAK,KAETud,KACItM,EAAK,oTACLjR,EAAK,KAETwd,KACIvM,EAAK,kSACLjR,EAAK,KAETyd,KACIxM,EAAK,uSACLjR,EAAK,KAET0d,KACIzM,EAAK,yVACLjR,EAAK,KAET2d,KACI1M,EAAK,oUACLjR,EAAK,KAET4d,KACI3M,EAAK,2KACLjR,EAAK,KAET6d,KACI5M,EAAK,+KACLjR,EAAK,KAET8d,KACI7M,EAAK,gOACLjR,EAAK,KAET+d,KACI9M,EAAK,qMACLjR,EAAK,KAETge,KACI/M,EAAK,gUACLjR,EAAK,KAETie,KACIhN,EAAK,iQACLjR,EAAK,KAETke,KACIjN,EAAK,+OACLjR,EAAK,KAETme,KACIlN,EAAK,kSACLjR,EAAK,KAEToe,KACInN,EAAK,iWACLjR,EAAK,KAETqe,KACIpN,EAAK,0SACLjR,EAAK,KAETse,KACIrN,EAAK,yQACLjR,EAAK,KAETue,KACItN,EAAK,6UACLjR,EAAK,KAETwe,KACIvN,EAAK,2QACLjR,EAAK,KAETye,KACIxN,EAAK,gRACLjR,EAAK,KAET0e,KACIzN,EAAK,iUACLjR,EAAK,KAET2e,KACI1N,EAAK,sTACLjR,EAAK,KAET4e,KACI3N,EAAK,6ZACLjR,EAAK,KAET6e,KACI5N,EAAK,uFACLjR,EAAK,IAET8e,KACI7N,EAAK,0cACLjR,EAAK,KAET+e,KACI9N,EAAK,wWACLjR,EAAK,KAETgf,KACI/N,EAAK,+TACLjR,EAAK,KAETif,KACIhO,EAAK,4SACLjR,EAAK,KAETkf,KACIjO,EAAK,gKACLjR,EAAK,KAETmf,KACIlO,EAAK,sGACLjR,EAAK,KAETof,KACInO,EAAK,4GACLjR,EAAK,KAETqf,KACIpO,EAAK,6DACLjR,EAAK,IAETsf,KACIrO,EAAK,wIACLjR,EAAK,KAETuf,KACItO,EAAK,8KACLjR,EAAK,KAETwf,KACIvO,EAAK,0LACLjR,EAAK,KAETyf,KACIxO,EAAK,qOACLjR,EAAK,KAET0f,KACIzO,EAAK,wGACLjR,EAAK,KAET2f,KACI1O,EAAK,oIACLjR,EAAK,KAET4f,KACI3O,EAAK,0FACLjR,EAAK,IAET6f,KACI5O,EAAK,wGACLjR,EAAK,IAET8f,KACI7O,EAAK,uFACLjR,EAAK,IAET+f,KACI9O,EAAK,0MACLjR,EAAK,KAETggB,KACI/O,EAAK,oMACLjR,EAAK,KAETigB,KACIhP,EAAK,4KACLjR,EAAK,KAETkgB,KACIjP,EAAK,4JACLjR,EAAK,IAETmgB,KACIlP,EAAK,+NACLjR,EAAK,KAETogB,KACInP,EAAK,0EACLjR,EAAK,KAETqgB,KACIpP,EAAK,iLACLjR,EAAK,KAETsgB,KACIrP,EAAK,yuBACLjR,EAAK,KAETugB,KACItP,EAAK,mIACLjR,EAAK,KAETwgB,KACIvP,EAAK,yGACLjR,EAAK,KAETygB,KACIxP,EAAK,2HACLjR,EAAK,KAET0gB,KACIzP,EAAK,6SACLjR,EAAK,KAET2gB,KACI1P,EAAK,uMACLjR,EAAK,KAET4gB,KACI3P,EAAK,iEACLjR,EAAK,IAET6gB,KACI5P,EAAK,4LACLjR,EAAK,KAET8gB,KACI7P,EAAK,4UACLjR,EAAK,KAET+gB,KACI9P,EAAK,qOACLjR,EAAK,KAETghB,KACI/P,EAAK,wQACLjR,EAAK,KAETihB,KACIhQ,EAAK,kQACLjR,EAAK,KAETkhB,KACIjQ,EAAK,qOACLjR,EAAK,KAETmhB,KACIlQ,EAAK,kOACLjR,EAAK,KAETohB,KACInQ,EAAK,mOACLjR,EAAK,QAYK,mBAAX4S,UAAyC,mBAARyO,MAC1C,KAAM,IAAItf,OAAM,kDAGlB,IAAIrE,EAAE4jB,QAAQrkB,QAAQiB,QAGpB,KAAM,IAAI6D,OAAM,6DAIlB9E,SAAQiB,OAAOqjB,KAAOtkB,QAAQiB,OAAOsjB,UAAYvkB,QAAQiB,OAAOujB,YAChExkB,QAAQiB,OAAOwjB,OAASzkB,QAAQiB,OAAOyjB,YAAc1kB,QAAQiB,OAAO0jB,cAMpE3kB,QAAQkD,UAAU0hB,QAAU,SAAStR,UAAW1G,SAC9C,GAAIiY,iBACF7jB,MAAO,OAKT,IAFA4L,QAAUnM,EAAE2V,SAASxJ,YAAeiY,kBAE9BjY,QAAQ5L,QAAShB,SAAQiB,QAC7B,KAAM,IAAI6D,OAAM,sBAAwB8H,QAAQ5L,MAIlD,IAAI8jB,KAAMrkB,EAAEskB,SAASzR,WAAatM,SAASge,eAAe1R,WAAaA,SACvE,IAAY,OAARwR,MAAiBA,IAAIG,QACvB,KAAM,IAAIngB,OAAM,sBAAwBwO,UAG1C,IAAI4R,OAAQllB,QAAQiB,OAAO2L,QAAQ5L,MACnC,IAAIkkB,OAAMjlB,KAAM2M,QAAS,SAASuY,SAC9BA,QAAQ5R,KAAKuR,QASE,mBAAVM,UACT,SAAUpb,GACRA,EAAEgM,GAAGqP,gBAAkB,SAASzY,SAC9B,MAAO3M,MAAKuU,KAAK,WACf,GAAI8Q,OAAQtb,EAAE/J,MACV+R,QAAUhS,QAAQuL,MAAM+Z,MAAM5X,OAClC4X,OAAMC,KAAK,IACXvT,QAAQ4S,QAAQ3kB,KAAM2M,aAGzBwY,OAML,IAAII,MAAuB,gBAAR7Z,OAAoBA,KAAKA,MAAQA,MAAQA,MACzC,gBAAV8Z,SAAsBA,OAAOA,QAAUA,QAAUA,MAKnC,oBAAZpU,UACa,mBAAXS,SAA0BA,OAAOT,UAC1CA,QAAUS,OAAOT,QAAUrR,SAE7BqR,QAAQrR,QAAUA,SAElBwlB,KAAKxlB,QAAUA","file":"dist/sequence-diagram-raphael-min.js"} \ No newline at end of file diff --git a/static/editor.md/lib/sequence/sequence-diagram-raphael.js b/static/editor.md/lib/sequence/sequence-diagram-raphael.js new file mode 100755 index 00000000..97e123f3 --- /dev/null +++ b/static/editor.md/lib/sequence/sequence-diagram-raphael.js @@ -0,0 +1,2454 @@ +/** js sequence diagrams 2.0.1 + * https://bramp.github.io/js-sequence-diagrams/ + * (c) 2012-2017 Andrew Brampton (bramp.net) + * @license Simplified BSD license. + */ +(function() { +'use strict'; +/*global Diagram */ + +// The following are included by preprocessor */ +/** js sequence diagrams + * https://bramp.github.io/js-sequence-diagrams/ + * (c) 2012-2017 Andrew Brampton (bramp.net) + * Simplified BSD license. + */ +/*global grammar _ */ + +function Diagram() { + this.title = undefined; + this.actors = []; + this.signals = []; +} +/* + * Return an existing actor with this alias, or creates a new one with alias and name. + */ +Diagram.prototype.getActor = function(alias, name) { + alias = alias.trim(); + + var i; + var actors = this.actors; + for (i in actors) { + if (actors[i].alias == alias) { + return actors[i]; + } + } + i = actors.push(new Diagram.Actor(alias, (name || alias), actors.length)); + return actors[ i - 1 ]; +}; + +/* + * Parses the input as either a alias, or a "name as alias", and returns the corresponding actor. + */ +Diagram.prototype.getActorWithAlias = function(input) { + input = input.trim(); + + // We are lazy and do some of the parsing in javascript :(. TODO move into the .jison file. + var s = /([\s\S]+) as (\S+)$/im.exec(input); + var alias; + var name; + if (s) { + name = s[1].trim(); + alias = s[2].trim(); + } else { + name = alias = input; + } + return this.getActor(alias, name); +}; + +Diagram.prototype.setTitle = function(title) { + this.title = title; +}; + +Diagram.prototype.addSignal = function(signal) { + this.signals.push(signal); +}; + +Diagram.Actor = function(alias, name, index) { + this.alias = alias; + this.name = name; + this.index = index; +}; + +Diagram.Signal = function(actorA, signaltype, actorB, message) { + this.type = 'Signal'; + this.actorA = actorA; + this.actorB = actorB; + this.linetype = signaltype & 3; + this.arrowtype = (signaltype >> 2) & 3; + this.message = message; +}; + +Diagram.Signal.prototype.isSelf = function() { + return this.actorA.index == this.actorB.index; +}; + +Diagram.Note = function(actor, placement, message) { + this.type = 'Note'; + this.actor = actor; + this.placement = placement; + this.message = message; + + if (this.hasManyActors() && actor[0] == actor[1]) { + throw new Error('Note should be over two different actors'); + } +}; + +Diagram.Note.prototype.hasManyActors = function() { + return _.isArray(this.actor); +}; + +Diagram.unescape = function(s) { + // Turn "\\n" into "\n" + return s.trim().replace(/^"(.*)"$/m, '$1').replace(/\\n/gm, '\n'); +}; + +Diagram.LINETYPE = { + SOLID: 0, + DOTTED: 1 +}; + +Diagram.ARROWTYPE = { + FILLED: 0, + OPEN: 1 +}; + +Diagram.PLACEMENT = { + LEFTOF: 0, + RIGHTOF: 1, + OVER: 2 +}; + +// Some older browsers don't have getPrototypeOf, thus we polyfill it +// https://github.com/bramp/js-sequence-diagrams/issues/57 +// https://github.com/zaach/jison/issues/194 +// Taken from http://ejohn.org/blog/objectgetprototypeof/ +if (typeof Object.getPrototypeOf !== 'function') { + /* jshint -W103 */ + if (typeof 'test'.__proto__ === 'object') { + Object.getPrototypeOf = function(object) { + return object.__proto__; + }; + } else { + Object.getPrototypeOf = function(object) { + // May break if the constructor has been tampered with + return object.constructor.prototype; + }; + } + /* jshint +W103 */ +} + +/** The following is included by preprocessor */ +/* parser generated by jison 0.4.15 */ +/* + Returns a Parser object of the following structure: + + Parser: { + yy: {} + } + + Parser.prototype: { + yy: {}, + trace: function(), + symbols_: {associative list: name ==> number}, + terminals_: {associative list: number ==> name}, + productions_: [...], + performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$), + table: [...], + defaultActions: {...}, + parseError: function(str, hash), + parse: function(input), + + lexer: { + EOF: 1, + parseError: function(str, hash), + setInput: function(input), + input: function(), + unput: function(str), + more: function(), + less: function(n), + pastInput: function(), + upcomingInput: function(), + showPosition: function(), + test_match: function(regex_match_array, rule_index), + next: function(), + lex: function(), + begin: function(condition), + popState: function(), + _currentRules: function(), + topState: function(), + pushState: function(condition), + + options: { + ranges: boolean (optional: true ==> token location info will include a .range[] member) + flex: boolean (optional: true ==> flex-like lexing behaviour where the rules are tested exhaustively to find the longest match) + backtrack_lexer: boolean (optional: true ==> lexer regexes are tested in order and for each matching regex the action code is invoked; the lexer terminates the scan when a token is returned by the action code) + }, + + performAction: function(yy, yy_, $avoiding_name_collisions, YY_START), + rules: [...], + conditions: {associative list: name ==> set}, + } + } + + + token location info (@$, _$, etc.): { + first_line: n, + last_line: n, + first_column: n, + last_column: n, + range: [start_number, end_number] (where the numbers are indexes into the input string, regular zero-based) + } + + + the parseError function receives a 'hash' object with these members for lexer and parser errors: { + text: (matched text) + token: (the produced terminal token, if any) + line: (yylineno) + } + while parser (grammar) errors will also provide these members, i.e. parser errors deliver a superset of attributes: { + loc: (yylloc) + expected: (string describing the set of expected tokens) + recoverable: (boolean: TRUE when the parser has a error recovery rule available for this particular error) + } +*/ +var parser = function() { + function Parser() { + this.yy = {}; + } + var o = function(k, v, o, l) { + for (o = o || {}, l = k.length; l--; o[k[l]] = v) ; + return o; + }, $V0 = [ 5, 8, 9, 13, 15, 24 ], $V1 = [ 1, 13 ], $V2 = [ 1, 17 ], $V3 = [ 24, 29, 30 ], parser = { + trace: function() {}, + yy: {}, + symbols_: { + error: 2, + start: 3, + document: 4, + EOF: 5, + line: 6, + statement: 7, + NL: 8, + participant: 9, + actor_alias: 10, + signal: 11, + note_statement: 12, + title: 13, + message: 14, + note: 15, + placement: 16, + actor: 17, + over: 18, + actor_pair: 19, + ",": 20, + left_of: 21, + right_of: 22, + signaltype: 23, + ACTOR: 24, + linetype: 25, + arrowtype: 26, + LINE: 27, + DOTLINE: 28, + ARROW: 29, + OPENARROW: 30, + MESSAGE: 31, + $accept: 0, + $end: 1 + }, + terminals_: { + 2: "error", + 5: "EOF", + 8: "NL", + 9: "participant", + 13: "title", + 15: "note", + 18: "over", + 20: ",", + 21: "left_of", + 22: "right_of", + 24: "ACTOR", + 27: "LINE", + 28: "DOTLINE", + 29: "ARROW", + 30: "OPENARROW", + 31: "MESSAGE" + }, + productions_: [ 0, [ 3, 2 ], [ 4, 0 ], [ 4, 2 ], [ 6, 1 ], [ 6, 1 ], [ 7, 2 ], [ 7, 1 ], [ 7, 1 ], [ 7, 2 ], [ 12, 4 ], [ 12, 4 ], [ 19, 1 ], [ 19, 3 ], [ 16, 1 ], [ 16, 1 ], [ 11, 4 ], [ 17, 1 ], [ 10, 1 ], [ 23, 2 ], [ 23, 1 ], [ 25, 1 ], [ 25, 1 ], [ 26, 1 ], [ 26, 1 ], [ 14, 1 ] ], + performAction: function(yytext, yyleng, yylineno, yy, yystate, $$, _$) { + /* this == yyval */ + var $0 = $$.length - 1; + switch (yystate) { + case 1: + return yy.parser.yy; + + case 4: + break; + + case 6: + $$[$0]; + break; + + case 7: + case 8: + yy.parser.yy.addSignal($$[$0]); + break; + + case 9: + yy.parser.yy.setTitle($$[$0]); + break; + + case 10: + this.$ = new Diagram.Note($$[$0 - 1], $$[$0 - 2], $$[$0]); + break; + + case 11: + this.$ = new Diagram.Note($$[$0 - 1], Diagram.PLACEMENT.OVER, $$[$0]); + break; + + case 12: + case 20: + this.$ = $$[$0]; + break; + + case 13: + this.$ = [ $$[$0 - 2], $$[$0] ]; + break; + + case 14: + this.$ = Diagram.PLACEMENT.LEFTOF; + break; + + case 15: + this.$ = Diagram.PLACEMENT.RIGHTOF; + break; + + case 16: + this.$ = new Diagram.Signal($$[$0 - 3], $$[$0 - 2], $$[$0 - 1], $$[$0]); + break; + + case 17: + this.$ = yy.parser.yy.getActor(Diagram.unescape($$[$0])); + break; + + case 18: + this.$ = yy.parser.yy.getActorWithAlias(Diagram.unescape($$[$0])); + break; + + case 19: + this.$ = $$[$0 - 1] | $$[$0] << 2; + break; + + case 21: + this.$ = Diagram.LINETYPE.SOLID; + break; + + case 22: + this.$ = Diagram.LINETYPE.DOTTED; + break; + + case 23: + this.$ = Diagram.ARROWTYPE.FILLED; + break; + + case 24: + this.$ = Diagram.ARROWTYPE.OPEN; + break; + + case 25: + this.$ = Diagram.unescape($$[$0].substring(1)); + } + }, + table: [ o($V0, [ 2, 2 ], { + 3: 1, + 4: 2 + }), { + 1: [ 3 ] + }, { + 5: [ 1, 3 ], + 6: 4, + 7: 5, + 8: [ 1, 6 ], + 9: [ 1, 7 ], + 11: 8, + 12: 9, + 13: [ 1, 10 ], + 15: [ 1, 12 ], + 17: 11, + 24: $V1 + }, { + 1: [ 2, 1 ] + }, o($V0, [ 2, 3 ]), o($V0, [ 2, 4 ]), o($V0, [ 2, 5 ]), { + 10: 14, + 24: [ 1, 15 ] + }, o($V0, [ 2, 7 ]), o($V0, [ 2, 8 ]), { + 14: 16, + 31: $V2 + }, { + 23: 18, + 25: 19, + 27: [ 1, 20 ], + 28: [ 1, 21 ] + }, { + 16: 22, + 18: [ 1, 23 ], + 21: [ 1, 24 ], + 22: [ 1, 25 ] + }, o([ 20, 27, 28, 31 ], [ 2, 17 ]), o($V0, [ 2, 6 ]), o($V0, [ 2, 18 ]), o($V0, [ 2, 9 ]), o($V0, [ 2, 25 ]), { + 17: 26, + 24: $V1 + }, { + 24: [ 2, 20 ], + 26: 27, + 29: [ 1, 28 ], + 30: [ 1, 29 ] + }, o($V3, [ 2, 21 ]), o($V3, [ 2, 22 ]), { + 17: 30, + 24: $V1 + }, { + 17: 32, + 19: 31, + 24: $V1 + }, { + 24: [ 2, 14 ] + }, { + 24: [ 2, 15 ] + }, { + 14: 33, + 31: $V2 + }, { + 24: [ 2, 19 ] + }, { + 24: [ 2, 23 ] + }, { + 24: [ 2, 24 ] + }, { + 14: 34, + 31: $V2 + }, { + 14: 35, + 31: $V2 + }, { + 20: [ 1, 36 ], + 31: [ 2, 12 ] + }, o($V0, [ 2, 16 ]), o($V0, [ 2, 10 ]), o($V0, [ 2, 11 ]), { + 17: 37, + 24: $V1 + }, { + 31: [ 2, 13 ] + } ], + defaultActions: { + 3: [ 2, 1 ], + 24: [ 2, 14 ], + 25: [ 2, 15 ], + 27: [ 2, 19 ], + 28: [ 2, 23 ], + 29: [ 2, 24 ], + 37: [ 2, 13 ] + }, + parseError: function(str, hash) { + if (!hash.recoverable) throw new Error(str); + this.trace(str); + }, + parse: function(input) { + function lex() { + var token; + return token = lexer.lex() || EOF, "number" != typeof token && (token = self.symbols_[token] || token), + token; + } + var self = this, stack = [ 0 ], vstack = [ null ], lstack = [], table = this.table, yytext = "", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1, args = lstack.slice.call(arguments, 1), lexer = Object.create(this.lexer), sharedState = { + yy: {} + }; + for (var k in this.yy) Object.prototype.hasOwnProperty.call(this.yy, k) && (sharedState.yy[k] = this.yy[k]); + lexer.setInput(input, sharedState.yy), sharedState.yy.lexer = lexer, sharedState.yy.parser = this, + "undefined" == typeof lexer.yylloc && (lexer.yylloc = {}); + var yyloc = lexer.yylloc; + lstack.push(yyloc); + var ranges = lexer.options && lexer.options.ranges; + "function" == typeof sharedState.yy.parseError ? this.parseError = sharedState.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError; + for (var symbol, preErrorSymbol, state, action, r, p, len, newState, expected, yyval = {}; ;) { + if (state = stack[stack.length - 1], this.defaultActions[state] ? action = this.defaultActions[state] : (null !== symbol && "undefined" != typeof symbol || (symbol = lex()), + action = table[state] && table[state][symbol]), "undefined" == typeof action || !action.length || !action[0]) { + var errStr = ""; + expected = []; + for (p in table[state]) this.terminals_[p] && p > TERROR && expected.push("'" + this.terminals_[p] + "'"); + errStr = lexer.showPosition ? "Parse error on line " + (yylineno + 1) + ":\n" + lexer.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'" : "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == EOF ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'"), + this.parseError(errStr, { + text: lexer.match, + token: this.terminals_[symbol] || symbol, + line: lexer.yylineno, + loc: yyloc, + expected: expected + }); + } + if (action[0] instanceof Array && action.length > 1) throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol); + switch (action[0]) { + case 1: + stack.push(symbol), vstack.push(lexer.yytext), lstack.push(lexer.yylloc), stack.push(action[1]), + symbol = null, preErrorSymbol ? (symbol = preErrorSymbol, preErrorSymbol = null) : (yyleng = lexer.yyleng, + yytext = lexer.yytext, yylineno = lexer.yylineno, yyloc = lexer.yylloc, recovering > 0 && recovering--); + break; + + case 2: + if (len = this.productions_[action[1]][1], yyval.$ = vstack[vstack.length - len], + yyval._$ = { + first_line: lstack[lstack.length - (len || 1)].first_line, + last_line: lstack[lstack.length - 1].last_line, + first_column: lstack[lstack.length - (len || 1)].first_column, + last_column: lstack[lstack.length - 1].last_column + }, ranges && (yyval._$.range = [ lstack[lstack.length - (len || 1)].range[0], lstack[lstack.length - 1].range[1] ]), + r = this.performAction.apply(yyval, [ yytext, yyleng, yylineno, sharedState.yy, action[1], vstack, lstack ].concat(args)), + "undefined" != typeof r) return r; + len && (stack = stack.slice(0, -1 * len * 2), vstack = vstack.slice(0, -1 * len), + lstack = lstack.slice(0, -1 * len)), stack.push(this.productions_[action[1]][0]), + vstack.push(yyval.$), lstack.push(yyval._$), newState = table[stack[stack.length - 2]][stack[stack.length - 1]], + stack.push(newState); + break; + + case 3: + return !0; + } + } + return !0; + } + }, lexer = function() { + var lexer = { + EOF: 1, + parseError: function(str, hash) { + if (!this.yy.parser) throw new Error(str); + this.yy.parser.parseError(str, hash); + }, + // resets the lexer, sets new input + setInput: function(input, yy) { + return this.yy = yy || this.yy || {}, this._input = input, this._more = this._backtrack = this.done = !1, + this.yylineno = this.yyleng = 0, this.yytext = this.matched = this.match = "", this.conditionStack = [ "INITIAL" ], + this.yylloc = { + first_line: 1, + first_column: 0, + last_line: 1, + last_column: 0 + }, this.options.ranges && (this.yylloc.range = [ 0, 0 ]), this.offset = 0, this; + }, + // consumes and returns one char from the input + input: function() { + var ch = this._input[0]; + this.yytext += ch, this.yyleng++, this.offset++, this.match += ch, this.matched += ch; + var lines = ch.match(/(?:\r\n?|\n).*/g); + return lines ? (this.yylineno++, this.yylloc.last_line++) : this.yylloc.last_column++, + this.options.ranges && this.yylloc.range[1]++, this._input = this._input.slice(1), + ch; + }, + // unshifts one char (or a string) into the input + unput: function(ch) { + var len = ch.length, lines = ch.split(/(?:\r\n?|\n)/g); + this._input = ch + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - len), + //this.yyleng -= len; + this.offset -= len; + var oldLines = this.match.split(/(?:\r\n?|\n)/g); + this.match = this.match.substr(0, this.match.length - 1), this.matched = this.matched.substr(0, this.matched.length - 1), + lines.length - 1 && (this.yylineno -= lines.length - 1); + var r = this.yylloc.range; + return this.yylloc = { + first_line: this.yylloc.first_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.first_column, + last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len + }, this.options.ranges && (this.yylloc.range = [ r[0], r[0] + this.yyleng - len ]), + this.yyleng = this.yytext.length, this; + }, + // When called from action, caches matched text and appends it on next action + more: function() { + return this._more = !0, this; + }, + // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead. + reject: function() { + return this.options.backtrack_lexer ? (this._backtrack = !0, this) : this.parseError("Lexical error on line " + (this.yylineno + 1) + ". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + }, + // retain first n characters of the match + less: function(n) { + this.unput(this.match.slice(n)); + }, + // displays already matched input, i.e. for error messages + pastInput: function() { + var past = this.matched.substr(0, this.matched.length - this.match.length); + return (past.length > 20 ? "..." : "") + past.substr(-20).replace(/\n/g, ""); + }, + // displays upcoming input, i.e. for error messages + upcomingInput: function() { + var next = this.match; + return next.length < 20 && (next += this._input.substr(0, 20 - next.length)), (next.substr(0, 20) + (next.length > 20 ? "..." : "")).replace(/\n/g, ""); + }, + // displays the character position where the lexing error occurred, i.e. for error messages + showPosition: function() { + var pre = this.pastInput(), c = new Array(pre.length + 1).join("-"); + return pre + this.upcomingInput() + "\n" + c + "^"; + }, + // test the lexed token: return FALSE when not a match, otherwise return token + test_match: function(match, indexed_rule) { + var token, lines, backup; + if (this.options.backtrack_lexer && (// save context + backup = { + yylineno: this.yylineno, + yylloc: { + first_line: this.yylloc.first_line, + last_line: this.last_line, + first_column: this.yylloc.first_column, + last_column: this.yylloc.last_column + }, + yytext: this.yytext, + match: this.match, + matches: this.matches, + matched: this.matched, + yyleng: this.yyleng, + offset: this.offset, + _more: this._more, + _input: this._input, + yy: this.yy, + conditionStack: this.conditionStack.slice(0), + done: this.done + }, this.options.ranges && (backup.yylloc.range = this.yylloc.range.slice(0))), lines = match[0].match(/(?:\r\n?|\n).*/g), + lines && (this.yylineno += lines.length), this.yylloc = { + first_line: this.yylloc.last_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.last_column, + last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length + }, this.yytext += match[0], this.match += match[0], this.matches = match, this.yyleng = this.yytext.length, + this.options.ranges && (this.yylloc.range = [ this.offset, this.offset += this.yyleng ]), + this._more = !1, this._backtrack = !1, this._input = this._input.slice(match[0].length), + this.matched += match[0], token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]), + this.done && this._input && (this.done = !1), token) return token; + if (this._backtrack) { + // recover context + for (var k in backup) this[k] = backup[k]; + return !1; + } + return !1; + }, + // return next match in input + next: function() { + if (this.done) return this.EOF; + this._input || (this.done = !0); + var token, match, tempMatch, index; + this._more || (this.yytext = "", this.match = ""); + for (var rules = this._currentRules(), i = 0; i < rules.length; i++) if (tempMatch = this._input.match(this.rules[rules[i]]), + tempMatch && (!match || tempMatch[0].length > match[0].length)) { + if (match = tempMatch, index = i, this.options.backtrack_lexer) { + if (token = this.test_match(tempMatch, rules[i]), token !== !1) return token; + if (this._backtrack) { + match = !1; + continue; + } + // else: this is a lexer rule which consumes input without producing a token (e.g. whitespace) + return !1; + } + if (!this.options.flex) break; + } + return match ? (token = this.test_match(match, rules[index]), token !== !1 && token) : "" === this._input ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + }, + // return next match that has a token + lex: function() { + var r = this.next(); + return r ? r : this.lex(); + }, + // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack) + begin: function(condition) { + this.conditionStack.push(condition); + }, + // pop the previously active lexer condition state off the condition stack + popState: function() { + var n = this.conditionStack.length - 1; + return n > 0 ? this.conditionStack.pop() : this.conditionStack[0]; + }, + // produce the lexer rule set which is active for the currently active lexer condition state + _currentRules: function() { + return this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1] ? this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules : this.conditions.INITIAL.rules; + }, + // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available + topState: function(n) { + return n = this.conditionStack.length - 1 - Math.abs(n || 0), n >= 0 ? this.conditionStack[n] : "INITIAL"; + }, + // alias for begin(condition) + pushState: function(condition) { + this.begin(condition); + }, + // return the number of states currently on the stack + stateStackSize: function() { + return this.conditionStack.length; + }, + options: { + "case-insensitive": !0 + }, + performAction: function(yy, yy_, $avoiding_name_collisions, YY_START) { + switch ($avoiding_name_collisions) { + case 0: + return 8; + + case 1: + /* skip whitespace */ + break; + + case 2: + /* skip comments */ + break; + + case 3: + return 9; + + case 4: + return 21; + + case 5: + return 22; + + case 6: + return 18; + + case 7: + return 15; + + case 8: + return 13; + + case 9: + return 20; + + case 10: + return 24; + + case 11: + return 24; + + case 12: + return 28; + + case 13: + return 27; + + case 14: + return 30; + + case 15: + return 29; + + case 16: + return 31; + + case 17: + return 5; + + case 18: + return "INVALID"; + } + }, + rules: [ /^(?:[\r\n]+)/i, /^(?:\s+)/i, /^(?:#[^\r\n]*)/i, /^(?:participant\b)/i, /^(?:left of\b)/i, /^(?:right of\b)/i, /^(?:over\b)/i, /^(?:note\b)/i, /^(?:title\b)/i, /^(?:,)/i, /^(?:[^\->:,\r\n"]+)/i, /^(?:"[^"]+")/i, /^(?:--)/i, /^(?:-)/i, /^(?:>>)/i, /^(?:>)/i, /^(?:[^\r\n]+)/i, /^(?:$)/i, /^(?:.)/i ], + conditions: { + INITIAL: { + rules: [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18 ], + inclusive: !0 + } + } + }; + return lexer; + }(); + return parser.lexer = lexer, Parser.prototype = parser, parser.Parser = Parser, + new Parser(); +}(); + +"undefined" != typeof require && "undefined" != typeof exports && (exports.parser = parser, +exports.Parser = parser.Parser, exports.parse = function() { + return parser.parse.apply(parser, arguments); +}, exports.main = function(args) { + args[1] || (console.log("Usage: " + args[0] + " FILE"), process.exit(1)); + var source = require("fs").readFileSync(require("path").normalize(args[1]), "utf8"); + return exports.parser.parse(source); +}, "undefined" != typeof module && require.main === module && exports.main(process.argv.slice(1))); +/** + * jison doesn't have a good exception, so we make one. + * This is brittle as it depends on jison internals + */ +function ParseError(message, hash) { + _.extend(this, hash); + + this.name = 'ParseError'; + this.message = (message || ''); +} +ParseError.prototype = new Error(); +Diagram.ParseError = ParseError; + +Diagram.parse = function(input) { + // TODO jison v0.4.17 changed their API slightly, so parser is no longer defined: + + // Create the object to track state and deal with errors + parser.yy = new Diagram(); + parser.yy.parseError = function(message, hash) { + throw new ParseError(message, hash); + }; + + // Parse + var diagram = parser.parse(input); + + // Then clean up the parseError key that a user won't care about + delete diagram.parseError; + return diagram; +}; + + +/** js sequence diagrams + * https://bramp.github.io/js-sequence-diagrams/ + * (c) 2012-2017 Andrew Brampton (bramp.net) + * Simplified BSD license. + */ +/*global Diagram, _ */ + +// Following the CSS convention +// Margin is the gap outside the box +// Padding is the gap inside the box +// Each object has x/y/width/height properties +// The x/y should be top left corner +// width/height is with both margin and padding + +// TODO +// Image width is wrong, when there is a note in the right hand col +// Title box could look better +// Note box could look better + +var DIAGRAM_MARGIN = 10; + +var ACTOR_MARGIN = 10; // Margin around a actor +var ACTOR_PADDING = 10; // Padding inside a actor + +var SIGNAL_MARGIN = 5; // Margin around a signal +var SIGNAL_PADDING = 5; // Padding inside a signal + +var NOTE_MARGIN = 10; // Margin around a note +var NOTE_PADDING = 5; // Padding inside a note +var NOTE_OVERLAP = 15; // Overlap when using a "note over A,B" + +var TITLE_MARGIN = 0; +var TITLE_PADDING = 5; + +var SELF_SIGNAL_WIDTH = 20; // How far out a self signal goes + +var PLACEMENT = Diagram.PLACEMENT; +var LINETYPE = Diagram.LINETYPE; +var ARROWTYPE = Diagram.ARROWTYPE; + +var ALIGN_LEFT = 0; +var ALIGN_CENTER = 1; + +function AssertException(message) { this.message = message; } +AssertException.prototype.toString = function() { + return 'AssertException: ' + this.message; +}; + +function assert(exp, message) { + if (!exp) { + throw new AssertException(message); + } +} + +if (!String.prototype.trim) { + String.prototype.trim = function() { + return this.replace(/^\s+|\s+$/g, ''); + }; +} + +Diagram.themes = {}; +function registerTheme(name, theme) { + Diagram.themes[name] = theme; +} + +/****************** + * Drawing extras + ******************/ + +function getCenterX(box) { + return box.x + box.width / 2; +} + +function getCenterY(box) { + return box.y + box.height / 2; +} + +/****************** + * SVG Path extras + ******************/ + +function clamp(x, min, max) { + if (x < min) { + return min; + } + if (x > max) { + return max; + } + return x; +} + +function wobble(x1, y1, x2, y2) { + assert(_.all([x1,x2,y1,y2], _.isFinite), 'x1,x2,y1,y2 must be numeric'); + + // Wobble no more than 1/25 of the line length + var factor = Math.sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1)) / 25; + + // Distance along line where the control points are + // Clamp between 20% and 80% so any arrow heads aren't angled too much + var r1 = clamp(Math.random(), 0.2, 0.8); + var r2 = clamp(Math.random(), 0.2, 0.8); + + var xfactor = Math.random() > 0.5 ? factor : -factor; + var yfactor = Math.random() > 0.5 ? factor : -factor; + + var p1 = { + x: (x2 - x1) * r1 + x1 + xfactor, + y: (y2 - y1) * r1 + y1 + yfactor + }; + + var p2 = { + x: (x2 - x1) * r2 + x1 - xfactor, + y: (y2 - y1) * r2 + y1 - yfactor + }; + + return 'C' + p1.x.toFixed(1) + ',' + p1.y.toFixed(1) + // start control point + ' ' + p2.x.toFixed(1) + ',' + p2.y.toFixed(1) + // end control point + ' ' + x2.toFixed(1) + ',' + y2.toFixed(1); // end point +} + +/** + * Draws a wobbly (hand drawn) rect + */ +function handRect(x, y, w, h) { + assert(_.all([x, y, w, h], _.isFinite), 'x, y, w, h must be numeric'); + return 'M' + x + ',' + y + + wobble(x, y, x + w, y) + + wobble(x + w, y, x + w, y + h) + + wobble(x + w, y + h, x, y + h) + + wobble(x, y + h, x, y); +} + +/** + * Draws a wobbly (hand drawn) line + */ +function handLine(x1, y1, x2, y2) { + assert(_.all([x1,x2,y1,y2], _.isFinite), 'x1,x2,y1,y2 must be numeric'); + return 'M' + x1.toFixed(1) + ',' + y1.toFixed(1) + wobble(x1, y1, x2, y2); +} + +/****************** + * BaseTheme + ******************/ + +var BaseTheme = function(diagram, options) { + this.init(diagram, options); +}; + +_.extend(BaseTheme.prototype, { + + // Init called while creating the Theme + init: function(diagram, options) { + this.diagram = diagram; + + this.actorsHeight_ = 0; + this.signalsHeight_ = 0; + this.title_ = undefined; // hack - This should be somewhere better + }, + + setupPaper: function(container) {}, + + draw: function(container) { + this.setupPaper(container); + + this.layout(); + + var titleHeight = this.title_ ? this.title_.height : 0; + var y = DIAGRAM_MARGIN + titleHeight; + + this.drawTitle(); + this.drawActors(y); + this.drawSignals(y + this.actorsHeight_); + }, + + layout: function() { + // Local copies + var diagram = this.diagram; + var font = this.font_; + var actors = diagram.actors; + var signals = diagram.signals; + + diagram.width = 0; // min width + diagram.height = 0; // min height + + // Setup some layout stuff + if (diagram.title) { + var title = this.title_ = {}; + var bb = this.textBBox(diagram.title, font); + title.textBB = bb; + title.message = diagram.title; + + title.width = bb.width + (TITLE_PADDING + TITLE_MARGIN) * 2; + title.height = bb.height + (TITLE_PADDING + TITLE_MARGIN) * 2; + title.x = DIAGRAM_MARGIN; + title.y = DIAGRAM_MARGIN; + + diagram.width += title.width; + diagram.height += title.height; + } + + _.each(actors, function(a) { + var bb = this.textBBox(a.name, font); + a.textBB = bb; + + a.x = 0; a.y = 0; + a.width = bb.width + (ACTOR_PADDING + ACTOR_MARGIN) * 2; + a.height = bb.height + (ACTOR_PADDING + ACTOR_MARGIN) * 2; + + a.distances = []; + a.paddingRight = 0; + this.actorsHeight_ = Math.max(a.height, this.actorsHeight_); + }, this); + + function actorEnsureDistance(a, b, d) { + assert(a < b, 'a must be less than or equal to b'); + + if (a < 0) { + // Ensure b has left margin + b = actors[b]; + b.x = Math.max(d - b.width / 2, b.x); + } else if (b >= actors.length) { + // Ensure a has right margin + a = actors[a]; + a.paddingRight = Math.max(d, a.paddingRight); + } else { + a = actors[a]; + a.distances[b] = Math.max(d, a.distances[b] ? a.distances[b] : 0); + } + } + + _.each(signals, function(s) { + // Indexes of the left and right actors involved + var a; + var b; + + var bb = this.textBBox(s.message, font); + + //var bb = t.attr("text", s.message).getBBox(); + s.textBB = bb; + s.width = bb.width; + s.height = bb.height; + + var extraWidth = 0; + + if (s.type == 'Signal') { + + s.width += (SIGNAL_MARGIN + SIGNAL_PADDING) * 2; + s.height += (SIGNAL_MARGIN + SIGNAL_PADDING) * 2; + + if (s.isSelf()) { + // TODO Self signals need a min height + a = s.actorA.index; + b = a + 1; + s.width += SELF_SIGNAL_WIDTH; + } else { + a = Math.min(s.actorA.index, s.actorB.index); + b = Math.max(s.actorA.index, s.actorB.index); + } + + } else if (s.type == 'Note') { + s.width += (NOTE_MARGIN + NOTE_PADDING) * 2; + s.height += (NOTE_MARGIN + NOTE_PADDING) * 2; + + // HACK lets include the actor's padding + extraWidth = 2 * ACTOR_MARGIN; + + if (s.placement == PLACEMENT.LEFTOF) { + b = s.actor.index; + a = b - 1; + } else if (s.placement == PLACEMENT.RIGHTOF) { + a = s.actor.index; + b = a + 1; + } else if (s.placement == PLACEMENT.OVER && s.hasManyActors()) { + // Over multiple actors + a = Math.min(s.actor[0].index, s.actor[1].index); + b = Math.max(s.actor[0].index, s.actor[1].index); + + // We don't need our padding, and we want to overlap + extraWidth = -(NOTE_PADDING * 2 + NOTE_OVERLAP * 2); + + } else if (s.placement == PLACEMENT.OVER) { + // Over single actor + a = s.actor.index; + actorEnsureDistance(a - 1, a, s.width / 2); + actorEnsureDistance(a, a + 1, s.width / 2); + this.signalsHeight_ += s.height; + + return; // Bail out early + } + } else { + throw new Error('Unhandled signal type:' + s.type); + } + + actorEnsureDistance(a, b, s.width + extraWidth); + this.signalsHeight_ += s.height; + }, this); + + // Re-jig the positions + var actorsX = 0; + _.each(actors, function(a) { + a.x = Math.max(actorsX, a.x); + + // TODO This only works if we loop in sequence, 0, 1, 2, etc + _.each(a.distances, function(distance, b) { + // lodash (and possibly others) do not like sparse arrays + // so sometimes they return undefined + if (typeof distance == 'undefined') { + return; + } + + b = actors[b]; + distance = Math.max(distance, a.width / 2, b.width / 2); + b.x = Math.max(b.x, a.x + a.width / 2 + distance - b.width / 2); + }); + + actorsX = a.x + a.width + a.paddingRight; + }, this); + + diagram.width = Math.max(actorsX, diagram.width); + + // TODO Refactor a little + diagram.width += 2 * DIAGRAM_MARGIN; + diagram.height += 2 * DIAGRAM_MARGIN + 2 * this.actorsHeight_ + this.signalsHeight_; + + return this; + }, + + // TODO Instead of one textBBox function, create a function for each element type, e.g + // layout_title, layout_actor, etc that returns it's bounding box + textBBox: function(text, font) {}, + + drawTitle: function() { + var title = this.title_; + if (title) { + this.drawTextBox(title, title.message, TITLE_MARGIN, TITLE_PADDING, this.font_, ALIGN_LEFT); + } + }, + + drawActors: function(offsetY) { + var y = offsetY; + _.each(this.diagram.actors, function(a) { + // Top box + this.drawActor(a, y, this.actorsHeight_); + + // Bottom box + this.drawActor(a, y + this.actorsHeight_ + this.signalsHeight_, this.actorsHeight_); + + // Veritical line + var aX = getCenterX(a); + this.drawLine( + aX, y + this.actorsHeight_ - ACTOR_MARGIN, + aX, y + this.actorsHeight_ + ACTOR_MARGIN + this.signalsHeight_); + }, this); + }, + + drawActor: function(actor, offsetY, height) { + actor.y = offsetY; + actor.height = height; + this.drawTextBox(actor, actor.name, ACTOR_MARGIN, ACTOR_PADDING, this.font_, ALIGN_CENTER); + }, + + drawSignals: function(offsetY) { + var y = offsetY; + _.each(this.diagram.signals, function(s) { + // TODO Add debug mode, that draws padding/margin box + if (s.type == 'Signal') { + if (s.isSelf()) { + this.drawSelfSignal(s, y); + } else { + this.drawSignal(s, y); + } + + } else if (s.type == 'Note') { + this.drawNote(s, y); + } + + y += s.height; + }, this); + }, + + drawSelfSignal: function(signal, offsetY) { + assert(signal.isSelf(), 'signal must be a self signal'); + + var textBB = signal.textBB; + var aX = getCenterX(signal.actorA); + + var x = aX + SELF_SIGNAL_WIDTH + SIGNAL_PADDING; + var y = offsetY + SIGNAL_PADDING + signal.height / 2 + textBB.y; + + this.drawText(x, y, signal.message, this.font_, ALIGN_LEFT); + + var y1 = offsetY + SIGNAL_MARGIN + SIGNAL_PADDING; + var y2 = y1 + signal.height - 2 * SIGNAL_MARGIN - SIGNAL_PADDING; + + // Draw three lines, the last one with a arrow + this.drawLine(aX, y1, aX + SELF_SIGNAL_WIDTH, y1, signal.linetype); + this.drawLine(aX + SELF_SIGNAL_WIDTH, y1, aX + SELF_SIGNAL_WIDTH, y2, signal.linetype); + this.drawLine(aX + SELF_SIGNAL_WIDTH, y2, aX, y2, signal.linetype, signal.arrowtype); + }, + + drawSignal: function(signal, offsetY) { + var aX = getCenterX(signal.actorA); + var bX = getCenterX(signal.actorB); + + // Mid point between actors + var x = (bX - aX) / 2 + aX; + var y = offsetY + SIGNAL_MARGIN + 2 * SIGNAL_PADDING; + + // Draw the text in the middle of the signal + this.drawText(x, y, signal.message, this.font_, ALIGN_CENTER); + + // Draw the line along the bottom of the signal + y = offsetY + signal.height - SIGNAL_MARGIN - SIGNAL_PADDING; + this.drawLine(aX, y, bX, y, signal.linetype, signal.arrowtype); + }, + + drawNote: function(note, offsetY) { + note.y = offsetY; + var actorA = note.hasManyActors() ? note.actor[0] : note.actor; + var aX = getCenterX(actorA); + switch (note.placement) { + case PLACEMENT.RIGHTOF: + note.x = aX + ACTOR_MARGIN; + break; + case PLACEMENT.LEFTOF: + note.x = aX - ACTOR_MARGIN - note.width; + break; + case PLACEMENT.OVER: + if (note.hasManyActors()) { + var bX = getCenterX(note.actor[1]); + var overlap = NOTE_OVERLAP + NOTE_PADDING; + note.x = Math.min(aX, bX) - overlap; + note.width = (Math.max(aX, bX) + overlap) - note.x; + } else { + note.x = aX - note.width / 2; + } + break; + default: + throw new Error('Unhandled note placement: ' + note.placement); + } + return this.drawTextBox(note, note.message, NOTE_MARGIN, NOTE_PADDING, this.font_, ALIGN_LEFT); + }, + + /** + * Draw text surrounded by a box + */ + drawTextBox: function(box, text, margin, padding, font, align) { + var x = box.x + margin; + var y = box.y + margin; + var w = box.width - 2 * margin; + var h = box.height - 2 * margin; + + // Draw inner box + this.drawRect(x, y, w, h); + + // Draw text (in the center) + if (align == ALIGN_CENTER) { + x = getCenterX(box); + y = getCenterY(box); + } else { + x += padding; + y += padding; + } + + return this.drawText(x, y, text, font, align); + } +}); + + +/** js sequence diagrams + * https://bramp.github.io/js-sequence-diagrams/ + * (c) 2012-2017 Andrew Brampton (bramp.net) + * Simplified BSD license. + */ +/*global Diagram, Raphael, _ */ + +if (typeof Raphael != 'undefined') { + + var LINE = { + 'stroke': '#000000', + 'stroke-width': 2, + 'fill': 'none' + }; + + var RECT = { + 'stroke': '#000000', + 'stroke-width': 2, + 'fill': '#fff' + }; + + /****************** + * Raphaël extras + ******************/ + Raphael.fn.line = function(x1, y1, x2, y2) { + assert(_.all([x1,x2,y1,y2], _.isFinite), 'x1,x2,y1,y2 must be numeric'); + return this.path('M{0},{1} L{2},{3}', x1, y1, x2, y2); + }; + + /****************** + * RaphaelTheme + ******************/ + + var RaphaelTheme = function(diagram, options, resume) { + this.init(diagram, _.defaults(options, { + 'font-size': 16, + 'font-family': 'Andale Mono, monospace' + }), resume); + }; + + _.extend(RaphaelTheme.prototype, BaseTheme.prototype, { + + init: function(diagram, options, resume) { + BaseTheme.prototype.init.call(this, diagram); + + this.paper_ = undefined; + this.font_ = { + 'font-size': options['font-size'], + 'font-family': options['font-family'] + }; + + var a = this.arrowTypes_ = {}; + a[ARROWTYPE.FILLED] = 'block'; + a[ARROWTYPE.OPEN] = 'open'; + + var l = this.lineTypes_ = {}; + l[LINETYPE.SOLID] = ''; + l[LINETYPE.DOTTED] = '-'; + + resume(this); + }, + + setupPaper: function(container) { + this.paper_ = new Raphael(container, 320, 200); + this.paper_.setStart(); + }, + + draw: function(container) { + BaseTheme.prototype.draw.call(this, container); + this.paper_.setFinish(); + }, + + layout: function() { + BaseTheme.prototype.layout.call(this); + this.paper_.setSize( + this.diagram.width, + this.diagram.height + ); + }, + + /** + * Strip whitespace from each newline + */ + cleanText: function(text) { + text = _.invoke(text.split('\n'), 'trim'); + return text.join('\n'); + }, + + /** + * Returns the text's bounding box + */ + textBBox: function(text, font) { + text = this.cleanText(text); + font = font || {}; + var p; + if (font.obj_) { + p = this.paper_.print(0, 0, text, font.obj_, font['font-size']); + } else { + p = this.paper_.text(0, 0, text); + p.attr(font); + } + + var bb = p.getBBox(); + p.remove(); + + return bb; + }, + + drawLine: function(x1, y1, x2, y2, linetype, arrowhead) { + var line = this.paper_.line(x1, y1, x2, y2).attr(LINE); + if (arrowhead !== undefined) { + line.attr('arrow-end', this.arrowTypes_[arrowhead] + '-wide-long'); + } + if (arrowhead !== undefined) { + line.attr('stroke-dasharray', this.lineTypes_[linetype]); + } + return line; + }, + + drawRect: function(x, y, w, h) { + return this.paper_.rect(x, y, w, h).attr(RECT); + }, + + /** + * Draws text with a optional white background + * x,y (int) x,y top left point of the text, or the center of the text (depending on align param) + * text (string) text to print + * font (Object) + * align (string) ALIGN_LEFT or ALIGN_CENTER + */ + drawText: function(x, y, text, font, align) { + text = this.cleanText(text); + font = font || {}; + align = align || ALIGN_LEFT; + + var paper = this.paper_; + var bb = this.textBBox(text, font); + + if (align == ALIGN_CENTER) { + x = x - bb.width / 2; + y = y - bb.height / 2; + } + + var t; + if (font.obj_) { + // When using a font, we have to use .print(..) + t = paper.print(x - bb.x, y - bb.y, text, font.obj_, font['font-size']); + } else { + t = paper.text(x - bb.x - bb.width / 2, y - bb.y, text); + t.attr(font); + t.attr({'text-anchor': 'start'}); + } + + return t; + } + }); + + /****************** + * RaphaelHandTheme + ******************/ + + var RaphaelHandTheme = function(diagram, options, resume) { + this.init(diagram, _.defaults(options, { + 'font-size': 16, + 'font-family': 'daniel' + }), resume); + }; + + // Take the standard RaphaelTheme and make all the lines wobbly + _.extend(RaphaelHandTheme.prototype, RaphaelTheme.prototype, { + setupPaper: function(container) { + RaphaelTheme.prototype.setupPaper.call(this, container); + this.font_.obj_ = this.paper_.getFont('daniel'); + }, + + drawLine: function(x1, y1, x2, y2, linetype, arrowhead) { + var line = this.paper_.path(handLine(x1, y1, x2, y2)).attr(LINE); + if (arrowhead !== undefined) { + line.attr('arrow-end', this.arrowTypes_[arrowhead] + '-wide-long'); + } + if (arrowhead !== undefined) { + line.attr('stroke-dasharray', this.lineTypes_[linetype]); + } + return line; + }, + + drawRect: function(x, y, w, h) { + return this.paper_.path(handRect(x, y, w, h)).attr(RECT); + } + }); + + registerTheme('raphaelSimple', RaphaelTheme); + registerTheme('raphaelHand', RaphaelHandTheme); +} +/*! + * The following copyright notice may not be removed under any circumstances. + * + * Copyright: + * Copyright (c) 2011 by Daniel Midgley. All rights reserved. + * + * Trademark: + * Please refer to the Copyright section for the font trademark attribution + * notices. + * + * Full name: + * Daniel-Bold + * + * Description: + * Daniel Bold is a font by Daniel Midgley. + * + * Designer: + * Daniel Midgley + * + * Vendor URL: + * http://goodreasonblog.blogspot.com/p/fontery.html + * + * License information: + * http://creativecommons.org/licenses/by-nd/3.0/ + */ +if (typeof Raphael != 'undefined') { +Raphael.registerFont({ + "w": 209, + "face": { + "font-family": "Daniel", + "font-weight": 700, + "font-stretch": "normal", + "units-per-em": "360", + "panose-1": "2 11 8 0 0 0 0 0 0 0", + "ascent": "288", + "descent": "-72", + "x-height": "7", + "bbox": "-92.0373 -310.134 519 184.967", + "underline-thickness": "3.51562", + "underline-position": "-25.1367", + "unicode-range": "U+0009-U+F002" + }, + "glyphs": { + " ": { + "w": 179 + }, + "\t": { + "w": 179 + }, + "\r": { + "w": 179 + }, + "!": { + "d": "66,-306v9,3,18,11,19,24v-18,73,-20,111,-37,194v0,10,2,34,-12,34v-12,0,-18,-9,-18,-28v0,-85,23,-136,38,-214v1,-7,4,-10,10,-10xm25,-30v15,-1,28,34,5,35v-11,-1,-38,-36,-5,-35", + "w": 115 + }, + "\"": { + "d": "91,-214v-32,3,-25,-40,-20,-68v3,-16,7,-25,12,-27v35,13,14,56,8,95xm8,-231v4,-31,1,-40,18,-75v37,7,11,51,11,79v-3,3,-4,8,-5,13v-17,4,-16,-10,-24,-17", + "w": 117 + }, + "#": { + "d": "271,-64v-30,26,-96,-7,-102,51v-6,2,-13,2,-24,-2v-2,-11,10,-21,2,-28v-14,5,-48,0,-48,22v0,23,-11,14,-29,10v-7,-6,6,-19,-1,-24r-32,4v-19,-8,-15,-24,5,-28r33,-6v4,0,24,-23,11,-27v-26,0,-63,14,-74,-10v3,-1,9,-17,16,-10v15,-8,81,4,89,-30v8,-14,16,-34,24,-38v23,9,24,38,5,49v37,24,55,-38,72,-43v19,10,20,23,-1,45v2,8,23,1,29,4v3,3,6,6,10,11v-14,13,-20,12,-45,12v-17,0,-16,17,-19,29v18,-7,49,3,67,-2v4,0,8,4,12,11xm161,-104v-30,-1,-44,10,-44,37v14,1,24,0,40,-5v0,-1,3,-10,8,-26v0,-4,-1,-6,-4,-6", + "w": 285 + }, + "$": { + "d": "164,-257v29,4,1,42,-3,50v5,5,38,13,41,24v8,4,6,15,-2,21v-18,3,-36,-17,-49,-17v-17,1,-31,40,-28,48v5,4,8,8,9,10v13,1,35,37,28,44v-10,21,-36,20,-65,28v-10,10,-12,40,-17,51v-9,-3,-28,1,-18,-17v0,-13,5,-24,-1,-35v-18,1,-59,-10,-42,-29v21,0,56,16,55,-16v5,-4,9,-18,9,-26v-14,-15,-55,-41,-53,-65v2,-33,56,-19,98,-26v10,-14,31,-43,38,-45xm93,-152v11,-10,15,-15,14,-29v-17,-3,-37,1,-43,6v10,12,20,19,29,23xm111,-103v-8,1,-11,12,-10,22v10,0,28,2,27,-8v0,-4,-13,-15,-17,-14", + "w": 225 + }, + "%": { + "d": "181,-96v24,-7,67,-13,104,1v14,18,21,19,22,44v-13,43,-99,61,-146,36v-9,-9,-22,-11,-32,-29v0,-27,24,-53,52,-52xm139,-185v-9,68,-138,73,-131,-5v0,-3,3,-9,9,-17v13,1,27,1,17,-16v5,-39,63,0,93,-6v36,1,80,-9,102,11v15,32,12,32,-8,56v-16,21,-103,78,-152,125r-14,28v-23,11,-25,-7,-29,-20v34,-71,133,-98,171,-162v-13,-12,-52,-5,-61,1v0,1,1,3,3,5xm38,-190v0,34,55,29,70,8v0,-14,-20,-11,-32,-14v-14,-3,-24,-9,-40,-10v1,0,5,11,2,16xm172,-53v12,27,90,18,102,-5v-18,-7,-32,-10,-40,-10v-29,3,-57,-4,-62,15", + "w": 308 + }, + "&": { + "d": "145,-82v17,-8,47,-15,71,-26v13,2,25,12,9,23v-23,7,-40,16,-53,27r0,6v13,8,30,21,36,38v0,8,-4,12,-11,12v-19,0,-43,-39,-59,-44v-30,12,-65,29,-97,32v-32,3,-45,-41,-23,-63v21,-20,52,-26,70,-48v-4,-31,-12,-47,9,-73v13,-16,20,-29,23,-39v15,-15,32,-22,51,-22v30,9,62,64,32,96v-2,3,-47,42,-69,48v-15,8,-11,9,0,22v6,7,10,11,11,11xm114,-138v25,-13,62,-38,74,-62v0,-9,-10,-31,-20,-29v-28,7,-60,42,-60,75v0,10,2,15,6,16xm99,-91v-18,10,-54,18,-59,45v26,5,61,-12,77,-22v-1,-5,-13,-23,-18,-23", + "w": 253 + }, + "'": { + "d": "36,-182v-36,7,-34,-61,-17,-80v15,1,21,19,21,20r-1,-1v0,0,-1,12,-5,35v1,5,3,17,2,26", + "w": 63 + }, + "(": { + "d": "130,-306v13,2,23,43,-1,43v-49,43,-77,77,-90,148v5,49,27,67,64,101v4,14,5,6,2,19r-15,0v-35,-17,-79,-58,-79,-120v0,-58,66,-176,119,-191", + "w": 120 + }, + ")": { + "d": "108,-138v-2,73,-48,120,-98,153v-17,-5,-16,-20,-6,-31v52,-64,73,-62,74,-135v1,-42,-40,-98,-58,-128v0,-5,-1,-12,-2,-22v18,-18,25,0,42,27v25,39,50,66,48,136", + "w": 120 + }, + "*": { + "d": "121,-271v15,-5,36,-8,40,9v-5,10,-31,19,-47,31v0,11,34,43,14,53v-18,8,-24,-24,-34,-20v-4,10,-4,19,-12,41v-25,7,-15,-30,-17,-47v-13,-1,-17,9,-46,30r-10,0v-20,-32,37,-43,54,-64v-10,-11,-36,-33,-16,-51v3,0,14,8,33,24v8,-10,26,-39,32,-42v14,7,15,23,9,36", + "w": 177 + }, + "+": { + "d": "163,-64v-7,22,-65,2,-77,21v-2,10,-6,21,-11,35v-20,4,-21,-12,-19,-29v3,-23,-44,6,-39,-27v-8,-22,36,-8,49,-18v8,-13,6,-36,24,-40v19,-4,14,32,11,39v18,3,19,2,54,8v2,1,5,5,8,11", + "w": 170 + }, + ",": { + "d": "25,63v-26,21,-48,-2,-22,-24v14,-12,35,-40,35,-69v3,-2,3,-11,12,-9v35,17,5,88,-25,102", + "w": 97 + }, + "-": { + "d": "57,-94v19,4,55,-5,54,17v-15,23,-54,20,-91,15v-4,2,-13,-10,-11,-16v-1,-22,28,-15,48,-16", + "w": 124 + }, + ".": { + "d": "40,-48v21,20,21,44,-4,44v-33,0,-26,-24,-10,-44r14,0", + "w": 67 + }, + "\/": { + "d": "21,20v-22,-45,21,-95,41,-126v38,-57,115,-158,193,-201v2,0,4,3,7,11v11,29,-15,34,-25,55v-81,56,-189,208,-197,261r-19,0", + "w": 275 + }, + "0": { + "d": "78,-237v70,-47,269,-41,270,59v0,34,-11,53,-29,76v-13,35,-30,32,-85,64v-6,2,-10,6,-7,8v-73,14,-98,38,-173,1v-7,-13,-52,-48,-46,-88v9,-57,27,-75,70,-120xm123,-38v100,0,202,-46,195,-153v-32,-55,-144,-73,-211,-35v-16,34,-68,54,-53,108v6,25,1,22,-3,39v6,24,41,41,72,41", + "w": 353 + }, + "1": { + "d": "39,-208v0,-14,6,-59,29,-39v3,4,6,13,10,24r-22,128r8,87v-4,6,-9,3,-16,2v-44,-38,-9,-137,-9,-202", + "w": 93 + }, + "2": { + "d": "88,-35v47,-10,119,-24,168,-9v0,12,-23,13,-35,16v1,1,3,1,5,1v-74,8,-118,23,-194,23v-14,0,-20,-13,-21,-28v55,-40,83,-61,123,-104v26,-13,65,-67,71,-102v-1,-9,-11,-16,-22,-16v-20,-1,-120,29,-156,49v-10,-2,-30,-20,-10,-28v50,-21,111,-51,178,-48v25,10,44,22,36,39v12,30,-19,64,-34,83v-39,48,-37,39,-115,109v0,5,-3,8,-8,11v4,3,8,4,14,4", + "w": 265 + }, + "3": { + "d": "188,-282v34,-10,74,25,47,51v-19,32,-55,50,-92,70v28,14,116,25,108,70v8,14,-49,40,-63,48v-29,9,-130,22,-168,42v-6,-5,-19,-7,-12,-22v56,-36,175,-21,210,-76v-9,-20,-88,-42,-97,-33v-20,-1,-41,2,-56,-7r5,-21v56,-25,103,-36,137,-78v1,-1,2,-5,4,-11v-15,-14,-56,7,-79,0v-10,9,-73,22,-92,31v-11,-4,-28,-23,-13,-30v50,-22,96,-26,154,-37v0,-1,8,3,7,3", + "w": 260 + }, + "4": { + "d": "79,-249v-7,17,-29,75,-33,96v0,6,3,8,8,8v43,-2,111,6,141,-6v17,-47,20,-100,63,-148v9,4,16,7,21,10v-17,31,-44,95,-51,141v7,4,24,-4,23,10v-1,16,-29,12,-31,23v-10,22,-9,69,-7,103v-3,2,-7,5,-10,9v-47,-11,-23,-74,-16,-114v0,-4,-2,-6,-7,-6v-65,2,-89,13,-162,4v-22,-22,-2,-53,5,-76v16,-15,17,-57,35,-70v6,-1,21,11,21,16", + "w": 267 + }, + "5": { + "d": "185,-272v30,7,45,-8,53,18v1,16,-17,18,-34,14v0,0,-95,-11,-129,1v-6,9,-24,33,-29,54v76,10,171,5,214,47v11,11,22,30,5,52v-14,12,-30,14,-34,27v-26,11,-141,63,-157,60v-16,-2,-25,-19,-4,-27v48,-18,128,-39,170,-86v4,-14,-65,-41,-85,-41r-92,0v-10,-4,-66,-1,-57,-23v0,-23,23,-51,35,-83v11,-28,133,-10,144,-13", + "w": 284 + }, + "6": { + "d": "70,-64v9,-51,63,-74,123,-71v43,2,109,3,111,41r-25,47v0,1,1,2,2,3v-5,0,-39,10,-41,20v-15,3,-22,4,-22,11v-39,1,-77,20,-119,13v-42,-7,-35,-9,-77,-46v-56,-118,94,-201,176,-229v7,0,21,8,20,15v-2,17,-23,15,-43,24v-69,31,-119,72,-134,145v-5,25,36,68,78,64v59,-6,128,-18,153,-61v-7,-14,-13,-9,-32,-21v-67,-15,-118,-5,-150,43r0,12v-13,4,-17,-3,-20,-10", + "w": 310 + }, + "7": { + "d": "37,-228v33,-14,173,-17,181,-19v28,-1,24,31,9,45v-17,15,-45,49,-59,69v-17,26,-55,67,-61,113v-10,13,-9,14,-14,20v-33,-13,-20,-25,-11,-53v16,-48,73,-115,109,-156v2,-7,5,-14,-10,-12v-26,4,-54,6,-76,13v-23,-5,-83,31,-94,-9v2,-8,18,-19,26,-11", + "w": 245 + }, + "8": { + "d": "57,-236v40,-50,166,-51,213,-10v22,28,10,63,-22,78r-35,17v8,5,54,24,53,44v-5,14,-4,33,-18,42v-13,13,-35,18,-44,34v-60,27,-190,49,-194,-42v7,-41,17,-54,59,-70r0,-4v-32,-9,-73,-62,-26,-85v4,0,8,-2,14,-4xm142,-160v24,-2,160,-31,99,-72v-28,-18,-108,-33,-146,-5v-16,12,-28,30,-33,59v24,12,37,20,80,18xm41,-62v30,65,189,6,199,-37v3,-14,-60,-30,-74,-30v-70,0,-118,10,-125,67", + "w": 290 + }, + "9": { + "d": "11,-192v15,-49,119,-61,161,-23v16,15,27,55,11,79v-20,62,-51,79,-96,118v-10,4,-45,27,-50,6v9,-15,66,-52,98,-99v-7,-7,-8,-3,-25,0v-49,-11,-96,-25,-99,-81xm145,-131v7,-5,13,-34,13,-41v-2,-51,-104,-38,-114,-6v-2,10,37,35,46,35v23,1,43,-1,55,12", + "w": 198 + }, + ":": { + "d": "39,-125v15,-8,40,-1,40,15v0,15,-6,22,-19,22v-13,0,-29,-21,-21,-37xm66,-17v-8,27,-51,19,-46,-8v-1,-6,8,-22,14,-20v29,0,30,6,32,28", + "w": 95 + }, + ";": { + "d": "56,-93v2,-30,37,-22,40,2v0,2,-1,7,-3,15v-13,8,-15,6,-27,4xm64,-44v11,-11,30,-4,32,14v-21,39,-63,71,-92,85v-5,0,-11,-2,-18,-8v11,-23,36,-36,50,-61v11,-7,19,-20,28,-30", + "w": 107 + }, + "<": { + "d": "166,-202v12,0,29,15,24,29v0,4,-119,64,-120,73v15,21,89,64,91,86v2,29,-18,12,-30,15v-27,-29,-59,-54,-95,-75v-18,-10,-25,-13,-24,-41", + "w": 176 + }, + "=": { + "d": "125,-121v18,7,55,-9,69,14v0,17,-45,26,-135,26v-18,0,-27,-7,-27,-21v-1,-37,60,-5,93,-19xm138,-71v20,0,48,-1,50,16v-13,24,-86,32,-131,29v-29,-2,-43,-10,-43,-24v-7,-23,36,-14,39,-17v27,6,57,-4,85,-4", + "w": 196 + }, + ">": { + "d": "4,-14v20,-48,77,-59,118,-94v-16,-19,-58,-52,-81,-75v-11,-7,-15,-38,-1,-40v33,16,83,71,121,105v26,23,-6,35,-41,53v-29,16,-56,28,-73,54v-21,15,-16,20,-34,15v-3,0,-9,-16,-9,-18", + "w": 174 + }, + "?": { + "d": "105,-291v57,-13,107,-4,107,39v0,67,-136,85,-155,137v-1,6,10,23,-4,23v-23,1,-33,-35,-23,-57v31,-41,124,-60,149,-103v-8,-21,-72,-5,-88,-1v-23,6,-59,39,-71,8v0,0,-1,0,1,-17v10,-4,45,-20,84,-29xm80,-25v-6,4,-8,39,-24,22v-24,3,-22,-21,-13,-35v17,-7,29,5,37,13", + "w": 216 + }, + "@": { + "d": "218,-207v23,8,42,14,47,37v44,68,-27,137,-87,85r1,0v0,2,-59,19,-61,17v-35,0,-42,-47,-17,-68r0,-4v-19,-1,-45,37,-49,40v-37,76,58,72,121,62v11,-2,34,-13,36,3v-14,31,-69,31,-114,33v-51,2,-99,-41,-80,-92v2,-30,22,-40,42,-63v35,-20,91,-53,161,-50xm217,-101v23,0,35,-19,35,-41v0,-43,-75,-41,-102,-19v36,3,55,16,62,41v-6,5,-6,19,5,19xm127,-110v8,5,51,-15,28,-16v-4,0,-25,4,-28,16", + "w": 291 + }, + "A": { + "d": "97,-81v-23,-10,-39,38,-52,60v-8,6,-8,6,-22,18v-22,-7,-23,-37,-4,-49v7,-8,11,-15,15,-23r-1,1v-14,-26,23,-29,31,-40v1,-1,15,-29,26,-36v17,-31,39,-58,54,-92v16,-20,20,-51,41,-66v29,5,34,62,45,92v9,64,21,103,49,155v-3,25,-44,11,-54,0v-34,-12,-97,-29,-128,-20xm107,-118v20,6,80,10,111,17v6,-7,-4,-15,-7,-24v-11,-28,-9,-92,-30,-117v-9,9,-19,44,-34,55v-9,23,-27,40,-40,69", + "w": 294 + }, + "B": { + "d": "256,-179v41,10,115,34,91,91v-6,3,-14,12,-19,20v-37,19,-50,34,-63,25v-9,10,-12,11,-34,13r3,-3v-4,-4,-12,-4,-18,0v0,0,2,2,5,4v-21,14,-26,6,-44,15v-4,0,-7,-2,-8,-5v-6,11,-20,-5,-18,11v-36,4,-91,35,-114,4v-7,-62,-10,-138,4,-199v-1,-19,-37,2,-37,-27v0,-8,2,-13,6,-15v68,-31,231,-92,311,-39v8,12,12,20,12,25v-8,42,-32,49,-77,80xm79,-160v72,-17,135,-39,184,-70v20,-13,31,-23,31,-27v1,-6,-30,-13,-38,-12v-54,0,-116,13,-186,41v11,21,1,48,9,68xm262,-43v0,-4,3,-6,-4,-5v0,1,1,2,4,5xm211,-140v-34,7,-94,24,-139,15v-6,20,-4,56,-4,82v0,29,43,1,56,2v48,-11,108,-25,154,-48v20,-10,32,-17,32,-25v0,-18,-33,-26,-99,-26xm195,-20v6,1,6,-2,5,-7v-3,2,-7,2,-5,7", + "w": 364 + }, + "C": { + "d": "51,-114v-12,75,96,76,166,71r145,-10v9,2,9,5,9,18v-37,18,-85,28,-109,22v-18,10,-47,10,-71,10v-29,0,-68,1,-105,-11v-6,-1,-10,-3,-10,-8v-33,-13,-48,-33,-66,-59v-19,-114,146,-150,224,-177v35,0,88,-31,99,7v-1,29,-49,14,-76,28v-55,8,-115,35,-175,71v-13,8,-23,21,-31,38", + "w": 376 + }, + "D": { + "d": "312,-78v-2,1,-3,7,-10,5v6,-3,10,-4,10,-5xm4,-252v2,-27,83,-38,106,-39v130,-7,267,1,291,109v0,0,-2,8,-3,25v-5,9,-4,28,-23,34v-4,4,-2,5,-7,0v-3,3,-15,7,-5,10v0,0,-10,14,-13,2v-11,1,-8,5,-20,14v1,2,7,3,9,1v-4,13,-22,13,-11,4v0,-3,1,-6,-3,-5v-40,29,-103,38,-141,65v10,6,22,-7,34,-3v-41,20,-127,44,-171,46v-21,1,-47,-33,-11,-39v15,-2,43,-6,56,-11v-16,-101,-5,-130,9,-207v2,0,4,-1,6,-3v-16,-17,-91,38,-103,-3xm297,-69v-7,3,-17,8,-25,7v1,1,3,2,5,2v-4,2,-11,5,-23,9v4,-11,30,-21,43,-18xm240,-51v10,0,12,2,0,6r0,-6xm220,-36v-1,-3,4,-6,6,-3v0,1,-2,1,-6,3xm125,-48v16,6,137,-46,155,-53v29,-18,101,-44,82,-93v-21,-53,-84,-61,-168,-67v-20,7,-50,3,-77,8v33,54,-12,132,8,205xm159,-22v-4,-1,-15,-5,-15,2v7,-1,12,-2,15,-2", + "w": 381 + }, + "E": { + "d": "45,-219v-19,-36,34,-41,63,-36v44,-10,133,-8,194,-15v3,2,38,11,52,15v-73,19,-171,21,-246,38v-9,11,-16,32,-20,61v35,11,133,-6,183,3v1,6,2,7,3,14v-46,24,-118,16,-193,27v-15,13,-22,52,-22,66v60,1,121,-20,188,-20v22,10,53,-7,74,5v16,29,-23,26,-43,32v-73,4,-139,13,-216,27r-52,-10v-4,-22,23,-69,26,-98v-3,0,-10,-15,-12,-24v20,-12,34,-23,35,-67v2,-1,5,-5,5,-7v0,-4,-14,-11,-19,-11", + "w": 353 + }, + "F": { + "d": "270,-258v13,2,59,6,48,34v-78,-3,-143,1,-212,22v-10,16,-21,43,-24,69r145,-9v8,3,29,-3,16,21v-14,-1,-59,13,-60,7v-12,13,-67,18,-108,21v-2,1,-4,3,-7,6v-2,23,-8,43,-7,69v1,28,-30,11,-40,5r10,-80r-26,-14v5,-10,10,-33,28,-25v21,-3,15,-46,26,-59v-1,-3,-32,-13,-28,-24v2,-22,45,-16,59,-30v47,4,99,-14,151,-9v5,-3,25,-3,29,-4", + "w": 236 + }, + "G": { + "d": "311,-168v53,0,94,57,74,110v-31,37,-71,34,-136,52v-13,-7,-41,10,-57,7v-73,-1,-122,-17,-162,-59v-49,-51,-24,-80,5,-130v35,-61,138,-93,214,-106v16,4,42,-1,40,21v-5,40,-39,2,-73,21v-76,19,-162,65,-177,142v28,103,237,76,312,29v2,-3,3,-7,3,-13v-10,-35,-37,-43,-87,-45v-16,-13,-53,-9,-78,1v-4,-3,-5,-7,-5,-11v17,-29,73,-17,108,-24v12,4,18,5,19,5", + "w": 391 + }, + "H": { + "d": "300,-268v18,12,19,32,4,51v-35,44,-34,140,-46,217v-1,5,-5,13,-11,12v-6,1,-19,-14,-18,-27r7,-106v-28,7,-76,22,-116,14v-18,2,-36,6,-55,3v-43,-8,-14,53,-33,75v-29,1,-26,-67,-21,-97v5,-31,28,-73,43,-98v2,2,7,3,14,3v13,33,-11,48,-13,78v61,4,118,2,176,2v8,0,13,-6,15,-20v4,-47,21,-87,54,-107", + "w": 288 + }, + "I": { + "d": "63,-266v34,10,-4,105,-8,128r-24,126v-2,2,-3,1,-9,6v-12,-10,-12,-15,-12,-47v0,-93,9,-156,28,-188v10,-17,19,-25,25,-25", + "w": 79 + }, + "J": { + "d": "235,-291v26,11,31,104,31,142v0,37,-2,95,-32,126v-33,34,-121,26,-167,1v-18,-11,-54,-29,-59,-59v0,-3,5,-15,16,-14v31,36,90,57,162,51v63,-30,56,-148,32,-226v-1,-16,11,-13,17,-21", + "w": 282 + }, + "K": { + "d": "212,-219v17,-5,80,-60,80,-19v0,9,-2,14,-5,16r-132,78v-34,23,-54,32,-21,50v39,21,74,23,124,41v5,2,7,5,7,9v-4,24,-55,15,-79,8v-67,-19,-98,-36,-116,-83v9,-24,38,-35,66,-61v7,-4,49,-30,76,-39xm47,-194v11,-20,11,-45,31,-55v2,2,4,3,6,0v29,39,-21,96,-18,128v-17,24,-15,62,-29,113v-4,3,-10,7,-19,11v-12,-13,-10,-28,-8,-53v3,-31,17,-79,37,-144", + "w": 270 + }, + "L": { + "d": "84,-43v58,0,179,-27,242,-4v3,17,-29,24,-40,26v-85,-4,-202,46,-268,3v-24,-16,-2,-33,-4,-57v26,-76,38,-108,86,-191v14,-7,26,-50,45,-32v6,22,5,31,-12,46v-20,39,-50,82,-67,142v-7,6,-19,46,-19,54v0,9,12,13,37,13", + "w": 331 + }, + "M": { + "d": "174,-236v-1,52,-11,92,-7,143v10,5,15,-12,22,-18v42,-55,90,-130,136,-174r15,-18v42,2,32,53,11,80v-12,58,-54,143,-34,210v0,3,-3,12,-9,10v-31,-5,-32,-57,-27,-92v4,-27,12,-58,25,-93v-5,-10,5,-19,6,-30v-46,44,-66,110,-129,172v-11,10,-18,15,-22,15v-34,6,-28,-103,-28,-152v-28,22,-65,119,-96,170v-9,15,-34,3,-31,-19v30,-64,91,-177,139,-229v12,-1,29,13,29,25", + "w": 343 + }, + "N": { + "d": "248,-20v-3,17,-37,18,-43,3v-24,-35,-53,-145,-80,-203v-32,40,-55,120,-92,174v-13,3,-26,-13,-27,-22r87,-171v4,-13,20,-57,42,-32v42,48,46,139,82,198v29,-45,46,-88,65,-153v12,-19,23,-42,38,-60v27,-1,14,18,4,44v-6,46,-32,68,-37,121v-15,29,-33,69,-39,101", + "w": 307 + }, + "O": { + "d": "240,-268v85,1,163,29,150,125v13,7,-12,18,-5,26v-23,63,-133,112,-228,124v-80,-16,-171,-56,-148,-153v11,-47,20,-43,53,-83v17,-9,39,-22,73,-29v45,-10,81,-10,105,-10xm363,-156v16,-51,-62,-85,-111,-79v-25,-11,-50,8,-81,0v-15,10,-70,16,-85,31v6,20,-27,24,-39,45v-42,75,40,128,115,128v56,0,209,-71,201,-125", + "w": 383 + }, + "P": { + "d": "70,-225v-7,-12,-36,16,-49,19v-4,0,-9,-5,-14,-17v21,-47,114,-55,172,-59v41,-3,132,33,99,87v-21,34,-72,59,-144,80v-2,16,-79,3,-74,46v3,25,-5,47,-10,68v-22,-1,-23,-29,-22,-56v2,-25,-20,-32,-8,-50v21,-5,10,-35,25,-57v6,-28,14,-48,25,-61xm71,-229v47,14,-2,50,-1,99v41,-3,113,-37,173,-76v5,-9,8,-14,8,-15v-28,-47,-125,-29,-180,-8", + "w": 252 + }, + "Q": { + "d": "374,-217v20,59,-11,127,-48,156r30,38v-1,6,-8,16,-14,9v-3,0,-19,-9,-47,-26v-72,35,-173,75,-236,12v-70,-40,-67,-213,26,-217r8,5v24,-20,72,-48,112,-38v21,-4,22,-1,50,-2v66,-2,94,20,119,63xm296,-88v13,5,61,-49,63,-84v4,-62,-54,-78,-119,-76v-14,-6,-49,5,-71,3v-42,16,-89,41,-93,94v-9,11,1,25,-7,38v-12,-19,-7,-67,-1,-88v-56,30,-37,137,19,155v27,17,92,19,119,0v12,-2,29,-9,52,-20v2,-2,3,-3,3,-6v-11,-12,-46,-27,-54,-56v0,-13,3,-19,9,-19v18,1,60,52,80,59", + "w": 379 + }, + "R": { + "d": "100,-275v96,-23,196,-10,208,78v-3,18,-17,52,-49,62v-14,20,-54,23,-79,40v-2,0,-14,2,-36,6v-40,8,-30,14,-3,33v37,27,52,30,118,55v16,6,31,23,12,27v-58,-2,-104,-29,-143,-61v-14,-3,-16,-15,-39,-27v-23,-19,-28,-12,-15,-38v63,-19,111,-15,163,-53v27,-20,43,-36,43,-49v0,-64,-120,-62,-173,-38v-9,4,-38,9,-40,18v-10,32,-16,70,-13,116v-10,21,-8,47,-6,75v2,31,-9,29,-27,22v-9,-55,5,-140,15,-190v-8,-6,-24,10,-24,-11v0,-34,16,-34,42,-55v2,-1,17,-4,46,-10", + "w": 297 + }, + "S": { + "d": "13,-3v-7,-3,-22,-18,-5,-22v68,-15,119,-32,154,-45v51,-19,39,-34,3,-53v-46,-25,-82,-30,-121,-64v-33,-29,-50,-35,-25,-58v37,-20,119,-29,181,-29v29,0,44,6,44,18v-9,26,-62,6,-104,14v-17,2,-72,6,-92,16v37,53,132,58,180,111v8,9,11,20,11,30v-4,17,-23,35,-42,34v-21,16,-17,1,-49,17v-14,7,-41,9,-56,20v-25,-3,-49,10,-79,11", + "w": 234 + }, + "T": { + "d": "141,-3v-36,-6,1,-49,-3,-79v10,-19,6,-35,15,-64r26,-85v-51,-9,-100,10,-141,14v-16,2,-30,-26,-11,-32v26,-8,143,-8,179,-19r12,6v67,-2,142,-1,200,-1v8,0,14,3,19,10v-18,16,-74,3,-103,14v-48,-4,-60,4,-113,7v-42,22,-36,130,-58,187v1,12,-9,44,-22,42", + "w": 277 + }, + "U": { + "d": "365,-262v13,56,-22,104,-36,141v-19,22,-30,38,-57,56v-4,18,-60,35,-78,50v-53,28,-142,0,-161,-34v-31,-56,-37,-108,-11,-164v17,-33,29,-50,48,-29v-2,2,-3,7,-4,13v-44,36,-38,149,7,174v30,26,55,19,102,4v56,-17,66,-34,120,-76v12,-24,56,-68,46,-122r0,-16v0,1,-1,3,-1,6v4,-13,11,-10,25,-3", + "w": 368 + }, + "V": { + "d": "246,-258v21,-22,31,-26,44,-8v1,1,-12,22,-28,35v-15,25,-41,38,-56,69v-13,15,-20,31,-28,57v-15,13,-11,29,-27,72v3,21,-5,24,-27,27v-33,-45,-54,-118,-84,-167v-5,-26,-18,-50,-25,-76v-3,-12,24,-8,29,-5v8,13,18,52,26,70r52,115v9,-2,4,-9,10,-21r25,-47v25,-44,46,-76,89,-121", + "w": 234 + }, + "W": { + "d": "31,-213v16,46,17,106,41,151v31,-35,49,-89,76,-127v30,-15,39,27,52,56v10,22,21,48,35,67v2,0,4,-1,5,-3v16,-28,50,-76,79,-121v14,-21,40,-63,64,-83r5,8v-30,58,-76,110,-97,173v-18,28,-25,37,-33,63v-11,1,-16,25,-30,15v-21,-31,-44,-89,-62,-131v0,-2,-1,-3,-5,-5v-17,11,-16,36,-31,50v-20,33,-20,84,-68,94v-24,-19,-23,-81,-39,-111v-1,-15,-29,-94,-10,-108v9,2,12,5,18,12", + "w": 331 + }, + "X": { + "d": "143,-183v43,-25,69,-36,126,-62v22,-10,86,-10,56,21v-51,3,-158,61,-154,64v10,15,41,30,50,52v27,17,46,60,70,82v9,14,-6,30,-24,20v-35,-43,-75,-100,-116,-132v-48,13,-100,47,-118,94v-1,49,-26,34,-27,4v-1,-26,13,-27,17,-48v22,-27,68,-55,90,-77v-9,-12,-60,-39,-79,-57v-6,-10,-6,-25,12,-25", + "w": 312 + }, + "Y": { + "d": "216,-240v19,-14,42,10,22,26v-54,66,-121,109,-156,197v-8,21,-11,15,-30,4v3,-37,27,-61,33,-76v12,-12,15,-19,32,-42v-8,-6,-40,5,-45,5v-48,-6,-69,-65,-56,-113v14,0,13,-1,24,7v2,33,12,75,42,73v36,-2,102,-57,134,-81", + "w": 189 + }, + "Z": { + "d": "60,-255v66,12,200,-34,240,21v-13,42,-63,62,-98,89v-19,15,-47,33,-82,55v-25,16,-47,32,-66,47v58,24,129,-6,208,-6v23,0,36,12,13,19v-33,2,-53,5,-86,10v-32,18,-88,15,-135,15v-9,-1,-55,-1,-48,-29v1,-24,30,-24,40,-41v64,-50,151,-86,208,-147v-38,-17,-155,12,-198,-4v0,0,-11,-33,4,-29", + "w": 310 + }, + "[": { + "d": "72,-258r-15,250v30,4,55,-3,80,-6v7,-1,8,17,9,23v-28,15,-73,23,-121,21v-7,0,-10,-6,-10,-17v0,-60,25,-193,22,-288v0,-16,13,-20,33,-19v9,-3,34,-12,51,-12v16,0,15,16,19,29v-16,7,-48,10,-68,19", + "w": 151 + }, + "\\": { + "d": "236,38v20,-18,-8,-74,-13,-90v-44,-78,-112,-190,-200,-253v-2,0,-5,4,-7,12v-11,31,13,36,24,58v74,61,174,219,180,273r16,0", + "w": 257 + }, + "]": { + "d": "133,-258v-23,-13,-84,6,-85,-32v0,-10,5,-15,14,-15v0,0,30,2,90,7v10,1,15,13,15,36v2,7,-8,59,-13,112r-11,125v-9,48,9,90,-59,71v-20,-4,-39,-1,-59,-4v-5,-10,-25,-12,-14,-30v8,-3,61,-13,78,-8v14,1,8,-7,10,-17v15,-69,21,-166,34,-245", + "w": 171 + }, + "^": { + "d": "68,-306v20,15,47,36,58,60v-1,4,0,7,-9,7v-26,0,-47,-38,-49,-32v-15,9,-41,50,-54,30v-2,-31,17,-23,33,-51v8,-9,15,-14,21,-14", + "w": 135 + }, + "_": { + "d": "11,15v-8,33,18,45,50,34r205,2r197,-5v11,-5,14,-9,7,-28v-95,-21,-258,-10,-376,-10v-25,0,-72,-3,-83,7", + "w": 485 + }, + "`": { + "d": "75,-264v16,8,56,14,39,43v-30,-8,-65,-23,-105,-44v-1,-3,-3,-28,5,-25v16,5,44,17,61,26", + "w": 129 + }, + "a": { + "d": "124,-56v10,4,59,41,65,50v1,7,-6,17,-12,17r-60,-30v-22,2,-42,21,-65,19v-33,4,-68,-67,-15,-81v41,-27,96,-39,110,9v0,6,-4,12,-11,16v-33,-25,-67,-5,-88,12v10,16,61,-18,76,-12", + "w": 196 + }, + "b": { + "d": "80,-140v69,1,123,0,134,52v5,26,-71,71,-97,70v-11,11,-88,22,-94,22v-11,-3,-26,-18,-6,-24v19,-5,-2,-19,-1,-35v1,-18,11,-36,-5,-47v-6,-17,-6,-21,14,-32v6,-45,18,-89,28,-124v2,-7,8,-12,17,-15v5,3,10,11,16,28v-12,27,-13,63,-23,96v0,6,6,9,17,9xm87,-107v-40,-9,-31,31,-39,54v8,15,0,25,12,22v30,-8,60,-18,88,-32v39,-18,49,-33,-1,-42v-20,-4,-45,-7,-60,-2", + "w": 217 + }, + "c": { + "d": "128,-123v29,-7,37,29,12,33v-27,-4,-40,6,-79,25v-8,4,-13,11,-16,22v30,32,91,3,134,11v5,13,-8,26,-22,19v-51,25,-139,28,-150,-30v6,-50,69,-82,121,-80", + "w": 194 + }, + "d": { + "d": "224,-201v0,-35,-17,-111,24,-94v7,86,-2,119,0,197v-4,2,-8,21,-18,16v-62,-7,-154,-8,-185,29v6,17,28,26,51,26v16,0,100,-15,132,-18v7,5,-6,20,-10,22v-24,8,-122,42,-163,25v-32,-5,-62,-53,-36,-80v35,-37,118,-46,198,-43v1,-22,7,-49,7,-80", + "w": 265 + }, + "e": { + "d": "4,-57v0,-58,51,-71,110,-74v33,-1,45,16,59,35v1,14,2,39,-7,42v-24,-2,-73,13,-99,11v-2,2,-2,3,-2,3v0,3,12,8,37,15v21,0,69,9,31,22v-9,14,-34,6,-56,6v-27,-5,-73,-28,-73,-60xm123,-102v-22,2,-68,5,-65,26v24,-2,66,5,79,-6v-5,-13,-1,-13,-14,-20", + "w": 182 + }, + "f": { + "d": "6,-59v6,-29,53,-4,53,-43v0,-64,29,-118,84,-150v45,-25,167,-24,155,51v-1,2,-7,6,0,6r-10,2v-45,-58,-165,-39,-186,39v-7,26,-11,42,-9,62v44,8,95,-21,135,-7v-12,25,-39,21,-76,30v-19,5,-18,7,-54,19v-2,8,15,32,17,35v-6,25,-26,26,-40,-5r-15,-24v-41,10,-44,12,-54,-15", + "w": 234 + }, + "g": { + "d": "132,-97v30,27,21,75,30,117v-12,31,-11,66,-36,103v-32,46,-105,83,-167,39v-31,-21,-49,-29,-51,-75v-2,-37,77,-50,121,-57v37,-6,68,-10,95,-11v7,-6,3,-32,4,-46v0,0,-1,1,-1,2v0,-18,-5,-31,-14,-45v-44,5,-79,20,-94,-18v3,-54,73,-54,125,-50v12,7,12,13,4,25v-30,-11,-76,8,-90,20v23,3,50,-16,74,-4xm-34,121v60,53,168,1,159,-86v-47,-7,-93,24,-142,30v-12,7,-45,19,-42,29v0,10,8,19,25,27", + "w": 188 + }, + "h": { + "d": "100,-310v11,-2,10,19,11,20v-11,52,-40,133,-53,189v-6,30,-9,37,-9,47v27,0,113,-34,143,-34v42,0,31,47,39,79v0,4,-5,17,-16,16v4,2,11,3,4,6v-24,-1,-28,-34,-25,-64v-1,-1,-2,-3,-5,-5v-51,0,-110,38,-162,51v-9,1,-15,-15,-16,-23v17,-89,39,-141,71,-264v0,-9,6,-19,18,-18", + "w": 251 + }, + "i": { + "d": "62,-209v7,18,9,23,-5,38v-23,-6,-21,-18,-11,-36v2,0,8,-1,16,-2xm34,-7v-18,-21,-8,-73,-1,-106v7,-10,20,-8,23,6v-1,36,7,72,-2,104v-8,2,-8,0,-20,-4", + "w": 80 + }, + "j": { + "d": "88,-191v5,28,-18,40,-28,21v0,-20,12,-29,28,-21xm82,-99v28,-1,16,35,16,61v0,60,-19,150,-35,202v-12,8,-19,31,-35,16v-32,-7,-43,-19,-56,-44r2,-17v11,4,49,45,61,18v10,-55,27,-107,30,-171v0,-16,0,-59,17,-65", + "w": 120 + }, + "k": { + "d": "59,-66v33,26,114,37,155,62v8,-4,22,-2,19,-17v0,-4,-12,-11,-30,-24v-36,-25,-54,-22,-99,-33v14,-21,119,-13,103,-63r-16,-7r-123,47r25,-93v-3,-15,16,-49,18,-81v1,-15,-21,-14,-25,-3v-31,82,-49,168,-75,257v2,2,22,30,27,10v2,-5,4,-9,9,-11v4,-16,4,-15,12,-44", + "w": 236 + }, + "l": { + "d": "66,-300v21,-6,37,23,30,55v-10,51,-28,135,-28,208v0,11,6,36,-13,37v-29,-5,-30,-48,-25,-83r28,-177v-6,-17,1,-29,8,-40", + "w": 102 + }, + "m": { + "d": "348,-59v-2,21,0,57,3,73v-17,3,-30,-1,-32,-16v-8,-7,-5,-44,-13,-70v-35,3,-82,49,-111,70v-12,8,-40,4,-39,-15r2,-56v-1,-13,4,-28,-8,-29v-35,8,-79,72,-115,87v-6,2,-20,-18,-21,-22v1,-20,14,-105,39,-64r8,15v17,-14,72,-56,93,-54v27,3,49,40,43,80v24,-2,66,-55,124,-53v11,14,28,23,27,54", + "w": 368 + }, + "n": { + "d": "121,-136v37,6,62,54,62,111v0,32,-16,25,-31,17v-18,-30,-5,-45,-22,-85v-37,-13,-71,55,-92,65v-20,-3,-39,-39,-21,-62v2,-12,3,-15,11,-30v12,-8,20,11,29,12", + "w": 194 + }, + "o": { + "d": "108,-139v52,-24,104,18,104,63v0,59,-66,67,-114,83v-52,-2,-115,-50,-80,-105v23,-18,52,-35,90,-41xm45,-60v16,54,125,16,131,-23v-12,-59,-129,-8,-131,23", + "w": 217 + }, + "p": { + "d": "82,14v-10,12,-8,117,-24,142v-15,2,-19,0,-29,-13v0,-76,9,-113,22,-192v14,-27,35,-6,37,13v0,8,-3,21,-7,38v2,2,3,2,4,2v26,-9,116,-33,126,-72v-7,-17,-24,-33,-49,-31v-40,3,-116,13,-116,47v-5,7,-2,17,-16,20v-17,-12,-18,-20,-12,-38v8,-25,74,-61,110,-59v55,-15,113,15,118,70v-15,52,-84,79,-146,83v-5,0,-11,-4,-18,-10", + "w": 251 + }, + "q": { + "d": "144,-147v27,-8,89,-3,97,31v-9,29,-42,-4,-73,1v-32,6,-118,20,-111,49v0,7,13,13,21,13v21,0,78,-24,104,-34v2,0,9,8,22,21v1,1,1,2,1,5v-27,90,-22,70,-43,203v11,15,-15,54,-33,33v-6,-8,-10,-20,-3,-28v1,-72,5,-114,15,-172v-35,3,-35,10,-59,8v-41,-4,-98,-41,-56,-85v33,-34,59,-27,118,-45", + "w": 248 + }, + "r": { + "d": "242,-117v2,22,5,10,-14,23v-73,-7,-166,-23,-174,56v-8,6,-3,20,-8,36v-29,10,-40,-9,-33,-46v6,-31,7,-69,32,-55v58,-37,66,-42,175,-19v3,5,15,4,22,5", + "w": 229 + }, + "s": { + "d": "154,-151v19,1,27,24,13,32v-4,1,-22,4,-53,7v-16,8,-22,-2,-39,9v23,21,89,16,96,62v-13,24,-85,35,-124,42v-9,-3,-18,-3,-27,0v-6,-4,-21,-16,-8,-25v30,-6,83,-13,102,-24v-17,-16,-80,-33,-97,-48v-3,-2,-4,-7,-4,-15v-6,-6,3,-13,15,-18v22,-9,94,-23,126,-22", + "w": 188 + }, + "t": { + "d": "85,-150v10,-41,35,-126,65,-134v4,1,24,19,11,36v-17,22,-29,57,-36,104v26,8,50,-7,73,5v14,0,22,3,22,9v-1,19,-44,18,-57,23v-10,1,-46,0,-54,10v-10,24,-4,67,-20,98v-21,-3,-26,1,-26,-20v0,-9,2,-36,8,-81v-15,-13,-81,9,-77,-27v4,-38,71,6,91,-23", + "w": 194 + }, + "u": { + "d": "207,-136v-1,-2,11,-14,14,-13v6,0,10,7,10,22v-3,40,-23,56,-40,82v-13,19,-62,43,-93,43v-67,-2,-111,-75,-71,-133v26,-3,21,29,19,49v-1,27,26,44,57,42v41,-2,93,-55,104,-92", + "w": 242 + }, + "v": { + "d": "24,-127r52,71v42,-16,70,-54,124,-65v5,4,8,7,8,11v-8,19,-4,8,-33,32v0,1,-1,3,-1,5v-61,45,-93,68,-97,68v-40,-15,-50,-72,-68,-100v6,-14,10,-22,15,-22", + "w": 214 + }, + "w": { + "d": "15,-139v38,-2,27,57,45,86v30,2,67,-66,101,-78v26,6,36,69,60,78v47,-35,51,-54,119,-104v3,0,7,-2,15,-4v19,23,-9,28,-21,49v-33,28,-68,90,-107,109v-10,6,-52,-47,-72,-71v-20,17,-85,74,-97,73v-38,7,-41,-98,-52,-122v0,-1,3,-7,9,-16", + "w": 325 + }, + "x": { + "d": "95,-124v22,-13,78,-32,99,-31v16,0,23,6,23,18v0,22,-17,11,-49,21v-3,0,-45,20,-42,24v0,1,2,4,8,10v20,24,49,41,44,80v-35,3,-27,-9,-60,-44v-40,-43,-37,-26,-79,9v-1,1,-2,3,-3,8v-12,8,-28,10,-27,-11v-6,-8,45,-65,48,-65v-17,-21,-61,-52,-24,-68v9,0,48,37,62,49", + "w": 223 + }, + "y": { + "d": "44,-65v22,33,70,4,99,-8v5,-4,28,-15,41,-31r17,0v25,47,-26,70,-40,114v-5,4,-9,8,-10,21v-16,12,-11,33,-27,51v-5,18,-12,43,-23,71v-1,-1,-2,34,-18,29v-12,1,-22,-12,-22,-23v20,-70,24,-65,68,-177v-47,16,-111,8,-116,-39v-11,-13,-7,-62,8,-62v18,0,22,26,23,54", + "w": 216 + }, + "z": { + "d": "189,-43v9,-1,46,-6,41,12v0,7,-5,13,-15,14v-45,6,-148,24,-181,13v0,-3,-5,-8,-14,-15v5,-44,66,-46,90,-85v-15,-18,-84,21,-84,-14v0,-10,5,-17,14,-18v33,-3,79,-13,109,-3v4,-2,14,11,12,15v0,23,-26,51,-78,84v28,10,73,-3,106,-3", + "w": 244 + }, + "{": { + "d": "94,-303v27,-9,90,-14,79,26v-20,17,-55,-5,-87,13v-4,1,-6,4,-6,8v33,42,31,44,7,85v-6,10,-13,16,-13,13v5,6,17,17,15,31r-33,78v7,35,28,49,57,63r49,0v7,42,-51,41,-86,20v-43,-13,-51,-51,-56,-89v-2,-25,25,-54,27,-71v-3,-4,-46,-5,-41,-21v2,-10,-3,-29,11,-25v2,0,51,-17,52,-38v4,-3,-25,-23,-25,-49v0,-41,8,-30,50,-44", + "w": 179 + }, + "|": { + "d": "30,-308v26,5,14,50,15,80v5,78,-8,153,-3,225v-2,15,-1,31,-11,36v-8,-3,-25,-22,-25,-32r9,-183v0,-40,0,-78,1,-112v0,-4,9,-15,14,-14", + "w": 63 + }, + "}": { + "d": "47,-298v34,-17,118,-18,112,36v6,25,-76,98,-69,103v4,16,39,7,44,28v7,34,-34,17,-37,39v8,29,49,83,23,123v-15,23,-43,26,-73,46v-34,8,-43,11,-49,-17v1,-15,30,-15,33,-20v24,-12,70,-27,55,-61v-14,-33,-37,-68,-19,-103v-46,-50,46,-100,60,-141v-10,-16,-68,6,-77,-12", + "w": 143 + }, + "~": { + "d": "7,-254v2,-6,59,-50,67,-46v11,-1,35,19,46,26v5,0,27,-10,66,-31v21,8,-1,25,-7,38v-27,21,-48,31,-65,31v-24,-11,-37,-39,-65,-9v-7,7,-26,36,-42,11v3,-5,-3,-17,0,-20", + "w": 199 + }, + "\u00a0": { + "w": 179 + }, + "\u00a1": { + "d": "86,-197v8,16,-7,41,-24,25v-11,-11,-4,-16,-3,-29v13,0,15,-2,27,4xm46,-107v4,-8,11,-16,23,-7v19,26,-5,57,-6,87v-7,0,-5,18,-9,28v0,14,-17,52,-11,70v-2,7,-15,28,-25,12v-4,-6,-15,-7,-6,-16v2,-39,14,-96,34,-174", + "w": 95 + }, + "\u00a2": { + "d": "105,-188v13,-12,14,-18,26,-15v7,23,7,15,-3,49v6,0,18,14,17,20v-3,5,-12,19,-26,13v-14,1,-14,5,-16,21v10,10,46,-13,38,18v-9,17,-23,16,-54,20v-17,16,-4,55,-29,60v-37,-10,19,-64,-24,-71v-20,-10,-37,-47,-6,-62v23,-20,73,-4,77,-53xm65,-101v4,-9,7,-8,3,-13v-14,4,-22,10,-3,13", + "w": 154 + }, + "\u00a3": { + "d": "153,-170v3,22,62,0,49,39v-18,6,-31,12,-58,9v-12,-1,-17,30,-23,39v19,26,50,56,91,35v9,-2,27,-13,27,4v0,27,-27,39,-58,42v-32,-5,-59,-19,-78,-39v-6,1,-35,44,-57,39v-25,0,-37,-15,-37,-46v0,-41,43,-53,73,-50v4,1,12,-18,12,-21v-7,-15,-49,0,-44,-30v-2,-31,31,-16,60,-19v16,-30,25,-119,93,-113v16,2,75,16,50,44v-4,5,-7,7,-12,8v-18,-12,-32,-18,-41,-18v-35,-1,-38,52,-47,77xm43,-45v4,5,12,-2,11,-9v-1,2,-12,1,-11,9", + "w": 242 + }, + "\u00a4": { + "d": "308,-133r-200,16v-2,1,-6,4,-10,10v70,-2,144,-14,211,-8v3,0,8,4,13,8v-1,4,-3,9,-9,17v-57,11,-164,6,-219,25v26,32,112,25,173,25v9,0,35,2,35,19v0,9,-4,13,-12,14v-115,12,-146,23,-211,-19v-12,-4,-22,-9,-25,-27v-6,-29,-61,3,-43,-49v17,-1,36,7,42,-12v-32,7,-36,-39,-11,-40v29,14,63,-25,73,-30v52,-25,72,-44,142,-44v23,0,21,41,-1,39v-35,-3,-61,9,-102,31v2,2,5,4,8,4v18,-6,101,-9,115,-9v7,0,55,13,31,30", + "w": 312 + }, + "\u20ac": { + "d": "308,-133r-200,16v-2,1,-6,4,-10,10v70,-2,144,-14,211,-8v3,0,8,4,13,8v-1,4,-3,9,-9,17v-57,11,-164,6,-219,25v26,32,112,25,173,25v9,0,35,2,35,19v0,9,-4,13,-12,14v-115,12,-146,23,-211,-19v-12,-4,-22,-9,-25,-27v-6,-29,-61,3,-43,-49v17,-1,36,7,42,-12v-32,7,-36,-39,-11,-40v29,14,63,-25,73,-30v52,-25,72,-44,142,-44v23,0,21,41,-1,39v-35,-3,-61,9,-102,31v2,2,5,4,8,4v18,-6,101,-9,115,-9v7,0,55,13,31,30", + "w": 312 + }, + "\u00a5": { + "d": "31,-248v30,-3,64,64,74,59v37,-22,77,-65,107,-82v20,-11,34,18,21,32v-28,19,-52,38,-70,57v-18,8,-40,21,-35,60v2,19,39,7,64,7v25,0,16,21,2,27v-36,16,-46,8,-68,18v6,11,101,-20,66,24v-21,11,-42,12,-75,20v-2,1,-5,6,-10,18v-8,3,-11,10,-24,8v-7,-17,-2,-18,-9,-26v-13,5,-39,3,-53,-2v-10,-17,-7,-27,0,-34v23,-1,45,1,64,-5v-11,-7,-28,-4,-64,-6v-13,-8,-15,-24,-6,-35v33,-2,102,9,76,-37v-14,-14,-33,-38,-60,-66v-10,-10,-8,-28,0,-37", + "w": 219 + }, + "\u00a7": { + "d": "141,-115v12,10,29,36,28,56v-4,68,-129,69,-152,16v-1,-12,-10,-22,8,-23v17,3,47,21,67,23v16,1,40,-8,38,-21v-8,-49,-119,-30,-117,-85v1,-28,15,-45,-3,-64v-1,-53,55,-61,103,-62v15,-5,6,-5,20,-2v16,17,23,27,23,30v-1,26,-29,7,-45,7v-21,0,-51,2,-62,17v19,14,87,8,97,43v18,14,16,57,-5,65xm64,-147r57,17v10,-28,-22,-43,-47,-44v-25,-1,-35,19,-10,27", + "w": 174 + }, + "\u00a8": { + "d": "124,-259v0,9,-4,13,-12,13v-18,0,-22,-21,-17,-35v19,-1,30,1,29,22xm23,-285v7,2,30,9,29,18v1,10,-9,19,-18,19v-19,0,-28,-26,-11,-37", + "w": 136 + }, + "\u00a9": { + "d": "102,-29v-74,5,-124,-84,-70,-140v22,-22,53,-35,97,-38v46,-4,88,49,74,100v0,44,-51,75,-101,78xm96,-66v42,-3,75,-23,75,-69v0,-23,-4,-38,-44,-38v-16,0,-33,6,-49,20v36,-4,55,-12,62,20v-5,16,-49,1,-50,21v10,15,53,-14,54,11v0,18,-14,27,-42,27v-22,1,-46,-11,-46,-31v0,-25,7,-39,20,-44v-1,-1,-2,-2,-3,-2v-51,22,-32,89,23,85", + "w": 217 + }, + "\u00aa": { + "d": "6,-265v1,-31,58,-53,80,-22v-11,14,25,28,25,36v-2,8,-15,12,-27,10v-22,-29,-68,19,-78,-24xm52,-281v-8,1,-24,10,-9,13v11,1,24,-10,9,-13", + "w": 117 + }, + "\u00ab": { + "d": "191,-64v16,6,87,37,53,63v-39,-9,-71,-28,-107,-40v-14,-13,-13,-34,10,-47v27,-15,48,-55,84,-62v9,-2,21,10,21,18r-13,21v-16,5,-44,22,-51,41v0,4,1,6,3,6xm71,-65v17,6,87,35,55,62v-39,-8,-66,-27,-108,-40v-14,-13,-13,-36,10,-46v23,-18,50,-56,84,-63v9,-2,21,10,21,18r-13,22v-20,6,-32,17,-51,37v0,3,-1,11,2,10", + "w": 265 + }, + "\u00ac": { + "d": "141,-99v47,7,103,-3,149,6v14,24,18,15,10,39v-10,34,-7,31,-26,76v-4,6,-15,8,-16,21v-4,2,-4,1,-13,5v-22,-33,-4,-33,16,-104v-5,-9,-28,-4,-38,-6r-183,4v-14,0,-41,-29,-17,-36v31,-9,82,5,118,-5", + "w": 315 + }, + "\u00ae": { + "d": "75,-194v78,-29,116,9,130,84v-2,42,-22,47,-57,67v-74,20,-161,-19,-129,-110v6,-18,29,-34,57,-40xm46,-86v51,36,84,21,129,-15v7,-15,0,-39,-10,-49v-13,-37,-49,-26,-86,-18v-28,7,-49,46,-33,82xm72,-123v-5,-43,68,-57,75,-14v-17,26,-18,17,3,32v2,25,-25,18,-45,7r-4,-4v-1,8,-3,20,-12,24v-10,-3,-21,-34,-17,-45xm112,-135v-10,-1,-20,13,-9,14v6,-6,9,-11,9,-14", + "w": 217 + }, + "\u00af": { + "d": "63,-295v28,-7,73,10,105,7v11,1,6,8,5,19v-37,21,-72,11,-136,11v-23,0,-31,-14,-27,-36v12,-15,40,0,53,-1", + "w": 183 + }, + "\u00b0": { + "d": "106,-268v0,36,-35,38,-51,46v-48,5,-60,-58,-25,-78v33,-11,76,-9,76,32xm38,-257v16,7,39,2,38,-17v-13,-9,-28,-1,-32,11v-5,3,-7,0,-6,6", + "w": 114 + }, + "\u00b1": { + "d": "93,-163v-7,46,76,-4,46,47v-14,6,-27,13,-38,8v-24,2,-14,28,-28,44r-14,0v-7,-12,-5,-15,-7,-33v-12,-7,-41,-1,-37,-24v2,-11,23,-17,36,-14r28,-38v4,0,9,4,14,10xm113,-27v-12,18,-58,27,-85,24v-16,2,-22,-23,-13,-36v28,-7,85,-11,98,12", + "w": 151 + }, + "\u00b4": { + "d": "52,-284v29,-11,50,-34,62,-14v3,12,-86,54,-94,56v-14,0,-16,-12,-12,-23v11,-5,25,-11,44,-19", + "w": 120 + }, + "\u00b6": { + "d": "121,-237v21,-9,44,-13,63,-1v-1,7,5,6,7,11r-4,190v-2,33,4,39,-15,40v-16,1,-10,-20,-10,-33r4,-161v0,-17,-1,-34,-16,-25v2,10,1,23,1,35v-9,46,-6,75,-15,156v-3,4,-7,5,-12,5v-17,-10,-3,-89,-10,-115v-43,14,-98,10,-101,-29v-4,-53,59,-63,104,-75v3,1,4,2,4,2xm95,-204v2,9,-30,50,1,50v35,0,23,-13,29,-43v0,-1,-2,-7,-4,-15v-12,-1,-14,2,-26,8", + "w": 206 + }, + "\u00b8": { + "d": "74,16v32,2,49,14,55,36v-3,7,-14,31,-29,33v-28,4,-57,11,-88,14v-19,-6,-13,-31,8,-33v20,-1,59,-5,73,-14v-17,-14,-68,8,-53,-37v9,-10,2,-28,24,-30v8,8,13,17,10,31", + "w": 129 + }, + "\u00ba": { + "d": "13,-273v1,-31,56,-41,83,-18v36,8,14,48,-9,52v-35,6,-64,-5,-74,-34xm81,-269v-7,-7,-20,-11,-29,-6v5,13,13,11,29,6", + "w": 128 + }, + "\u00bb": { + "d": "120,-129v9,-33,48,-10,64,5v9,20,86,52,50,86v-36,11,-66,31,-107,40v-6,-7,-9,-13,-9,-17v-2,-13,50,-46,63,-46v11,-18,-33,-42,-48,-47xm1,-128v10,-33,46,-8,64,6v8,19,86,50,51,85v-40,13,-69,30,-108,40v-6,-7,-8,-12,-8,-16v-2,-14,50,-46,63,-47v7,-13,-9,-20,-19,-30v-10,-9,-20,-15,-30,-17", + "w": 252 + }, + "\u00bf": { + "d": "181,-247v3,1,31,2,29,15v-4,22,-37,27,-41,4v1,-5,7,-20,12,-19xm161,-34v-45,-1,-105,19,-124,51v0,11,18,17,54,17v39,0,82,-13,112,4v-10,35,-58,31,-100,31v-47,0,-80,-10,-99,-31v-10,-56,22,-73,64,-90v8,-3,32,-9,74,-18v21,-15,7,-62,22,-92v-1,-5,-1,-11,4,-12v16,0,24,7,24,22v-8,30,-8,73,-17,111v-3,5,-7,7,-14,7", + "w": 213 + }, + "\u00c0": { + "d": "161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm150,-268v14,10,54,14,37,41v-28,-7,-62,-22,-100,-42v-2,-3,-2,-26,5,-23v16,4,42,17,58,24" + }, + "\u00c1": { + "d": "161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm84,-250v31,-5,83,-53,100,-31v0,5,-11,15,-35,28v-16,5,-51,28,-53,25v-14,1,-16,-11,-12,-22" + }, + "\u00c2": { + "d": "161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm202,-219v-27,-6,-40,-26,-61,-37v-21,7,-39,46,-65,23v-2,-4,-3,-10,-4,-14v19,-4,43,-32,61,-43v27,6,40,22,62,37v12,8,18,17,18,25v0,6,-3,9,-11,9" + }, + "\u00c3": { + "d": "161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm100,-285v26,-19,54,19,69,22v4,0,15,-5,34,-13v23,-9,22,-17,31,-12v3,11,-9,9,-7,21v-26,20,-46,30,-59,30v-3,3,-50,-26,-49,-29v-12,1,-31,35,-51,32v-3,-8,-5,-14,-5,-18v10,-9,16,-17,37,-33" + }, + "\u00c4": { + "d": "161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm187,-259v0,8,-4,13,-12,13v-18,0,-21,-20,-16,-34v18,-1,28,2,28,21xm90,-284v7,3,28,11,28,18v0,9,-9,18,-18,17v-17,0,-25,-24,-10,-35" + }, + "\u00c5": { + "d": "161,-217v20,53,23,124,54,170v-2,20,-34,9,-42,0v-27,-12,-78,-18,-101,-18v-26,6,-29,51,-54,63v-18,-4,-19,-30,-3,-38v5,-9,15,-16,8,-29v1,-12,23,-9,26,-19v6,-10,11,-20,20,-27r70,-121v12,-4,16,4,22,19xm82,-91v17,3,62,7,86,13v-13,-33,-13,-80,-29,-109v-15,30,-38,63,-57,96xm112,-239v-31,-17,-9,-61,29,-56v12,2,22,3,33,12v24,39,-30,62,-62,44xm119,-262v2,14,41,8,41,-4v0,-4,-8,-6,-24,-9v-10,-2,-17,10,-17,13" + }, + "\u00c6": { + "d": "335,-259v0,30,-102,12,-122,34v10,21,2,79,16,100v24,-6,59,-13,86,-16v23,-2,32,21,13,26r-103,29v-3,22,-4,38,8,43v28,-5,60,-6,86,-14v5,-1,14,7,14,11v6,16,-90,40,-107,40v-29,0,-39,-19,-32,-46v-2,-4,0,-26,-9,-28v-29,2,-58,6,-88,6v-31,0,-40,74,-82,73v-18,-23,4,-37,12,-50v40,-65,112,-126,165,-207v20,-17,69,-11,112,-13v21,0,31,4,31,12xm123,-111v28,1,44,-2,67,-10v-4,-22,5,-49,-7,-65v-3,6,-65,61,-60,75", + "w": 348 + }, + "\u00c7": { + "d": "48,-108v-12,70,90,71,159,67r138,-9v9,-1,7,9,7,17v-37,16,-80,27,-103,21v-14,9,-40,3,-67,9v-30,0,-64,1,-100,-10v-6,-1,-10,-4,-10,-8v-32,-12,-46,-31,-63,-56v-16,-61,47,-103,83,-121v82,-42,118,-45,200,-60v21,-4,36,34,11,37v-90,11,-148,31,-225,77v-12,8,-23,20,-30,36xm172,18v29,4,47,14,53,35v-2,7,-14,31,-27,31v-28,7,-55,9,-84,14v-18,-5,-13,-32,7,-32v21,0,55,-5,69,-13v-16,-14,-63,10,-50,-35v9,-10,1,-27,23,-29v7,8,11,16,9,29", + "w": 331 + }, + "\u00c8": { + "d": "49,-160v1,-4,-10,-9,-15,-8v-15,-35,32,-30,57,-31r142,-8v2,1,30,7,40,10v-52,16,-133,17,-190,30v-7,9,-12,24,-15,47v26,10,102,-6,141,3v1,3,1,6,2,10v-36,18,-92,12,-149,21v-11,9,-16,41,-16,51v55,-1,111,-21,168,-13v15,-8,48,1,31,18v-53,16,-130,13,-198,29r-39,-8v-4,-19,17,-53,20,-76v-1,0,-7,-11,-9,-18v18,-7,22,-28,30,-57xm184,-236v6,9,5,13,0,23v-28,-7,-62,-21,-100,-41v-3,-2,-3,-27,5,-23v34,11,60,25,95,41", + "w": 252 + }, + "\u00c9": { + "d": "49,-160v1,-4,-10,-9,-15,-8v-15,-35,32,-30,57,-31r142,-8v2,1,30,7,40,10v-52,16,-133,17,-190,30v-7,9,-12,24,-15,47v26,10,102,-6,141,3v1,3,1,6,2,10v-36,18,-92,12,-149,21v-11,9,-16,41,-16,51v55,-1,111,-21,168,-13v15,-8,48,1,31,18v-53,16,-130,13,-198,29r-39,-8v-4,-19,17,-53,20,-76v-1,0,-7,-11,-9,-18v18,-7,22,-28,30,-57xm133,-248v27,-11,48,-32,59,-14v3,11,-79,52,-88,53v-14,1,-16,-11,-12,-21v10,-4,23,-11,41,-18", + "w": 252 + }, + "\u00ca": { + "d": "49,-160v1,-4,-10,-9,-15,-8v-15,-35,32,-30,57,-31r142,-8v2,1,30,7,40,10v-52,16,-133,17,-190,30v-7,9,-12,24,-15,47v26,10,102,-6,141,3v1,3,1,6,2,10v-36,18,-92,12,-149,21v-11,9,-16,41,-16,51v55,-1,111,-21,168,-13v15,-8,48,1,31,18v-53,16,-130,13,-198,29r-39,-8v-4,-19,17,-53,20,-76v-1,0,-7,-11,-9,-18v18,-7,22,-28,30,-57xm199,-211v-27,-6,-39,-26,-60,-37v-21,7,-40,47,-65,22v-2,-7,-2,-7,-4,-13v18,-5,44,-31,61,-43v27,6,41,22,62,37v12,9,18,17,18,25v0,6,-4,9,-12,9", + "w": 252 + }, + "\u00cb": { + "d": "49,-160v1,-4,-10,-9,-15,-8v-15,-35,32,-30,57,-31r142,-8v2,1,30,7,40,10v-52,16,-133,17,-190,30v-7,9,-12,24,-15,47v26,10,102,-6,141,3v1,3,1,6,2,10v-36,18,-92,12,-149,21v-11,9,-17,41,-17,51v55,0,112,-21,169,-13v15,-8,48,1,31,18v-53,16,-130,13,-198,29r-39,-8v-3,-21,17,-53,20,-76v-1,0,-7,-11,-9,-18v18,-7,22,-28,30,-57xm191,-236v0,8,-4,13,-12,13v-17,0,-19,-19,-16,-34v18,-1,29,1,28,21xm95,-261v7,3,29,9,28,18v0,7,-9,17,-18,17v-18,0,-26,-25,-10,-35", + "w": 252 + }, + "\u00cc": { + "d": "33,-5v-9,-6,-9,-12,-9,-36v0,-71,8,-119,22,-144v8,-13,14,-20,19,-20v27,20,-11,87,-10,120r-15,76v-1,1,-4,2,-7,4xm72,-247v7,6,55,15,36,40v-28,-7,-61,-21,-99,-41v-3,-2,-3,-27,5,-23v18,3,41,17,58,24", + "w": 111 + }, + "\u00cd": { + "d": "26,-5v-9,-6,-9,-12,-9,-36v0,-71,7,-119,21,-144v8,-13,14,-20,19,-20v28,19,-7,89,-10,120v-2,21,-8,47,-14,76v-2,1,-2,0,-7,4xm6,-233v31,-6,83,-53,101,-31v2,11,-80,53,-89,53v-14,1,-14,-11,-12,-22", + "w": 104 + }, + "\u00ce": { + "d": "53,-9v-15,7,-16,-3,-16,-32v0,-71,7,-119,21,-144v8,-13,14,-20,19,-20v28,19,-7,89,-10,120v-2,21,-8,47,-14,76xm137,-209v-27,-6,-40,-26,-61,-37v-8,0,-9,4,-13,10v-11,13,-50,37,-56,0v18,-5,43,-32,61,-43v28,5,40,21,62,36v12,9,18,17,18,25v0,6,-4,9,-11,9", + "w": 144 + }, + "\u00cf": { + "d": "33,-5v-9,-6,-9,-12,-9,-36v0,-71,8,-119,22,-144v8,-13,14,-20,19,-20v27,20,-11,87,-10,120r-15,76v-1,1,-4,2,-7,4xm111,-222v0,8,-4,12,-12,12v-18,0,-19,-19,-16,-33v18,-1,29,1,28,21xm15,-247v8,2,29,9,28,17v0,21,-37,24,-36,1v0,-7,2,-13,8,-18", + "w": 110 + }, + "\u00d1": { + "d": "224,-182v1,-17,15,-24,22,-38v20,0,13,10,3,33v-3,36,-25,52,-28,94v-10,24,-30,55,-29,82r-19,7v-32,-8,-36,-70,-58,-111v-2,-23,-7,-27,-19,-54v-28,36,-41,93,-71,133v-9,5,-20,-9,-20,-17r73,-149v9,-24,31,-5,36,7v19,41,31,98,53,139v22,-35,34,-69,50,-118v2,-3,3,-3,7,-8xm203,-257v22,-8,41,-24,65,-26v3,11,-8,9,-7,21v-26,20,-46,31,-59,31v-2,3,-49,-27,-49,-29v-11,0,-32,31,-46,32v-11,-2,-12,-21,-4,-23v4,-6,28,-30,48,-34v17,-4,43,28,52,28", + "w": 219 + }, + "\u00d2": { + "d": "62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm161,-262v14,10,52,13,37,41v-28,-7,-62,-21,-100,-41v-3,-3,-3,-26,5,-24v16,5,42,17,58,24", + "w": 273 + }, + "\u00d3": { + "d": "62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm142,-250v27,-11,47,-32,59,-14v2,11,-80,53,-89,53v-13,1,-15,-11,-12,-21v10,-5,24,-11,42,-18", + "w": 273 + }, + "\u00d4": { + "d": "62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm157,-282v17,18,52,34,54,63v-24,12,-52,-36,-53,-29r-42,34v-23,-4,-6,-31,5,-34v1,1,27,-37,36,-34", + "w": 273 + }, + "\u00d5": { + "d": "62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm116,-270v26,-19,54,19,69,22v4,0,15,-5,34,-13v23,-10,22,-16,31,-12v3,11,-8,9,-7,21v-45,28,-47,42,-88,16v-29,-19,-12,-20,-43,2v-8,5,-12,18,-23,15v-13,-3,-12,-20,-4,-23v4,-6,14,-15,31,-28", + "w": 273 + }, + "\u00d6": { + "d": "62,-184v78,-31,249,-50,238,74v-6,65,-102,105,-179,115v-77,-7,-152,-71,-101,-149v2,-5,24,-33,42,-40xm279,-120v14,-38,-47,-64,-85,-61v-20,-9,-41,7,-62,0v-11,7,-54,12,-66,24v0,20,-51,35,-38,66v-1,43,50,67,96,67v44,0,162,-55,155,-96xm197,-229v0,8,-4,13,-12,13v-17,0,-19,-19,-16,-34v18,-1,29,1,28,21xm101,-254v7,3,28,9,27,18v1,8,-8,17,-17,17v-18,0,-26,-24,-10,-35", + "w": 273 + }, + "\u00d8": { + "d": "76,-211v41,-13,100,-22,140,-3v26,-19,40,-29,44,-29v10,0,15,7,15,20v0,15,-23,23,-30,35v23,39,29,114,-21,139v-36,19,-102,35,-147,18v-14,-5,-29,29,-46,35v-25,-13,-19,-24,3,-56v-9,-17,-28,-27,-28,-60v0,-38,23,-72,70,-99xm107,-66v55,15,125,-12,123,-70v0,-16,-5,-25,-13,-29r-110,95r0,4xm39,-108v-1,3,17,31,22,27v8,-6,109,-90,123,-106v-15,-11,-43,1,-63,2v-33,10,-80,35,-82,77", + "w": 270 + }, + "\u00d9": { + "d": "281,-202v6,67,-30,121,-71,152v-3,14,-47,26,-60,39v-41,20,-110,1,-125,-26v-24,-44,-28,-84,-8,-127v12,-26,23,-38,37,-22v-2,2,-3,5,-3,10v-34,26,-30,116,5,134v22,32,86,-1,109,-8v38,-28,104,-64,97,-149v2,-10,7,-8,19,-3xm151,-243v14,10,54,14,37,41v-28,-7,-61,-22,-99,-42v-3,-2,-4,-25,4,-23v16,5,42,17,58,24", + "w": 262 + }, + "\u00da": { + "d": "281,-202v6,67,-30,121,-71,152v-3,14,-47,26,-60,39v-41,20,-110,1,-125,-26v-24,-44,-28,-84,-8,-127v12,-26,23,-38,37,-22v-2,2,-3,5,-3,10v-34,26,-30,116,5,134v22,32,86,-1,109,-8v38,-28,104,-64,97,-149v2,-10,7,-8,19,-3xm194,-265v3,-1,11,4,11,6v3,12,-81,52,-89,54v-14,0,-13,-9,-12,-22", + "w": 262 + }, + "\u00db": { + "d": "281,-202v6,67,-30,121,-71,152v-3,14,-47,26,-60,39v-41,20,-110,1,-125,-26v-24,-44,-28,-84,-8,-127v12,-26,23,-38,37,-22v-2,2,-3,5,-3,10v-34,26,-30,116,5,134v22,32,86,-1,109,-8v38,-28,104,-64,97,-149v2,-10,7,-8,19,-3xm150,-266v24,11,58,27,73,46v0,5,-3,6,-10,6v-28,2,-61,-30,-63,-25v-10,0,-57,40,-69,23v3,-10,-8,-15,8,-19v17,-1,34,-29,61,-31", + "w": 262 + }, + "\u00dc": { + "d": "281,-202v6,67,-30,121,-71,152v-3,14,-47,26,-60,39v-41,20,-110,1,-125,-26v-24,-44,-28,-84,-8,-127v12,-26,23,-38,37,-22v-2,2,-3,5,-3,10v-34,26,-29,116,5,134v22,32,86,-1,109,-8v38,-28,104,-64,97,-149v2,-10,7,-8,19,-3xm197,-227v0,8,-4,13,-12,13v-18,0,-21,-20,-16,-34v18,-1,28,2,28,21xm101,-252v7,3,27,10,27,18v0,8,-9,18,-18,17v-18,-1,-24,-25,-9,-35", + "w": 262 + }, + "\u00df": { + "d": "33,10v-29,4,-28,-32,-16,-70v18,-58,17,-137,56,-176v12,-24,46,-58,82,-43v20,8,47,24,47,54v0,30,-62,59,-67,90v33,23,56,33,63,63v-18,21,-22,36,-48,54v-24,17,-27,41,-53,16v-2,-19,7,-35,24,-42v15,-13,26,-22,34,-40v-13,-17,-78,-29,-56,-70v-3,-27,64,-54,66,-86v-8,-25,-41,-4,-52,8v-29,30,-47,83,-51,141v-17,25,-8,71,-29,101" + }, + "\u00e0": { + "d": "118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm99,-137v7,6,56,14,37,40v-28,-7,-62,-21,-100,-41v-2,-3,-2,-26,5,-23v16,4,42,17,58,24", + "w": 173 + }, + "\u00e1": { + "d": "118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm32,-117v24,-3,85,-55,101,-32v3,11,-80,53,-89,53v-13,2,-14,-10,-12,-21", + "w": 173 + }, + "\u00e2": { + "d": "118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm147,-97v-27,-6,-39,-26,-60,-37v-21,7,-38,46,-65,23v-2,-5,-3,-10,-4,-14v18,-4,43,-31,61,-42v28,5,40,21,62,36v12,8,18,17,18,25v0,6,-4,9,-12,9", + "w": 173 + }, + "\u00e3": { + "d": "118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm114,-136v22,-8,41,-24,64,-26v3,11,-7,10,-7,21v-26,20,-45,30,-58,30v-3,3,-49,-26,-49,-28v-10,-1,-32,35,-51,31v-12,-32,8,-29,32,-51v24,-21,54,20,69,23", + "w": 173 + }, + "\u00e4": { + "d": "118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-32,5,-66,-64,-15,-77v39,-26,92,-36,104,9v0,6,-3,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm142,-119v0,8,-4,13,-12,13v-18,0,-21,-20,-16,-34v18,-1,28,2,28,21xm46,-144v7,3,28,9,27,18v1,8,-9,18,-18,17v-18,-1,-25,-25,-9,-35", + "w": 173 + }, + "\u00e5": { + "d": "118,-53v10,4,55,41,62,47v0,7,-5,16,-12,16r-57,-28v-20,3,-40,19,-61,18v-10,2,-43,-17,-42,-36v0,-14,7,-40,27,-41v39,-26,92,-36,104,9v0,6,-2,11,-9,15v-32,-24,-64,-6,-84,11v8,15,58,-17,72,-11xm54,-101v-37,-20,-9,-71,34,-65v13,1,25,3,38,13v27,45,-34,73,-72,52xm61,-128v4,20,48,7,49,-5v0,-5,-9,-7,-28,-10v-12,-2,-21,11,-21,15", + "w": 173 + }, + "\u00e6": { + "d": "145,-44r33,7v2,42,-59,29,-85,16v-6,7,-35,24,-48,15v-19,2,-35,-21,-33,-37v2,-24,5,-19,28,-36v-6,-8,-45,3,-33,-21v21,-22,58,-12,85,-1v6,-5,35,-28,45,-15v20,-4,36,17,36,35v0,23,-4,21,-28,37xm111,-72v12,3,49,-16,19,-17v-5,0,-20,12,-19,17xm74,-50v-14,-4,-48,16,-19,17v4,1,19,-14,19,-17", + "w": 184 + }, + "\u00e7": { + "d": "108,-118v30,-6,56,21,25,33v-24,-6,-39,5,-75,23v-7,4,-12,12,-15,22v31,28,86,3,128,9v3,28,-29,16,-44,28v-53,15,-106,10,-120,-37v0,-48,62,-70,101,-78xm92,18v23,4,45,12,48,32v-2,6,-12,28,-25,28v-24,6,-50,10,-77,13v-16,-4,-11,-28,7,-29v17,-1,51,-4,63,-12v-14,-15,-57,10,-46,-32v9,-8,0,-25,21,-26v6,6,12,14,9,26", + "w": 171 + }, + "\u00e8": { + "d": "108,-124v42,-3,70,39,50,73v-22,-1,-70,12,-94,10v-1,1,-2,3,-2,3v0,3,12,7,35,14v18,0,64,7,30,21v-10,14,-31,6,-53,6v-26,-7,-70,-26,-70,-58v0,-54,48,-65,104,-69xm130,-78v-2,-35,-66,-13,-77,3v16,6,62,6,77,-3xm95,-166v7,6,54,14,37,40v-28,-7,-62,-21,-100,-41v-3,-3,-3,-26,5,-24v16,5,42,18,58,25", + "w": 161 + }, + "\u00e9": { + "d": "108,-124v42,-3,70,39,50,73v-22,-1,-70,12,-94,10v-1,1,-2,3,-2,3v0,3,12,7,35,14v18,0,64,7,30,21v-10,14,-31,6,-53,6v-26,-7,-70,-26,-70,-58v0,-54,48,-65,104,-69xm130,-78v-2,-35,-66,-13,-77,3v16,6,62,6,77,-3xm76,-169v26,-11,48,-32,59,-14v3,10,-80,53,-89,53v-14,1,-14,-10,-12,-21v15,-7,16,-7,42,-18", + "w": 161 + }, + "\u00ea": { + "d": "108,-124v42,-3,70,39,50,73v-22,-1,-70,12,-94,10v-1,1,-2,3,-2,3v0,3,12,7,35,14v18,0,64,7,30,21v-10,14,-31,6,-53,6v-26,-7,-70,-26,-70,-58v0,-54,48,-65,104,-69xm130,-78v-2,-35,-66,-13,-77,3v16,6,62,6,77,-3xm145,-129v-27,-6,-39,-26,-60,-37v-8,0,-10,4,-14,10v-11,15,-51,34,-56,0v17,-4,44,-32,61,-43v28,5,41,21,63,36v12,8,17,17,17,25v0,6,-3,9,-11,9", + "w": 161 + }, + "\u00eb": { + "d": "108,-124v42,-3,70,39,50,73v-22,-1,-70,12,-94,10r-3,3v0,3,12,7,36,14v18,0,64,7,30,21v-10,14,-31,6,-53,6v-26,-7,-67,-27,-71,-58v7,-52,48,-65,105,-69xm130,-78v-2,-35,-66,-13,-77,3v16,6,62,6,77,-3xm140,-144v0,8,-4,12,-12,12v-18,0,-19,-19,-16,-33v18,-1,29,1,28,21xm44,-169v7,3,28,9,28,17v0,9,-9,18,-18,18v-18,0,-25,-24,-10,-35", + "w": 161 + }, + "\u00ec": { + "d": "57,-98v22,5,13,50,11,95v-7,1,-11,2,-20,-4v1,-7,-12,-18,-10,-24v4,-22,-2,-64,19,-67xm70,-139v14,10,54,14,37,41v-28,-7,-61,-22,-99,-42v-3,-2,-3,-25,5,-23v15,5,41,17,57,24", + "w": 109 + }, + "\u00ed": { + "d": "59,-98v20,4,15,53,10,95v-6,1,-11,2,-19,-4v1,-7,-12,-18,-10,-24v4,-22,-4,-65,19,-67xm50,-139v27,-11,49,-32,59,-14v3,11,-80,53,-89,53v-14,1,-14,-12,-11,-22v15,-7,14,-6,41,-17", + "w": 105 + }, + "\u00ee": { + "d": "72,-98v20,5,12,51,10,95v-6,2,-13,1,-20,-4v1,-8,-12,-18,-10,-24v4,-22,-3,-65,20,-67xm134,-94v-26,-7,-39,-25,-60,-37v-7,0,-9,4,-13,10v-14,15,-51,34,-56,-1v18,-4,45,-33,61,-43v27,6,40,22,62,37v12,8,18,17,18,25v0,6,-4,9,-12,9", + "w": 143 + }, + "\u00ef": { + "d": "55,-97v19,5,15,53,10,95v-17,5,-26,-14,-30,-28v6,-20,-3,-65,20,-67xm110,-118v0,8,-4,13,-12,13v-17,0,-19,-19,-16,-34v18,-1,29,1,28,21xm14,-143v6,3,28,8,28,17v0,9,-9,18,-18,18v-18,0,-25,-24,-10,-35", + "w": 107 + }, + "\u00f1": { + "d": "115,-129v34,6,59,50,59,105v0,31,-15,24,-30,17v-15,-29,-5,-42,-20,-81v-35,-13,-68,52,-88,61v-20,-4,-38,-36,-19,-59v0,-12,3,-14,10,-28v11,-8,18,11,27,12xm117,-166v22,-7,41,-23,64,-26v3,11,-7,10,-7,21v-26,20,-45,30,-58,30v-3,3,-49,-26,-49,-28v-10,-1,-32,35,-51,31v-5,-12,-8,-16,0,-23v4,-6,28,-29,48,-33v17,-3,43,28,53,28", + "w": 171 + }, + "\u00f2": { + "d": "102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm115,-181v14,10,51,13,37,40v-28,-7,-62,-21,-100,-41v-3,-2,-3,-26,5,-23v16,5,42,17,58,24", + "w": 191 + }, + "\u00f3": { + "d": "102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm49,-154v24,-3,85,-55,101,-32v3,11,-80,53,-89,53v-14,0,-13,-8,-12,-21", + "w": 191 + }, + "\u00f4": { + "d": "102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm110,-177v-22,6,-38,45,-65,22v-2,-4,-3,-9,-4,-13v18,-4,43,-32,61,-43v27,6,40,21,62,36v12,9,18,17,18,25v1,11,-15,10,-23,7", + "w": 191 + }, + "\u00f5": { + "d": "102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm58,-199v26,-21,54,18,69,22v4,0,15,-5,34,-13v22,-9,21,-16,31,-13v3,11,-9,9,-7,22v-26,20,-46,30,-59,30v-2,4,-49,-28,-49,-29v-11,0,-32,31,-46,32v-12,-3,-13,-21,-4,-23v4,-6,14,-15,31,-28", + "w": 191 + }, + "\u00f6": { + "d": "102,-132v50,-20,99,16,99,60v0,54,-60,64,-108,79v-50,-2,-110,-48,-76,-100v22,-17,49,-33,85,-39xm136,-104v-34,0,-91,27,-94,47v16,51,125,16,125,-22v0,-17,-10,-25,-31,-25xm161,-160v0,8,-4,13,-12,13v-17,0,-19,-19,-16,-34v18,-1,29,1,28,21xm65,-185v7,3,28,9,28,18v0,7,-9,18,-18,17v-18,1,-25,-24,-10,-35", + "w": 191 + }, + "\u00f7": { + "d": "167,-158v-4,3,-7,9,-10,20v-23,4,-34,-8,-29,-31v14,-6,18,1,39,11xm78,-72v-53,11,-53,12,-69,-15v-1,-12,11,-17,22,-14v71,-13,151,-18,230,-24v11,1,21,16,23,28v-28,20,-90,11,-126,16v-36,5,-62,5,-80,9xm123,-40v19,-17,41,-1,41,17v0,13,-6,19,-17,19v-15,0,-29,-14,-24,-36", + "w": 293 + }, + "\u00f8": { + "d": "76,-136v17,7,33,-8,51,0v9,-6,21,-13,36,-21v23,22,-13,31,3,50v11,13,4,21,14,35v-4,5,-1,14,-4,23v-14,23,-45,41,-84,39v-12,2,-29,28,-41,38v-2,-11,-34,-10,-15,-30v3,-7,5,-11,5,-11v-15,-24,-60,-54,-22,-89v23,-21,25,-32,57,-34xm102,-54v18,1,50,-19,30,-32v-12,7,-22,18,-30,32xm85,-92v-14,3,-26,8,-38,17v2,20,17,13,26,0v6,-8,12,-13,12,-17", + "w": 188 + }, + "\u00f9": { + "d": "196,-129v-1,-4,12,-13,15,-13v6,0,8,7,8,21v0,24,-7,25,-13,45v-7,7,-14,21,-24,29v-9,24,-61,45,-89,45v-63,0,-105,-72,-67,-126v24,-3,19,27,18,46v-1,26,23,42,54,40v38,-3,88,-51,98,-87xm126,-166v7,6,56,14,37,40v-28,-7,-62,-22,-100,-42v-2,-3,-2,-26,5,-23v16,4,42,18,58,25", + "w": 213 + }, + "\u00fa": { + "d": "196,-129v-1,-4,12,-13,15,-13v6,0,8,7,8,21v0,24,-7,25,-13,45v-7,7,-14,21,-24,29v-9,24,-61,45,-89,45v-63,0,-105,-72,-67,-126v24,-3,19,27,18,46v-1,26,23,42,54,40v38,-3,88,-51,98,-87xm106,-174v26,-11,48,-32,59,-14v3,11,-81,53,-89,54v-13,1,-15,-12,-11,-22v15,-7,14,-7,41,-18", + "w": 213 + }, + "\u00fb": { + "d": "196,-129v-1,-4,12,-13,15,-13v6,0,8,7,8,21v0,24,-7,25,-13,45v-7,7,-14,21,-24,29v-9,24,-61,45,-89,45v-63,0,-105,-72,-67,-126v24,-3,19,27,18,46v-1,26,23,42,54,40v38,-3,88,-51,98,-87xm172,-143v-27,-6,-39,-26,-60,-37v-8,0,-10,4,-14,10v-11,15,-49,35,-56,0v17,-4,44,-32,61,-43v27,6,41,21,63,36v12,9,17,17,17,25v0,6,-3,9,-11,9", + "w": 213 + }, + "\u00fc": { + "d": "196,-129v-1,-4,12,-13,15,-13v6,0,8,7,8,21v0,24,-7,25,-13,45v-7,7,-14,21,-24,29v-9,24,-61,45,-89,45v-63,0,-105,-72,-67,-126v24,-3,19,27,18,46v-1,26,23,42,54,40v38,-3,88,-51,98,-87xm168,-161v0,8,-3,13,-11,13v-17,0,-20,-19,-17,-34v18,-1,29,1,28,21xm72,-186v7,3,29,9,28,18v0,7,-9,18,-18,17v-18,1,-25,-24,-10,-35", + "w": 213 + }, + "\u00ff": { + "d": "118,85v-11,11,-11,38,-22,61v-2,-1,-2,31,-17,27v-11,0,-21,-10,-21,-22v20,-66,23,-61,64,-168v-22,1,-38,16,-58,4v-22,4,-51,-16,-51,-42v-11,-13,-7,-59,7,-58v16,1,21,24,22,51v21,33,66,5,94,-7v4,-3,26,-14,38,-29r17,0v23,44,-23,59,-34,102v-6,9,-13,9,-13,26v-15,6,-12,33,-27,48v0,2,1,4,1,7xm158,-136v0,8,-4,13,-12,13v-18,0,-21,-20,-16,-34v18,-1,29,1,28,21xm62,-161v7,3,28,9,27,18v1,8,-8,17,-17,17v-18,0,-26,-24,-10,-35", + "w": 190 + }, + "\u0131": { + "d": "43,-103v21,4,16,56,11,100v-7,2,-11,1,-20,-5v0,-7,-13,-18,-11,-25v4,-23,-3,-68,20,-70", + "w": 80 + }, + "\u0152": { + "d": "247,-243v71,4,161,-7,245,-8v17,0,27,6,27,17v-8,27,-70,14,-104,23v-3,1,-52,0,-65,7r0,4v16,16,17,29,17,65v32,10,74,-14,99,16v-14,25,-76,17,-127,24v-17,18,-55,32,-75,51v85,0,128,-3,204,-11v15,-2,21,11,20,29v-78,24,-177,12,-270,24v-24,3,-24,-29,-48,-15v-46,7,-70,4,-105,-4v-19,-18,-42,-22,-52,-55v-10,-34,0,-47,12,-78v-18,-59,48,-78,105,-84v17,-18,103,-13,117,-5xm125,-45v76,-9,186,-43,209,-105v-26,-67,-137,-83,-217,-54v3,34,-45,25,-60,58v-41,48,5,108,68,101", + "w": 492 + }, + "\u0153": { + "d": "185,-54v25,28,107,-17,104,33v-12,12,-60,14,-87,14v0,0,1,1,2,1v-11,1,-39,-9,-50,-17v-28,17,-75,32,-114,7v-22,-14,-34,-11,-34,-41v0,-36,33,-49,48,-75v29,-16,72,-3,95,11v12,-9,48,-27,59,-26v30,0,64,15,65,40v0,7,-6,20,-20,37v-29,1,-44,11,-68,16xm226,-106v-21,-7,-41,-2,-48,13v14,1,42,-7,48,-13xm132,-87v-21,-35,-94,11,-92,24v-2,14,43,21,61,21v25,0,36,-20,31,-45", + "w": 295 + }, + "\u0178": { + "d": "176,-189v35,20,-25,54,-39,72v-26,34,-57,57,-74,104v-10,15,-4,14,-23,3r0,-10v19,-44,27,-46,50,-81v-9,-5,-24,4,-34,4v-38,0,-54,-50,-44,-87v21,-5,18,19,22,35v4,18,15,27,29,27v41,0,60,-39,113,-67xm153,-222v0,8,-3,12,-11,12v-18,0,-21,-19,-16,-33v18,-1,28,2,27,21xm57,-247v8,2,29,9,28,17v0,21,-37,24,-36,1v0,-7,2,-13,8,-18", + "w": 135 + }, + "\u0192": { + "d": "115,-262v-23,6,-39,63,-38,96v1,3,57,2,54,16v1,22,-45,15,-51,30v3,34,12,68,10,103v14,17,-18,53,-28,63v-48,8,-89,5,-95,-37v20,-5,77,21,83,-18v17,-29,-4,-61,0,-98v0,-5,-3,-10,-7,-17v-33,4,-43,-17,-25,-37v10,-4,27,5,27,-10v0,-43,15,-77,32,-109v12,-7,16,-22,38,-20v11,1,51,35,25,55v-9,1,-16,-17,-25,-17", + "w": 145 + }, + "\u02c6": { + "d": "144,-220v-29,0,-41,-27,-63,-39v-8,0,-11,5,-15,11v-17,12,-32,31,-54,13v-2,-5,-3,-9,-4,-14v20,-5,45,-33,64,-45v28,6,43,23,65,38v12,9,19,19,19,27v0,6,-4,9,-12,9", + "w": 165 + }, + "\u02c7": { + "d": "39,-286v33,46,63,-4,96,-16v6,0,9,6,9,19v0,24,-49,46,-77,46v-32,0,-52,-28,-59,-48v0,-25,23,-17,31,-1", + "w": 153 + }, + "\u02d8": { + "d": "65,-269v20,-11,45,-31,74,-36v20,30,-42,40,-59,66v-5,6,-11,8,-18,8v-8,-3,-45,-32,-51,-54v5,-24,14,-13,34,1", + "w": 158 + }, + "\u02d9": { + "d": "23,-302v15,-13,32,1,32,18v1,22,-36,29,-39,4v0,0,3,-7,7,-22", + "w": 70 + }, + "\u02da": { + "d": "23,-225v-43,-24,-11,-85,41,-78v16,2,31,4,46,17v32,54,-41,86,-87,61xm33,-257v2,20,57,11,57,-6v0,-6,-11,-9,-33,-12v-14,-2,-24,13,-24,18", + "w": 123 + }, + "\u02db": { + "d": "82,-5v-8,12,-16,55,-21,75v0,4,2,7,7,7v6,0,22,-7,50,-20v8,0,12,7,12,20v-2,22,-6,14,-27,30v-15,12,-26,16,-30,16v-47,-8,-59,-14,-56,-75v8,-27,12,-54,25,-77v19,-21,35,15,40,24", + "w": 138 + }, + "\u02dc": { + "d": "47,-300v26,-21,57,19,72,23v4,0,16,-5,36,-14v24,-10,22,-16,32,-13v3,12,-7,11,-7,23v-27,21,-48,32,-62,32v-3,2,-52,-27,-51,-31v-12,-2,-34,40,-54,33v-4,-13,-8,-18,1,-24v5,-7,16,-15,33,-29", + "w": 186 + }, + "\u02dd": { + "d": "91,-249v15,-11,38,-53,57,-29v0,9,0,14,-3,23v-2,3,-20,22,-54,55v-5,5,-10,8,-16,8v-17,2,-6,-22,-7,-31v-1,0,-2,0,-4,1v-17,21,-29,31,-50,27v-5,-18,-3,-15,3,-27v23,-27,40,-46,48,-59v7,-12,31,3,29,9v-1,14,-3,24,-13,31v4,4,9,-1,10,-8", + "w": 151 + }, + "\u2013": { + "d": "6,-66v-8,-72,79,-21,146,-39v37,-10,79,7,111,0v9,8,14,13,14,17v2,26,-72,13,-99,21v-83,4,-124,21,-172,1", + "w": 282 + }, + "\u2014": { + "d": "175,-106v86,-9,201,1,286,-1v11,6,13,11,6,30v-118,15,-246,10,-377,10v-25,0,-73,3,-82,-8r-2,-26v11,-13,32,-9,52,-7v38,3,84,-5,117,2", + "w": 485 + }, + "\u2018": { + "d": "73,-262v-10,7,-41,39,-38,69v-15,13,-27,-16,-28,-28v-2,-20,51,-83,66,-83v20,0,25,41,0,42", + "w": 95 + }, + "\u2019": { + "d": "74,-300v13,31,-1,99,-44,101v-13,0,-19,-5,-19,-15v6,-10,31,-34,35,-59v2,-11,1,-32,11,-32v6,0,11,2,17,5", + "w": 90 + }, + "\u201a": { + "d": "25,63v-26,21,-48,-2,-22,-24v14,-12,35,-40,35,-69v3,-2,3,-11,12,-9v35,17,5,88,-25,102", + "w": 97 + }, + "\u201c": { + "d": "66,-261v-21,5,-37,51,-22,77v0,4,-2,6,-7,6v-31,-9,-38,-62,-12,-94v12,-15,21,-28,31,-34v16,-1,19,24,22,34v10,-11,22,-32,43,-23v-2,8,4,16,5,19v-6,11,-51,53,-29,74v-12,21,-30,5,-33,-17v-6,-13,9,-28,2,-42", + "w": 118 + }, + "\u201d": { + "d": "120,-294v12,3,30,26,19,34v2,15,-40,70,-55,66v-40,-10,10,-51,14,-64v3,-3,8,-31,22,-36xm70,-306v14,3,26,34,16,49v-19,30,-31,45,-58,59v-12,-11,-33,-17,-7,-36v13,-19,36,-27,36,-59v0,-5,9,-13,13,-13", + "w": 148 + }, + "\u201e": { + "d": "25,63v-26,21,-48,-2,-22,-24v11,-9,36,-41,35,-69v3,-2,4,-12,12,-9v36,14,5,89,-25,102xm84,64v-24,20,-45,-1,-21,-24v21,-20,32,-35,35,-69v3,-2,3,-11,12,-9v36,17,9,86,-26,102", + "w": 135 + }, + "\u2020": { + "d": "22,-286v15,6,5,-20,19,-19v9,-3,15,21,17,22v6,1,12,3,20,6v3,10,5,16,-9,16v-34,-10,-6,51,-34,52v-20,-7,11,-47,-15,-49v-14,3,-25,-5,-17,-24v7,-2,14,-4,19,-4", + "w": 77 + }, + "\u2021": { + "d": "102,-284v16,2,42,-2,33,18v-7,15,-42,1,-38,30v3,3,31,1,30,11v4,15,-29,19,-36,24v-2,18,-4,24,-16,29r-25,-26v-25,7,-53,3,-42,-25v4,-10,70,0,51,-22v-17,4,-41,12,-39,-15v-5,-16,39,-18,44,-20v4,-2,7,-10,10,-24v19,-3,23,6,28,20", + "w": 145 + }, + "\u2022": { + "d": "130,-114v0,47,-124,54,-120,-8r6,-31v44,-28,64,-34,104,0v8,6,10,20,10,39", + "w": 139 + }, + "\u2026": { + "d": "244,-24v-1,21,-38,32,-41,3v-2,-19,23,-22,34,-17v0,7,0,15,7,14xm113,-24v0,-22,28,-21,38,-8v5,34,-39,40,-38,8xm35,-2v-10,-2,-36,-17,-18,-29v-1,-15,17,-17,31,-6v7,17,6,33,-13,35", + "w": 258 + }, + "\u2030": { + "d": "398,-131v58,-1,87,13,72,65v-1,30,-66,63,-99,65v-56,3,-99,-58,-62,-102v2,2,5,2,8,2v20,-16,51,-17,81,-30xm202,-279v33,0,94,-24,95,18v-7,31,-33,27,-54,55v-36,32,-71,74,-112,99v-18,18,-40,34,-51,58v-19,14,-25,37,-56,40v-17,2,-25,-29,-10,-40v15,-11,40,-37,52,-52r87,-72v-51,13,-100,6,-116,-27v1,-5,-6,-30,-9,-36v-3,-5,22,-41,27,-39v29,2,16,34,5,49v0,15,14,23,42,23v42,0,59,-31,28,-38v-17,-4,-53,3,-50,-23v0,-7,1,-12,4,-16v16,-9,36,4,49,5v0,0,23,-4,69,-4xm222,-118v33,-2,55,18,50,57v-29,36,-48,45,-96,50v-27,-5,-56,-17,-58,-51v13,-37,64,-43,104,-56xm335,-61v13,44,101,7,108,-31v-11,-3,-20,-4,-30,-4v-18,-1,-82,18,-78,35xm225,-244v-18,0,-29,-1,-46,3v7,15,6,28,0,43v15,-14,34,-30,46,-46xm164,-53v26,5,59,-10,76,-26v-17,-16,-49,2,-67,14v1,8,-8,6,-9,12", + "w": 485 + }, + "\u2039": { + "d": "64,-107v9,17,86,17,87,43v0,11,-4,16,-13,16v-36,-11,-70,-22,-109,-31v-19,-4,-18,-14,-9,-36v59,-56,93,-84,101,-84v17,0,19,20,13,29", + "w": 159 + }, + "\u203a": { + "d": "41,-181v26,27,112,44,70,91r-82,60v-20,3,-25,-23,-13,-32r70,-51r-66,-46v-5,-6,-4,-28,5,-29v4,2,9,4,16,7", + "w": 137 + }, + "\u2044": { + "d": "193,-305v7,6,17,31,3,41v-10,7,-12,13,-21,25v-79,56,-190,209,-197,260r-18,0v-23,-19,9,-70,15,-85v52,-83,121,-179,218,-241", + "w": 120 + }, + "\u2122": { + "d": "213,-307v28,9,11,49,7,75v-1,4,-4,6,-11,6v-7,1,-11,-14,-11,-34v-14,-6,-34,34,-46,28v-2,0,-10,-9,-24,-27v-10,7,-3,36,-27,31v-15,-24,-3,-27,1,-48v-6,-7,-27,-1,-31,3v-3,14,-7,30,-11,51v-5,10,-29,9,-24,-12v-5,-8,1,-18,3,-35v-13,6,-33,2,-29,-18v20,-17,64,-17,100,-19v28,-1,29,30,45,39v11,-6,35,-32,58,-40", + "w": 239 + }, + "\u2206": { + "d": "18,-1v-24,-30,8,-48,25,-71v14,-19,34,-28,40,-56v20,-35,29,-14,57,4v9,39,43,62,57,102v0,16,-34,17,-50,14v-28,2,-72,4,-129,7xm139,-47r-22,-52v-12,-5,-12,15,-24,27v-7,6,-14,16,-23,28v23,1,36,-1,69,-3", + "w": 199 + }, + "\u2219": { + "d": "57,-77v6,18,-7,21,-19,23v-34,6,-25,-40,-9,-43v18,-3,29,8,28,20", + "w": 67 + }, + "\u221a": { + "d": "364,-218v43,-21,80,-51,104,-32v-3,19,-24,21,-44,40v-41,15,-78,53,-136,78r-137,98v-20,16,-79,66,-91,68v-3,1,-25,-11,-24,-13v-4,-28,-43,-61,-30,-85v26,-15,42,19,58,32r295,-188v0,1,2,2,5,2", + "w": 474 + }, + "\u221e": { + "d": "322,-72v-4,22,-54,41,-76,41v-43,0,-83,-17,-114,-35v-46,19,-125,53,-128,-18v-1,-14,10,-22,13,-35v29,-10,62,-31,97,-4v37,28,47,5,75,-8v40,-19,73,-10,114,1v13,1,18,55,19,58xm228,-69v15,0,62,-12,61,-25v-19,-23,-89,-10,-105,11v0,2,1,4,2,4v28,6,42,10,42,10xm75,-102v-13,2,-41,4,-44,19v0,4,3,7,10,7v21,0,40,-6,54,-17v-9,-6,-16,-9,-20,-9", + "w": 330 + }, + "\u222b": { + "d": "62,-151v-7,-70,20,-130,63,-150v28,1,39,10,70,23v20,8,6,33,-6,35v-29,-13,-45,-20,-49,-20v-20,-4,-45,51,-43,70v8,60,5,129,5,189v0,62,-27,93,-79,93v-37,-1,-71,-14,-63,-57v21,0,79,34,91,-2v16,-3,14,-64,21,-85v-2,-31,-1,-74,-10,-96", + "w": 156 + }, + "\u2248": { + "d": "133,-112v21,15,48,-30,78,-17v3,3,5,7,5,9v-8,30,-47,45,-76,45v-19,0,-64,-48,-90,-21r-29,20v-6,-1,-17,-16,-15,-32v24,-17,70,-42,107,-21v4,4,10,9,20,17xm138,-57v28,2,48,-25,76,-26v13,30,-21,42,-40,53v-41,24,-77,-15,-114,-23v-15,14,-46,32,-49,-1v-3,-9,27,-28,54,-30", + "w": 223 + }, + "\u2260": { + "d": "48,-130v29,11,49,-57,60,-50v25,6,7,27,-1,46v22,5,29,7,21,22v-18,2,-48,-1,-50,15v9,8,53,-7,54,10v-4,22,-46,20,-72,24v-7,13,-18,32,-34,57v-8,6,-15,-3,-13,-14v-1,-9,15,-39,14,-45v-30,5,-24,-17,-13,-25v12,-1,36,4,29,-13v-14,0,-47,6,-36,-12v0,-18,27,-13,41,-15", + "w": 140 + }, + "\u2264": { + "d": "73,-109v10,15,87,16,87,42v0,11,-5,16,-13,16v-36,-11,-69,-24,-109,-31v-18,-8,-18,-13,-9,-36v59,-56,93,-83,101,-83v16,0,18,17,14,28v-27,24,-42,35,-71,64xm10,-29v35,-12,117,-26,148,-3v1,2,-5,19,-8,18r-124,15v-16,2,-26,-18,-16,-30", + "w": 168 + }, + "\u2265": { + "d": "115,-174v20,7,53,36,20,57v-19,11,-91,68,-82,59v-18,3,-25,-22,-13,-31v15,-10,14,-10,70,-51r-50,-37v-5,-4,-5,-27,4,-28v16,7,40,17,51,31xm14,-32v33,-10,86,-14,127,-10v12,12,5,23,-11,27v-49,9,-82,13,-99,13v-22,0,-24,-16,-17,-30", + "w": 163 + }, + "\u25ca": { + "d": "76,-158v48,-8,64,11,100,36v28,19,-5,39,-22,54v-15,13,-40,32,-48,49v-17,5,-12,0,-27,-16v-6,-6,-86,-31,-68,-53r2,-9v27,-23,48,-44,63,-61xm93,-65v12,-2,35,-31,41,-38v-5,-10,-16,-14,-34,-24v-12,12,-36,29,-40,44v19,11,30,18,33,18", + "w": 199 + } + } +}); +} +/** js sequence diagrams + * https://bramp.github.io/js-sequence-diagrams/ + * (c) 2012-2017 Andrew Brampton (bramp.net) + * Simplified BSD license. + */ +/*global Diagram, _ */ + +if (typeof Raphael == 'undefined' && typeof Snap == 'undefined') { + throw new Error('Raphael or Snap.svg is required to be included.'); +} + +if (_.isEmpty(Diagram.themes)) { + // If you are using stock js-sequence-diagrams you should never see this. This only + // happens if you have removed the built in themes. + throw new Error('No themes were registered. Please call registerTheme(...).'); +} + +// Set the default hand/simple based on which theme is available. +Diagram.themes.hand = Diagram.themes.snapHand || Diagram.themes.raphaelHand; +Diagram.themes.simple = Diagram.themes.snapSimple || Diagram.themes.raphaelSimple; + +/* Draws the diagram. Creates a SVG inside the container +* container (HTMLElement|string) DOM element or its ID to draw on +* options (Object) +*/ +Diagram.prototype.drawSVG = function(container, options) { + var defaultOptions = { + theme: 'hand' + }; + + options = _.defaults(options || {}, defaultOptions); + + if (!(options.theme in Diagram.themes)) { + throw new Error('Unsupported theme: ' + options.theme); + } + + // TODO Write tests for this check + var div = _.isString(container) ? document.getElementById(container) : container; + if (div === null || !div.tagName) { + throw new Error('Invalid container: ' + container); + } + + var Theme = Diagram.themes[options.theme]; + new Theme(this, options, function(drawing) { + drawing.draw(div); + }); +}; // end of drawSVG +/** js sequence diagrams + * https://bramp.github.io/js-sequence-diagrams/ + * (c) 2012-2017 Andrew Brampton (bramp.net) + * Simplified BSD license. + */ +/*global jQuery */ +if (typeof jQuery != 'undefined') { + (function($) { + $.fn.sequenceDiagram = function(options) { + return this.each(function() { + var $this = $(this); + var diagram = Diagram.parse($this.text()); + $this.html(''); + diagram.drawSVG(this, options); + }); + }; + })(jQuery); +} + +// Taken from underscore.js: +// Establish the root object, `window` (`self`) in the browser, or `global` on the server. +// We use `self` instead of `window` for `WebWorker` support. +var root = (typeof self == 'object' && self.self == self && self) || + (typeof global == 'object' && global.global == global && global); + +// Export the Diagram object for **Node.js**, with +// backwards-compatibility for their old module API. If we're in +// the browser, add `Diagram` as a global object. +if (typeof exports !== 'undefined') { + if (typeof module !== 'undefined' && module.exports) { + exports = module.exports = Diagram; + } + exports.Diagram = Diagram; +} else { + root.Diagram = Diagram; +} +}()); + diff --git a/static/editor.md/lib/sequence/sequence-diagram-snap-min.js b/static/editor.md/lib/sequence/sequence-diagram-snap-min.js new file mode 100755 index 00000000..851d5a53 --- /dev/null +++ b/static/editor.md/lib/sequence/sequence-diagram-snap-min.js @@ -0,0 +1,7 @@ +/** js sequence diagrams 2.0.1 + * https://bramp.github.io/js-sequence-diagrams/ + * (c) 2012-2017 Andrew Brampton (bramp.net) + * @license Simplified BSD license. + */ +!function(){"use strict";function Diagram(){this.title=void 0,this.actors=[],this.signals=[]}function ParseError(message,hash){_.extend(this,hash),this.name="ParseError",this.message=message||""}function AssertException(message){this.message=message}function assert(exp,message){if(!exp)throw new AssertException(message)}function registerTheme(name,theme){Diagram.themes[name]=theme}function getCenterX(box){return box.x+box.width/2}function getCenterY(box){return box.y+box.height/2}function clamp(x,min,max){return xmax?max:x}function wobble(x1,y1,x2,y2){assert(_.all([x1,x2,y1,y2],_.isFinite),"x1,x2,y1,y2 must be numeric");var factor=Math.sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1))/25,r1=clamp(Math.random(),.2,.8),r2=clamp(Math.random(),.2,.8),xfactor=Math.random()>.5?factor:-factor,yfactor=Math.random()>.5?factor:-factor,p1={x:(x2-x1)*r1+x1+xfactor,y:(y2-y1)*r1+y1+yfactor},p2={x:(x2-x1)*r2+x1-xfactor,y:(y2-y1)*r2+y1-yfactor};return"C"+p1.x.toFixed(1)+","+p1.y.toFixed(1)+" "+p2.x.toFixed(1)+","+p2.y.toFixed(1)+" "+x2.toFixed(1)+","+y2.toFixed(1)}function handRect(x,y,w,h){return assert(_.all([x,y,w,h],_.isFinite),"x, y, w, h must be numeric"),"M"+x+","+y+wobble(x,y,x+w,y)+wobble(x+w,y,x+w,y+h)+wobble(x+w,y+h,x,y+h)+wobble(x,y+h,x,y)}function handLine(x1,y1,x2,y2){return assert(_.all([x1,x2,y1,y2],_.isFinite),"x1,x2,y1,y2 must be numeric"),"M"+x1.toFixed(1)+","+y1.toFixed(1)+wobble(x1,y1,x2,y2)}Diagram.prototype.getActor=function(alias,name){alias=alias.trim();var i,actors=this.actors;for(i in actors)if(actors[i].alias==alias)return actors[i];return i=actors.push(new Diagram.Actor(alias,name||alias,actors.length)),actors[i-1]},Diagram.prototype.getActorWithAlias=function(input){input=input.trim();var alias,name,s=/([\s\S]+) as (\S+)$/im.exec(input);return s?(name=s[1].trim(),alias=s[2].trim()):name=alias=input,this.getActor(alias,name)},Diagram.prototype.setTitle=function(title){this.title=title},Diagram.prototype.addSignal=function(signal){this.signals.push(signal)},Diagram.Actor=function(alias,name,index){this.alias=alias,this.name=name,this.index=index},Diagram.Signal=function(actorA,signaltype,actorB,message){this.type="Signal",this.actorA=actorA,this.actorB=actorB,this.linetype=3&signaltype,this.arrowtype=signaltype>>2&3,this.message=message},Diagram.Signal.prototype.isSelf=function(){return this.actorA.index==this.actorB.index},Diagram.Note=function(actor,placement,message){if(this.type="Note",this.actor=actor,this.placement=placement,this.message=message,this.hasManyActors()&&actor[0]==actor[1])throw new Error("Note should be over two different actors")},Diagram.Note.prototype.hasManyActors=function(){return _.isArray(this.actor)},Diagram.unescape=function(s){return s.trim().replace(/^"(.*)"$/m,"$1").replace(/\\n/gm,"\n")},Diagram.LINETYPE={SOLID:0,DOTTED:1},Diagram.ARROWTYPE={FILLED:0,OPEN:1},Diagram.PLACEMENT={LEFTOF:0,RIGHTOF:1,OVER:2},"function"!=typeof Object.getPrototypeOf&&("object"==typeof"test".__proto__?Object.getPrototypeOf=function(object){return object.__proto__}:Object.getPrototypeOf=function(object){return object.constructor.prototype});var parser=function(){function Parser(){this.yy={}}var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[5,8,9,13,15,24],$V1=[1,13],$V2=[1,17],$V3=[24,29,30],parser={trace:function(){},yy:{},symbols_:{error:2,start:3,document:4,EOF:5,line:6,statement:7,NL:8,participant:9,actor_alias:10,signal:11,note_statement:12,title:13,message:14,note:15,placement:16,actor:17,over:18,actor_pair:19,",":20,left_of:21,right_of:22,signaltype:23,ACTOR:24,linetype:25,arrowtype:26,LINE:27,DOTLINE:28,ARROW:29,OPENARROW:30,MESSAGE:31,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",8:"NL",9:"participant",13:"title",15:"note",18:"over",20:",",21:"left_of",22:"right_of",24:"ACTOR",27:"LINE",28:"DOTLINE",29:"ARROW",30:"OPENARROW",31:"MESSAGE"},productions_:[0,[3,2],[4,0],[4,2],[6,1],[6,1],[7,2],[7,1],[7,1],[7,2],[12,4],[12,4],[19,1],[19,3],[16,1],[16,1],[11,4],[17,1],[10,1],[23,2],[23,1],[25,1],[25,1],[26,1],[26,1],[14,1]],performAction:function(yytext,yyleng,yylineno,yy,yystate,$$,_$){var $0=$$.length-1;switch(yystate){case 1:return yy.parser.yy;case 4:break;case 6:$$[$0];break;case 7:case 8:yy.parser.yy.addSignal($$[$0]);break;case 9:yy.parser.yy.setTitle($$[$0]);break;case 10:this.$=new Diagram.Note($$[$0-1],$$[$0-2],$$[$0]);break;case 11:this.$=new Diagram.Note($$[$0-1],Diagram.PLACEMENT.OVER,$$[$0]);break;case 12:case 20:this.$=$$[$0];break;case 13:this.$=[$$[$0-2],$$[$0]];break;case 14:this.$=Diagram.PLACEMENT.LEFTOF;break;case 15:this.$=Diagram.PLACEMENT.RIGHTOF;break;case 16:this.$=new Diagram.Signal($$[$0-3],$$[$0-2],$$[$0-1],$$[$0]);break;case 17:this.$=yy.parser.yy.getActor(Diagram.unescape($$[$0]));break;case 18:this.$=yy.parser.yy.getActorWithAlias(Diagram.unescape($$[$0]));break;case 19:this.$=$$[$0-1]|$$[$0]<<2;break;case 21:this.$=Diagram.LINETYPE.SOLID;break;case 22:this.$=Diagram.LINETYPE.DOTTED;break;case 23:this.$=Diagram.ARROWTYPE.FILLED;break;case 24:this.$=Diagram.ARROWTYPE.OPEN;break;case 25:this.$=Diagram.unescape($$[$0].substring(1))}},table:[o($V0,[2,2],{3:1,4:2}),{1:[3]},{5:[1,3],6:4,7:5,8:[1,6],9:[1,7],11:8,12:9,13:[1,10],15:[1,12],17:11,24:$V1},{1:[2,1]},o($V0,[2,3]),o($V0,[2,4]),o($V0,[2,5]),{10:14,24:[1,15]},o($V0,[2,7]),o($V0,[2,8]),{14:16,31:$V2},{23:18,25:19,27:[1,20],28:[1,21]},{16:22,18:[1,23],21:[1,24],22:[1,25]},o([20,27,28,31],[2,17]),o($V0,[2,6]),o($V0,[2,18]),o($V0,[2,9]),o($V0,[2,25]),{17:26,24:$V1},{24:[2,20],26:27,29:[1,28],30:[1,29]},o($V3,[2,21]),o($V3,[2,22]),{17:30,24:$V1},{17:32,19:31,24:$V1},{24:[2,14]},{24:[2,15]},{14:33,31:$V2},{24:[2,19]},{24:[2,23]},{24:[2,24]},{14:34,31:$V2},{14:35,31:$V2},{20:[1,36],31:[2,12]},o($V0,[2,16]),o($V0,[2,10]),o($V0,[2,11]),{17:37,24:$V1},{31:[2,13]}],defaultActions:{3:[2,1],24:[2,14],25:[2,15],27:[2,19],28:[2,23],29:[2,24],37:[2,13]},parseError:function(str,hash){if(!hash.recoverable)throw new Error(str);this.trace(str)},parse:function(input){function lex(){var token;return token=lexer.lex()||EOF,"number"!=typeof token&&(token=self.symbols_[token]||token),token}var self=this,stack=[0],vstack=[null],lstack=[],table=this.table,yytext="",yylineno=0,yyleng=0,recovering=0,TERROR=2,EOF=1,args=lstack.slice.call(arguments,1),lexer=Object.create(this.lexer),sharedState={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(sharedState.yy[k]=this.yy[k]);lexer.setInput(input,sharedState.yy),sharedState.yy.lexer=lexer,sharedState.yy.parser=this,"undefined"==typeof lexer.yylloc&&(lexer.yylloc={});var yyloc=lexer.yylloc;lstack.push(yyloc);var ranges=lexer.options&&lexer.options.ranges;"function"==typeof sharedState.yy.parseError?this.parseError=sharedState.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var symbol,preErrorSymbol,state,action,r,p,len,newState,expected,yyval={};;){if(state=stack[stack.length-1],this.defaultActions[state]?action=this.defaultActions[state]:(null!==symbol&&"undefined"!=typeof symbol||(symbol=lex()),action=table[state]&&table[state][symbol]),"undefined"==typeof action||!action.length||!action[0]){var errStr="";expected=[];for(p in table[state])this.terminals_[p]&&p>TERROR&&expected.push("'"+this.terminals_[p]+"'");errStr=lexer.showPosition?"Parse error on line "+(yylineno+1)+":\n"+lexer.showPosition()+"\nExpecting "+expected.join(", ")+", got '"+(this.terminals_[symbol]||symbol)+"'":"Parse error on line "+(yylineno+1)+": Unexpected "+(symbol==EOF?"end of input":"'"+(this.terminals_[symbol]||symbol)+"'"),this.parseError(errStr,{text:lexer.match,token:this.terminals_[symbol]||symbol,line:lexer.yylineno,loc:yyloc,expected:expected})}if(action[0]instanceof Array&&action.length>1)throw new Error("Parse Error: multiple actions possible at state: "+state+", token: "+symbol);switch(action[0]){case 1:stack.push(symbol),vstack.push(lexer.yytext),lstack.push(lexer.yylloc),stack.push(action[1]),symbol=null,preErrorSymbol?(symbol=preErrorSymbol,preErrorSymbol=null):(yyleng=lexer.yyleng,yytext=lexer.yytext,yylineno=lexer.yylineno,yyloc=lexer.yylloc,recovering>0&&recovering--);break;case 2:if(len=this.productions_[action[1]][1],yyval.$=vstack[vstack.length-len],yyval._$={first_line:lstack[lstack.length-(len||1)].first_line,last_line:lstack[lstack.length-1].last_line,first_column:lstack[lstack.length-(len||1)].first_column,last_column:lstack[lstack.length-1].last_column},ranges&&(yyval._$.range=[lstack[lstack.length-(len||1)].range[0],lstack[lstack.length-1].range[1]]),r=this.performAction.apply(yyval,[yytext,yyleng,yylineno,sharedState.yy,action[1],vstack,lstack].concat(args)),"undefined"!=typeof r)return r;len&&(stack=stack.slice(0,-1*len*2),vstack=vstack.slice(0,-1*len),lstack=lstack.slice(0,-1*len)),stack.push(this.productions_[action[1]][0]),vstack.push(yyval.$),lstack.push(yyval._$),newState=table[stack[stack.length-2]][stack[stack.length-1]],stack.push(newState);break;case 3:return!0}}return!0}},lexer=function(){var lexer={EOF:1,parseError:function(str,hash){if(!this.yy.parser)throw new Error(str);this.yy.parser.parseError(str,hash)},setInput:function(input,yy){return this.yy=yy||this.yy||{},this._input=input,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ch=this._input[0];this.yytext+=ch,this.yyleng++,this.offset++,this.match+=ch,this.matched+=ch;var lines=ch.match(/(?:\r\n?|\n).*/g);return lines?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ch},unput:function(ch){var len=ch.length,lines=ch.split(/(?:\r\n?|\n)/g);this._input=ch+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-len),this.offset-=len;var oldLines=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),lines.length-1&&(this.yylineno-=lines.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:lines?(lines.length===oldLines.length?this.yylloc.first_column:0)+oldLines[oldLines.length-lines.length].length-lines[0].length:this.yylloc.first_column-len},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-len]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(n){this.unput(this.match.slice(n))},pastInput:function(){var past=this.matched.substr(0,this.matched.length-this.match.length);return(past.length>20?"...":"")+past.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var next=this.match;return next.length<20&&(next+=this._input.substr(0,20-next.length)),(next.substr(0,20)+(next.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var pre=this.pastInput(),c=new Array(pre.length+1).join("-");return pre+this.upcomingInput()+"\n"+c+"^"},test_match:function(match,indexed_rule){var token,lines,backup;if(this.options.backtrack_lexer&&(backup={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(backup.yylloc.range=this.yylloc.range.slice(0))),lines=match[0].match(/(?:\r\n?|\n).*/g),lines&&(this.yylineno+=lines.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:lines?lines[lines.length-1].length-lines[lines.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+match[0].length},this.yytext+=match[0],this.match+=match[0],this.matches=match,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(match[0].length),this.matched+=match[0],token=this.performAction.call(this,this.yy,this,indexed_rule,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),token)return token;if(this._backtrack){for(var k in backup)this[k]=backup[k];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var token,match,tempMatch,index;this._more||(this.yytext="",this.match="");for(var rules=this._currentRules(),i=0;imatch[0].length)){if(match=tempMatch,index=i,this.options.backtrack_lexer){if(token=this.test_match(tempMatch,rules[i]),token!==!1)return token;if(this._backtrack){match=!1;continue}return!1}if(!this.options.flex)break}return match?(token=this.test_match(match,rules[index]),token!==!1&&token):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var r=this.next();return r?r:this.lex()},begin:function(condition){this.conditionStack.push(condition)},popState:function(){var n=this.conditionStack.length-1;return n>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(n){return n=this.conditionStack.length-1-Math.abs(n||0),n>=0?this.conditionStack[n]:"INITIAL"},pushState:function(condition){this.begin(condition)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(yy,yy_,$avoiding_name_collisions,YY_START){switch($avoiding_name_collisions){case 0:return 8;case 1:break;case 2:break;case 3:return 9;case 4:return 21;case 5:return 22;case 6:return 18;case 7:return 15;case 8:return 13;case 9:return 20;case 10:return 24;case 11:return 24;case 12:return 28;case 13:return 27;case 14:return 30;case 15:return 29;case 16:return 31;case 17:return 5;case 18:return"INVALID"}},rules:[/^(?:[\r\n]+)/i,/^(?:\s+)/i,/^(?:#[^\r\n]*)/i,/^(?:participant\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:title\b)/i,/^(?:,)/i,/^(?:[^\->:,\r\n"]+)/i,/^(?:"[^"]+")/i,/^(?:--)/i,/^(?:-)/i,/^(?:>>)/i,/^(?:>)/i,/^(?:[^\r\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18],inclusive:!0}}};return lexer}();return parser.lexer=lexer,Parser.prototype=parser,parser.Parser=Parser,new Parser}();"undefined"!=typeof require&&"undefined"!=typeof exports&&(exports.parser=parser,exports.Parser=parser.Parser,exports.parse=function(){return parser.parse.apply(parser,arguments)},exports.main=function(args){args[1]||(console.log("Usage: "+args[0]+" FILE"),process.exit(1));var source=require("fs").readFileSync(require("path").normalize(args[1]),"utf8");return exports.parser.parse(source)},"undefined"!=typeof module&&require.main===module&&exports.main(process.argv.slice(1))),ParseError.prototype=new Error,Diagram.ParseError=ParseError,Diagram.parse=function(input){parser.yy=new Diagram,parser.yy.parseError=function(message,hash){throw new ParseError(message,hash)};var diagram=parser.parse(input);return delete diagram.parseError,diagram};var DIAGRAM_MARGIN=10,ACTOR_MARGIN=10,ACTOR_PADDING=10,SIGNAL_MARGIN=5,SIGNAL_PADDING=5,NOTE_MARGIN=10,NOTE_PADDING=5,NOTE_OVERLAP=15,TITLE_MARGIN=0,TITLE_PADDING=5,SELF_SIGNAL_WIDTH=20,PLACEMENT=Diagram.PLACEMENT,LINETYPE=Diagram.LINETYPE,ARROWTYPE=Diagram.ARROWTYPE,ALIGN_LEFT=0,ALIGN_CENTER=1;AssertException.prototype.toString=function(){return"AssertException: "+this.message},String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")}),Diagram.themes={};var BaseTheme=function(diagram,options){this.init(diagram,options)};if(_.extend(BaseTheme.prototype,{init:function(diagram,options){this.diagram=diagram,this.actorsHeight_=0,this.signalsHeight_=0,this.title_=void 0},setupPaper:function(container){},draw:function(container){this.setupPaper(container),this.layout();var titleHeight=this.title_?this.title_.height:0,y=DIAGRAM_MARGIN+titleHeight;this.drawTitle(),this.drawActors(y),this.drawSignals(y+this.actorsHeight_)},layout:function(){function actorEnsureDistance(a,b,d){assert(a=actors.length?(a=actors[a],a.paddingRight=Math.max(d,a.paddingRight)):(a=actors[a],a.distances[b]=Math.max(d,a.distances[b]?a.distances[b]:0))}var diagram=this.diagram,font=this.font_,actors=diagram.actors,signals=diagram.signals;if(diagram.width=0,diagram.height=0,diagram.title){var title=this.title_={},bb=this.textBBox(diagram.title,font);title.textBB=bb,title.message=diagram.title,title.width=bb.width+2*(TITLE_PADDING+TITLE_MARGIN),title.height=bb.height+2*(TITLE_PADDING+TITLE_MARGIN),title.x=DIAGRAM_MARGIN,title.y=DIAGRAM_MARGIN,diagram.width+=title.width,diagram.height+=title.height}_.each(actors,function(a){var bb=this.textBBox(a.name,font);a.textBB=bb,a.x=0,a.y=0,a.width=bb.width+2*(ACTOR_PADDING+ACTOR_MARGIN),a.height=bb.height+2*(ACTOR_PADDING+ACTOR_MARGIN),a.distances=[],a.paddingRight=0,this.actorsHeight_=Math.max(a.height,this.actorsHeight_)},this),_.each(signals,function(s){var a,b,bb=this.textBBox(s.message,font);s.textBB=bb,s.width=bb.width,s.height=bb.height;var extraWidth=0;if("Signal"==s.type)s.width+=2*(SIGNAL_MARGIN+SIGNAL_PADDING),s.height+=2*(SIGNAL_MARGIN+SIGNAL_PADDING),s.isSelf()?(a=s.actorA.index,b=a+1,s.width+=SELF_SIGNAL_WIDTH):(a=Math.min(s.actorA.index,s.actorB.index),b=Math.max(s.actorA.index,s.actorB.index));else{if("Note"!=s.type)throw new Error("Unhandled signal type:"+s.type);if(s.width+=2*(NOTE_MARGIN+NOTE_PADDING),s.height+=2*(NOTE_MARGIN+NOTE_PADDING),extraWidth=2*ACTOR_MARGIN,s.placement==PLACEMENT.LEFTOF)b=s.actor.index,a=b-1;else if(s.placement==PLACEMENT.RIGHTOF)a=s.actor.index,b=a+1;else if(s.placement==PLACEMENT.OVER&&s.hasManyActors())a=Math.min(s.actor[0].index,s.actor[1].index),b=Math.max(s.actor[0].index,s.actor[1].index),extraWidth=-(2*NOTE_PADDING+2*NOTE_OVERLAP);else if(s.placement==PLACEMENT.OVER)return a=s.actor.index,actorEnsureDistance(a-1,a,s.width/2),actorEnsureDistance(a,a+1,s.width/2),void(this.signalsHeight_+=s.height)}actorEnsureDistance(a,b,s.width+extraWidth),this.signalsHeight_+=s.height},this);var actorsX=0;return _.each(actors,function(a){a.x=Math.max(actorsX,a.x),_.each(a.distances,function(distance,b){"undefined"!=typeof distance&&(b=actors[b],distance=Math.max(distance,a.width/2,b.width/2),b.x=Math.max(b.x,a.x+a.width/2+distance-b.width/2))}),actorsX=a.x+a.width+a.paddingRight},this),diagram.width=Math.max(actorsX,diagram.width),diagram.width+=2*DIAGRAM_MARGIN,diagram.height+=2*DIAGRAM_MARGIN+2*this.actorsHeight_+this.signalsHeight_,this},textBBox:function(text,font){},drawTitle:function(){var title=this.title_;title&&this.drawTextBox(title,title.message,TITLE_MARGIN,TITLE_PADDING,this.font_,ALIGN_LEFT)},drawActors:function(offsetY){var y=offsetY;_.each(this.diagram.actors,function(a){this.drawActor(a,y,this.actorsHeight_),this.drawActor(a,y+this.actorsHeight_+this.signalsHeight_,this.actorsHeight_);var aX=getCenterX(a);this.drawLine(aX,y+this.actorsHeight_-ACTOR_MARGIN,aX,y+this.actorsHeight_+ACTOR_MARGIN+this.signalsHeight_)},this)},drawActor:function(actor,offsetY,height){actor.y=offsetY,actor.height=height,this.drawTextBox(actor,actor.name,ACTOR_MARGIN,ACTOR_PADDING,this.font_,ALIGN_CENTER)},drawSignals:function(offsetY){var y=offsetY;_.each(this.diagram.signals,function(s){"Signal"==s.type?s.isSelf()?this.drawSelfSignal(s,y):this.drawSignal(s,y):"Note"==s.type&&this.drawNote(s,y),y+=s.height},this)},drawSelfSignal:function(signal,offsetY){assert(signal.isSelf(),"signal must be a self signal");var textBB=signal.textBB,aX=getCenterX(signal.actorA),x=aX+SELF_SIGNAL_WIDTH+SIGNAL_PADDING,y=offsetY+SIGNAL_PADDING+signal.height/2+textBB.y;this.drawText(x,y,signal.message,this.font_,ALIGN_LEFT);var y1=offsetY+SIGNAL_MARGIN+SIGNAL_PADDING,y2=y1+signal.height-2*SIGNAL_MARGIN-SIGNAL_PADDING;this.drawLine(aX,y1,aX+SELF_SIGNAL_WIDTH,y1,signal.linetype),this.drawLine(aX+SELF_SIGNAL_WIDTH,y1,aX+SELF_SIGNAL_WIDTH,y2,signal.linetype),this.drawLine(aX+SELF_SIGNAL_WIDTH,y2,aX,y2,signal.linetype,signal.arrowtype)},drawSignal:function(signal,offsetY){var aX=getCenterX(signal.actorA),bX=getCenterX(signal.actorB),x=(bX-aX)/2+aX,y=offsetY+SIGNAL_MARGIN+2*SIGNAL_PADDING;this.drawText(x,y,signal.message,this.font_,ALIGN_CENTER),y=offsetY+signal.height-SIGNAL_MARGIN-SIGNAL_PADDING,this.drawLine(aX,y,bX,y,signal.linetype,signal.arrowtype)},drawNote:function(note,offsetY){note.y=offsetY;var actorA=note.hasManyActors()?note.actor[0]:note.actor,aX=getCenterX(actorA);switch(note.placement){case PLACEMENT.RIGHTOF:note.x=aX+ACTOR_MARGIN;break;case PLACEMENT.LEFTOF:note.x=aX-ACTOR_MARGIN-note.width;break;case PLACEMENT.OVER:if(note.hasManyActors()){var bX=getCenterX(note.actor[1]),overlap=NOTE_OVERLAP+NOTE_PADDING;note.x=Math.min(aX,bX)-overlap,note.width=Math.max(aX,bX)+overlap-note.x}else note.x=aX-note.width/2;break;default:throw new Error("Unhandled note placement: "+note.placement)}return this.drawTextBox(note,note.message,NOTE_MARGIN,NOTE_PADDING,this.font_,ALIGN_LEFT)},drawTextBox:function(box,text,margin,padding,font,align){var x=box.x+margin,y=box.y+margin,w=box.width-2*margin,h=box.height-2*margin;return this.drawRect(x,y,w,h),align==ALIGN_CENTER?(x=getCenterX(box),y=getCenterY(box)):(x+=padding,y+=padding),this.drawText(x,y,text,font,align)}}),"undefined"!=typeof Snap){var xmlns="http://www.w3.org/2000/svg",LINE={stroke:"#000000","stroke-width":2,fill:"none"},RECT={stroke:"#000000","stroke-width":2,fill:"#fff"},LOADED_FONTS={},SnapTheme=function(diagram,options,resume){_.defaults(options,{"css-class":"simple","font-size":16,"font-family":"Andale Mono, monospace"}),this.init(diagram,options,resume)};_.extend(SnapTheme.prototype,BaseTheme.prototype,{init:function(diagram,options,resume){BaseTheme.prototype.init.call(this,diagram),this.paper_=void 0,this.cssClass_=options["css-class"]||void 0,this.font_={"font-size":options["font-size"],"font-family":options["font-family"]};var a=this.arrowTypes_={};a[ARROWTYPE.FILLED]="Block",a[ARROWTYPE.OPEN]="Open";var l=this.lineTypes_={};l[LINETYPE.SOLID]="",l[LINETYPE.DOTTED]="6,2";var that=this;this.waitForFont(function(){resume(that)})},waitForFont:function(callback){var fontFamily=this.font_["font-family"];if("undefined"==typeof WebFont)throw new Error("WebFont is required (https://github.com/typekit/webfontloader).");return LOADED_FONTS[fontFamily]?void callback():void WebFont.load({custom:{families:[fontFamily]},classes:!1,active:function(){LOADED_FONTS[fontFamily]=!0,callback()},inactive:function(){LOADED_FONTS[fontFamily]=!0,callback()}})},addDescription:function(svg,description){var desc=document.createElementNS(xmlns,"desc");desc.appendChild(document.createTextNode(description)),svg.appendChild(desc)},setupPaper:function(container){var svg=document.createElementNS(xmlns,"svg");container.appendChild(svg),this.addDescription(svg,this.diagram.title||""),this.paper_=Snap(svg),this.paper_.addClass("sequence"),this.cssClass_&&this.paper_.addClass(this.cssClass_),this.beginGroup();var a=this.arrowMarkers_={},arrow=this.paper_.path("M 0 0 L 5 2.5 L 0 5 z");a[ARROWTYPE.FILLED]=arrow.marker(0,0,5,5,5,2.5).attr({id:"markerArrowBlock"}),arrow=this.paper_.path("M 9.6,8 1.92,16 0,13.7 5.76,8 0,2.286 1.92,0 9.6,8 z"),a[ARROWTYPE.OPEN]=arrow.marker(0,0,9.6,16,9.6,8).attr({markerWidth:"4",id:"markerArrowOpen"})},layout:function(){BaseTheme.prototype.layout.call(this),this.paper_.attr({width:this.diagram.width+"px",height:this.diagram.height+"px"})},textBBox:function(text,font){var t=this.createText(text,font),bb=t.getBBox();return t.remove(),bb},pushToStack:function(element){return this._stack.push(element),element},beginGroup:function(){this._stack=[]},finishGroup:function(){var g=this.paper_.group.apply(this.paper_,this._stack);return this.beginGroup(),g},createText:function(text,font){text=_.invoke(text.split("\n"),"trim");var t=this.paper_.text(0,0,text);return t.attr(font||{}),text.length>1&&t.selectAll("tspan:nth-child(n+2)").attr({dy:"1.2em",x:0}),t},drawLine:function(x1,y1,x2,y2,linetype,arrowhead){var line=this.paper_.line(x1,y1,x2,y2).attr(LINE);return void 0!==linetype&&line.attr("strokeDasharray",this.lineTypes_[linetype]),void 0!==arrowhead&&line.attr("markerEnd",this.arrowMarkers_[arrowhead]),this.pushToStack(line)},drawRect:function(x,y,w,h){var rect=this.paper_.rect(x,y,w,h).attr(RECT);return this.pushToStack(rect)},drawText:function(x,y,text,font,align){var t=this.createText(text,font),bb=t.getBBox();return align==ALIGN_CENTER&&(x-=bb.width/2,y-=bb.height/2),t.attr({x:x-bb.x,y:y-bb.y}),t.selectAll("tspan").attr({x:x}),this.pushToStack(t),t},drawTitle:function(){return this.beginGroup(),BaseTheme.prototype.drawTitle.call(this),this.finishGroup().addClass("title")},drawActor:function(actor,offsetY,height){return this.beginGroup(),BaseTheme.prototype.drawActor.call(this,actor,offsetY,height),this.finishGroup().addClass("actor")},drawSignal:function(signal,offsetY){return this.beginGroup(),BaseTheme.prototype.drawSignal.call(this,signal,offsetY),this.finishGroup().addClass("signal")},drawSelfSignal:function(signal,offsetY){return this.beginGroup(),BaseTheme.prototype.drawSelfSignal.call(this,signal,offsetY),this.finishGroup().addClass("signal")},drawNote:function(note,offsetY){return this.beginGroup(),BaseTheme.prototype.drawNote.call(this,note,offsetY),this.finishGroup().addClass("note")}});var SnapHandTheme=function(diagram,options,resume){_.defaults(options,{"css-class":"hand","font-size":16,"font-family":"danielbd"}),this.init(diagram,options,resume)};_.extend(SnapHandTheme.prototype,SnapTheme.prototype,{drawLine:function(x1,y1,x2,y2,linetype,arrowhead){var line=this.paper_.path(handLine(x1,y1,x2,y2)).attr(LINE);return void 0!==linetype&&line.attr("strokeDasharray",this.lineTypes_[linetype]),void 0!==arrowhead&&line.attr("markerEnd",this.arrowMarkers_[arrowhead]),this.pushToStack(line)},drawRect:function(x,y,w,h){var rect=this.paper_.path(handRect(x,y,w,h)).attr(RECT);return this.pushToStack(rect)}}),registerTheme("snapSimple",SnapTheme),registerTheme("snapHand",SnapHandTheme)}if("undefined"==typeof Raphael&&"undefined"==typeof Snap)throw new Error("Raphael or Snap.svg is required to be included.");if(_.isEmpty(Diagram.themes))throw new Error("No themes were registered. Please call registerTheme(...).");Diagram.themes.hand=Diagram.themes.snapHand||Diagram.themes.raphaelHand,Diagram.themes.simple=Diagram.themes.snapSimple||Diagram.themes.raphaelSimple,Diagram.prototype.drawSVG=function(container,options){var defaultOptions={theme:"hand"};if(options=_.defaults(options||{},defaultOptions),!(options.theme in Diagram.themes))throw new Error("Unsupported theme: "+options.theme);var div=_.isString(container)?document.getElementById(container):container;if(null===div||!div.tagName)throw new Error("Invalid container: "+container);var Theme=Diagram.themes[options.theme];new Theme(this,options,function(drawing){drawing.draw(div)})},"undefined"!=typeof jQuery&&!function($){$.fn.sequenceDiagram=function(options){return this.each(function(){var $this=$(this),diagram=Diagram.parse($this.text());$this.html(""),diagram.drawSVG(this,options)})}}(jQuery);var root="object"==typeof self&&self.self==self&&self||"object"==typeof global&&global.global==global&&global;"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=Diagram),exports.Diagram=Diagram):root.Diagram=Diagram}(); +//# sourceMappingURL=sequence-diagram-snap.js \ No newline at end of file diff --git a/static/editor.md/lib/sequence/sequence-diagram-snap-min.js.map b/static/editor.md/lib/sequence/sequence-diagram-snap-min.js.map new file mode 100755 index 00000000..e171870c --- /dev/null +++ b/static/editor.md/lib/sequence/sequence-diagram-snap-min.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["dist/sequence-diagram-snap.js"],"names":["Diagram","this","title","undefined","actors","signals","ParseError","message","hash","_","extend","name","AssertException","assert","exp","registerTheme","theme","themes","getCenterX","box","x","width","getCenterY","y","height","clamp","min","max","wobble","x1","y1","x2","y2","all","isFinite","factor","Math","sqrt","r1","random","r2","xfactor","yfactor","p1","p2","toFixed","handRect","w","h","handLine","prototype","getActor","alias","trim","i","push","Actor","length","getActorWithAlias","input","s","exec","setTitle","addSignal","signal","index","Signal","actorA","signaltype","actorB","type","linetype","arrowtype","isSelf","Note","actor","placement","hasManyActors","Error","isArray","unescape","replace","LINETYPE","SOLID","DOTTED","ARROWTYPE","FILLED","OPEN","PLACEMENT","LEFTOF","RIGHTOF","OVER","Object","getPrototypeOf","__proto__","object","constructor","parser","Parser","yy","o","k","v","l","$V0","$V1","$V2","$V3","trace","symbols_","error","start","document","EOF","line","statement","NL","participant","actor_alias","note_statement","note","over","actor_pair",",","left_of","right_of","ACTOR","LINE","DOTLINE","ARROW","OPENARROW","MESSAGE","$accept","$end","terminals_","2","5","8","9","13","15","18","20","21","22","24","27","28","29","30","31","productions_","performAction","yytext","yyleng","yylineno","yystate","$$","_$","$0","$","substring","table","3","4","1","6","7","11","12","17","10","14","23","25","16","26","19","defaultActions","37","parseError","str","recoverable","parse","lex","token","lexer","self","stack","vstack","lstack","recovering","TERROR","args","slice","call","arguments","create","sharedState","hasOwnProperty","setInput","yylloc","yyloc","ranges","options","symbol","preErrorSymbol","state","action","r","p","len","newState","expected","yyval","errStr","showPosition","join","text","match","loc","Array","first_line","last_line","first_column","last_column","range","apply","concat","_input","_more","_backtrack","done","matched","conditionStack","offset","ch","lines","unput","split","substr","oldLines","more","reject","backtrack_lexer","less","n","pastInput","past","upcomingInput","next","pre","c","test_match","indexed_rule","backup","matches","tempMatch","rules","_currentRules","flex","begin","condition","popState","pop","conditions","INITIAL","topState","abs","pushState","stateStackSize","case-insensitive","yy_","$avoiding_name_collisions","YY_START","inclusive","require","exports","main","console","log","process","exit","source","readFileSync","normalize","module","argv","diagram","DIAGRAM_MARGIN","ACTOR_MARGIN","ACTOR_PADDING","SIGNAL_MARGIN","SIGNAL_PADDING","NOTE_MARGIN","NOTE_PADDING","NOTE_OVERLAP","TITLE_MARGIN","TITLE_PADDING","SELF_SIGNAL_WIDTH","ALIGN_LEFT","ALIGN_CENTER","toString","String","BaseTheme","init","actorsHeight_","signalsHeight_","title_","setupPaper","container","draw","layout","titleHeight","drawTitle","drawActors","drawSignals","actorEnsureDistance","a","b","d","paddingRight","distances","font","font_","bb","textBBox","textBB","each","extraWidth","actorsX","distance","drawTextBox","offsetY","drawActor","aX","drawLine","drawSelfSignal","drawSignal","drawNote","drawText","bX","overlap","margin","padding","align","drawRect","Snap","xmlns","stroke","stroke-width","fill","RECT","LOADED_FONTS","SnapTheme","resume","defaults","css-class","font-size","font-family","paper_","cssClass_","arrowTypes_","lineTypes_","that","waitForFont","callback","fontFamily","WebFont","load","custom","families","classes","active","inactive","addDescription","svg","description","desc","createElementNS","appendChild","createTextNode","addClass","beginGroup","arrowMarkers_","arrow","path","marker","attr","id","markerWidth","t","createText","getBBox","remove","pushToStack","element","_stack","finishGroup","g","group","invoke","selectAll","dy","arrowhead","rect","SnapHandTheme","Raphael","isEmpty","hand","snapHand","raphaelHand","simple","snapSimple","raphaelSimple","drawSVG","defaultOptions","div","isString","getElementById","tagName","Theme","drawing","jQuery","fn","sequenceDiagram","$this","html","root","global"],"mappings":"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","file":"dist/sequence-diagram-snap-min.js"} \ No newline at end of file diff --git a/static/editor.md/lib/sequence/snap.svg-min.js b/static/editor.md/lib/sequence/snap.svg-min.js new file mode 100644 index 00000000..005dda96 --- /dev/null +++ b/static/editor.md/lib/sequence/snap.svg-min.js @@ -0,0 +1,22 @@ + +// Snap.svg 0.4.1 +// +// Copyright (c) 2013 – 2015 Adobe Systems Incorporated. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// build: 2015-04-13 + +!function(a){var b,c,d="0.4.2",e="hasOwnProperty",f=/[\.\/]/,g=/\s*,\s*/,h="*",i=function(a,b){return a-b},j={n:{}},k=function(){for(var a=0,b=this.length;b>a;a++)if("undefined"!=typeof this[a])return this[a]},l=function(){for(var a=this.length;--a;)if("undefined"!=typeof this[a])return this[a]},m=function(a,d){a=String(a);var e,f=c,g=Array.prototype.slice.call(arguments,2),h=m.listeners(a),j=0,n=[],o={},p=[],q=b;p.firstDefined=k,p.lastDefined=l,b=a,c=0;for(var r=0,s=h.length;s>r;r++)"zIndex"in h[r]&&(n.push(h[r].zIndex),h[r].zIndex<0&&(o[h[r].zIndex]=h[r]));for(n.sort(i);n[j]<0;)if(e=o[n[j++]],p.push(e.apply(d,g)),c)return c=f,p;for(r=0;s>r;r++)if(e=h[r],"zIndex"in e)if(e.zIndex==n[j]){if(p.push(e.apply(d,g)),c)break;do if(j++,e=o[n[j]],e&&p.push(e.apply(d,g)),c)break;while(e)}else o[e.zIndex]=e;else if(p.push(e.apply(d,g)),c)break;return c=f,b=q,p};m._events=j,m.listeners=function(a){var b,c,d,e,g,i,k,l,m=a.split(f),n=j,o=[n],p=[];for(e=0,g=m.length;g>e;e++){for(l=[],i=0,k=o.length;k>i;i++)for(n=o[i].n,c=[n[m[e]],n[h]],d=2;d--;)b=c[d],b&&(l.push(b),p=p.concat(b.f||[]));o=l}return p},m.on=function(a,b){if(a=String(a),"function"!=typeof b)return function(){};for(var c=a.split(g),d=0,e=c.length;e>d;d++)!function(a){for(var c,d=a.split(f),e=j,g=0,h=d.length;h>g;g++)e=e.n,e=e.hasOwnProperty(d[g])&&e[d[g]]||(e[d[g]]={n:{}});for(e.f=e.f||[],g=0,h=e.f.length;h>g;g++)if(e.f[g]==b){c=!0;break}!c&&e.f.push(b)}(c[d]);return function(a){+a==+a&&(b.zIndex=+a)}},m.f=function(a){var b=[].slice.call(arguments,1);return function(){m.apply(null,[a,null].concat(b).concat([].slice.call(arguments,0)))}},m.stop=function(){c=1},m.nt=function(a){return a?new RegExp("(?:\\.|\\/|^)"+a+"(?:\\.|\\/|$)").test(b):b},m.nts=function(){return b.split(f)},m.off=m.unbind=function(a,b){if(!a)return void(m._events=j={n:{}});var c=a.split(g);if(c.length>1)for(var d=0,i=c.length;i>d;d++)m.off(c[d],b);else{c=a.split(f);var k,l,n,d,i,o,p,q=[j];for(d=0,i=c.length;i>d;d++)for(o=0;od;d++)for(k=q[d];k.n;){if(b){if(k.f){for(o=0,p=k.f.length;p>o;o++)if(k.f[o]==b){k.f.splice(o,1);break}!k.f.length&&delete k.f}for(l in k.n)if(k.n[e](l)&&k.n[l].f){var r=k.n[l].f;for(o=0,p=r.length;p>o;o++)if(r[o]==b){r.splice(o,1);break}!r.length&&delete k.n[l].f}}else{delete k.f;for(l in k.n)k.n[e](l)&&k.n[l].f&&delete k.n[l].f}k=k.n}}},m.once=function(a,b){var c=function(){return m.unbind(a,c),b.apply(this,arguments)};return m.on(a,c)},m.version=d,m.toString=function(){return"You are running Eve "+d},"undefined"!=typeof module&&module.exports?module.exports=m:"function"==typeof define&&define.amd?define("eve",[],function(){return m}):a.eve=m}(this),function(a,b){if("function"==typeof define&&define.amd)define(["eve"],function(c){return b(a,c)});else if("undefined"!=typeof exports){var c=require("eve");module.exports=b(a,c)}else b(a,a.eve)}(window||this,function(a,b){var c=function(b){var c={},d=a.requestAnimationFrame||a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame||a.msRequestAnimationFrame||function(a){setTimeout(a,16)},e=Array.isArray||function(a){return a instanceof Array||"[object Array]"==Object.prototype.toString.call(a)},f=0,g="M"+(+new Date).toString(36),h=function(){return g+(f++).toString(36)},i=Date.now||function(){return+new Date},j=function(a){var b=this;if(null==a)return b.s;var c=b.s-a;b.b+=b.dur*c,b.B+=b.dur*c,b.s=a},k=function(a){var b=this;return null==a?b.spd:void(b.spd=a)},l=function(a){var b=this;return null==a?b.dur:(b.s=b.s*a/b.dur,void(b.dur=a))},m=function(){var a=this;delete c[a.id],a.update(),b("mina.stop."+a.id,a)},n=function(){var a=this;a.pdif||(delete c[a.id],a.update(),a.pdif=a.get()-a.b)},o=function(){var a=this;a.pdif&&(a.b=a.get()-a.pdif,delete a.pdif,c[a.id]=a)},p=function(){var a,b=this;if(e(b.start)){a=[];for(var c=0,d=b.start.length;d>c;c++)a[c]=+b.start[c]+(b.end[c]-b.start[c])*b.easing(b.s)}else a=+b.start+(b.end-b.start)*b.easing(b.s);b.set(a)},q=function(){var a=0;for(var e in c)if(c.hasOwnProperty(e)){var f=c[e],g=f.get();a++,f.s=(g-f.b)/(f.dur/f.spd),f.s>=1&&(delete c[e],f.s=1,a--,function(a){setTimeout(function(){b("mina.finish."+a.id,a)})}(f)),f.update()}a&&d(q)},r=function(a,b,e,f,g,i,s){var t={id:h(),start:a,end:b,b:e,s:0,dur:f-e,spd:1,get:g,set:i,easing:s||r.linear,status:j,speed:k,duration:l,stop:m,pause:n,resume:o,update:p};c[t.id]=t;var u,v=0;for(u in c)if(c.hasOwnProperty(u)&&(v++,2==v))break;return 1==v&&d(q),t};return r.time=i,r.getById=function(a){return c[a]||null},r.linear=function(a){return a},r.easeout=function(a){return Math.pow(a,1.7)},r.easein=function(a){return Math.pow(a,.48)},r.easeinout=function(a){if(1==a)return 1;if(0==a)return 0;var b=.48-a/1.04,c=Math.sqrt(.1734+b*b),d=c-b,e=Math.pow(Math.abs(d),1/3)*(0>d?-1:1),f=-c-b,g=Math.pow(Math.abs(f),1/3)*(0>f?-1:1),h=e+g+.5;return 3*(1-h)*h*h+h*h*h},r.backin=function(a){if(1==a)return 1;var b=1.70158;return a*a*((b+1)*a-b)},r.backout=function(a){if(0==a)return 0;a-=1;var b=1.70158;return a*a*((b+1)*a+b)+1},r.elastic=function(a){return a==!!a?a:Math.pow(2,-10*a)*Math.sin(2*(a-.075)*Math.PI/.3)+1},r.bounce=function(a){var b,c=7.5625,d=2.75;return 1/d>a?b=c*a*a:2/d>a?(a-=1.5/d,b=c*a*a+.75):2.5/d>a?(a-=2.25/d,b=c*a*a+.9375):(a-=2.625/d,b=c*a*a+.984375),b},a.mina=r,r}("undefined"==typeof b?function(){}:b),d=function(a){function c(a,b){if(a){if(a.nodeType)return w(a);if(e(a,"array")&&c.set)return c.set.apply(c,a);if(a instanceof s)return a;if(null==b)return a=y.doc.querySelector(String(a)),w(a)}return a=null==a?"100%":a,b=null==b?"100%":b,new v(a,b)}function d(a,b){if(b){if("#text"==a&&(a=y.doc.createTextNode(b.text||b["#text"]||"")),"#comment"==a&&(a=y.doc.createComment(b.text||b["#text"]||"")),"string"==typeof a&&(a=d(a)),"string"==typeof b)return 1==a.nodeType?"xlink:"==b.substring(0,6)?a.getAttributeNS(T,b.substring(6)):"xml:"==b.substring(0,4)?a.getAttributeNS(U,b.substring(4)):a.getAttribute(b):"text"==b?a.nodeValue:null;if(1==a.nodeType){for(var c in b)if(b[z](c)){var e=A(b[c]);e?"xlink:"==c.substring(0,6)?a.setAttributeNS(T,c.substring(6),e):"xml:"==c.substring(0,4)?a.setAttributeNS(U,c.substring(4),e):a.setAttribute(c,e):a.removeAttribute(c)}}else"text"in b&&(a.nodeValue=b.text)}else a=y.doc.createElementNS(U,a);return a}function e(a,b){return b=A.prototype.toLowerCase.call(b),"finite"==b?isFinite(a):"array"==b&&(a instanceof Array||Array.isArray&&Array.isArray(a))?!0:"null"==b&&null===a||b==typeof a&&null!==a||"object"==b&&a===Object(a)||J.call(a).slice(8,-1).toLowerCase()==b}function f(a){if("function"==typeof a||Object(a)!==a)return a;var b=new a.constructor;for(var c in a)a[z](c)&&(b[c]=f(a[c]));return b}function h(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return a.push(a.splice(c,1)[0])}function i(a,b,c){function d(){var e=Array.prototype.slice.call(arguments,0),f=e.join("␀"),g=d.cache=d.cache||{},i=d.count=d.count||[];return g[z](f)?(h(i,f),c?c(g[f]):g[f]):(i.length>=1e3&&delete g[i.shift()],i.push(f),g[f]=a.apply(b,e),c?c(g[f]):g[f])}return d}function j(a,b,c,d,e,f){if(null==e){var g=a-c,h=b-d;return g||h?(180+180*D.atan2(-h,-g)/H+360)%360:0}return j(a,b,e,f)-j(c,d,e,f)}function k(a){return a%360*H/180}function l(a){return 180*a/H%360}function m(a){var b=[];return a=a.replace(/(?:^|\s)(\w+)\(([^)]+)\)/g,function(a,c,d){return d=d.split(/\s*,\s*|\s+/),"rotate"==c&&1==d.length&&d.push(0,0),"scale"==c&&(d.length>2?d=d.slice(0,2):2==d.length&&d.push(0,0),1==d.length&&d.push(d[0],0,0)),b.push("skewX"==c?["m",1,0,D.tan(k(d[0])),1,0,0]:"skewY"==c?["m",1,D.tan(k(d[0])),0,1,0,0]:[c.charAt(0)].concat(d)),a}),b}function n(a,b){var d=ab(a),e=new c.Matrix;if(d)for(var f=0,g=d.length;g>f;f++){var h,i,j,k,l,m=d[f],n=m.length,o=A(m[0]).toLowerCase(),p=m[0]!=o,q=p?e.invert():0;"t"==o&&2==n?e.translate(m[1],0):"t"==o&&3==n?p?(h=q.x(0,0),i=q.y(0,0),j=q.x(m[1],m[2]),k=q.y(m[1],m[2]),e.translate(j-h,k-i)):e.translate(m[1],m[2]):"r"==o?2==n?(l=l||b,e.rotate(m[1],l.x+l.width/2,l.y+l.height/2)):4==n&&(p?(j=q.x(m[2],m[3]),k=q.y(m[2],m[3]),e.rotate(m[1],j,k)):e.rotate(m[1],m[2],m[3])):"s"==o?2==n||3==n?(l=l||b,e.scale(m[1],m[n-1],l.x+l.width/2,l.y+l.height/2)):4==n?p?(j=q.x(m[2],m[3]),k=q.y(m[2],m[3]),e.scale(m[1],m[1],j,k)):e.scale(m[1],m[1],m[2],m[3]):5==n&&(p?(j=q.x(m[3],m[4]),k=q.y(m[3],m[4]),e.scale(m[1],m[2],j,k)):e.scale(m[1],m[2],m[3],m[4])):"m"==o&&7==n&&e.add(m[1],m[2],m[3],m[4],m[5],m[6])}return e}function o(a){var b=a.node.ownerSVGElement&&w(a.node.ownerSVGElement)||a.node.parentNode&&w(a.node.parentNode)||c.select("svg")||c(0,0),d=b.select("defs"),e=null==d?!1:d.node;return e||(e=u("defs",b.node).node),e}function p(a){return a.node.ownerSVGElement&&w(a.node.ownerSVGElement)||c.select("svg")}function q(a,b,c){function e(a){if(null==a)return I;if(a==+a)return a;d(j,{width:a});try{return j.getBBox().width}catch(b){return 0}}function f(a){if(null==a)return I;if(a==+a)return a;d(j,{height:a});try{return j.getBBox().height}catch(b){return 0}}function g(d,e){null==b?i[d]=e(a.attr(d)||0):d==b&&(i=e(null==c?a.attr(d)||0:c))}var h=p(a).node,i={},j=h.querySelector(".svg---mgr");switch(j||(j=d("rect"),d(j,{x:-9e9,y:-9e9,width:10,height:10,"class":"svg---mgr",fill:"none"}),h.appendChild(j)),a.type){case"rect":g("rx",e),g("ry",f);case"image":g("width",e),g("height",f);case"text":g("x",e),g("y",f);break;case"circle":g("cx",e),g("cy",f),g("r",e);break;case"ellipse":g("cx",e),g("cy",f),g("rx",e),g("ry",f);break;case"line":g("x1",e),g("x2",e),g("y1",f),g("y2",f);break;case"marker":g("refX",e),g("markerWidth",e),g("refY",f),g("markerHeight",f);break;case"radialGradient":g("fx",e),g("fy",f);break;case"tspan":g("dx",e),g("dy",f);break;default:g(b,e)}return h.removeChild(j),i}function r(a){e(a,"array")||(a=Array.prototype.slice.call(arguments,0));for(var b=0,c=0,d=this.node;this[b];)delete this[b++];for(b=0;bc;c++){var e={type:a[c].type,attr:a[c].attr()},f=a[c].children();b.push(e),f.length&&x(f,e.childNodes=[])}}c.version="0.4.0",c.toString=function(){return"Snap v"+this.version},c._={};var y={win:a.window,doc:a.window.document};c._.glob=y;{var z="hasOwnProperty",A=String,B=parseFloat,C=parseInt,D=Math,E=D.max,F=D.min,G=D.abs,H=(D.pow,D.PI),I=(D.round,""),J=Object.prototype.toString,K=/^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+%?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+%?)?)\s*\)|hsba?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?%?)\s*\)|hsla?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?%?)\s*\))\s*$/i,L=(c._.separator=/[,\s]+/,/[\s]*,[\s]*/),M={hs:1,rg:1},N=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[\-+]?\d+)?[\s]*,?[\s]*)+)/gi,O=/([rstm])[\s,]*((-?\d*\.?\d*(?:e[\-+]?\d+)?[\s]*,?[\s]*)+)/gi,P=/(-?\d*\.?\d*(?:e[\-+]?\\d+)?)[\s]*,?[\s]*/gi,Q=0,R="S"+(+new Date).toString(36),S=function(a){return(a&&a.type?a.type:I)+R+(Q++).toString(36)},T="http://www.w3.org/1999/xlink",U="http://www.w3.org/2000/svg",V={};c.url=function(a){return"url('#"+a+"')"}}c._.$=d,c._.id=S,c.format=function(){var a=/\{([^\}]+)\}/g,b=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g,c=function(a,c,d){var e=d;return c.replace(b,function(a,b,c,d,f){b=b||d,e&&(b in e&&(e=e[b]),"function"==typeof e&&f&&(e=e()))}),e=(null==e||e==d?a:e)+""};return function(b,d){return A(b).replace(a,function(a,b){return c(a,b,d)})}}(),c._.clone=f,c._.cacher=i,c.rad=k,c.deg=l,c.sin=function(a){return D.sin(c.rad(a))},c.tan=function(a){return D.tan(c.rad(a))},c.cos=function(a){return D.cos(c.rad(a))},c.asin=function(a){return c.deg(D.asin(a))},c.acos=function(a){return c.deg(D.acos(a))},c.atan=function(a){return c.deg(D.atan(a))},c.atan2=function(a){return c.deg(D.atan2(a))},c.angle=j,c.len=function(a,b,d,e){return Math.sqrt(c.len2(a,b,d,e))},c.len2=function(a,b,c,d){return(a-c)*(a-c)+(b-d)*(b-d)},c.closestPoint=function(a,b,c){function d(a){var d=a.x-b,e=a.y-c;return d*d+e*e}for(var e,f,g,h,i=a.node,j=i.getTotalLength(),k=j/i.pathSegList.numberOfItems*.125,l=1/0,m=0;j>=m;m+=k)(h=d(g=i.getPointAtLength(m))).5;){var n,o,p,q,r,s;(p=f-k)>=0&&(r=d(n=i.getPointAtLength(p)))f)return b-f;if(f>a-c)return b-f+a}return b},c.getRGB=i(function(a){if(!a||(a=A(a)).indexOf("-")+1)return{r:-1,g:-1,b:-1,hex:"none",error:1,toString:Z};if("none"==a)return{r:-1,g:-1,b:-1,hex:"none",toString:Z};if(!(M[z](a.toLowerCase().substring(0,2))||"#"==a.charAt())&&(a=W(a)),!a)return{r:-1,g:-1,b:-1,hex:"none",error:1,toString:Z};var b,d,f,g,h,i,j=a.match(K);return j?(j[2]&&(f=C(j[2].substring(5),16),d=C(j[2].substring(3,5),16),b=C(j[2].substring(1,3),16)),j[3]&&(f=C((h=j[3].charAt(3))+h,16),d=C((h=j[3].charAt(2))+h,16),b=C((h=j[3].charAt(1))+h,16)),j[4]&&(i=j[4].split(L),b=B(i[0]),"%"==i[0].slice(-1)&&(b*=2.55),d=B(i[1]),"%"==i[1].slice(-1)&&(d*=2.55),f=B(i[2]),"%"==i[2].slice(-1)&&(f*=2.55),"rgba"==j[1].toLowerCase().slice(0,4)&&(g=B(i[3])),i[3]&&"%"==i[3].slice(-1)&&(g/=100)),j[5]?(i=j[5].split(L),b=B(i[0]),"%"==i[0].slice(-1)&&(b/=100),d=B(i[1]),"%"==i[1].slice(-1)&&(d/=100),f=B(i[2]),"%"==i[2].slice(-1)&&(f/=100),("deg"==i[0].slice(-3)||"°"==i[0].slice(-1))&&(b/=360),"hsba"==j[1].toLowerCase().slice(0,4)&&(g=B(i[3])),i[3]&&"%"==i[3].slice(-1)&&(g/=100),c.hsb2rgb(b,d,f,g)):j[6]?(i=j[6].split(L),b=B(i[0]),"%"==i[0].slice(-1)&&(b/=100),d=B(i[1]),"%"==i[1].slice(-1)&&(d/=100),f=B(i[2]),"%"==i[2].slice(-1)&&(f/=100),("deg"==i[0].slice(-3)||"°"==i[0].slice(-1))&&(b/=360),"hsla"==j[1].toLowerCase().slice(0,4)&&(g=B(i[3])),i[3]&&"%"==i[3].slice(-1)&&(g/=100),c.hsl2rgb(b,d,f,g)):(b=F(D.round(b),255),d=F(D.round(d),255),f=F(D.round(f),255),g=F(E(g,0),1),j={r:b,g:d,b:f,toString:Z},j.hex="#"+(16777216|f|d<<8|b<<16).toString(16).slice(1),j.opacity=e(g,"finite")?g:1,j)):{r:-1,g:-1,b:-1,hex:"none",error:1,toString:Z}},c),c.hsb=i(function(a,b,d){return c.hsb2rgb(a,b,d).hex}),c.hsl=i(function(a,b,d){return c.hsl2rgb(a,b,d).hex}),c.rgb=i(function(a,b,c,d){if(e(d,"finite")){var f=D.round;return"rgba("+[f(a),f(b),f(c),+d.toFixed(2)]+")"}return"#"+(16777216|c|b<<8|a<<16).toString(16).slice(1)});var W=function(a){var b=y.doc.getElementsByTagName("head")[0]||y.doc.getElementsByTagName("svg")[0],c="rgb(255, 0, 0)";return(W=i(function(a){if("red"==a.toLowerCase())return c;b.style.color=c,b.style.color=a;var d=y.doc.defaultView.getComputedStyle(b,I).getPropertyValue("color");return d==c?null:d}))(a)},X=function(){return"hsb("+[this.h,this.s,this.b]+")"},Y=function(){return"hsl("+[this.h,this.s,this.l]+")"},Z=function(){return 1==this.opacity||null==this.opacity?this.hex:"rgba("+[this.r,this.g,this.b,this.opacity]+")"},$=function(a,b,d){if(null==b&&e(a,"object")&&"r"in a&&"g"in a&&"b"in a&&(d=a.b,b=a.g,a=a.r),null==b&&e(a,string)){var f=c.getRGB(a);a=f.r,b=f.g,d=f.b}return(a>1||b>1||d>1)&&(a/=255,b/=255,d/=255),[a,b,d]},_=function(a,b,d,f){a=D.round(255*a),b=D.round(255*b),d=D.round(255*d);var g={r:a,g:b,b:d,opacity:e(f,"finite")?f:1,hex:c.rgb(a,b,d),toString:Z};return e(f,"finite")&&(g.opacity=f),g};c.color=function(a){var b;return e(a,"object")&&"h"in a&&"s"in a&&"b"in a?(b=c.hsb2rgb(a),a.r=b.r,a.g=b.g,a.b=b.b,a.opacity=1,a.hex=b.hex):e(a,"object")&&"h"in a&&"s"in a&&"l"in a?(b=c.hsl2rgb(a),a.r=b.r,a.g=b.g,a.b=b.b,a.opacity=1,a.hex=b.hex):(e(a,"string")&&(a=c.getRGB(a)),e(a,"object")&&"r"in a&&"g"in a&&"b"in a&&!("error"in a)?(b=c.rgb2hsl(a),a.h=b.h,a.s=b.s,a.l=b.l,b=c.rgb2hsb(a),a.v=b.b):(a={hex:"none"},a.r=a.g=a.b=a.h=a.s=a.v=a.l=-1,a.error=1)),a.toString=Z,a},c.hsb2rgb=function(a,b,c,d){e(a,"object")&&"h"in a&&"s"in a&&"b"in a&&(c=a.b,b=a.s,d=a.o,a=a.h),a*=360;var f,g,h,i,j;return a=a%360/60,j=c*b,i=j*(1-G(a%2-1)),f=g=h=c-j,a=~~a,f+=[j,i,0,0,i,j][a],g+=[i,j,j,i,0,0][a],h+=[0,0,i,j,j,i][a],_(f,g,h,d)},c.hsl2rgb=function(a,b,c,d){e(a,"object")&&"h"in a&&"s"in a&&"l"in a&&(c=a.l,b=a.s,a=a.h),(a>1||b>1||c>1)&&(a/=360,b/=100,c/=100),a*=360;var f,g,h,i,j;return a=a%360/60,j=2*b*(.5>c?c:1-c),i=j*(1-G(a%2-1)),f=g=h=c-j/2,a=~~a,f+=[j,i,0,0,i,j][a],g+=[i,j,j,i,0,0][a],h+=[0,0,i,j,j,i][a],_(f,g,h,d)},c.rgb2hsb=function(a,b,c){c=$(a,b,c),a=c[0],b=c[1],c=c[2];var d,e,f,g;return f=E(a,b,c),g=f-F(a,b,c),d=0==g?null:f==a?(b-c)/g:f==b?(c-a)/g+2:(a-b)/g+4,d=(d+360)%6*60/360,e=0==g?0:g/f,{h:d,s:e,b:f,toString:X}},c.rgb2hsl=function(a,b,c){c=$(a,b,c),a=c[0],b=c[1],c=c[2];var d,e,f,g,h,i;return g=E(a,b,c),h=F(a,b,c),i=g-h,d=0==i?null:g==a?(b-c)/i:g==b?(c-a)/i+2:(a-b)/i+4,d=(d+360)%6*60/360,f=(g+h)/2,e=0==i?0:.5>f?i/(2*f):i/(2-2*f),{h:d,s:e,l:f,toString:Y}},c.parsePathString=function(a){if(!a)return null;var b=c.path(a);if(b.arr)return c.path.clone(b.arr);var d={a:7,c:6,o:2,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,u:3,z:0},f=[];return e(a,"array")&&e(a[0],"array")&&(f=c.path.clone(a)),f.length||A(a).replace(N,function(a,b,c){var e=[],g=b.toLowerCase();if(c.replace(P,function(a,b){b&&e.push(+b)}),"m"==g&&e.length>2&&(f.push([b].concat(e.splice(0,2))),g="l",b="m"==b?"l":"L"),"o"==g&&1==e.length&&f.push([b,e[0]]),"r"==g)f.push([b].concat(e));else for(;e.length>=d[g]&&(f.push([b].concat(e.splice(0,d[g]))),d[g]););}),f.toString=c.path.toString,b.arr=c.path.clone(f),f};var ab=c.parseTransformString=function(a){if(!a)return null;var b=[];return e(a,"array")&&e(a[0],"array")&&(b=c.path.clone(a)),b.length||A(a).replace(O,function(a,c,d){{var e=[];c.toLowerCase()}d.replace(P,function(a,b){b&&e.push(+b)}),b.push([c].concat(e))}),b.toString=c.path.toString,b};c._.svgTransform2string=m,c._.rgTransform=/^[a-z][\s]*-?\.?\d/i,c._.transform2matrix=n,c._unit2px=q;y.doc.contains||y.doc.compareDocumentPosition?function(a,b){var c=9==a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a==d||!(!d||1!=d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)for(;b;)if(b=b.parentNode,b==a)return!0;return!1};c._.getSomeDefs=o,c._.getSomeSVG=p,c.select=function(a){return a=A(a).replace(/([^\\]):/g,"$1\\:"),w(y.doc.querySelector(a))},c.selectAll=function(a){for(var b=y.doc.querySelectorAll(a),d=(c.set||Array)(),e=0;ei;i++)h[g[i].nodeName]=g[i].nodeValue;return h}if(e(a,"string")){if(!(arguments.length>1))return b("snap.util.getattr."+a,d).firstDefined();var k={};k[a]=c,a=k}for(var l in a)a[z](l)&&b("snap.util.attr."+l,d,a[l]);return d},c.parse=function(a){var b=y.doc.createDocumentFragment(),c=!0,d=y.doc.createElement("div");if(a=A(a),a.match(/^\s*<\s*svg(?:\s|>)/)||(a=""+a+"",c=!1),d.innerHTML=a,a=d.getElementsByTagName("svg")[0])if(c)b=a;else for(;a.firstChild;)b.appendChild(a.firstChild);return new t(b)},c.fragment=function(){for(var a=Array.prototype.slice.call(arguments,0),b=y.doc.createDocumentFragment(),d=0,e=a.length;e>d;d++){var f=a[d];f.node&&f.node.nodeType&&b.appendChild(f.node),f.nodeType&&b.appendChild(f),"string"==typeof f&&b.appendChild(c.parse(f).node)}return new t(b)},c._.make=u,c._.wrap=w,v.prototype.el=function(a,b){var c=u(a,this.node);return b&&c.attr(b),c},s.prototype.children=function(){for(var a=[],b=this.node.childNodes,d=0,e=b.length;e>d;d++)a[d]=c(b[d]);return a},s.prototype.toJSON=function(){var a=[];return x([this],a),a[0]},b.on("snap.util.getattr",function(){var a=b.nt();a=a.substring(a.lastIndexOf(".")+1);var c=a.replace(/[A-Z]/g,function(a){return"-"+a.toLowerCase()});return bb[z](c)?this.node.ownerDocument.defaultView.getComputedStyle(this.node,null).getPropertyValue(c):d(this.node,a)});var bb={"alignment-baseline":0,"baseline-shift":0,clip:0,"clip-path":0,"clip-rule":0,color:0,"color-interpolation":0,"color-interpolation-filters":0,"color-profile":0,"color-rendering":0,cursor:0,direction:0,display:0,"dominant-baseline":0,"enable-background":0,fill:0,"fill-opacity":0,"fill-rule":0,filter:0,"flood-color":0,"flood-opacity":0,font:0,"font-family":0,"font-size":0,"font-size-adjust":0,"font-stretch":0,"font-style":0,"font-variant":0,"font-weight":0,"glyph-orientation-horizontal":0,"glyph-orientation-vertical":0,"image-rendering":0,kerning:0,"letter-spacing":0,"lighting-color":0,marker:0,"marker-end":0,"marker-mid":0,"marker-start":0,mask:0,opacity:0,overflow:0,"pointer-events":0,"shape-rendering":0,"stop-color":0,"stop-opacity":0,stroke:0,"stroke-dasharray":0,"stroke-dashoffset":0,"stroke-linecap":0,"stroke-linejoin":0,"stroke-miterlimit":0,"stroke-opacity":0,"stroke-width":0,"text-anchor":0,"text-decoration":0,"text-rendering":0,"unicode-bidi":0,visibility:0,"word-spacing":0,"writing-mode":0};b.on("snap.util.attr",function(a){var c=b.nt(),e={};c=c.substring(c.lastIndexOf(".")+1),e[c]=a;var f=c.replace(/-(\w)/gi,function(a,b){return b.toUpperCase()}),g=c.replace(/[A-Z]/g,function(a){return"-"+a.toLowerCase()});bb[z](g)?this.node.style[f]=null==a?I:a:d(this.node,e)}),function(){}(v.prototype),c.ajax=function(a,c,d,f){var g=new XMLHttpRequest,h=S();if(g){if(e(c,"function"))f=d,d=c,c=null;else if(e(c,"object")){var i=[];for(var j in c)c.hasOwnProperty(j)&&i.push(encodeURIComponent(j)+"="+encodeURIComponent(c[j]));c=i.join("&")}return g.open(c?"POST":"GET",a,!0),c&&(g.setRequestHeader("X-Requested-With","XMLHttpRequest"),g.setRequestHeader("Content-type","application/x-www-form-urlencoded")),d&&(b.once("snap.ajax."+h+".0",d),b.once("snap.ajax."+h+".200",d),b.once("snap.ajax."+h+".304",d)),g.onreadystatechange=function(){4==g.readyState&&b("snap.ajax."+h+"."+g.status,f,g)},4==g.readyState?g:(g.send(c),g)}},c.load=function(a,b,d){c.ajax(a,function(a){var e=c.parse(a.responseText);d?b.call(d,e):b(e)})};var cb=function(a){var b=a.getBoundingClientRect(),c=a.ownerDocument,d=c.body,e=c.documentElement,f=e.clientTop||d.clientTop||0,h=e.clientLeft||d.clientLeft||0,i=b.top+(g.win.pageYOffset||e.scrollTop||d.scrollTop)-f,j=b.left+(g.win.pageXOffset||e.scrollLeft||d.scrollLeft)-h;return{y:i,x:j}};return c.getElementByPoint=function(a,b){var c=this,d=(c.canvas,y.doc.elementFromPoint(a,b));if(y.win.opera&&"svg"==d.tagName){var e=cb(d),f=d.createSVGRect();f.x=a-e.x,f.y=b-e.y,f.width=f.height=1;var g=d.getIntersectionList(f,null);g.length&&(d=g[g.length-1])}return d?w(d):null},c.plugin=function(a){a(c,s,v,y,t)},y.win.Snap=c,c}(a||this);return d.plugin(function(d,e,f,g,h){function i(a,b){if(null==b){var c=!0;if(b=a.node.getAttribute("linearGradient"==a.type||"radialGradient"==a.type?"gradientTransform":"pattern"==a.type?"patternTransform":"transform"),!b)return new d.Matrix;b=d._.svgTransform2string(b)}else b=d._.rgTransform.test(b)?o(b).replace(/\.{3}|\u2026/g,a._.transform||""):d._.svgTransform2string(b),n(b,"array")&&(b=d.path?d.path.toString.call(b):o(b)),a._.transform=b;var e=d._.transform2matrix(b,a.getBBox(1));return c?e:void(a.matrix=e)}function j(a){function b(a,b){var c=q(a.node,b);c=c&&c.match(f),c=c&&c[2],c&&"#"==c.charAt()&&(c=c.substring(1),c&&(h[c]=(h[c]||[]).concat(function(c){var d={};d[b]=URL(c),q(a.node,d)})))}function c(a){var b=q(a.node,"xlink:href");b&&"#"==b.charAt()&&(b=b.substring(1),b&&(h[b]=(h[b]||[]).concat(function(b){a.attr("xlink:href","#"+b)})))}for(var d,e=a.selectAll("*"),f=/^\s*url\(("|'|)(.*)\1\)\s*$/,g=[],h={},i=0,j=e.length;j>i;i++){d=e[i],b(d,"fill"),b(d,"stroke"),b(d,"filter"),b(d,"mask"),b(d,"clip-path"),c(d);var k=q(d.node,"id");k&&(q(d.node,{id:d.id}),g.push({old:k,id:d.id}))}for(i=0,j=g.length;j>i;i++){var l=h[g[i].old];if(l)for(var m=0,n=l.length;n>m;m++)l[m](g[i].id)}}function k(a,b,c){return function(d){var e=d.slice(a,b);return 1==e.length&&(e=e[0]),c?c(e):e}}function l(a){return function(){var b=a?"<"+this.type:"",c=this.node.attributes,d=this.node.childNodes;if(a)for(var e=0,f=c.length;f>e;e++)b+=" "+c[e].name+'="'+c[e].value.replace(/"/g,'\\"')+'"';if(d.length){for(a&&(b+=">"),e=0,f=d.length;f>e;e++)3==d[e].nodeType?b+=d[e].nodeValue:1==d[e].nodeType&&(b+=u(d[e]).toString());a&&(b+="")}else a&&(b+="/>");return b}}var m=e.prototype,n=d.is,o=String,p=d._unit2px,q=d._.$,r=d._.make,s=d._.getSomeDefs,t="hasOwnProperty",u=d._.wrap;m.getBBox=function(a){if(!d.Matrix||!d.path)return this.node.getBBox();var b=this,c=new d.Matrix;if(b.removed)return d._.box();for(;"use"==b.type;)if(a||(c=c.add(b.transform().localMatrix.translate(b.attr("x")||0,b.attr("y")||0))),b.original)b=b.original;else{var e=b.attr("xlink:href");b=b.original=b.node.ownerDocument.getElementById(e.substring(e.indexOf("#")+1))}var f=b._,g=d.path.get[b.type]||d.path.get.deflt;try{return a?(f.bboxwt=g?d.path.getBBox(b.realPath=g(b)):d._.box(b.node.getBBox()),d._.box(f.bboxwt)):(b.realPath=g(b),b.matrix=b.transform().localMatrix,f.bbox=d.path.getBBox(d.path.map(b.realPath,c.add(b.matrix))),d._.box(f.bbox))}catch(h){return d._.box()}};var v=function(){return this.string};m.transform=function(a){var b=this._;if(null==a){for(var c,e=this,f=new d.Matrix(this.node.getCTM()),g=i(this),h=[g],j=new d.Matrix,k=g.toTransformString(),l=o(g)==o(this.matrix)?o(b.transform):k;"svg"!=e.type&&(e=e.parent());)h.push(i(e));for(c=h.length;c--;)j.add(h[c]);return{string:l,globalMatrix:f,totalMatrix:j,localMatrix:g,diffMatrix:f.clone().add(g.invert()),global:f.toTransformString(),total:j.toTransformString(),local:k,toString:v}}return a instanceof d.Matrix?(this.matrix=a,this._.transform=a.toTransformString()):i(this,a),this.node&&("linearGradient"==this.type||"radialGradient"==this.type?q(this.node,{gradientTransform:this.matrix}):"pattern"==this.type?q(this.node,{patternTransform:this.matrix}):q(this.node,{transform:this.matrix})),this},m.parent=function(){return u(this.node.parentNode)},m.append=m.add=function(a){if(a){if("set"==a.type){var b=this;return a.forEach(function(a){b.add(a)}),this}a=u(a),this.node.appendChild(a.node),a.paper=this.paper}return this},m.appendTo=function(a){return a&&(a=u(a),a.append(this)),this},m.prepend=function(a){if(a){if("set"==a.type){var b,c=this;return a.forEach(function(a){b?b.after(a):c.prepend(a),b=a}),this}a=u(a);var d=a.parent();this.node.insertBefore(a.node,this.node.firstChild),this.add&&this.add(),a.paper=this.paper,this.parent()&&this.parent().add(),d&&d.add()}return this},m.prependTo=function(a){return a=u(a),a.prepend(this),this},m.before=function(a){if("set"==a.type){var b=this;return a.forEach(function(a){var c=a.parent();b.node.parentNode.insertBefore(a.node,b.node),c&&c.add()}),this.parent().add(),this}a=u(a);var c=a.parent();return this.node.parentNode.insertBefore(a.node,this.node),this.parent()&&this.parent().add(),c&&c.add(),a.paper=this.paper,this},m.after=function(a){a=u(a);var b=a.parent();return this.node.nextSibling?this.node.parentNode.insertBefore(a.node,this.node.nextSibling):this.node.parentNode.appendChild(a.node),this.parent()&&this.parent().add(),b&&b.add(),a.paper=this.paper,this},m.insertBefore=function(a){a=u(a);var b=this.parent();return a.node.parentNode.insertBefore(this.node,a.node),this.paper=a.paper,b&&b.add(),a.parent()&&a.parent().add(),this},m.insertAfter=function(a){a=u(a);var b=this.parent();return a.node.parentNode.insertBefore(this.node,a.node.nextSibling),this.paper=a.paper,b&&b.add(),a.parent()&&a.parent().add(),this},m.remove=function(){var a=this.parent();return this.node.parentNode&&this.node.parentNode.removeChild(this.node),delete this.paper,this.removed=!0,a&&a.add(),this},m.select=function(a){return u(this.node.querySelector(a))},m.selectAll=function(a){for(var b=this.node.querySelectorAll(a),c=(d.set||Array)(),e=0;eb;b++)a[b].stop();return this},m.animate=function(a,d,e,f){"function"!=typeof e||e.length||(f=e,e=c.linear),a instanceof w&&(f=a.callback,e=a.easing,d=a.dur,a=a.attr);var g,h,i,j,l=[],m=[],p={},q=this;for(var r in a)if(a[t](r)){q.equal?(j=q.equal(r,o(a[r])),g=j.from,h=j.to,i=j.f):(g=+q.attr(r),h=+a[r]);var s=n(g,"array")?g.length:1;p[r]=k(l.length,l.length+s,i),l=l.concat(g),m=m.concat(h)}var u=c.time(),v=c(l,m,u,u+d,c.time,function(a){var b={};for(var c in p)p[t](c)&&(b[c]=p[c](a));q.attr(b)},e);return q.anims[v.id]=v,v._attrs=a,v._callback=f,b("snap.animcreated."+q.id,v),b.once("mina.finish."+v.id,function(){delete q.anims[v.id],f&&f.call(q)}),b.once("mina.stop."+v.id,function(){delete q.anims[v.id]}),q};var x={};m.data=function(a,c){var e=x[this.id]=x[this.id]||{};if(0==arguments.length)return b("snap.data.get."+this.id,this,e,null),e; + if(1==arguments.length){if(d.is(a,"object")){for(var f in a)a[t](f)&&this.data(f,a[f]);return this}return b("snap.data.get."+this.id,this,e[a],a),e[a]}return e[a]=c,b("snap.data.set."+this.id,this,c,a),this},m.removeData=function(a){return null==a?x[this.id]={}:x[this.id]&&delete x[this.id][a],this},m.outerSVG=m.toString=l(1),m.innerSVG=l(),m.toDataURL=function(){if(a&&a.btoa){var b=this.getBBox(),c=d.format('{contents}',{x:+b.x.toFixed(3),y:+b.y.toFixed(3),width:+b.width.toFixed(3),height:+b.height.toFixed(3),contents:this.outerSVG()});return"data:image/svg+xml;base64,"+btoa(unescape(encodeURIComponent(c)))}},h.prototype.select=m.select,h.prototype.selectAll=m.selectAll}),d.plugin(function(a){function b(a,b,d,e,f,g){return null==b&&"[object SVGMatrix]"==c.call(a)?(this.a=a.a,this.b=a.b,this.c=a.c,this.d=a.d,this.e=a.e,void(this.f=a.f)):void(null!=a?(this.a=+a,this.b=+b,this.c=+d,this.d=+e,this.e=+f,this.f=+g):(this.a=1,this.b=0,this.c=0,this.d=1,this.e=0,this.f=0))}var c=Object.prototype.toString,d=String,e=Math,f="";!function(c){function g(a){return a[0]*a[0]+a[1]*a[1]}function h(a){var b=e.sqrt(g(a));a[0]&&(a[0]/=b),a[1]&&(a[1]/=b)}c.add=function(a,c,d,e,f,g){var h,i,j,k,l=[[],[],[]],m=[[this.a,this.c,this.e],[this.b,this.d,this.f],[0,0,1]],n=[[a,d,f],[c,e,g],[0,0,1]];for(a&&a instanceof b&&(n=[[a.a,a.c,a.e],[a.b,a.d,a.f],[0,0,1]]),h=0;3>h;h++)for(i=0;3>i;i++){for(k=0,j=0;3>j;j++)k+=m[h][j]*n[j][i];l[h][i]=k}return this.a=l[0][0],this.b=l[1][0],this.c=l[0][1],this.d=l[1][1],this.e=l[0][2],this.f=l[1][2],this},c.invert=function(){var a=this,c=a.a*a.d-a.b*a.c;return new b(a.d/c,-a.b/c,-a.c/c,a.a/c,(a.c*a.f-a.d*a.e)/c,(a.b*a.e-a.a*a.f)/c)},c.clone=function(){return new b(this.a,this.b,this.c,this.d,this.e,this.f)},c.translate=function(a,b){return this.add(1,0,0,1,a,b)},c.scale=function(a,b,c,d){return null==b&&(b=a),(c||d)&&this.add(1,0,0,1,c,d),this.add(a,0,0,b,0,0),(c||d)&&this.add(1,0,0,1,-c,-d),this},c.rotate=function(b,c,d){b=a.rad(b),c=c||0,d=d||0;var f=+e.cos(b).toFixed(9),g=+e.sin(b).toFixed(9);return this.add(f,g,-g,f,c,d),this.add(1,0,0,1,-c,-d)},c.x=function(a,b){return a*this.a+b*this.c+this.e},c.y=function(a,b){return a*this.b+b*this.d+this.f},c.get=function(a){return+this[d.fromCharCode(97+a)].toFixed(4)},c.toString=function(){return"matrix("+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)].join()+")"},c.offset=function(){return[this.e.toFixed(4),this.f.toFixed(4)]},c.determinant=function(){return this.a*this.d-this.b*this.c},c.split=function(){var b={};b.dx=this.e,b.dy=this.f;var c=[[this.a,this.c],[this.b,this.d]];b.scalex=e.sqrt(g(c[0])),h(c[0]),b.shear=c[0][0]*c[1][0]+c[0][1]*c[1][1],c[1]=[c[1][0]-c[0][0]*b.shear,c[1][1]-c[0][1]*b.shear],b.scaley=e.sqrt(g(c[1])),h(c[1]),b.shear/=b.scaley,this.determinant()<0&&(b.scalex=-b.scalex);var d=-c[0][1],f=c[1][1];return 0>f?(b.rotate=a.deg(e.acos(f)),0>d&&(b.rotate=360-b.rotate)):b.rotate=a.deg(e.asin(d)),b.isSimple=!(+b.shear.toFixed(9)||b.scalex.toFixed(9)!=b.scaley.toFixed(9)&&b.rotate),b.isSuperSimple=!+b.shear.toFixed(9)&&b.scalex.toFixed(9)==b.scaley.toFixed(9)&&!b.rotate,b.noRotation=!+b.shear.toFixed(9)&&!b.rotate,b},c.toTransformString=function(a){var b=a||this.split();return+b.shear.toFixed(9)?"m"+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)]:(b.scalex=+b.scalex.toFixed(4),b.scaley=+b.scaley.toFixed(4),b.rotate=+b.rotate.toFixed(4),(b.dx||b.dy?"t"+[+b.dx.toFixed(4),+b.dy.toFixed(4)]:f)+(1!=b.scalex||1!=b.scaley?"s"+[b.scalex,b.scaley,0,0]:f)+(b.rotate?"r"+[+b.rotate.toFixed(4),0,0]:f))}}(b.prototype),a.Matrix=b,a.matrix=function(a,c,d,e,f,g){return new b(a,c,d,e,f,g)}}),d.plugin(function(a,c,d,e,f){function g(d){return function(e){if(b.stop(),e instanceof f&&1==e.node.childNodes.length&&("radialGradient"==e.node.firstChild.tagName||"linearGradient"==e.node.firstChild.tagName||"pattern"==e.node.firstChild.tagName)&&(e=e.node.firstChild,n(this).appendChild(e),e=l(e)),e instanceof c)if("radialGradient"==e.type||"linearGradient"==e.type||"pattern"==e.type){e.node.id||p(e.node,{id:e.id});var g=q(e.node.id)}else g=e.attr(d);else if(g=a.color(e),g.error){var h=a(n(this).ownerSVGElement).gradient(e);h?(h.node.id||p(h.node,{id:h.id}),g=q(h.node.id)):g=e}else g=r(g);var i={};i[d]=g,p(this.node,i),this.node.style[d]=t}}function h(a){b.stop(),a==+a&&(a+="px"),this.node.style.fontSize=a}function i(a){for(var b=[],c=a.childNodes,d=0,e=c.length;e>d;d++){var f=c[d];3==f.nodeType&&b.push(f.nodeValue),"tspan"==f.tagName&&b.push(1==f.childNodes.length&&3==f.firstChild.nodeType?f.firstChild.nodeValue:i(f))}return b}function j(){return b.stop(),this.node.style.fontSize}var k=a._.make,l=a._.wrap,m=a.is,n=a._.getSomeDefs,o=/^url\(#?([^)]+)\)$/,p=a._.$,q=a.url,r=String,s=a._.separator,t="";b.on("snap.util.attr.mask",function(a){if(a instanceof c||a instanceof f){if(b.stop(),a instanceof f&&1==a.node.childNodes.length&&(a=a.node.firstChild,n(this).appendChild(a),a=l(a)),"mask"==a.type)var d=a;else d=k("mask",n(this)),d.node.appendChild(a.node);!d.node.id&&p(d.node,{id:d.id}),p(this.node,{mask:q(d.id)})}}),function(a){b.on("snap.util.attr.clip",a),b.on("snap.util.attr.clip-path",a),b.on("snap.util.attr.clipPath",a)}(function(a){if(a instanceof c||a instanceof f){if(b.stop(),"clipPath"==a.type)var d=a;else d=k("clipPath",n(this)),d.node.appendChild(a.node),!d.node.id&&p(d.node,{id:d.id});p(this.node,{"clip-path":q(d.node.id||d.id)})}}),b.on("snap.util.attr.fill",g("fill")),b.on("snap.util.attr.stroke",g("stroke"));var u=/^([lr])(?:\(([^)]*)\))?(.*)$/i;b.on("snap.util.grad.parse",function(a){a=r(a);var b=a.match(u);if(!b)return null;var c=b[1],d=b[2],e=b[3];return d=d.split(/\s*,\s*/).map(function(a){return+a==a?+a:a}),1==d.length&&0==d[0]&&(d=[]),e=e.split("-"),e=e.map(function(a){a=a.split(":");var b={color:a[0]};return a[1]&&(b.offset=parseFloat(a[1])),b}),{type:c,params:d,stops:e}}),b.on("snap.util.attr.d",function(c){b.stop(),m(c,"array")&&m(c[0],"array")&&(c=a.path.toString.call(c)),c=r(c),c.match(/[ruo]/i)&&(c=a.path.toAbsolute(c)),p(this.node,{d:c})})(-1),b.on("snap.util.attr.#text",function(a){b.stop(),a=r(a);for(var c=e.doc.createTextNode(a);this.node.firstChild;)this.node.removeChild(this.node.firstChild);this.node.appendChild(c)})(-1),b.on("snap.util.attr.path",function(a){b.stop(),this.attr({d:a})})(-1),b.on("snap.util.attr.class",function(a){b.stop(),this.node.className.baseVal=a})(-1),b.on("snap.util.attr.viewBox",function(a){var c;c=m(a,"object")&&"x"in a?[a.x,a.y,a.width,a.height].join(" "):m(a,"array")?a.join(" "):a,p(this.node,{viewBox:c}),b.stop()})(-1),b.on("snap.util.attr.transform",function(a){this.transform(a),b.stop()})(-1),b.on("snap.util.attr.r",function(a){"rect"==this.type&&(b.stop(),p(this.node,{rx:a,ry:a}))})(-1),b.on("snap.util.attr.textpath",function(a){if(b.stop(),"text"==this.type){var d,e,f;if(!a&&this.textPath){for(e=this.textPath;e.node.firstChild;)this.node.appendChild(e.node.firstChild);return e.remove(),void delete this.textPath}if(m(a,"string")){var g=n(this),h=l(g.parentNode).path(a);g.appendChild(h.node),d=h.id,h.attr({id:d})}else a=l(a),a instanceof c&&(d=a.attr("id"),d||(d=a.id,a.attr({id:d})));if(d)if(e=this.textPath,f=this.node,e)e.attr({"xlink:href":"#"+d});else{for(e=p("textPath",{"xlink:href":"#"+d});f.firstChild;)e.appendChild(f.firstChild);f.appendChild(e),this.textPath=l(e)}}})(-1),b.on("snap.util.attr.text",function(a){if("text"==this.type){for(var c=this.node,d=function(a){var b=p("tspan");if(m(a,"array"))for(var c=0;c1&&(a=Array.prototype.slice.call(arguments,0));var b={};return h(a,"object")&&!h(a,"array")?b=a:null!=a&&(b={points:a}),this.el("polyline",b)},g.polygon=function(a){arguments.length>1&&(a=Array.prototype.slice.call(arguments,0));var b={};return h(a,"object")&&!h(a,"array")?b=a:null!=a&&(b={points:a}),this.el("polygon",b)},function(){function d(){return this.selectAll("stop")}function e(a,b){var d=k("stop"),e={offset:+b+"%"};return a=c.color(a),e["stop-color"]=a.hex,a.opacity<1&&(e["stop-opacity"]=a.opacity),k(d,e),this.node.appendChild(d),this}function f(){if("linearGradient"==this.type){var a=k(this.node,"x1")||0,b=k(this.node,"x2")||1,d=k(this.node,"y1")||0,e=k(this.node,"y2")||0;return c._.box(a,d,math.abs(b-a),math.abs(e-d))}var f=this.node.cx||.5,g=this.node.cy||.5,h=this.node.r||0;return c._.box(f-h,g-h,2*h,2*h)}function h(a,c){function d(a,b){for(var c=(b-l)/(a-m),d=m;a>d;d++)g[d].offset=+(+l+c*(d-m)).toFixed(2);m=a,l=b}var e,f=b("snap.util.grad.parse",null,c).firstDefined();if(!f)return null;f.params.unshift(a),e="l"==f.type.toLowerCase()?i.apply(0,f.params):j.apply(0,f.params),f.type!=f.type.toLowerCase()&&k(e.node,{gradientUnits:"userSpaceOnUse"});var g=f.stops,h=g.length,l=0,m=0;h--;for(var n=0;h>n;n++)"offset"in g[n]&&d(n,g[n].offset);for(g[h].offset=g[h].offset||100,d(h,g[h].offset),n=0;h>=n;n++){var o=g[n];e.addStop(o.color,o.offset)}return e}function i(a,b,g,h,i){var j=c._.make("linearGradient",a);return j.stops=d,j.addStop=e,j.getBBox=f,null!=b&&k(j.node,{x1:b,y1:g,x2:h,y2:i}),j}function j(a,b,g,h,i,j){var l=c._.make("radialGradient",a);return l.stops=d,l.addStop=e,l.getBBox=f,null!=b&&k(l.node,{cx:b,cy:g,r:h}),null!=i&&null!=j&&k(l.node,{fx:i,fy:j}),l}var k=c._.$;g.gradient=function(a){return h(this.defs,a)},g.gradientLinear=function(a,b,c,d){return i(this.defs,a,b,c,d)},g.gradientRadial=function(a,b,c,d,e){return j(this.defs,a,b,c,d,e)},g.toString=function(){var a,b=this.node.ownerDocument,d=b.createDocumentFragment(),e=b.createElement("div"),f=this.node.cloneNode(!0);return d.appendChild(e),e.appendChild(f),c._.$(f,{xmlns:"http://www.w3.org/2000/svg"}),a=e.innerHTML,d.removeChild(d.firstChild),a},g.toDataURL=function(){return a&&a.btoa?"data:image/svg+xml;base64,"+btoa(unescape(encodeURIComponent(this))):void 0},g.clear=function(){for(var a,b=this.node.firstChild;b;)a=b.nextSibling,"defs"!=b.tagName?b.parentNode.removeChild(b):g.clear.call({node:b}),b=a}}()}),d.plugin(function(a,b){function c(a){var b=c.ps=c.ps||{};return b[a]?b[a].sleep=100:b[a]={sleep:100},setTimeout(function(){for(var c in b)b[K](c)&&c!=a&&(b[c].sleep--,!b[c].sleep&&delete b[c])}),b[a]}function d(a,b,c,d){return null==a&&(a=b=c=d=0),null==b&&(b=a.y,c=a.width,d=a.height,a=a.x),{x:a,y:b,width:c,w:c,height:d,h:d,x2:a+c,y2:b+d,cx:a+c/2,cy:b+d/2,r1:N.min(c,d)/2,r2:N.max(c,d)/2,r0:N.sqrt(c*c+d*d)/2,path:w(a,b,c,d),vb:[a,b,c,d].join(" ")}}function e(){return this.join(",").replace(L,"$1")}function f(a){var b=J(a);return b.toString=e,b}function g(a,b,c,d,e,f,g,h,j){return null==j?n(a,b,c,d,e,f,g,h):i(a,b,c,d,e,f,g,h,o(a,b,c,d,e,f,g,h,j))}function h(c,d){function e(a){return+(+a).toFixed(3)}return a._.cacher(function(a,f,h){a instanceof b&&(a=a.attr("d")),a=E(a);for(var j,k,l,m,n,o="",p={},q=0,r=0,s=a.length;s>r;r++){if(l=a[r],"M"==l[0])j=+l[1],k=+l[2];else{if(m=g(j,k,l[1],l[2],l[3],l[4],l[5],l[6]),q+m>f){if(d&&!p.start){if(n=g(j,k,l[1],l[2],l[3],l[4],l[5],l[6],f-q),o+=["C"+e(n.start.x),e(n.start.y),e(n.m.x),e(n.m.y),e(n.x),e(n.y)],h)return o;p.start=o,o=["M"+e(n.x),e(n.y)+"C"+e(n.n.x),e(n.n.y),e(n.end.x),e(n.end.y),e(l[5]),e(l[6])].join(),q+=m,j=+l[5],k=+l[6];continue}if(!c&&!d)return n=g(j,k,l[1],l[2],l[3],l[4],l[5],l[6],f-q)}q+=m,j=+l[5],k=+l[6]}o+=l.shift()+l}return p.end=o,n=c?q:d?p:i(j,k,l[0],l[1],l[2],l[3],l[4],l[5],1)},null,a._.clone)}function i(a,b,c,d,e,f,g,h,i){var j=1-i,k=R(j,3),l=R(j,2),m=i*i,n=m*i,o=k*a+3*l*i*c+3*j*i*i*e+n*g,p=k*b+3*l*i*d+3*j*i*i*f+n*h,q=a+2*i*(c-a)+m*(e-2*c+a),r=b+2*i*(d-b)+m*(f-2*d+b),s=c+2*i*(e-c)+m*(g-2*e+c),t=d+2*i*(f-d)+m*(h-2*f+d),u=j*a+i*c,v=j*b+i*d,w=j*e+i*g,x=j*f+i*h,y=90-180*N.atan2(q-s,r-t)/O;return{x:o,y:p,m:{x:q,y:r},n:{x:s,y:t},start:{x:u,y:v},end:{x:w,y:x},alpha:y}}function j(b,c,e,f,g,h,i,j){a.is(b,"array")||(b=[b,c,e,f,g,h,i,j]);var k=D.apply(null,b);return d(k.min.x,k.min.y,k.max.x-k.min.x,k.max.y-k.min.y)}function k(a,b,c){return b>=a.x&&b<=a.x+a.width&&c>=a.y&&c<=a.y+a.height}function l(a,b){return a=d(a),b=d(b),k(b,a.x,a.y)||k(b,a.x2,a.y)||k(b,a.x,a.y2)||k(b,a.x2,a.y2)||k(a,b.x,b.y)||k(a,b.x2,b.y)||k(a,b.x,b.y2)||k(a,b.x2,b.y2)||(a.xb.x||b.xa.x)&&(a.yb.y||b.ya.y)}function m(a,b,c,d,e){var f=-3*b+9*c-9*d+3*e,g=a*f+6*b-12*c+6*d;return a*g-3*b+3*c}function n(a,b,c,d,e,f,g,h,i){null==i&&(i=1),i=i>1?1:0>i?0:i;for(var j=i/2,k=12,l=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],n=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],o=0,p=0;k>p;p++){var q=j*l[p]+j,r=m(q,a,c,e,g),s=m(q,b,d,f,h),t=r*r+s*s;o+=n[p]*N.sqrt(t)}return j*o}function o(a,b,c,d,e,f,g,h,i){if(!(0>i||n(a,b,c,d,e,f,g,h)o;)l/=2,m+=(i>j?1:-1)*l,j=n(a,b,c,d,e,f,g,h,m);return m}}function p(a,b,c,d,e,f,g,h){if(!(Q(a,c)Q(e,g)||Q(b,d)Q(f,h))){var i=(a*d-b*c)*(e-g)-(a-c)*(e*h-f*g),j=(a*d-b*c)*(f-h)-(b-d)*(e*h-f*g),k=(a-c)*(f-h)-(b-d)*(e-g);if(k){var l=i/k,m=j/k,n=+l.toFixed(2),o=+m.toFixed(2);if(!(n<+P(a,c).toFixed(2)||n>+Q(a,c).toFixed(2)||n<+P(e,g).toFixed(2)||n>+Q(e,g).toFixed(2)||o<+P(b,d).toFixed(2)||o>+Q(b,d).toFixed(2)||o<+P(f,h).toFixed(2)||o>+Q(f,h).toFixed(2)))return{x:l,y:m}}}}function q(a,b,c){var d=j(a),e=j(b);if(!l(d,e))return c?0:[];for(var f=n.apply(0,a),g=n.apply(0,b),h=~~(f/8),k=~~(g/8),m=[],o=[],q={},r=c?0:[],s=0;h+1>s;s++){var t=i.apply(0,a.concat(s/h));m.push({x:t.x,y:t.y,t:s/h})}for(s=0;k+1>s;s++)t=i.apply(0,b.concat(s/k)),o.push({x:t.x,y:t.y,t:s/k});for(s=0;h>s;s++)for(var u=0;k>u;u++){var v=m[s],w=m[s+1],x=o[u],y=o[u+1],z=S(w.x-v.x)<.001?"y":"x",A=S(y.x-x.x)<.001?"y":"x",B=p(v.x,v.y,w.x,w.y,x.x,x.y,y.x,y.y);if(B){if(q[B.x.toFixed(4)]==B.y.toFixed(4))continue;q[B.x.toFixed(4)]=B.y.toFixed(4);var C=v.t+S((B[z]-v[z])/(w[z]-v[z]))*(w.t-v.t),D=x.t+S((B[A]-x[A])/(y[A]-x[A]))*(y.t-x.t);C>=0&&1>=C&&D>=0&&1>=D&&(c?r++:r.push({x:B.x,y:B.y,t1:C,t2:D}))}}return r}function r(a,b){return t(a,b)}function s(a,b){return t(a,b,1)}function t(a,b,c){a=E(a),b=E(b);for(var d,e,f,g,h,i,j,k,l,m,n=c?0:[],o=0,p=a.length;p>o;o++){var r=a[o];if("M"==r[0])d=h=r[1],e=i=r[2];else{"C"==r[0]?(l=[d,e].concat(r.slice(1)),d=l[6],e=l[7]):(l=[d,e,d,e,h,i,h,i],d=h,e=i);for(var s=0,t=b.length;t>s;s++){var u=b[s];if("M"==u[0])f=j=u[1],g=k=u[2];else{"C"==u[0]?(m=[f,g].concat(u.slice(1)),f=m[6],g=m[7]):(m=[f,g,f,g,j,k,j,k],f=j,g=k);var v=q(l,m,c);if(c)n+=v;else{for(var w=0,x=v.length;x>w;w++)v[w].segment1=o,v[w].segment2=s,v[w].bez1=l,v[w].bez2=m;n=n.concat(v)}}}}}return n}function u(a,b,c){var d=v(a);return k(d,b,c)&&t(a,[["M",b,c],["H",d.x2+10]],1)%2==1}function v(a){var b=c(a);if(b.bbox)return J(b.bbox);if(!a)return d();a=E(a);for(var e,f=0,g=0,h=[],i=[],j=0,k=a.length;k>j;j++)if(e=a[j],"M"==e[0])f=e[1],g=e[2],h.push(f),i.push(g);else{var l=D(f,g,e[1],e[2],e[3],e[4],e[5],e[6]);h=h.concat(l.min.x,l.max.x),i=i.concat(l.min.y,l.max.y),f=e[5],g=e[6]}var m=P.apply(0,h),n=P.apply(0,i),o=Q.apply(0,h),p=Q.apply(0,i),q=d(m,n,o-m,p-n);return b.bbox=J(q),q}function w(a,b,c,d,f){if(f)return[["M",+a+ +f,b],["l",c-2*f,0],["a",f,f,0,0,1,f,f],["l",0,d-2*f],["a",f,f,0,0,1,-f,f],["l",2*f-c,0],["a",f,f,0,0,1,-f,-f],["l",0,2*f-d],["a",f,f,0,0,1,f,-f],["z"]];var g=[["M",a,b],["l",c,0],["l",0,d],["l",-c,0],["z"]];return g.toString=e,g}function x(a,b,c,d,f){if(null==f&&null==d&&(d=c),a=+a,b=+b,c=+c,d=+d,null!=f)var g=Math.PI/180,h=a+c*Math.cos(-d*g),i=a+c*Math.cos(-f*g),j=b+c*Math.sin(-d*g),k=b+c*Math.sin(-f*g),l=[["M",h,j],["A",c,c,0,+(f-d>180),0,i,k]];else l=[["M",a,b],["m",0,-d],["a",c,d,0,1,1,0,2*d],["a",c,d,0,1,1,0,-2*d],["z"]];return l.toString=e,l}function y(b){var d=c(b),g=String.prototype.toLowerCase;if(d.rel)return f(d.rel);a.is(b,"array")&&a.is(b&&b[0],"array")||(b=a.parsePathString(b));var h=[],i=0,j=0,k=0,l=0,m=0;"M"==b[0][0]&&(i=b[0][1],j=b[0][2],k=i,l=j,m++,h.push(["M",i,j]));for(var n=m,o=b.length;o>n;n++){var p=h[n]=[],q=b[n];if(q[0]!=g.call(q[0]))switch(p[0]=g.call(q[0]),p[0]){case"a":p[1]=q[1],p[2]=q[2],p[3]=q[3],p[4]=q[4],p[5]=q[5],p[6]=+(q[6]-i).toFixed(3),p[7]=+(q[7]-j).toFixed(3);break;case"v":p[1]=+(q[1]-j).toFixed(3);break;case"m":k=q[1],l=q[2];default:for(var r=1,s=q.length;s>r;r++)p[r]=+(q[r]-(r%2?i:j)).toFixed(3)}else{p=h[n]=[],"m"==q[0]&&(k=q[1]+i,l=q[2]+j);for(var t=0,u=q.length;u>t;t++)h[n][t]=q[t]}var v=h[n].length;switch(h[n][0]){case"z":i=k,j=l;break;case"h":i+=+h[n][v-1];break;case"v":j+=+h[n][v-1];break;default:i+=+h[n][v-2],j+=+h[n][v-1]}}return h.toString=e,d.rel=f(h),h}function z(b){var d=c(b);if(d.abs)return f(d.abs);if(I(b,"array")&&I(b&&b[0],"array")||(b=a.parsePathString(b)),!b||!b.length)return[["M",0,0]];var g,h=[],i=0,j=0,k=0,l=0,m=0;"M"==b[0][0]&&(i=+b[0][1],j=+b[0][2],k=i,l=j,m++,h[0]=["M",i,j]);for(var n,o,p=3==b.length&&"M"==b[0][0]&&"R"==b[1][0].toUpperCase()&&"Z"==b[2][0].toUpperCase(),q=m,r=b.length;r>q;q++){if(h.push(n=[]),o=b[q],g=o[0],g!=g.toUpperCase())switch(n[0]=g.toUpperCase(),n[0]){case"A":n[1]=o[1],n[2]=o[2],n[3]=o[3],n[4]=o[4],n[5]=o[5],n[6]=+o[6]+i,n[7]=+o[7]+j;break;case"V":n[1]=+o[1]+j;break;case"H":n[1]=+o[1]+i;break;case"R":for(var s=[i,j].concat(o.slice(1)),t=2,u=s.length;u>t;t++)s[t]=+s[t]+i,s[++t]=+s[t]+j;h.pop(),h=h.concat(G(s,p));break;case"O":h.pop(),s=x(i,j,o[1],o[2]),s.push(s[0]),h=h.concat(s);break;case"U":h.pop(),h=h.concat(x(i,j,o[1],o[2],o[3])),n=["U"].concat(h[h.length-1].slice(-2));break;case"M":k=+o[1]+i,l=+o[2]+j;default:for(t=1,u=o.length;u>t;t++)n[t]=+o[t]+(t%2?i:j)}else if("R"==g)s=[i,j].concat(o.slice(1)),h.pop(),h=h.concat(G(s,p)),n=["R"].concat(o.slice(-2));else if("O"==g)h.pop(),s=x(i,j,o[1],o[2]),s.push(s[0]),h=h.concat(s);else if("U"==g)h.pop(),h=h.concat(x(i,j,o[1],o[2],o[3])),n=["U"].concat(h[h.length-1].slice(-2));else for(var v=0,w=o.length;w>v;v++)n[v]=o[v];if(g=g.toUpperCase(),"O"!=g)switch(n[0]){case"Z":i=+k,j=+l;break;case"H":i=n[1];break;case"V":j=n[1];break;case"M":k=n[n.length-2],l=n[n.length-1];default:i=n[n.length-2],j=n[n.length-1]}}return h.toString=e,d.abs=f(h),h}function A(a,b,c,d){return[a,b,c,d,c,d]}function B(a,b,c,d,e,f){var g=1/3,h=2/3;return[g*a+h*c,g*b+h*d,g*e+h*c,g*f+h*d,e,f]}function C(b,c,d,e,f,g,h,i,j,k){var l,m=120*O/180,n=O/180*(+f||0),o=[],p=a._.cacher(function(a,b,c){var d=a*N.cos(c)-b*N.sin(c),e=a*N.sin(c)+b*N.cos(c);return{x:d,y:e}});if(k)y=k[0],z=k[1],w=k[2],x=k[3];else{l=p(b,c,-n),b=l.x,c=l.y,l=p(i,j,-n),i=l.x,j=l.y;var q=(N.cos(O/180*f),N.sin(O/180*f),(b-i)/2),r=(c-j)/2,s=q*q/(d*d)+r*r/(e*e);s>1&&(s=N.sqrt(s),d=s*d,e=s*e);var t=d*d,u=e*e,v=(g==h?-1:1)*N.sqrt(S((t*u-t*r*r-u*q*q)/(t*r*r+u*q*q))),w=v*d*r/e+(b+i)/2,x=v*-e*q/d+(c+j)/2,y=N.asin(((c-x)/e).toFixed(9)),z=N.asin(((j-x)/e).toFixed(9));y=w>b?O-y:y,z=w>i?O-z:z,0>y&&(y=2*O+y),0>z&&(z=2*O+z),h&&y>z&&(y-=2*O),!h&&z>y&&(z-=2*O)}var A=z-y;if(S(A)>m){var B=z,D=i,E=j;z=y+m*(h&&z>y?1:-1),i=w+d*N.cos(z),j=x+e*N.sin(z),o=C(i,j,d,e,f,0,h,D,E,[z,B,w,x])}A=z-y;var F=N.cos(y),G=N.sin(y),H=N.cos(z),I=N.sin(z),J=N.tan(A/4),K=4/3*d*J,L=4/3*e*J,M=[b,c],P=[b+K*G,c-L*F],Q=[i+K*I,j-L*H],R=[i,j];if(P[0]=2*M[0]-P[0],P[1]=2*M[1]-P[1],k)return[P,Q,R].concat(o);o=[P,Q,R].concat(o).join().split(",");for(var T=[],U=0,V=o.length;V>U;U++)T[U]=U%2?p(o[U-1],o[U],n).y:p(o[U],o[U+1],n).x;return T}function D(a,b,c,d,e,f,g,h){for(var i,j,k,l,m,n,o,p,q=[],r=[[],[]],s=0;2>s;++s)if(0==s?(j=6*a-12*c+6*e,i=-3*a+9*c-9*e+3*g,k=3*c-3*a):(j=6*b-12*d+6*f,i=-3*b+9*d-9*f+3*h,k=3*d-3*b),S(i)<1e-12){if(S(j)<1e-12)continue;l=-k/j,l>0&&1>l&&q.push(l)}else o=j*j-4*k*i,p=N.sqrt(o),0>o||(m=(-j+p)/(2*i),m>0&&1>m&&q.push(m),n=(-j-p)/(2*i),n>0&&1>n&&q.push(n));for(var t,u=q.length,v=u;u--;)l=q[u],t=1-l,r[0][u]=t*t*t*a+3*t*t*l*c+3*t*l*l*e+l*l*l*g,r[1][u]=t*t*t*b+3*t*t*l*d+3*t*l*l*f+l*l*l*h;return r[0][v]=a,r[1][v]=b,r[0][v+1]=g,r[1][v+1]=h,r[0].length=r[1].length=v+2,{min:{x:P.apply(0,r[0]),y:P.apply(0,r[1])},max:{x:Q.apply(0,r[0]),y:Q.apply(0,r[1])}}}function E(a,b){var d=!b&&c(a);if(!b&&d.curve)return f(d.curve);for(var e=z(a),g=b&&z(b),h={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},i={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},j=(function(a,b,c){var d,e;if(!a)return["C",b.x,b.y,b.x,b.y,b.x,b.y];switch(!(a[0]in{T:1,Q:1})&&(b.qx=b.qy=null),a[0]){case"M":b.X=a[1],b.Y=a[2];break;case"A":a=["C"].concat(C.apply(0,[b.x,b.y].concat(a.slice(1))));break;case"S":"C"==c||"S"==c?(d=2*b.x-b.bx,e=2*b.y-b.by):(d=b.x,e=b.y),a=["C",d,e].concat(a.slice(1));break;case"T":"Q"==c||"T"==c?(b.qx=2*b.x-b.qx,b.qy=2*b.y-b.qy):(b.qx=b.x,b.qy=b.y),a=["C"].concat(B(b.x,b.y,b.qx,b.qy,a[1],a[2]));break;case"Q":b.qx=a[1],b.qy=a[2],a=["C"].concat(B(b.x,b.y,a[1],a[2],a[3],a[4]));break;case"L":a=["C"].concat(A(b.x,b.y,a[1],a[2]));break;case"H":a=["C"].concat(A(b.x,b.y,a[1],b.y));break;case"V":a=["C"].concat(A(b.x,b.y,b.x,a[1]));break;case"Z":a=["C"].concat(A(b.x,b.y,b.X,b.Y))}return a}),k=function(a,b){if(a[b].length>7){a[b].shift();for(var c=a[b];c.length;)m[b]="A",g&&(n[b]="A"),a.splice(b++,0,["C"].concat(c.splice(0,6)));a.splice(b,1),r=Q(e.length,g&&g.length||0)}},l=function(a,b,c,d,f){a&&b&&"M"==a[f][0]&&"M"!=b[f][0]&&(b.splice(f,0,["M",d.x,d.y]),c.bx=0,c.by=0,c.x=a[f][1],c.y=a[f][2],r=Q(e.length,g&&g.length||0))},m=[],n=[],o="",p="",q=0,r=Q(e.length,g&&g.length||0);r>q;q++){e[q]&&(o=e[q][0]),"C"!=o&&(m[q]=o,q&&(p=m[q-1])),e[q]=j(e[q],h,p),"A"!=m[q]&&"C"==o&&(m[q]="C"),k(e,q),g&&(g[q]&&(o=g[q][0]),"C"!=o&&(n[q]=o,q&&(p=n[q-1])),g[q]=j(g[q],i,p),"A"!=n[q]&&"C"==o&&(n[q]="C"),k(g,q)),l(e,g,h,i,q),l(g,e,i,h,q);var s=e[q],t=g&&g[q],u=s.length,v=g&&t.length;h.x=s[u-2],h.y=s[u-1],h.bx=M(s[u-4])||h.x,h.by=M(s[u-3])||h.y,i.bx=g&&(M(t[v-4])||i.x),i.by=g&&(M(t[v-3])||i.y),i.x=g&&t[v-2],i.y=g&&t[v-1]}return g||(d.curve=f(e)),g?[e,g]:e}function F(a,b){if(!b)return a;var c,d,e,f,g,h,i;for(a=E(a),e=0,g=a.length;g>e;e++)for(i=a[e],f=1,h=i.length;h>f;f+=2)c=b.x(i[f],i[f+1]),d=b.y(i[f],i[f+1]),i[f]=c,i[f+1]=d;return a}function G(a,b){for(var c=[],d=0,e=a.length;e-2*!b>d;d+=2){var f=[{x:+a[d-2],y:+a[d-1]},{x:+a[d],y:+a[d+1]},{x:+a[d+2],y:+a[d+3]},{x:+a[d+4],y:+a[d+5]}];b?d?e-4==d?f[3]={x:+a[0],y:+a[1]}:e-2==d&&(f[2]={x:+a[0],y:+a[1]},f[3]={x:+a[2],y:+a[3]}):f[0]={x:+a[e-2],y:+a[e-1]}:e-4==d?f[3]=f[2]:d||(f[0]={x:+a[d],y:+a[d+1]}),c.push(["C",(-f[0].x+6*f[1].x+f[2].x)/6,(-f[0].y+6*f[1].y+f[2].y)/6,(f[1].x+6*f[2].x-f[3].x)/6,(f[1].y+6*f[2].y-f[3].y)/6,f[2].x,f[2].y])}return c}var H=b.prototype,I=a.is,J=a._.clone,K="hasOwnProperty",L=/,?([a-z]),?/gi,M=parseFloat,N=Math,O=N.PI,P=N.min,Q=N.max,R=N.pow,S=N.abs,T=h(1),U=h(),V=h(0,1),W=a._unit2px,X={path:function(a){return a.attr("path")},circle:function(a){var b=W(a);return x(b.cx,b.cy,b.r)},ellipse:function(a){var b=W(a);return x(b.cx||0,b.cy||0,b.rx,b.ry)},rect:function(a){var b=W(a);return w(b.x||0,b.y||0,b.width,b.height,b.rx,b.ry)},image:function(a){var b=W(a);return w(b.x||0,b.y||0,b.width,b.height)},line:function(a){return"M"+[a.attr("x1")||0,a.attr("y1")||0,a.attr("x2"),a.attr("y2")]},polyline:function(a){return"M"+a.attr("points")},polygon:function(a){return"M"+a.attr("points")+"z"},deflt:function(a){var b=a.node.getBBox();return w(b.x,b.y,b.width,b.height)}};a.path=c,a.path.getTotalLength=T,a.path.getPointAtLength=U,a.path.getSubpath=function(a,b,c){if(this.getTotalLength(a)-c<1e-6)return V(a,b).end;var d=V(a,c,1);return b?V(d,b).end:d},H.getTotalLength=function(){return this.node.getTotalLength?this.node.getTotalLength():void 0},H.getPointAtLength=function(a){return U(this.attr("d"),a)},H.getSubpath=function(b,c){return a.path.getSubpath(this.attr("d"),b,c)},a._.box=d,a.path.findDotsAtSegment=i,a.path.bezierBBox=j,a.path.isPointInsideBBox=k,a.closest=function(b,c,e,f){for(var g=100,h=d(b-g/2,c-g/2,g,g),i=[],j=e[0].hasOwnProperty("x")?function(a){return{x:e[a].x,y:e[a].y}}:function(a){return{x:e[a],y:f[a]}},l=0;1e6>=g&&!l;){for(var m=0,n=e.length;n>m;m++){var o=j(m);if(k(h,o.x,o.y)){l++,i.push(o);break}}l||(g*=2,h=d(b-g/2,c-g/2,g,g))}if(1e6!=g){var p,q=1/0;for(m=0,n=i.length;n>m;m++){var r=a.len(b,c,i[m].x,i[m].y);q>r&&(q=r,i[m].len=r,p=i[m])}return p}},a.path.isBBoxIntersect=l,a.path.intersection=r,a.path.intersectionNumber=s,a.path.isPointInside=u,a.path.getBBox=v,a.path.get=X,a.path.toRelative=y,a.path.toAbsolute=z,a.path.toCubic=E,a.path.map=F,a.path.toString=e,a.path.clone=f}),d.plugin(function(a){var d=Math.max,e=Math.min,f=function(a){if(this.items=[],this.bindings={},this.length=0,this.type="set",a)for(var b=0,c=a.length;c>b;b++)a[b]&&(this[this.items.length]=this.items[this.items.length]=a[b],this.length++)},g=f.prototype;g.push=function(){for(var a,b,c=0,d=arguments.length;d>c;c++)a=arguments[c],a&&(b=this.items.length,this[b]=this.items[b]=a,this.length++);return this},g.pop=function(){return this.length&&delete this[this.length--],this.items.pop()},g.forEach=function(a,b){for(var c=0,d=this.items.length;d>c;c++)if(a.call(b,this.items[c],c)===!1)return this;return this},g.animate=function(d,e,f,g){"function"!=typeof f||f.length||(g=f,f=c.linear),d instanceof a._.Animation&&(g=d.callback,f=d.easing,e=f.dur,d=d.attr);var h=arguments;if(a.is(d,"array")&&a.is(h[h.length-1],"array"))var i=!0;var j,k=function(){j?this.b=j:j=this.b},l=0,m=this,n=g&&function(){++l==m.length&&g.call(this) +};return this.forEach(function(a,c){b.once("snap.animcreated."+a.id,k),i?h[c]&&a.animate.apply(a,h[c]):a.animate(d,e,f,n)})},g.remove=function(){for(;this.length;)this.pop().remove();return this},g.bind=function(a,b,c){var d={};if("function"==typeof b)this.bindings[a]=b;else{var e=c||a;this.bindings[a]=function(a){d[e]=a,b.attr(d)}}return this},g.attr=function(a){var b={};for(var c in a)this.bindings[c]?this.bindings[c](a[c]):b[c]=a[c];for(var d=0,e=this.items.length;e>d;d++)this.items[d].attr(b);return this},g.clear=function(){for(;this.length;)this.pop()},g.splice=function(a,b){a=0>a?d(this.length+a,0):a,b=d(0,e(this.length-a,b));var c,g=[],h=[],i=[];for(c=2;cc;c++)h.push(this[a+c]);for(;cc?i[c]:g[c-j];for(c=this.items.length=this.length-=b-j;this[c];)delete this[c++];return new f(h)},g.exclude=function(a){for(var b=0,c=this.length;c>b;b++)if(this[b]==a)return this.splice(b,1),!0;return!1},g.insertAfter=function(a){for(var b=this.items.length;b--;)this.items[b].insertAfter(a);return this},g.getBBox=function(){for(var a=[],b=[],c=[],f=[],g=this.items.length;g--;)if(!this.items[g].removed){var h=this.items[g].getBBox();a.push(h.x),b.push(h.y),c.push(h.x+h.width),f.push(h.y+h.height)}return a=e.apply(0,a),b=e.apply(0,b),c=d.apply(0,c),f=d.apply(0,f),{x:a,y:b,x2:c,y2:f,width:c-a,height:f-b,cx:a+(c-a)/2,cy:b+(f-b)/2}},g.clone=function(a){a=new f;for(var b=0,c=this.items.length;c>b;b++)a.push(this.items[b].clone());return a},g.toString=function(){return"Snap‘s set"},g.type="set",a.Set=f,a.set=function(){var a=new f;return arguments.length&&a.push.apply(a,Array.prototype.slice.call(arguments,0)),a}}),d.plugin(function(a,c){function d(a){var b=a[0];switch(b.toLowerCase()){case"t":return[b,0,0];case"m":return[b,1,0,0,1,0,0];case"r":return 4==a.length?[b,0,a[2],a[3]]:[b,0];case"s":return 5==a.length?[b,1,1,a[3],a[4]]:3==a.length?[b,1,1]:[b,1]}}function e(b,c,e){c=p(c).replace(/\.{3}|\u2026/g,b),b=a.parseTransformString(b)||[],c=a.parseTransformString(c)||[];for(var f,g,h,i,l=Math.max(b.length,c.length),m=[],n=[],o=0;l>o;o++){if(h=b[o]||d(c[o]),i=c[o]||d(h),h[0]!=i[0]||"r"==h[0].toLowerCase()&&(h[2]!=i[2]||h[3]!=i[3])||"s"==h[0].toLowerCase()&&(h[3]!=i[3]||h[4]!=i[4])){b=a._.transform2matrix(b,e()),c=a._.transform2matrix(c,e()),m=[["m",b.a,b.b,b.c,b.d,b.e,b.f]],n=[["m",c.a,c.b,c.c,c.d,c.e,c.f]];break}for(m[o]=[],n[o]=[],f=0,g=Math.max(h.length,i.length);g>f;f++)f in h&&(m[o][f]=h[f]),f in i&&(n[o][f]=i[f])}return{from:k(m),to:k(n),f:j(m)}}function f(a){return a}function g(a){return function(b){return+b.toFixed(3)+a}}function h(a){return a.join(" ")}function i(b){return a.rgb(b[0],b[1],b[2])}function j(a){var b,c,d,e,f,g,h=0,i=[];for(b=0,c=a.length;c>b;b++){for(f="[",g=['"'+a[b][0]+'"'],d=1,e=a[b].length;e>d;d++)g[d]="val["+h++ +"]";f+=g+"]",i[b]=f}return Function("val","return Snap.path.toString.call(["+i+"])")}function k(a){for(var b=[],c=0,d=a.length;d>c;c++)for(var e=1,f=a[c].length;f>e;e++)b.push(a[c][e]);return b}function l(a){return isFinite(parseFloat(a))}function m(b,c){return a.is(b,"array")&&a.is(c,"array")?b.toString()==c.toString():!1}var n={},o=/[a-z]+$/i,p=String;n.stroke=n.fill="colour",c.prototype.equal=function(a,c){return b("snap.util.equal",this,a,c).firstDefined()},b.on("snap.util.equal",function(b,c){var d,q,r=p(this.attr(b)||""),s=this;if(l(r)&&l(c))return{from:parseFloat(r),to:parseFloat(c),f:f};if("colour"==n[b])return d=a.color(r),q=a.color(c),{from:[d.r,d.g,d.b,d.opacity],to:[q.r,q.g,q.b,q.opacity],f:i};if("viewBox"==b)return d=this.attr(b).vb.split(" ").map(Number),q=c.split(" ").map(Number),{from:d,to:q,f:h};if("transform"==b||"gradientTransform"==b||"patternTransform"==b)return c instanceof a.Matrix&&(c=c.toTransformString()),a._.rgTransform.test(c)||(c=a._.svgTransform2string(c)),e(r,c,function(){return s.getBBox(1)});if("d"==b||"path"==b)return d=a.path.toCubic(r,c),{from:k(d[0]),to:k(d[1]),f:j(d[0])};if("points"==b)return d=p(r).split(a._.separator),q=p(c).split(a._.separator),{from:d,to:q,f:function(a){return a}};var t=r.match(o),u=p(c).match(o);return t&&m(t,u)?{from:parseFloat(r),to:parseFloat(c),f:g(t)}:{from:this.asPX(b),to:this.asPX(b,c),f:f}})}),d.plugin(function(a,c,d,e){for(var f=c.prototype,g="hasOwnProperty",h=("createTouch"in e.doc),i=["click","dblclick","mousedown","mousemove","mouseout","mouseover","mouseup","touchstart","touchmove","touchend","touchcancel"],j={mousedown:"touchstart",mousemove:"touchmove",mouseup:"touchend"},k=(function(a,b){var c="y"==a?"scrollTop":"scrollLeft",d=b&&b.node?b.node.ownerDocument:e.doc;return d[c in d.documentElement?"documentElement":"body"][c]}),l=function(){return this.originalEvent.preventDefault()},m=function(){return this.originalEvent.stopPropagation()},n=function(a,b,c,d){var e=h&&j[b]?j[b]:b,f=function(e){var f=k("y",d),i=k("x",d);if(h&&j[g](b))for(var n=0,o=e.targetTouches&&e.targetTouches.length;o>n;n++)if(e.targetTouches[n].target==a||a.contains(e.targetTouches[n].target)){var p=e;e=e.targetTouches[n],e.originalEvent=p,e.preventDefault=l,e.stopPropagation=m;break}var q=e.clientX+i,r=e.clientY+f;return c.call(d,e,q,r)};return b!==e&&a.addEventListener(b,f,!1),a.addEventListener(e,f,!1),function(){return b!==e&&a.removeEventListener(b,f,!1),a.removeEventListener(e,f,!1),!0}},o=[],p=function(a){for(var c,d=a.clientX,e=a.clientY,f=k("y"),g=k("x"),i=o.length;i--;){if(c=o[i],h){for(var j,l=a.touches&&a.touches.length;l--;)if(j=a.touches[l],j.identifier==c.el._drag.id||c.el.node.contains(j.target)){d=j.clientX,e=j.clientY,(a.originalEvent?a.originalEvent:a).preventDefault();break}}else a.preventDefault();{var m=c.el.node;m.nextSibling,m.parentNode,m.style.display}d+=g,e+=f,b("snap.drag.move."+c.el.id,c.move_scope||c.el,d-c.el._drag.x,e-c.el._drag.y,d,e,a)}},q=function(c){a.unmousemove(p).unmouseup(q);for(var d,e=o.length;e--;)d=o[e],d.el._drag={},b("snap.drag.end."+d.el.id,d.end_scope||d.start_scope||d.move_scope||d.el,c),b.off("snap.drag.*."+d.el.id);o=[]},r=i.length;r--;)!function(b){a[b]=f[b]=function(c,d){if(a.is(c,"function"))this.events=this.events||[],this.events.push({name:b,f:c,unbind:n(this.node||document,b,c,d||this)});else for(var e=0,f=this.events.length;f>e;e++)if(this.events[e].name==b)try{this.events[e].f.call(this)}catch(g){}return this},a["un"+b]=f["un"+b]=function(a){for(var c=this.events||[],d=c.length;d--;)if(c[d].name==b&&(c[d].f==a||!a))return c[d].unbind(),c.splice(d,1),!c.length&&delete this.events,this;return this}}(i[r]);f.hover=function(a,b,c,d){return this.mouseover(a,c).mouseout(b,d||c)},f.unhover=function(a,b){return this.unmouseover(a).unmouseout(b)};var s=[];f.drag=function(c,d,e,f,g,h){function i(i,j,l){(i.originalEvent||i).preventDefault(),k._drag.x=j,k._drag.y=l,k._drag.id=i.identifier,!o.length&&a.mousemove(p).mouseup(q),o.push({el:k,move_scope:f,start_scope:g,end_scope:h}),d&&b.on("snap.drag.start."+k.id,d),c&&b.on("snap.drag.move."+k.id,c),e&&b.on("snap.drag.end."+k.id,e),b("snap.drag.start."+k.id,g||f||k,j,l,i)}function j(a,c,d){b("snap.draginit."+k.id,k,a,c,d)}var k=this;if(!arguments.length){var l;return k.drag(function(a,b){this.attr({transform:l+(l?"T":"t")+[a,b]})},function(){l=this.transform().local})}return b.on("snap.draginit."+k.id,i),k._drag={},s.push({el:k,start:i,init:j}),k.mousedown(j),k},f.undrag=function(){for(var c=s.length;c--;)s[c].el==this&&(this.unmousedown(s[c].init),s.splice(c,1),b.unbind("snap.drag.*."+this.id),b.unbind("snap.draginit."+this.id));return!s.length&&a.unmousemove(p).unmouseup(q),this}}),d.plugin(function(a,c,d){var e=(c.prototype,d.prototype),f=/^\s*url\((.+)\)/,g=String,h=a._.$;a.filter={},e.filter=function(b){var d=this;"svg"!=d.type&&(d=d.paper);var e=a.parse(g(b)),f=a._.id(),i=(d.node.offsetWidth,d.node.offsetHeight,h("filter"));return h(i,{id:f,filterUnits:"userSpaceOnUse"}),i.appendChild(e.node),d.defs.appendChild(i),new c(i)},b.on("snap.util.getattr.filter",function(){b.stop();var c=h(this.node,"filter");if(c){var d=g(c).match(f);return d&&a.select(d[1])}}),b.on("snap.util.attr.filter",function(d){if(d instanceof c&&"filter"==d.type){b.stop();var e=d.node.id;e||(h(d.node,{id:d.id}),e=d.id),h(this.node,{filter:a.url(e)})}d&&"none"!=d||(b.stop(),this.node.removeAttribute("filter"))}),a.filter.blur=function(b,c){null==b&&(b=2);var d=null==c?b:[b,c];return a.format('',{def:d})},a.filter.blur.toString=function(){return this()},a.filter.shadow=function(b,c,d,e,f){return"string"==typeof d&&(e=d,f=e,d=4),"string"!=typeof e&&(f=e,e="#000"),e=e||"#000",null==d&&(d=4),null==f&&(f=1),null==b&&(b=0,c=2),null==c&&(c=b),e=a.color(e),a.format('',{color:e,dx:b,dy:c,blur:d,opacity:f})},a.filter.shadow.toString=function(){return this()},a.filter.grayscale=function(b){return null==b&&(b=1),a.format('',{a:.2126+.7874*(1-b),b:.7152-.7152*(1-b),c:.0722-.0722*(1-b),d:.2126-.2126*(1-b),e:.7152+.2848*(1-b),f:.0722-.0722*(1-b),g:.2126-.2126*(1-b),h:.0722+.9278*(1-b)})},a.filter.grayscale.toString=function(){return this()},a.filter.sepia=function(b){return null==b&&(b=1),a.format('',{a:.393+.607*(1-b),b:.769-.769*(1-b),c:.189-.189*(1-b),d:.349-.349*(1-b),e:.686+.314*(1-b),f:.168-.168*(1-b),g:.272-.272*(1-b),h:.534-.534*(1-b),i:.131+.869*(1-b)})},a.filter.sepia.toString=function(){return this()},a.filter.saturate=function(b){return null==b&&(b=1),a.format('',{amount:1-b})},a.filter.saturate.toString=function(){return this()},a.filter.hueRotate=function(b){return b=b||0,a.format('',{angle:b})},a.filter.hueRotate.toString=function(){return this()},a.filter.invert=function(b){return null==b&&(b=1),a.format('',{amount:b,amount2:1-b})},a.filter.invert.toString=function(){return this()},a.filter.brightness=function(b){return null==b&&(b=1),a.format('',{amount:b})},a.filter.brightness.toString=function(){return this()},a.filter.contrast=function(b){return null==b&&(b=1),a.format('',{amount:b,amount2:.5-b/2})},a.filter.contrast.toString=function(){return this()}}),d.plugin(function(a,b){var c=a._.box,d=a.is,e=/^[^a-z]*([tbmlrc])/i,f=function(){return"T"+this.dx+","+this.dy};b.prototype.getAlign=function(a,b){null==b&&d(a,"string")&&(b=a,a=null),a=a||this.paper;var g=a.getBBox?a.getBBox():c(a),h=this.getBBox(),i={};switch(b=b&&b.match(e),b=b?b[1].toLowerCase():"c"){case"t":i.dx=0,i.dy=g.y-h.y;break;case"b":i.dx=0,i.dy=g.y2-h.y2;break;case"m":i.dx=0,i.dy=g.cy-h.cy;break;case"l":i.dx=g.x-h.x,i.dy=0;break;case"r":i.dx=g.x2-h.x2,i.dy=0;break;default:i.dx=g.cx-h.cx,i.dy=0}return i.toString=f,i},b.prototype.align=function(a,b){return this.transform("..."+this.getAlign(a,b))}}),d}); diff --git a/static/editor.md/lib/sequence/underscore-min.js b/static/editor.md/lib/sequence/underscore-min.js new file mode 100644 index 00000000..255d9b75 --- /dev/null +++ b/static/editor.md/lib/sequence/underscore-min.js @@ -0,0 +1,7 @@ + +// Underscore.js 1.8.3 +// http://underscorejs.org +// (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +// Underscore may be freely distributed under the MIT license. +(function(){function n(n){function t(t,r,e,u,i,o){for(;i>=0&&o>i;i+=n){var a=u?u[i]:i;e=r(e,t[a],a,t)}return e}return function(r,e,u,i){e=b(e,i,4);var o=!k(r)&&m.keys(r),a=(o||r).length,c=n>0?0:a-1;return arguments.length<3&&(u=r[o?o[c]:c],c+=n),t(r,e,u,o,c,a)}}function t(n){return function(t,r,e){r=x(r,e);for(var u=O(t),i=n>0?0:u-1;i>=0&&u>i;i+=n)if(r(t[i],i,t))return i;return-1}}function r(n,t,r){return function(e,u,i){var o=0,a=O(e);if("number"==typeof i)n>0?o=i>=0?i:Math.max(i+a,o):a=i>=0?Math.min(i+1,a):i+a+1;else if(r&&i&&a)return i=r(e,u),e[i]===u?i:-1;if(u!==u)return i=t(l.call(e,o,a),m.isNaN),i>=0?i+o:-1;for(i=n>0?o:a-1;i>=0&&a>i;i+=n)if(e[i]===u)return i;return-1}}function e(n,t){var r=I.length,e=n.constructor,u=m.isFunction(e)&&e.prototype||a,i="constructor";for(m.has(n,i)&&!m.contains(t,i)&&t.push(i);r--;)i=I[r],i in n&&n[i]!==u[i]&&!m.contains(t,i)&&t.push(i)}var u=this,i=u._,o=Array.prototype,a=Object.prototype,c=Function.prototype,f=o.push,l=o.slice,s=a.toString,p=a.hasOwnProperty,h=Array.isArray,v=Object.keys,g=c.bind,y=Object.create,d=function(){},m=function(n){return n instanceof m?n:this instanceof m?void(this._wrapped=n):new m(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=m),exports._=m):u._=m,m.VERSION="1.8.3";var b=function(n,t,r){if(t===void 0)return n;switch(null==r?3:r){case 1:return function(r){return n.call(t,r)};case 2:return function(r,e){return n.call(t,r,e)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,i){return n.call(t,r,e,u,i)}}return function(){return n.apply(t,arguments)}},x=function(n,t,r){return null==n?m.identity:m.isFunction(n)?b(n,t,r):m.isObject(n)?m.matcher(n):m.property(n)};m.iteratee=function(n,t){return x(n,t,1/0)};var _=function(n,t){return function(r){var e=arguments.length;if(2>e||null==r)return r;for(var u=1;e>u;u++)for(var i=arguments[u],o=n(i),a=o.length,c=0;a>c;c++){var f=o[c];t&&r[f]!==void 0||(r[f]=i[f])}return r}},j=function(n){if(!m.isObject(n))return{};if(y)return y(n);d.prototype=n;var t=new d;return d.prototype=null,t},w=function(n){return function(t){return null==t?void 0:t[n]}},A=Math.pow(2,53)-1,O=w("length"),k=function(n){var t=O(n);return"number"==typeof t&&t>=0&&A>=t};m.each=m.forEach=function(n,t,r){t=b(t,r);var e,u;if(k(n))for(e=0,u=n.length;u>e;e++)t(n[e],e,n);else{var i=m.keys(n);for(e=0,u=i.length;u>e;e++)t(n[i[e]],i[e],n)}return n},m.map=m.collect=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=Array(u),o=0;u>o;o++){var a=e?e[o]:o;i[o]=t(n[a],a,n)}return i},m.reduce=m.foldl=m.inject=n(1),m.reduceRight=m.foldr=n(-1),m.find=m.detect=function(n,t,r){var e;return e=k(n)?m.findIndex(n,t,r):m.findKey(n,t,r),e!==void 0&&e!==-1?n[e]:void 0},m.filter=m.select=function(n,t,r){var e=[];return t=x(t,r),m.each(n,function(n,r,u){t(n,r,u)&&e.push(n)}),e},m.reject=function(n,t,r){return m.filter(n,m.negate(x(t)),r)},m.every=m.all=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(!t(n[o],o,n))return!1}return!0},m.some=m.any=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(t(n[o],o,n))return!0}return!1},m.contains=m.includes=m.include=function(n,t,r,e){return k(n)||(n=m.values(n)),("number"!=typeof r||e)&&(r=0),m.indexOf(n,t,r)>=0},m.invoke=function(n,t){var r=l.call(arguments,2),e=m.isFunction(t);return m.map(n,function(n){var u=e?t:n[t];return null==u?u:u.apply(n,r)})},m.pluck=function(n,t){return m.map(n,m.property(t))},m.where=function(n,t){return m.filter(n,m.matcher(t))},m.findWhere=function(n,t){return m.find(n,m.matcher(t))},m.max=function(n,t,r){var e,u,i=-1/0,o=-1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],e>i&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(u>o||u===-1/0&&i===-1/0)&&(i=n,o=u)});return i},m.min=function(n,t,r){var e,u,i=1/0,o=1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],i>e&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(o>u||1/0===u&&1/0===i)&&(i=n,o=u)});return i},m.shuffle=function(n){for(var t,r=k(n)?n:m.values(n),e=r.length,u=Array(e),i=0;e>i;i++)t=m.random(0,i),t!==i&&(u[i]=u[t]),u[t]=r[i];return u},m.sample=function(n,t,r){return null==t||r?(k(n)||(n=m.values(n)),n[m.random(n.length-1)]):m.shuffle(n).slice(0,Math.max(0,t))},m.sortBy=function(n,t,r){return t=x(t,r),m.pluck(m.map(n,function(n,r,e){return{value:n,index:r,criteria:t(n,r,e)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.index-t.index}),"value")};var F=function(n){return function(t,r,e){var u={};return r=x(r,e),m.each(t,function(e,i){var o=r(e,i,t);n(u,e,o)}),u}};m.groupBy=F(function(n,t,r){m.has(n,r)?n[r].push(t):n[r]=[t]}),m.indexBy=F(function(n,t,r){n[r]=t}),m.countBy=F(function(n,t,r){m.has(n,r)?n[r]++:n[r]=1}),m.toArray=function(n){return n?m.isArray(n)?l.call(n):k(n)?m.map(n,m.identity):m.values(n):[]},m.size=function(n){return null==n?0:k(n)?n.length:m.keys(n).length},m.partition=function(n,t,r){t=x(t,r);var e=[],u=[];return m.each(n,function(n,r,i){(t(n,r,i)?e:u).push(n)}),[e,u]},m.first=m.head=m.take=function(n,t,r){return null==n?void 0:null==t||r?n[0]:m.initial(n,n.length-t)},m.initial=function(n,t,r){return l.call(n,0,Math.max(0,n.length-(null==t||r?1:t)))},m.last=function(n,t,r){return null==n?void 0:null==t||r?n[n.length-1]:m.rest(n,Math.max(0,n.length-t))},m.rest=m.tail=m.drop=function(n,t,r){return l.call(n,null==t||r?1:t)},m.compact=function(n){return m.filter(n,m.identity)};var S=function(n,t,r,e){for(var u=[],i=0,o=e||0,a=O(n);a>o;o++){var c=n[o];if(k(c)&&(m.isArray(c)||m.isArguments(c))){t||(c=S(c,t,r));var f=0,l=c.length;for(u.length+=l;l>f;)u[i++]=c[f++]}else r||(u[i++]=c)}return u};m.flatten=function(n,t){return S(n,t,!1)},m.without=function(n){return m.difference(n,l.call(arguments,1))},m.uniq=m.unique=function(n,t,r,e){m.isBoolean(t)||(e=r,r=t,t=!1),null!=r&&(r=x(r,e));for(var u=[],i=[],o=0,a=O(n);a>o;o++){var c=n[o],f=r?r(c,o,n):c;t?(o&&i===f||u.push(c),i=f):r?m.contains(i,f)||(i.push(f),u.push(c)):m.contains(u,c)||u.push(c)}return u},m.union=function(){return m.uniq(S(arguments,!0,!0))},m.intersection=function(n){for(var t=[],r=arguments.length,e=0,u=O(n);u>e;e++){var i=n[e];if(!m.contains(t,i)){for(var o=1;r>o&&m.contains(arguments[o],i);o++);o===r&&t.push(i)}}return t},m.difference=function(n){var t=S(arguments,!0,!0,1);return m.filter(n,function(n){return!m.contains(t,n)})},m.zip=function(){return m.unzip(arguments)},m.unzip=function(n){for(var t=n&&m.max(n,O).length||0,r=Array(t),e=0;t>e;e++)r[e]=m.pluck(n,e);return r},m.object=function(n,t){for(var r={},e=0,u=O(n);u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},m.findIndex=t(1),m.findLastIndex=t(-1),m.sortedIndex=function(n,t,r,e){r=x(r,e,1);for(var u=r(t),i=0,o=O(n);o>i;){var a=Math.floor((i+o)/2);r(n[a])i;i++,n+=r)u[i]=n;return u};var E=function(n,t,r,e,u){if(!(e instanceof t))return n.apply(r,u);var i=j(n.prototype),o=n.apply(i,u);return m.isObject(o)?o:i};m.bind=function(n,t){if(g&&n.bind===g)return g.apply(n,l.call(arguments,1));if(!m.isFunction(n))throw new TypeError("Bind must be called on a function");var r=l.call(arguments,2),e=function(){return E(n,e,t,this,r.concat(l.call(arguments)))};return e},m.partial=function(n){var t=l.call(arguments,1),r=function(){for(var e=0,u=t.length,i=Array(u),o=0;u>o;o++)i[o]=t[o]===m?arguments[e++]:t[o];for(;e=e)throw new Error("bindAll must be passed function names");for(t=1;e>t;t++)r=arguments[t],n[r]=m.bind(n[r],n);return n},m.memoize=function(n,t){var r=function(e){var u=r.cache,i=""+(t?t.apply(this,arguments):e);return m.has(u,i)||(u[i]=n.apply(this,arguments)),u[i]};return r.cache={},r},m.delay=function(n,t){var r=l.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},m.defer=m.partial(m.delay,m,1),m.throttle=function(n,t,r){var e,u,i,o=null,a=0;r||(r={});var c=function(){a=r.leading===!1?0:m.now(),o=null,i=n.apply(e,u),o||(e=u=null)};return function(){var f=m.now();a||r.leading!==!1||(a=f);var l=t-(f-a);return e=this,u=arguments,0>=l||l>t?(o&&(clearTimeout(o),o=null),a=f,i=n.apply(e,u),o||(e=u=null)):o||r.trailing===!1||(o=setTimeout(c,l)),i}},m.debounce=function(n,t,r){var e,u,i,o,a,c=function(){var f=m.now()-o;t>f&&f>=0?e=setTimeout(c,t-f):(e=null,r||(a=n.apply(i,u),e||(i=u=null)))};return function(){i=this,u=arguments,o=m.now();var f=r&&!e;return e||(e=setTimeout(c,t)),f&&(a=n.apply(i,u),i=u=null),a}},m.wrap=function(n,t){return m.partial(t,n)},m.negate=function(n){return function(){return!n.apply(this,arguments)}},m.compose=function(){var n=arguments,t=n.length-1;return function(){for(var r=t,e=n[t].apply(this,arguments);r--;)e=n[r].call(this,e);return e}},m.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},m.before=function(n,t){var r;return function(){return--n>0&&(r=t.apply(this,arguments)),1>=n&&(t=null),r}},m.once=m.partial(m.before,2);var M=!{toString:null}.propertyIsEnumerable("toString"),I=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];m.keys=function(n){if(!m.isObject(n))return[];if(v)return v(n);var t=[];for(var r in n)m.has(n,r)&&t.push(r);return M&&e(n,t),t},m.allKeys=function(n){if(!m.isObject(n))return[];var t=[];for(var r in n)t.push(r);return M&&e(n,t),t},m.values=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=n[t[u]];return e},m.mapObject=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=u.length,o={},a=0;i>a;a++)e=u[a],o[e]=t(n[e],e,n);return o},m.pairs=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=[t[u],n[t[u]]];return e},m.invert=function(n){for(var t={},r=m.keys(n),e=0,u=r.length;u>e;e++)t[n[r[e]]]=r[e];return t},m.functions=m.methods=function(n){var t=[];for(var r in n)m.isFunction(n[r])&&t.push(r);return t.sort()},m.extend=_(m.allKeys),m.extendOwn=m.assign=_(m.keys),m.findKey=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=0,o=u.length;o>i;i++)if(e=u[i],t(n[e],e,n))return e},m.pick=function(n,t,r){var e,u,i={},o=n;if(null==o)return i;m.isFunction(t)?(u=m.allKeys(o),e=b(t,r)):(u=S(arguments,!1,!1,1),e=function(n,t,r){return t in r},o=Object(o));for(var a=0,c=u.length;c>a;a++){var f=u[a],l=o[f];e(l,f,o)&&(i[f]=l)}return i},m.omit=function(n,t,r){if(m.isFunction(t))t=m.negate(t);else{var e=m.map(S(arguments,!1,!1,1),String);t=function(n,t){return!m.contains(e,t)}}return m.pick(n,t,r)},m.defaults=_(m.allKeys,!0),m.create=function(n,t){var r=j(n);return t&&m.extendOwn(r,t),r},m.clone=function(n){return m.isObject(n)?m.isArray(n)?n.slice():m.extend({},n):n},m.tap=function(n,t){return t(n),n},m.isMatch=function(n,t){var r=m.keys(t),e=r.length;if(null==n)return!e;for(var u=Object(n),i=0;e>i;i++){var o=r[i];if(t[o]!==u[o]||!(o in u))return!1}return!0};var N=function(n,t,r,e){if(n===t)return 0!==n||1/n===1/t;if(null==n||null==t)return n===t;n instanceof m&&(n=n._wrapped),t instanceof m&&(t=t._wrapped);var u=s.call(n);if(u!==s.call(t))return!1;switch(u){case"[object RegExp]":case"[object String]":return""+n==""+t;case"[object Number]":return+n!==+n?+t!==+t:0===+n?1/+n===1/t:+n===+t;case"[object Date]":case"[object Boolean]":return+n===+t}var i="[object Array]"===u;if(!i){if("object"!=typeof n||"object"!=typeof t)return!1;var o=n.constructor,a=t.constructor;if(o!==a&&!(m.isFunction(o)&&o instanceof o&&m.isFunction(a)&&a instanceof a)&&"constructor"in n&&"constructor"in t)return!1}r=r||[],e=e||[];for(var c=r.length;c--;)if(r[c]===n)return e[c]===t;if(r.push(n),e.push(t),i){if(c=n.length,c!==t.length)return!1;for(;c--;)if(!N(n[c],t[c],r,e))return!1}else{var f,l=m.keys(n);if(c=l.length,m.keys(t).length!==c)return!1;for(;c--;)if(f=l[c],!m.has(t,f)||!N(n[f],t[f],r,e))return!1}return r.pop(),e.pop(),!0};m.isEqual=function(n,t){return N(n,t)},m.isEmpty=function(n){return null==n?!0:k(n)&&(m.isArray(n)||m.isString(n)||m.isArguments(n))?0===n.length:0===m.keys(n).length},m.isElement=function(n){return!(!n||1!==n.nodeType)},m.isArray=h||function(n){return"[object Array]"===s.call(n)},m.isObject=function(n){var t=typeof n;return"function"===t||"object"===t&&!!n},m.each(["Arguments","Function","String","Number","Date","RegExp","Error"],function(n){m["is"+n]=function(t){return s.call(t)==="[object "+n+"]"}}),m.isArguments(arguments)||(m.isArguments=function(n){return m.has(n,"callee")}),"function"!=typeof/./&&"object"!=typeof Int8Array&&(m.isFunction=function(n){return"function"==typeof n||!1}),m.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},m.isNaN=function(n){return m.isNumber(n)&&n!==+n},m.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"===s.call(n)},m.isNull=function(n){return null===n},m.isUndefined=function(n){return n===void 0},m.has=function(n,t){return null!=n&&p.call(n,t)},m.noConflict=function(){return u._=i,this},m.identity=function(n){return n},m.constant=function(n){return function(){return n}},m.noop=function(){},m.property=w,m.propertyOf=function(n){return null==n?function(){}:function(t){return n[t]}},m.matcher=m.matches=function(n){return n=m.extendOwn({},n),function(t){return m.isMatch(t,n)}},m.times=function(n,t,r){var e=Array(Math.max(0,n));t=b(t,r,1);for(var u=0;n>u;u++)e[u]=t(u);return e},m.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},m.now=Date.now||function(){return(new Date).getTime()};var B={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},T=m.invert(B),R=function(n){var t=function(t){return n[t]},r="(?:"+m.keys(n).join("|")+")",e=RegExp(r),u=RegExp(r,"g");return function(n){return n=null==n?"":""+n,e.test(n)?n.replace(u,t):n}};m.escape=R(B),m.unescape=R(T),m.result=function(n,t,r){var e=null==n?void 0:n[t];return e===void 0&&(e=r),m.isFunction(e)?e.call(n):e};var q=0;m.uniqueId=function(n){var t=++q+"";return n?n+t:t},m.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var K=/(.)^/,z={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\u2028|\u2029/g,L=function(n){return"\\"+z[n]};m.template=function(n,t,r){!t&&r&&(t=r),t=m.defaults({},t,m.templateSettings);var e=RegExp([(t.escape||K).source,(t.interpolate||K).source,(t.evaluate||K).source].join("|")+"|$","g"),u=0,i="__p+='";n.replace(e,function(t,r,e,o,a){return i+=n.slice(u,a).replace(D,L),u=a+t.length,r?i+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'":e?i+="'+\n((__t=("+e+"))==null?'':__t)+\n'":o&&(i+="';\n"+o+"\n__p+='"),t}),i+="';\n",t.variable||(i="with(obj||{}){\n"+i+"}\n"),i="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+i+"return __p;\n";try{var o=new Function(t.variable||"obj","_",i)}catch(a){throw a.source=i,a}var c=function(n){return o.call(this,n,m)},f=t.variable||"obj";return c.source="function("+f+"){\n"+i+"}",c},m.chain=function(n){var t=m(n);return t._chain=!0,t};var P=function(n,t){return n._chain?m(t).chain():t};m.mixin=function(n){m.each(m.functions(n),function(t){var r=m[t]=n[t];m.prototype[t]=function(){var n=[this._wrapped];return f.apply(n,arguments),P(this,r.apply(m,n))}})},m.mixin(m),m.each(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=o[n];m.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!==n&&"splice"!==n||0!==r.length||delete r[0],P(this,r)}}),m.each(["concat","join","slice"],function(n){var t=o[n];m.prototype[n]=function(){return P(this,t.apply(this._wrapped,arguments))}}),m.prototype.value=function(){return this._wrapped},m.prototype.valueOf=m.prototype.toJSON=m.prototype.value,m.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return m})}).call(this); +//# sourceMappingURL=underscore-min.map \ No newline at end of file diff --git a/static/editor.md/lib/sequence/webfont.js b/static/editor.md/lib/sequence/webfont.js new file mode 100644 index 00000000..e92632ee --- /dev/null +++ b/static/editor.md/lib/sequence/webfont.js @@ -0,0 +1,16 @@ +/* Web Font Loader v1.6.6 - (c) Adobe Systems, Google. License: Apache 2.0 */ +(function(){function aa(a,b,c){return a.call.apply(a.bind,arguments)}function ba(a,b,c){if(!a)throw Error();if(2parseInt(a[1],10)||536===parseInt(a[1],10)&&11>=parseInt(a[2],10))}return K}I.prototype.start=function(){this.s.serif=this.B.j.offsetWidth;this.s["sans-serif"]=this.C.j.offsetWidth;this.ea=p();M(this)};function N(a,b,c){for(var d in J)if(J.hasOwnProperty(d)&&b===a.s[J[d]]&&c===a.s[J[d]])return!0;return!1} + function M(a){var b=a.v.j.offsetWidth,c=a.w.j.offsetWidth,d;(d=b===a.s.serif&&c===a.s["sans-serif"])||(d=L()&&N(a,b,c));d?p()-a.ea>=a.M?L()&&N(a,b,c)&&(null===a.T||a.T.hasOwnProperty(a.g.getName()))?O(a,a.O):O(a,a.ba):ha(a):O(a,a.O)}function ha(a){setTimeout(n(function(){M(this)},a),50)}function O(a,b){setTimeout(n(function(){this.v.remove();this.w.remove();this.B.remove();this.C.remove();b(this.g)},a),0)};function P(a,b,c){this.a=a;this.o=b;this.K=0;this.X=this.S=!1;this.M=c}P.prototype.$=function(a){var b=this.o;b.u&&t(b.h,[b.e.d(b.f,a.getName(),B(a).toString(),"active")],[b.e.d(b.f,a.getName(),B(a).toString(),"loading"),b.e.d(b.f,a.getName(),B(a).toString(),"inactive")]);C(b,"fontactive",a);this.X=!0;Q(this)}; + P.prototype.aa=function(a){var b=this.o;if(b.u){var c=u(b.h,b.e.d(b.f,a.getName(),B(a).toString(),"active")),d=[],f=[b.e.d(b.f,a.getName(),B(a).toString(),"loading")];c||d.push(b.e.d(b.f,a.getName(),B(a).toString(),"inactive"));t(b.h,d,f)}C(b,"fontinactive",a);Q(this)};function Q(a){0==--a.K&&a.S&&(a.X?(a=a.o,a.u&&t(a.h,[a.e.d(a.f,"active")],[a.e.d(a.f,"loading"),a.e.d(a.f,"inactive")]),C(a,"active")):D(a.o))};function R(a){this.D=a;this.p=new fa;this.U=0;this.P=this.Q=!0}R.prototype.load=function(a){this.a=new r(this.D,a.context||this.D);this.Q=!1!==a.events;this.P=!1!==a.classes;ia(this,new da(this.a,a),a)}; + function ja(a,b,c,d,f){var e=0==--a.U;(a.P||a.Q)&&setTimeout(function(){var a=f||null,l=d||null||{};if(0===c.length&&e)D(b.o);else{b.K+=c.length;e&&(b.S=e);var h,k=[];for(h=0;h + + diff --git a/views/document/default_read.tpl b/views/document/default_read.tpl index b609e18c..aee91e9a 100644 --- a/views/document/default_read.tpl +++ b/views/document/default_read.tpl @@ -21,6 +21,8 @@ + +