(function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r():"function"==typeof define&&define.amd?define(r):r()})(0,function(){"use strict";function e(e){function r(e){t[e.id]||(t[e.id]=e)}let t={};if(0===e.length)return null;let n=e[0];n.stmts.filter(e=>"node"===e.type).forEach(r);let u=n.stmts.filter(e=>"edge"===e.type),s=[];for(let e=0;eObject.assign({id:e.id},e.attrs)),links:s}}(function(e,r){"function"==typeof define&&define.amd?define([],r):"object"==typeof module&&module.exports&&(module.exports=r())})(0,function(){function e(r,t,n,u){this.message=r,this.expected=t,this.found=n,this.location=u,this.name="SyntaxError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(this,e)}return function(e,r){function t(){this.constructor=e}t.prototype=r.prototype,e.prototype=new t}(e,Error),e.buildMessage=function(e,r){function t(e){return e.charCodeAt(0).toString(16).toUpperCase()}function n(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(e){return"\\x0"+t(e)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(e){return"\\x"+t(e)})}function u(e){return e.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(e){return"\\x0"+t(e)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(e){return"\\x"+t(e)})}function s(e){return o[e.type](e)}var o={literal:function(e){return'"'+n(e.text)+'"'},class:function(e){var r,t="";for(r=0;r0){for(r=1,t=1;rJr&&(Jr=Hr,Kr=[]),Kr.push(e))}function c(){var e,r;if(e=[],(r=a())!==D)for(;r!==D;)e.push(r),r=a();else e=D;return e}function a(){var e,t,n,u,s,o,f,c,a,h,p,d,A,g;for(e=Hr,t=[],n=q();n!==D;)t.push(n),n=q();if(t!==D)if(n=Hr,(u=R())!==D&&(s=q())!==D?n=u=[u,s]:(Hr=n,n=D),n===D&&(n=null),n!==D)if((u=Z())!==D){for(s=[],o=q();o!==D;)s.push(o),o=q();if(s!==D)if((o=L())===D&&(o=null),o!==D){for(f=[],c=q();c!==D;)f.push(c),c=q();if(f!==D)if(123===r.charCodeAt(Hr)?(c=I,Hr++):(c=D,0===Nr&&i(J)),c!==D){for(a=[],h=q();h!==D;)a.push(h),h=q();if(a!==D)if((h=l())===D&&(h=null),h!==D){for(p=[],d=q();d!==D;)p.push(d),d=q();if(p!==D)if(125===r.charCodeAt(Hr)?(d=K,Hr++):(d=D,0===Nr&&i(N)),d!==D){for(A=[],g=q();g!==D;)A.push(g),g=q();A!==D?e=t=P(n,u,o,h):(Hr=e,e=D)}else Hr=e,e=D;else Hr=e,e=D}else Hr=e,e=D;else Hr=e,e=D}else Hr=e,e=D;else Hr=e,e=D}else Hr=e,e=D;else Hr=e,e=D}else Hr=e,e=D;else Hr=e,e=D;else Hr=e,e=D;return e}function l(){var e,t,n,u,s,o,f,c,a,l;if(e=Hr,(t=h())!==D){for(n=[],u=q();u!==D;)n.push(u),u=q();if(n!==D)if(59===r.charCodeAt(Hr)?(u=Q,Hr++):(u=D,0===Nr&&i(V)),u===D&&(u=null),u!==D){for(s=[],o=Hr,f=[],c=q();c!==D;)f.push(c),c=q();if(f!==D)if((c=h())!==D){for(a=[],l=q();l!==D;)a.push(l),l=q();a!==D?(59===r.charCodeAt(Hr)?(l=Q,Hr++):(l=D,0===Nr&&i(V)),l===D&&(l=null),l!==D?o=f=[f,c,a,l]:(Hr=o,o=D)):(Hr=o,o=D)}else Hr=o,o=D;else Hr=o,o=D;for(;o!==D;){for(s.push(o),o=Hr,f=[],c=q();c!==D;)f.push(c),c=q();if(f!==D)if((c=h())!==D){for(a=[],l=q();l!==D;)a.push(l),l=q();a!==D?(59===r.charCodeAt(Hr)?(l=Q,Hr++):(l=D,0===Nr&&i(V)),l===D&&(l=null),l!==D?o=f=[f,c,a,l]:(Hr=o,o=D)):(Hr=o,o=D)}else Hr=o,o=D;else Hr=o,o=D}s!==D?e=t=W(t,s):(Hr=e,e=D)}else Hr=e,e=D;else Hr=e,e=D}else Hr=e,e=D;return e}function h(){var e;return(e=p())===D&&(e=g())===D&&(e=v())===D&&(e=d())===D&&(e=A()),e}function p(){var e,r,t,n;if(e=Hr,(r=T())===D&&(r=z())===D&&(r=S()),r!==D){for(t=[],n=q();n!==D;)t.push(n),n=q();t!==D&&(n=C())!==D?e=r=X(r,n):(Hr=e,e=D)}else Hr=e,e=D;return e}function d(){var e,t,n,u,s,o;if(e=Hr,(t=L())!==D){for(n=[],u=q();u!==D;)n.push(u),u=q();if(n!==D)if(61===r.charCodeAt(Hr)?(u=Y,Hr++):(u=D,0===Nr&&i(ee)),u!==D){for(s=[],o=q();o!==D;)s.push(o),o=q();s!==D&&(o=L())!==D?e=t=re(t,o):(Hr=e,e=D)}else Hr=e,e=D;else Hr=e,e=D}else Hr=e,e=D;return e}function A(){var e,r,t,n;if(e=Hr,(r=j())!==D){for(t=[],n=q();n!==D;)t.push(n),n=q();t!==D?((n=C())===D&&(n=null),n!==D?e=r=te(r,n):(Hr=e,e=D)):(Hr=e,e=D)}else Hr=e,e=D;return e}function g(){var e,r,t,n,u,s;if(e=Hr,(r=w())!==D){for(t=[],n=q();n!==D;)t.push(n),n=q();if(t!==D)if((n=m())!==D){for(u=[],s=q();s!==D;)u.push(s),s=q();u!==D?((s=C())===D&&(s=null),s!==D?e=r=ne(r,n,s):(Hr=e,e=D)):(Hr=e,e=D)}else Hr=e,e=D;else Hr=e,e=D}else Hr=e,e=D;return e}function v(){var e,t,n,u,s,o,f,c;if(e=Hr,t=Hr,(n=O())!==D){for(u=[],s=q();s!==D;)u.push(s),s=q();if(u!==D){if(s=Hr,(o=L())!==D){for(f=[],c=q();c!==D;)f.push(c),c=q();f!==D?s=o=[o,f]:(Hr=s,s=D)}else Hr=s,s=D;s===D&&(s=null),s!==D?t=n=[n,u,s]:(Hr=t,t=D)}else Hr=t,t=D}else Hr=t,t=D;if(t===D&&(t=null),t!==D)if(123===r.charCodeAt(Hr)?(n=I,Hr++):(n=D,0===Nr&&i(J)),n!==D){for(u=[],s=q();s!==D;)u.push(s),s=q();if(u!==D)if((s=l())===D&&(s=null),s!==D){for(o=[],f=q();f!==D;)o.push(f),f=q();o!==D?(125===r.charCodeAt(Hr)?(f=K,Hr++):(f=D,0===Nr&&i(N)),f!==D?e=t=ue(t,s):(Hr=e,e=D)):(Hr=e,e=D)}else Hr=e,e=D;else Hr=e,e=D}else Hr=e,e=D;else Hr=e,e=D;return e}function C(){var e,r,t,n,u,s;if(e=Hr,(r=b())!==D){for(t=[],n=Hr,u=[],s=q();s!==D;)u.push(s),s=q();for(u!==D&&(s=b())!==D?n=u=[u,s]:(Hr=n,n=D);n!==D;){for(t.push(n),n=Hr,u=[],s=q();s!==D;)u.push(s),s=q();u!==D&&(s=b())!==D?n=u=[u,s]:(Hr=n,n=D)}t!==D?e=r=se(r,t):(Hr=e,e=D)}else Hr=e,e=D;return e}function b(){var e,t,n,u,s,o;if(e=Hr,91===r.charCodeAt(Hr)?(t=oe,Hr++):(t=D,0===Nr&&i(fe)),t!==D){for(n=[],u=q();u!==D;)n.push(u),u=q();if(n!==D)if((u=y())===D&&(u=null),u!==D){for(s=[],o=q();o!==D;)s.push(o),o=q();s!==D?(93===r.charCodeAt(Hr)?(o=ie,Hr++):(o=D,0===Nr&&i(ce)),o!==D?e=t=ae(u):(Hr=e,e=D)):(Hr=e,e=D)}else Hr=e,e=D;else Hr=e,e=D}else Hr=e,e=D;return e}function y(){var e,t,n,u,s,o,f,c;if(e=Hr,(t=x())!==D){for(n=[],u=Hr,s=[],o=q();o!==D;)s.push(o),o=q();if(s!==D)if(44===r.charCodeAt(Hr)?(o=le,Hr++):(o=D,0===Nr&&i(he)),o===D&&(o=null),o!==D){for(f=[],c=q();c!==D;)f.push(c),c=q();f!==D&&(c=x())!==D?u=s=[s,o,f,c]:(Hr=u,u=D)}else Hr=u,u=D;else Hr=u,u=D;for(;u!==D;){for(n.push(u),u=Hr,s=[],o=q();o!==D;)s.push(o),o=q();if(s!==D)if(44===r.charCodeAt(Hr)?(o=le,Hr++):(o=D,0===Nr&&i(he)),o===D&&(o=null),o!==D){for(f=[],c=q();c!==D;)f.push(c),c=q();f!==D&&(c=x())!==D?u=s=[s,o,f,c]:(Hr=u,u=D)}else Hr=u,u=D;else Hr=u,u=D}n!==D?e=t=pe(t,n):(Hr=e,e=D)}else Hr=e,e=D;return e}function m(){var e,t,n,u,s,o;if(e=Hr,t=Hr,r.substr(Hr,2)===de?(n=de,Hr+=2):(n=D,0===Nr&&i(Ae)),n!==D&&(u=(u=ge())?D:void 0)!==D?t=n=[n,u]:(Hr=t,t=D),t===D&&(t=Hr,r.substr(Hr,2)===ve?(n=ve,Hr+=2):(n=D,0===Nr&&i(Ce)),n!==D&&(u=(u=ge())?void 0:D)!==D?t=n=[n,u]:(Hr=t,t=D)),t!==D){for(n=[],u=q();u!==D;)n.push(u),u=q();if(n!==D)if((u=w())!==D){for(s=[],o=q();o!==D;)s.push(o),o=q();s!==D?((o=m())===D&&(o=null),o!==D?e=t=be(u,o):(Hr=e,e=D)):(Hr=e,e=D)}else Hr=e,e=D;else Hr=e,e=D}else Hr=e,e=D;return e}function x(){var e,t,n,u,s,o,f;if(e=Hr,(t=L())!==D){for(n=Hr,u=[],s=q();s!==D;)u.push(s),s=q();if(u!==D)if(61===r.charCodeAt(Hr)?(s=Y,Hr++):(s=D,0===Nr&&i(ee)),s!==D){for(o=[],f=q();f!==D;)o.push(f),f=q();o!==D&&(f=L())!==D?n=u=[u,s,o,f]:(Hr=n,n=D)}else Hr=n,n=D;else Hr=n,n=D;n===D&&(n=null),n!==D?e=t=ye(t,n):(Hr=e,e=D)}else Hr=e,e=D;return e}function w(){var e,r;return(e=v())===D&&(e=Hr,(r=j())!==D&&(r=me(r)),e=r),e}function j(){var e,r,t,n;if(e=Hr,(r=L())!==D){for(t=[],n=q();n!==D;)t.push(n),n=q();t!==D?((n=E())===D&&(n=null),n!==D?e=r=xe(r):(Hr=e,e=D)):(Hr=e,e=D)}else Hr=e,e=D;return e}function E(){var e,t,n,u,s,o,f,c,a;if(e=Hr,58===r.charCodeAt(Hr)?(t=we,Hr++):(t=D,0===Nr&&i(je)),t!==D){for(n=[],u=q();u!==D;)n.push(u),u=q();if(n!==D)if((u=L())!==D){for(s=[],o=q();o!==D;)s.push(o),o=q();if(s!==D){if(o=Hr,58===r.charCodeAt(Hr)?(f=we,Hr++):(f=D,0===Nr&&i(je)),f!==D){for(c=[],a=q();a!==D;)c.push(a),a=q();c!==D&&(a=F())!==D?o=f=[f,c,a]:(Hr=o,o=D)}else Hr=o,o=D;o===D&&(o=null),o!==D?e=t=[t,n,u,s,o]:(Hr=e,e=D)}else Hr=e,e=D}else Hr=e,e=D;else Hr=e,e=D}else Hr=e,e=D;return e}function F(){var e;return r.substr(Hr,2)===Ee?(e=Ee,Hr+=2):(e=D,0===Nr&&i(Fe)),e===D&&(r.substr(Hr,2)===Le?(e=Le,Hr+=2):(e=D,0===Nr&&i(_e)),e===D&&(r.substr(Hr,2)===ze?(e=ze,Hr+=2):(e=D,0===Nr&&i(Se)),e===D&&(r.substr(Hr,2)===Te?(e=Te,Hr+=2):(e=D,0===Nr&&i(ke)),e===D&&(110===r.charCodeAt(Hr)?(e=Oe,Hr++):(e=D,0===Nr&&i(Re)),e===D&&(101===r.charCodeAt(Hr)?(e=Ze,Hr++):(e=D,0===Nr&&i(Me)),e===D&&(115===r.charCodeAt(Hr)?(e=$e,Hr++):(e=D,0===Nr&&i(qe)),e===D&&(119===r.charCodeAt(Hr)?(e=Ue,Hr++):(e=D,0===Nr&&i(Be)),e===D&&(99===r.charCodeAt(Hr)?(e=De,Hr++):(e=D,0===Nr&&i(Ge)),e===D&&(95===r.charCodeAt(Hr)?(e=He,Hr++):(e=D,0===Nr&&i(Ie))))))))))),e}function L(){var e,t,n,u,s,o,f;if(Nr++,e=Hr,Ke.test(r.charAt(Hr))?(t=r.charAt(Hr),Hr++):(t=D,0===Nr&&i(Ne)),t!==D){for(n=[],Pe.test(r.charAt(Hr))?(u=r.charAt(Hr),Hr++):(u=D,0===Nr&&i(Qe));u!==D;)n.push(u),Pe.test(r.charAt(Hr))?(u=r.charAt(Hr),Hr++):(u=D,0===Nr&&i(Qe));n!==D?e=t=Ve(t,n):(Hr=e,e=D)}else Hr=e,e=D;if(e===D){if(e=Hr,45===r.charCodeAt(Hr)?(t=We,Hr++):(t=D,0===Nr&&i(Xe)),t===D&&(t=null),t!==D)if(46===r.charCodeAt(Hr)?(n=Ye,Hr++):(n=D,0===Nr&&i(er)),n!==D){if(u=[],rr.test(r.charAt(Hr))?(s=r.charAt(Hr),Hr++):(s=D,0===Nr&&i(tr)),s!==D)for(;s!==D;)u.push(s),rr.test(r.charAt(Hr))?(s=r.charAt(Hr),Hr++):(s=D,0===Nr&&i(tr));else u=D;u!==D?e=t=nr(t,n,u):(Hr=e,e=D)}else Hr=e,e=D;else Hr=e,e=D;if(e===D){if(e=Hr,45===r.charCodeAt(Hr)?(t=We,Hr++):(t=D,0===Nr&&i(Xe)),t===D&&(t=null),t!==D){if(n=[],rr.test(r.charAt(Hr))?(u=r.charAt(Hr),Hr++):(u=D,0===Nr&&i(tr)),u!==D)for(;u!==D;)n.push(u),rr.test(r.charAt(Hr))?(u=r.charAt(Hr),Hr++):(u=D,0===Nr&&i(tr));else n=D;if(n!==D){if(u=Hr,46===r.charCodeAt(Hr)?(s=Ye,Hr++):(s=D,0===Nr&&i(er)),s!==D){for(o=[],rr.test(r.charAt(Hr))?(f=r.charAt(Hr),Hr++):(f=D,0===Nr&&i(tr));f!==D;)o.push(f),rr.test(r.charAt(Hr))?(f=r.charAt(Hr),Hr++):(f=D,0===Nr&&i(tr));o!==D?u=s=[s,o]:(Hr=u,u=D)}else Hr=u,u=D;u===D&&(u=null),u!==D?e=t=ur(t,n,u):(Hr=e,e=D)}else Hr=e,e=D}else Hr=e,e=D;if(e===D)if(e=Hr,34===r.charCodeAt(Hr)?(t=sr,Hr++):(t=D,0===Nr&&i(or)),t!==D){for(n=[],u=Hr,r.substr(Hr,2)===fr?(s=fr,Hr+=2):(s=D,0===Nr&&i(ir)),s!==D&&(s=cr()),(u=s)===D&&(u=Hr,92===r.charCodeAt(Hr)?(s=ar,Hr++):(s=D,0===Nr&&i(lr)),s!==D?(hr.test(r.charAt(Hr))?(o=r.charAt(Hr),Hr++):(o=D,0===Nr&&i(pr)),o!==D?u=s=dr(o):(Hr=u,u=D)):(Hr=u,u=D),u===D&&(hr.test(r.charAt(Hr))?(u=r.charAt(Hr),Hr++):(u=D,0===Nr&&i(pr))));u!==D;)n.push(u),u=Hr,r.substr(Hr,2)===fr?(s=fr,Hr+=2):(s=D,0===Nr&&i(ir)),s!==D&&(s=cr()),(u=s)===D&&(u=Hr,92===r.charCodeAt(Hr)?(s=ar,Hr++):(s=D,0===Nr&&i(lr)),s!==D?(hr.test(r.charAt(Hr))?(o=r.charAt(Hr),Hr++):(o=D,0===Nr&&i(pr)),o!==D?u=s=dr(o):(Hr=u,u=D)):(Hr=u,u=D),u===D&&(hr.test(r.charAt(Hr))?(u=r.charAt(Hr),Hr++):(u=D,0===Nr&&i(pr))));n!==D?(34===r.charCodeAt(Hr)?(u=sr,Hr++):(u=D,0===Nr&&i(or)),u!==D?e=t=Ar(n):(Hr=e,e=D)):(Hr=e,e=D)}else Hr=e,e=D}}return Nr--,e===D&&(t=D,0===Nr&&i(Je)),e}function z(){var e;return r.substr(Hr,4).toLowerCase()===gr?(e=r.substr(Hr,4),Hr+=4):(e=D,0===Nr&&i(vr)),e!==D&&(e=Cr(e)),e}function S(){var e;return r.substr(Hr,4).toLowerCase()===br?(e=r.substr(Hr,4),Hr+=4):(e=D,0===Nr&&i(yr)),e!==D&&(e=Cr(e)),e}function T(){var e;return r.substr(Hr,5).toLowerCase()===mr?(e=r.substr(Hr,5),Hr+=5):(e=D,0===Nr&&i(xr)),e!==D&&(e=Cr(e)),e}function k(){var e;return r.substr(Hr,7).toLowerCase()===wr?(e=r.substr(Hr,7),Hr+=7):(e=D,0===Nr&&i(jr)),e!==D&&(e=Cr(e)),e}function O(){var e;return r.substr(Hr,8).toLowerCase()===Er?(e=r.substr(Hr,8),Hr+=8):(e=D,0===Nr&&i(Fr)),e!==D&&(e=Cr(e)),e}function R(){var e;return r.substr(Hr,6).toLowerCase()===Lr?(e=r.substr(Hr,6),Hr+=6):(e=D,0===Nr&&i(_r)),e!==D&&(e=Cr(e)),e}function Z(){var e,r;return(e=T())===D&&(e=Hr,(r=k())!==D&&(r=zr(r)),e=r),e}function M(){var e,t;if(Nr++,e=[],Tr.test(r.charAt(Hr))?(t=r.charAt(Hr),Hr++):(t=D,0===Nr&&i(kr)),t!==D)for(;t!==D;)e.push(t),Tr.test(r.charAt(Hr))?(t=r.charAt(Hr),Hr++):(t=D,0===Nr&&i(kr));else e=D;return Nr--,e===D&&(t=D,0===Nr&&i(Sr)),e}function $(){var e,t,n,u,s,o;if(Nr++,e=Hr,r.substr(Hr,2)===Rr?(t=Rr,Hr+=2):(t=D,0===Nr&&i(Zr)),t!==D){for(n=[],Mr.test(r.charAt(Hr))?(u=r.charAt(Hr),Hr++):(u=D,0===Nr&&i($r));u!==D;)n.push(u),Mr.test(r.charAt(Hr))?(u=r.charAt(Hr),Hr++):(u=D,0===Nr&&i($r));n!==D?e=t=[t,n]:(Hr=e,e=D)}else Hr=e,e=D;if(e===D)if(e=Hr,r.substr(Hr,2)===qr?(t=qr,Hr+=2):(t=D,0===Nr&&i(Ur)),t!==D){for(n=[],u=Hr,s=Hr,Nr++,r.substr(Hr,2)===Br?(o=Br,Hr+=2):(o=D,0===Nr&&i(Dr)),Nr--,o===D?s=void 0:(Hr=s,s=D),s!==D?(r.length>Hr?(o=r.charAt(Hr),Hr++):(o=D,0===Nr&&i(Gr)),o!==D?u=s=[s,o]:(Hr=u,u=D)):(Hr=u,u=D);u!==D;)n.push(u),u=Hr,s=Hr,Nr++,r.substr(Hr,2)===Br?(o=Br,Hr+=2):(o=D,0===Nr&&i(Dr)),Nr--,o===D?s=void 0:(Hr=s,s=D),s!==D?(r.length>Hr?(o=r.charAt(Hr),Hr++):(o=D,0===Nr&&i(Gr)),o!==D?u=s=[s,o]:(Hr=u,u=D)):(Hr=u,u=D);n!==D?(r.substr(Hr,2)===Br?(u=Br,Hr+=2):(u=D,0===Nr&&i(Dr)),u!==D?e=t=[t,n,u]:(Hr=e,e=D)):(Hr=e,e=D)}else Hr=e,e=D;return Nr--,e===D&&(t=D,0===Nr&&i(Or)),e}function q(){var e;return(e=M())===D&&(e=$()),e}function U(e,r,t){function n(e){e.forEach(function(e){e[t]in s||(s[e[t]]=s[e[t]]||{},u.push(s[e[t]])),Object.keys(e).forEach(function(r){s[e[t]][r]=e[r]})})}var u=[],s={};return n(e),n(r),u}t=void 0!==t?t:{};var B,D={},G={start:c},H=c,I="{",J=n("{",!1),K="}",N=n("}",!1),P=function(e,r,t,n){return{type:r,id:t,strict:null!==e,stmts:n}},Q=";",V=n(";",!1),W=function(e,r){for(var t=[e],n=0;n",!1),be=function(e,r){var t=[e];if(r)for(var n=0;n